본문 바로가기
수업(국비지원)/Python

[Python] 2022-12-27 복습

by byeolsub 2023. 4. 27.

 📌

# 알고리즘 학습
knn = cv2.ml.KNearest_create() # knn알고리즘.
# 훈련하기
# train_data : 훈련데이터. 50000개
# cv2.ml.ROW_SAMPLE : 행값이 데이터. 1개 행이 학습 데이터 1개
# train_label : 정답
knn.train(train_data, cv2.ml.ROW_SAMPLE, train_label)
# 예측하기
# test_data[:100] : 100개만 예측하기
# k=5 : knn 알고리즘은 근접한 5개의 점을 선택.
_, resp, _, _ = knn.findNearest(test_data[:100], k=5)
# resp.flatten() : 1차원 배열의 값으로 변형. [[값]]
accur = sum(test_label[:100] == resp.flatten()) / len(resp)
print("정확도=", accur*100, '%')
graph_image(test_data[:100], resp, 'predict', 24)