머신러닝 처음 시작하기 (기초 원리 + 초급 실습) - 인프런 | 강의
머신러닝을 처음 접하는 사람들을 대상으로 기초적인 머신러닝 이론을 간략하게 다룬 머신러닝 기초 강의입니다., 그것이 알고 싶다!요새 핫한 머신러닝 🤖 [사진] 🗒 강의소개 (이 강의는 강
www.inflearn.com
13강 knn 구현
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
from sklearn.datasets import load_iris
iris = load_iris()
iris.keys()
iris.target_names
iris.feature_names
iris.target #데이터 정보 확인하는 것..
#데이터 나누기
from sklearn.model_selection import train_test_split
X = iris.data
y = iris.target
X_train, X_tst, y_train, y_test = train_test_split(X, y, test_size=0.3)
#KNN
from sklearn.neighbors import KNeighborsClassifier
knn = KNeighborsClassifier(n_neighbors = 5) #neighbor 수 정하기
knn.fit(X_train, y_train) #훈련
from sklearn import metrics
print("Accuracy: ", knn.score(X_test, y_test))
#K 구하기
k_range = range(1,50) #k 범위
scores = {}
scores_list = []
for k in k_range: #k의 지정해놓은 범위 내에서 어떤 K 값이 가장 정확도가 높은지 찾는 과정
knn = KNeighborsClassifier(n_neighbors = k)
knn.fit(X_train, y_train)
y_prediction = knn.predict(X_test)
scores[k] = metrics.accuracy_score(y_test, y_prediction)
scores_list.append(metrics.accuracy_score(y_test, y_prediction))
#그래프 출력
plt.plot(k_range, scores_list)
plt.xlabel('K값')
plt.ylabel('Accuracy')
'스터디📖 > ML, DL' 카테고리의 다른 글
머신러닝 처음 시작하기(인프런) - 15강 데이터 전처리 (0) | 2021.08.16 |
---|---|
머신러닝 처음 시작하기(인프런) - 14강 train valid test 데이터 나누기 (0) | 2021.08.13 |
머신러닝 처음 시작하기(인프런) - 12강 KNN (0) | 2021.08.11 |
머신러닝 처음 시작하기(인프런) - 11강 랜덤 포레스트 구현 (0) | 2021.08.10 |
머신러닝 처음 시작하기(인프런) - 10강 랜덤 포레스트 (0) | 2021.08.09 |