MNIST 데이터를 이용한 글자 인식 프로그램 (3)

2019. 10. 8. 23:27ML, OpenCV/딥러닝 손글씨 인식

결과, 정확도

결과 덤프 화면은 아래 그림과 같습니다.

입력된 이미지
기본학습데이터 예측결과
역전파 예측결과
오차역전파 예측결과
CNN예측결과

*정확도

기본 학습 데이터

Accuracy:0.9758616

역전파

Accuracy:0.97534880086174

오차 역전파

Accuracy:0.9118631680482993

CNN

Accuracy:0.41925920819255125


문제점

 같은 이미지로 비교한 결과 여러가지 문제점들이 발견되었습니다. 다른 학습 방법들의 예측결과를 비교한 결과 기본학습데이터의 정확도가 가장 높았습니다. 그리고 가장 높은 정확도를 가질 것이라고 예상했던 CNN 가장 낮게 나왔습니다.

 문제 파악을 위해 입력데이터에 다른 이미지를 사용해봤는데 CNN 제외한 나머지는 숫자를 얼마나 정확하게 그리는지에 따라서 정확도의 편차가 것을 확인 할 있었고 CNN 정답도 맞추지 못하는 경우가 빈번하여 예측방법이 잘못되었다는 것을 알게 되었습니다.

 0부터 9까지의 숫자를 각각 테스트해본 결과 8 인식률이 가장 저조했고 그린 숫자를 사각형으로 찾아서 크롭하는 방법을 사용했기 때문에 숫자 1 기울여서 써야 한다는 한계가 있었습니다.

 

 정확도가 아무리 높은 학습방법을 사용해도 숫자를 MNIST이미지와 비슷하게 쓰지 않으면 정확도가 떨어지고 정답을 찾을 확률이 낮아진다는 것을 알게 되었고 CNN방법의 예측이 제대로 되지 않아서 아쉬웠습니다.

 

 

*문제 파악을 위해 덤프

 

기본학습데이터 결과 덤프
역전파데이터 결과 덤프
오차역전파데이터 결과 덤프
CNN데이터 결과 덤프


불러오는 중입니다...

https://github.com/Yeowoolee/Deep-Learning-MNIST-dataset