📌
# 알고리즘 학습
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)
'수업(국비지원) > Python' 카테고리의 다른 글
[Python] 웹 숫자 예측 프로그램 만들기 환경설정 (0) | 2023.04.27 |
---|---|
[Python] 실제 숫자 이미지 처리하기 (0) | 2023.04.27 |
[Python] 숫자 인식하기 (0) | 2023.04.27 |
[Python] 동영상 파일 저장, 출력, 저장된 동영상 이미지 색상 수정 (0) | 2023.04.27 |
[Python] 동영상 파일 출력 (0) | 2023.04.27 |