인공지능
2023.05.16
연을
2023. 5. 16. 14:48
728x90
[02.py]
pip install numpy 설치 방법
- Terminal의 Split Terminal을 눌러 나오는 곳에 pip install numpy를 치고 엔터누르면 설치완료
import numpy as np
data=np.loadtxt("C:\\Users\\admin\\Desktop\\py\\py\\height_weight.txt",delimiter=",")
print(data)
[결과]
PS C:\Users\admin\Desktop\py> & C:/Users/admin/AppData/Local/Programs/Python/Python311/python.exe c:/Users/admin/Desktop/py/py/02.py [[175.4 123.8 213.4 175.4 123.8 213.4] [ 76.4 123.4 71.4 76.4 163.4 74.4]] |
: 이렇게 다차원 배열로 나오게 된다.
# NumPy 다차원 배열 데이터 구조를 제공하여 많은 데이터 처리 작업을 보다 효율적으로 처리
[03.py]
pip install scikit-learn 설치하기
from sklearn import svm,metrics
#학습시킬 데이터
datas=[[0,0],[1,0],[0,1],[1,1]]
#학습시킬 데이터에대한 답안
labels=[0,1,1,1]
#질의할 데이터
examples=[[0,0],[1,0]]
#질의 데이터 정답
examples_label=[0,1]
clf =svm.SVC()
clf.fit(datas,labels)
results=clf.predict(examples)
print(results)
score=metrics.accuracy_score(examples_label,results)
print("정답률",score)
[결과]
PS C:\Users\admin\Desktop\py> & C:/Users/admin/AppData/Local/Programs/Python/Python311/python.exe c:/Users/admin/Desktop/py/py/03.py [0 1] 정답률 1.0 |
정답률 1.0의 뜻은 정답률이 100%란 뜻이다.
# pip install scikit-learn # from sklearn import svm,metrics: scikit-learn 패키지에서 SVM 알고리즘과 평가지표(metrics)를 불러옵니다. # datas: SVM 알고리즘으로 학습시킬 데이터를 정의합니다. 해당 데이터는 2차원 평면 상에 4개의 점으로 구성됩니다. # labels: 학습 데이터에 대한 정답 레이블을 정의합니다. 해당 문제에서는 4개의 점이 각각 0 또는 1에 해당하는 이진 분류 문제입니다. # examples: SVM 알고리즘으로 예측할 데이터를 정의합니다. 해당 데이터는 2차원 평면 상에 2개의 점으로 구성됩니다. # examples_label: 예측 데이터에 대한 정답 레이블을 정의합니다. # clf =svm.SVC(): SVM 알고리즘을 초기화합니다. # clf.fit(datas,labels): SVM 알고리즘으로 학습 데이터를 학습합니다. # results=clf.predict(examples): SVM 알고리즘으로 예측 데이터를 예측합니다. # print(results): 예측 결과를 출력합니다. # score=metrics.accuracy_score(examples_label,results): 예측 결과의 정확도를 측정합니다. # print("정답률",score): 예측 결과의 정확도를 출력합니다. # SVM(Support Vector Machine)은 딥러닝(Deep Learning)의 일종이 아닙니다. # SVM은 지도학습(Supervised Learning) 분야에서 가장 강력한 분류(Classification) # 모델 중 하나로, 결정 경계(Decision Boundary)와 각 클래스(범주) 사이의 # 최대 마진(Margin)을 찾는 것이 목표입니다. # 지도 학습(Supervised Learning)은 머신러닝(Machine Learning)의 한 종류로, # 입력 데이터(X)와 그에 상응하는 출력 데이터(Y)가 있는 데이터셋으로부터 학습하는 방법입니다. # 이 때, 출력 데이터(Y)는 라벨(Label)이라고도 부릅니다. # 입력 데이터와 출력 데이터 간의 함수 관계를 학습하며, # 이를 통해 새로운 입력 데이터에 대한 출력 값을 예측할 수 있습니다. # 지도 학습은 분류(Classification)와 회귀(Regression) 문제를 해결하는 데에 활용됩니다. # 분류 문제에서는 입력 데이터(X)를 범주(클래스)에 따라 분류하고, # 회귀 문제에서는 입력 데이터(X)를 출력 데이터(Y)에 대한 실수 값으로 예측합니다. # scikit-learn 또는 sklearn은 파이썬에서 머신러닝을 위한 라이브러리입니다. # metric scikit-learn에서는 머신러닝 모델의 성능 평가를 위한 여러 가지 지표(metric)를 제공합니다. |
[04.py]
pip install pandas 설치
import pandas
from sklearn import svm,metrics
csv=pandas.read_csv("C:\\Users\\admin\\Desktop\\py\\py\\iris.csv")
data=csv[["sepal.length","sepal.width","petal.length","petal.width"]]
label=csv["variety"]
print(data)
print(label)
clf=svm.SVC()
clf.fit(data,label)
results=clf.predict([
[4.6,3.6,1.4,.2],
[4.6,3.1,1.5,.2],
[5.6,3.6,1.5,.4],
[4.6,3.1,1.4,.2],
[5.9,3,5.1,1.8],
[3.5,3.1,2.4,1.1]])
print(results)
[결과]
PS C:\Users\admin\Desktop\py> & C:/Users/admin/AppData/Local/Programs/Python/Python311/python.exe c:/Users/admin/Desktop/py/py/04.py sepal.length sepal.width petal.length petal.width 0 5.1 3.5 1.4 0.2 1 4.9 3.0 1.4 0.2 2 4.7 3.2 1.3 0.2 3 4.6 3.1 1.5 0.2 4 5.0 3.6 1.4 0.2 .. ... ... ... ... 146 6.3 2.5 5.0 1.9 147 6.5 3.0 5.2 2.0 148 6.2 3.4 5.4 2.3 149 5.9 3.0 5.1 1.8 [150 rows x 4 columns] 0 0 1 0 2 0 3 0 4 0 .. 145 2 146 2 147 2 148 2 149 2 Name: variety, Length: 150, dtype: int64 |
[참고]
![]() |
height_weight : CSV파일이라고 부른다. |
# pandas는 표 형태의 데이터를 다루는 용도에 적합하고, NumPy는 배열 연산에 적합
# Pandas는 데이터프레임과 시리즈를 제공하며, 표 형태의 데이터를 다루는 데에
# NumPy는 다차원 배열 연산에 적합. 특히 수학적 계산과 과학계산에 적합, 머신러닝 분이 적합
오후에는 팀프로젝트 얘기
728x90