천원의 개발

필기체 숫자 이미지 분류 본문

딥러닝

필기체 숫자 이미지 분류

천 원 2022. 3. 30. 17:10
import matplotlib.pyplot as plt

from sklearn import datasets, metrics
from sklearn.model_selection import train_test_split

digits = datasets.load_digits()   # 데이터 세트를 불러온다
plt.imshow(digits.images[0], cmap=plt.cm.gray_r, interpolation='nearest')
plt.show()

n_samples = len(digits.images)
data = digits.images.reshape((n_samples, -1)) # 평탄화

from sklearn.neighbors import KNeighborsClassifier # knn 알고리즘

knn = KNeighborsClassifier(n_neighbors=6)

X_train, X_test, y_train, y_test = train_test_split(data, digits.target, test_size=0.2) # 데이터 분할

knn.fit(X_train, y_train) # train

y_pred = knn.predict(X_test)  # 예측

scores = metrics.accuracy_score(y_test, y_pred) # 정확도 계산
print(scores)

plt.imshow(X_test[10].reshape(8,8), cmap=plt.cm.gray_r, interpolation='nearest') # 이미지 8*8로 변경후 다시 출력
plt.show()

y_pred = knn.predict([X_test[10]])
print(y_pred)

출력 결과

'딥러닝' 카테고리의 다른 글

혼동행렬 출력  (0) 2022.03.30
Numpy 기능 정리  (0) 2022.03.23