Page 13 -
P. 13
코드 3-1 라이브러리 호출 및 데이터 준비
import numpy as np 벡터 및 행렬의 연산 처리를 위한 라이브러리
import matplotlib.pyplot as plt 데이터를 차트나 플롯(plot)으로 그려 주는 라이브러리
import pandas as pd 데이터 분석 및 조작을 위한 라이브러리
from sklearn import metrics 모델 성능 평가 3
데이터셋에 열(column) 이름 할당
names = ['sepal-length', 'sepal-width', 'petal-length', 'petal-width', 'Class']
dataset = pd.read_csv('../chap3/data/iris.data', names=names) 머신 러닝 핵심 알고리즘
데이터를 판다스 데이터프레임(dataframe)에 저장, 경로는 수정해서 진행
준비한 데이터를 전처리하고 훈련과 검증 데이터셋으로 분리합니다.
코드 3-2 훈련과 검증 데이터셋 분리
X = dataset.iloc[:, :-1].values 모든 행을 사용하지만 열(칼럼)은 뒤에서 하나를 뺀 값을 가져와서 X에 저장
y = dataset.iloc[:, 4].values 모든 행을 사용하지만 열은 앞에서 다섯 번째 값만 가져와서 y에 저장
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.20)
X, y를 사용하여 훈련과 검증 데이터셋으로 분리하며, 검증 세트의 비율은 20%만 사용
from sklearn.preprocessing import StandardScaler
s = StandardScaler() 특성 스케일링(scaling), 평균이 0, 표준편차가 1이 되도록 변환
X_train = s.transform(X_train) 훈련 데이터를 스케일링 처리
X_test = s.transform(X_test) 검증 데이터를 스케일링 처리
모델을 생성하고 훈련시킵니다.
코드 3-3 모델 생성 및 훈련
from sklearn.neighbors import KNeighborsClassifier
knn = KNeighborsClassifier(n_neighbors=50) K=50인 K-최근접 이웃 모델 생성
knn.fit(X_train, y_train) 모델 훈련
다음은 모델 생성 및 훈련에 대한 출력 결과입니다.
KNeighborsClassifier(n_neighbors=50)
모델에 대한 정확도를 측정합니다.
069