CNN(Convolutional Neural Network)을 사용한 심화 학습이 다양한 분야에서 진행되고 있으며 관련 연구들은 이미지 인식의 많은 분야에서 높은 성능을 보이고 있다. 본 논문에서는 한글 인식을 위해 대규모 한글 데이터베이스를 학습할 수 있는 CNN 구조의 간소화된 GoogLeNet을 사용한다. 본 논문에 사용된 데이터베이스는 대규모 한글 데이터베이스인 PHD08로 총 2,350개의 한글 문자에 대해 각 2,187개의 샘플을 가져 총 5,139,450개의 데이터로 구성되어 있다. 간소화된 GoogLeNet은 학습의 결과로 학습 종료 시점에서 PHD08에 대해 99% 이상의 Top-1 테스트 정확도를 보였으며 실험의 객관성을 높이기 위해 PHD08에 존재하지 않는 한글 폰트로 이루어진 한글 데이터를 제작하여 상용 OCR 프로그램들과 분류 성능을 비교하였다. 상용 OCR 프로그램들은 66.95%에서 83.17%의 분류 성공률을 보인 반면, 제안하는 간소화된 GoogLeNet은 평균 89.14%의 분류 성공률을 보여 상용 OCR 프로그램들보다 높은 분류 성공률을 보였다.
CNN(Convolutional Neural Network)을 사용한 심화 학습이 다양한 분야에서 진행되고 있으며 관련 연구들은 이미지 인식의 많은 분야에서 높은 성능을 보이고 있다. 본 논문에서는 한글 인식을 위해 대규모 한글 데이터베이스를 학습할 수 있는 CNN 구조의 간소화된 GoogLeNet을 사용한다. 본 논문에 사용된 데이터베이스는 대규모 한글 데이터베이스인 PHD08로 총 2,350개의 한글 문자에 대해 각 2,187개의 샘플을 가져 총 5,139,450개의 데이터로 구성되어 있다. 간소화된 GoogLeNet은 학습의 결과로 학습 종료 시점에서 PHD08에 대해 99% 이상의 Top-1 테스트 정확도를 보였으며 실험의 객관성을 높이기 위해 PHD08에 존재하지 않는 한글 폰트로 이루어진 한글 데이터를 제작하여 상용 OCR 프로그램들과 분류 성능을 비교하였다. 상용 OCR 프로그램들은 66.95%에서 83.17%의 분류 성공률을 보인 반면, 제안하는 간소화된 GoogLeNet은 평균 89.14%의 분류 성공률을 보여 상용 OCR 프로그램들보다 높은 분류 성공률을 보였다.
Various fields are being researched through Deep Learning using CNN(Convolutional Neural Network) and these researches show excellent performance in the image recognition. In this paper, we provide streamlined GoogLeNet of CNN architecture that is capable of learning a large-scale Korean character d...
Various fields are being researched through Deep Learning using CNN(Convolutional Neural Network) and these researches show excellent performance in the image recognition. In this paper, we provide streamlined GoogLeNet of CNN architecture that is capable of learning a large-scale Korean character database. The experimental data used in this paper is PHD08 that is the large-scale of Korean character database. PHD08 has 2,187 samples for each character and there are 2,350 Korean characters that make total 5,139,450 sample data. As a training result, streamlined GoogLeNet showed over 99% of test accuracy at PHD08. Also, we made additional Korean character data that have fonts that are not in the PHD08 in order to ensure objectivity and we compared the performance of classification between streamlined GoogLeNet and other OCR programs. While other OCR programs showed a classification success rate of 66.95% to 83.16%, streamlined GoogLeNet showed 89.14% of the classification success rate that is higher than other OCR program's rate.
Various fields are being researched through Deep Learning using CNN(Convolutional Neural Network) and these researches show excellent performance in the image recognition. In this paper, we provide streamlined GoogLeNet of CNN architecture that is capable of learning a large-scale Korean character database. The experimental data used in this paper is PHD08 that is the large-scale of Korean character database. PHD08 has 2,187 samples for each character and there are 2,350 Korean characters that make total 5,139,450 sample data. As a training result, streamlined GoogLeNet showed over 99% of test accuracy at PHD08. Also, we made additional Korean character data that have fonts that are not in the PHD08 in order to ensure objectivity and we compared the performance of classification between streamlined GoogLeNet and other OCR programs. While other OCR programs showed a classification success rate of 66.95% to 83.16%, streamlined GoogLeNet showed 89.14% of the classification success rate that is higher than other OCR program's rate.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
CNN의 구성도 단 3개씩의 컨볼루셔널 계층과 풀링 계층만 사용되어 비교적 단순하다. 본 논문에서는 CNN을 학습시키기 위해 사용한 학습 데이터 이외에 임의로 얻은 필기체 한글 데이터로 실험을 검증하여 전체적인 실험의 신뢰성을 향상한다. 또한, 최근 국제대회에서 수상한 CNN 구조를 사용하여 효과적인 한글 학습이 이루어질 수 있도록 하였다.
따라서, 학습에 사용한 데이터베이스 내부에서만 테스트를 진행하는 것은 실생활 응용에 한계가 존재한다. 본 논문에서는 CNN의 학습에 사용하지 않은 추가적인 데이터로 테스트를 진행하여 성능을 확인하는 과정으로 실생활에 응용할 가능성을 확인하였다.
제시된 많은 CNN 구조 중, IMAGENET[13]이 개최하는 이미지 인식 대회 ILSVRC -2012의 이미지 인식 분야에서 우승한 Krizhevsky 등의 AlexNet[14] 과 ILSVRC-2014 대회의 같은 분야에서 우승한 Szegedy 등의 GoogLeNet[15]이 많은 주목을 받았다. 본 논문에서는 한글 인식을 위해 가장 최신의 CNN 구조 중 하나인 GoogLeNet에 기반하여 간소화된 GoogLeNet을 설계하였다. CNN 구조를 가진 GoogLeNet은 기존의 CNN 구조들보다 훨씬 더 깊은 구조를 가진다.
본 논문에서는 한글 인식의 성능을 개선하기 위해 CNN 구조를 가진 간소화된 GoogLeNet을 설계하여 PHD08에 대해 학습을 수행하였다. PHD08을 학습한 결과 간소화된 GoogLeNet 에서 99% 이상의 높은 테스트 정확도를 보여주었다.
제안 방법
PHD08을 통해 간소화된 GoogLeNet의 학습을 완료한 후 PHD08에 존재하지 않는 폰트를 가진 한글 데이터를 제작하여 간소화된 GoogLeNet에 입력해 보고 분류 성공률을 확인한다. 또한, 본 논문에서는 ABBYY FineReader 12, ABC-OCR, Office Lens 프로그램과 분류 성공률을 비교하여 제시한다.
총 5,139,450개의 데이터를 가진 PHD08은 현재 존재하는 한글 데이터베이스 중 가장 큰 규모의 데이터베이스이며 글자마다 폰트, 해상도, 품질, 회전, 각도 등이 모두 다른 샘플을 가져 많은 학습 데이터를 필요로 하는 CNN 구조에 매우 유용하다. PHD08을 학습 데이터와 테스트 데이터로 분리하여 본 논문에서 사용한 간소화된 GoogLeNet에 학습시킨 후 학습 횟수에 따른 테스트 정확도를 비교한다.
5 ~ 1:8까지 총 5종류의 Set로 구성하였다. Set마다 학습을 진행하여 간소화된 GoogLeNet에서 보이는 학습 단계에 따른 테스트 정확도를 확인한다.
PHD08을 통해 간소화된 GoogLeNet의 학습을 완료한 후 PHD08에 존재하지 않는 폰트를 가진 한글 데이터를 제작하여 간소화된 GoogLeNet에 입력해 보고 분류 성공률을 확인한다. 또한, 본 논문에서는 ABBYY FineReader 12, ABC-OCR, Office Lens 프로그램과 분류 성공률을 비교하여 제시한다.
본 논문에서는 CNN을 학습시키기 위해 사용한 학습 데이터 이외에 임의로 얻은 필기체 한글 데이터로 실험을 검증하여 전체적인 실험의 신뢰성을 향상한다. 또한, 최근 국제대회에서 수상한 CNN 구조를 사용하여 효과적인 한글 학습이 이루어질 수 있도록 하였다.
각 글자의 영역을 주어진 이미지에서 구분시킨 후 분리된 문자 이미지들을 모두 가로, 세로 56×56의 크기로 변형시켜서 이진 이미지로 변형한다. 마지막으로, 본 실험에서는 학습된 가중치 파라미터 맵으로 4.1장의 실험 중 Set-1을 학습한 간소화된 GoogLeNet의 가중치 파라미터 맵을 사용하였다.
본 논문에서는 함대성[7] 등이 제작한 대규모 한글 데이터베이스인 PHD08과 CNN 구조를 사용하여 한글 인식 실험을 진행하였다. 총 5,139,450개의 데이터를 가진 PHD08은 현재 존재하는 한글 데이터베이스 중 가장 큰 규모의 데이터베이스이며 글자마다 폰트, 해상도, 품질, 회전, 각도 등이 모두 다른 샘플을 가져 많은 학습 데이터를 필요로 하는 CNN 구조에 매우 유용하다.
대상 데이터
본 논문에서는 학습 데이터의 수가 많을 때와 작을 때 학습 단계에 따른 테스트 정확도의 차이를 확인하기 위해 표 3 과 같이 5개의 실험 데이터 set을 구성하였다. PHD08이 가지는 총 5,139,450개의 데이터를 학습데이터 수와 테스트 데이터의 비율로 1:0.5 ~ 1:8까지 총 5종류의 Set로 구성하였다. Set마다 학습을 진행하여 간소화된 GoogLeNet에서 보이는 학습 단계에 따른 테스트 정확도를 확인한다.
대한민국의 국가 1~4절과 후렴구의 한글 문자를 이미지로 추출하여 실험데이터로 사용한다. 애국가 1~4절은 각 28자를 포함하며 후렴은 24자를 포함한다.
본 논문에서는 학습 데이터의 수가 많을 때와 작을 때 학습 단계에 따른 테스트 정확도의 차이를 확인하기 위해 표 3 과 같이 5개의 실험 데이터 set을 구성하였다. PHD08이 가지는 총 5,139,450개의 데이터를 학습데이터 수와 테스트 데이터의 비율로 1:0.
총 136자(28×4+24)가 존재하지만 중복되는 문자를 제외하면 82자의 서로 다른 문자가 존재한다. 서로 다른 82자를 한 세트로 하여 10개의 서로 다른 폰트를 적용하여 총 820개의 분류를 위한 한글 데이터를 생성한다. 본 실험에서 추가 한글 데이터를 생성하는 데 사용되는 폰트는 표 5의 New-1 ~ New-10과 같으며 PHD08에서 사용하는 폰트를 제외한 임의의 폰트가 적용되었다.
실험은 PHD08의 바이너리 데이터를 이진 이미지로 바꾸어 CNN의 입력 데이터로 사용한다. 단, CNN의 입력 데이터는 모두 같은 크기의 데이터를 사용해야 한다는 제약사항이 있으므로 기존 다양한 크기를 가진 PHD08 데이터들을 일괄적으로 56×56 크기로 변경한 후 사용한다.
데이터처리
1장에서는 PHD08을 간소화된 GoogLeNet에 학습시킨 후 학습 단계에 따른 테스트 정확도를 비교한다. 4.2장에서는 학습을 끝낸 간소화된 GoogLeNet에 PHD08에 존재하지 않는 폰트를 가진 한글 데이터를 입력하여 분류 성능을 확인하고 실험의 객관성을 평가하기 위해 상용 OCR 프로그램인 ABBY FineReader12[17], ABC-OCR[18], Office Lens[19]와 분류 결과를 비교한다.
PHD08을 학습한 결과 간소화된 GoogLeNet 에서 99% 이상의 높은 테스트 정확도를 보여주었다. 또한, 실험의 객관적인 평가를 위해 PHD08에 존재하지 않는 폰트를 가진 한글 데이터를 생성하여 상용 OCR 프로그램과 성능을 비교하였다. 기존 상용 OCR 프로그램들보다 간소화된 GoogLeNet에서 인식률이 더 높은 것을 확인하여 다양한 폰트를 가진 한글 데이터에 대한 인식 성능을 보장하였다.
이론/모형
학습 단계마다 입력 데이터로 사용되는 이미지의 개수를 뜻하는 배치 사이즈는 학습 단계에서 56, 테스트 단계에서 50이 모든 실험에서 동일하게 사용되었다. 실험에는 빠른 연산을 위해 그래픽카드 GTX-970 (CUDA v7.0)을 통한 병렬 연산이 사용되었으며 공개 프레임워크인 CAFFE[21]를 통해 진행되었다.
단, CNN의 입력 데이터는 모두 같은 크기의 데이터를 사용해야 한다는 제약사항이 있으므로 기존 다양한 크기를 가진 PHD08 데이터들을 일괄적으로 56×56 크기로 변경한 후 사용한다. 크기를 변형하는 방법으로는 선형 보간법[20]이 사용되었다. 최종적으로 사용되는 한글 입력 데이터의 예시는 그림 3과 같다.
성능/효과
본 논문에서는 한글 인식의 성능을 개선하기 위해 CNN 구조를 가진 간소화된 GoogLeNet을 설계하여 PHD08에 대해 학습을 수행하였다. PHD08을 학습한 결과 간소화된 GoogLeNet 에서 99% 이상의 높은 테스트 정확도를 보여주었다. 또한, 실험의 객관적인 평가를 위해 PHD08에 존재하지 않는 폰트를 가진 한글 데이터를 생성하여 상용 OCR 프로그램과 성능을 비교하였다.
또한, 실험의 객관적인 평가를 위해 PHD08에 존재하지 않는 폰트를 가진 한글 데이터를 생성하여 상용 OCR 프로그램과 성능을 비교하였다. 기존 상용 OCR 프로그램들보다 간소화된 GoogLeNet에서 인식률이 더 높은 것을 확인하여 다양한 폰트를 가진 한글 데이터에 대한 인식 성능을 보장하였다. CNN을 사용하여 문자를 인식한 기존 논문이나 연구들은 CNN을 학습시키기 위해 사용한 데이터베이스 내부에서만 인식 정확도를 비교하고 있다.
또한, 본 실험의 결과에서 학습 데이터의 수와 테스트 데이터의 숫자와 무관하게 학습 데이터를 구성하는 클래스마다 최소한의 데이터만 보장이 되면 학습 결과에 큰 영향이 없는 것을 알 수 있다. 단, 모든 실험에 대해 학습 단계의 소요시간을 측정한 결과, 한 번의 학습 단계가 수행되는데 최소 0.45초, 최대 0.51초가 소요되었다.
또한, 본 실험의 결과에서 학습 데이터의 수와 테스트 데이터의 숫자와 무관하게 학습 데이터를 구성하는 클래스마다 최소한의 데이터만 보장이 되면 학습 결과에 큰 영향이 없는 것을 알 수 있다. 단, 모든 실험에 대해 학습 단계의 소요시간을 측정한 결과, 한 번의 학습 단계가 수행되는데 최소 0.
14%의 분류 성공률을 보였다. 실험에 사용된 간소화된 GoogLeNet 및 상용 OCR 프로그램들은 사람의 필기체와 유사한 형태의 New-5, New-8, New-9에서 공통적으로 낮은 인식 성공률을 보였다. 이는 학습에 사용된 데이터베이스인 PHD08만으로 다양한 폰트가 가지고 있는 모든 패턴에 대응하는 것에는 한계가 있다는 점을 의미한다.
실험에 사용된 한글 데이터 셋, New-1부터 New-10 까지 총 820개의 구분된 한글 데이터에 대해 3개의 어플리케이션인 ABBYY, ABC-OCR, Office Lens에서 각각 72.07%, 83.17%, 66.95%의 평균 분류 성공률을 보였다. n/a는 프로그램에서 입력된 데이터의 어떤 글자도 인식하지 못했거나 오류가 난 경우를 의미한다.
최근 김인정[11] 등은 앞서 언급한 CNN을 통한 중국어 인식 연구와 유사하게 CNN을 사용하여 필기체 한글을 인식할 수 있도록 연구를 진행하였다. 직접 CNN을 구성하여 필기체 한글을 학습시켰으며 기존의 연구보다 한글에 존재하는 수많은 패턴에 대응할 가능성을 보였다. 하지만 실험의 검증 과정이 사용된 학습 데이터베이스 내부에서만 이루어져 다른 한글 데이터가 제시되었을 때, 높은 인식률을 보인다는 보장이 없다.
본 논문에서는 함대성[7] 등이 제작한 대규모 한글 데이터베이스인 PHD08과 CNN 구조를 사용하여 한글 인식 실험을 진행하였다. 총 5,139,450개의 데이터를 가진 PHD08은 현재 존재하는 한글 데이터베이스 중 가장 큰 규모의 데이터베이스이며 글자마다 폰트, 해상도, 품질, 회전, 각도 등이 모두 다른 샘플을 가져 많은 학습 데이터를 필요로 하는 CNN 구조에 매우 유용하다. PHD08을 학습 데이터와 테스트 데이터로 분리하여 본 논문에서 사용한 간소화된 GoogLeNet에 학습시킨 후 학습 횟수에 따른 테스트 정확도를 비교한다.
표 3의 입력 데이터 Set1 ~ 5를 간소화된 GoogLeNet에 학습시키면서 나타난 학습 단계에 따른 테스트 정확도를 그림 4에 보였다. 학습 데이터의 비율이 상대적으로 5번째 실험과 같이 적더라도 충분한 학습 횟수가 진행되면 임의의 시점에서 테스트 정확도가 상승하였다. 그림 4에서 확인할 수 있는 것처럼 간소화 된 GoogLeNet 은 최소 30,000번의 학습 단계가 지난 후에 테스트 정확도가 상승하였다.
후속연구
추후 해결해야 할 과제로는 어떤 시스템에서도 필기체와 유사한 폰트를 가진 한글 데이터에서는 높은 인식 성공률을 보이지 못했다는 점이다. 따라서 한글 필기체에 관한 데이터베이스를 확보한 후 추가하여 학습을 진행하거나 필기체 인식을 위한 새로운 기술이 연구되어야 할 것이다.
질의응답
핵심어
질문
논문에서 추출한 답변
CNN을 사용한 심화 학습은 어느 분야에서 높은 성능을 보이고 있는가?
CNN(Convolutional Neural Network)을 사용한 심화 학습이 다양한 분야에서 진행되고 있으며 관련 연구들은 이미지 인식의 많은 분야에서 높은 성능을 보이고 있다. 본 논문에서는 한글 인식을 위해 대규모 한글 데이터베이스를 학습할 수 있는 CNN 구조의 간소화된 GoogLeNet을 사용한다.
문자 인식 분야에서 CNN을 적용하여 인식 성능을 개선하는 연구들에는 무엇이 있는가?
문자 인식 분야에서도 CNN을 적용하여 인식 성능을 개선하는 연구가 진행되고 있으며 특히 중국어 필기체 인식 연구에서 뚜렷한 성과를 보여주고 있다. Zhang[4]은 CNN의 깊이가 다른 몇 개의 CNN 네트워크를 통해 중국어 필기체 인식의 정확도를 비교 실험하였고 Zhong[5] 등은 학습 데이터마다 방향에 따른 특징 맵을 생성한 후 기존의 학습 데이터와 함께 CNN에 학습시켜 향상된 학습 정확도를 보였다. Yang[6] 등은 한문의 도메인 정보를 이용하여 새로운 학습 데이터를 생성한 후, CNN에 적용하여 기존보다 나아진 한문 인식 정확도를 얻을 수 있었다.
한글 인식 분야는 언제부터 연구가 진행되었는가?
한글 인식 분야는 국내에서 90년대부터 다양한 방법으로 연구가 진행되었다. 최근 CNN이 등장하기 전까지 HMM을 중심으로 한글 인식 연구가 활발하였다.
참고문헌 (21)
D. Ciresan, U. Meier, J. Masci and J. Schmidhuber, "Multicolumn deep neural network for traffic sign classification," Neural Networks, vol. 32, pp. 333-338, Aug. 2012.
N. Kalchbrenner, E. Grefenstette and P. Blunsom, "A Convolutional Neural Network for Modelling Sentences," arXiv preprint arXiv:1404.2188, 2014.
P. Callet, C. Viard-Gaudin and D. Barba, "A Convolutional Neural Network Approach for Objective Video Quality Assessment," IEEE Transactions on Neural Networks, vol. 17, no. 5, pp. 1316-1327, Sep. 2006.
Y. Zhang, "Deep Convolutional Network for Handwritten Chinese Character Recognition," University of Stanford, CS231N course project.
Z. Zhong, L. Jin and Z. Xie, "High performance offline handwritten Chinese character recognition using GoogLeNet and directional feature map," in Document Analysis and Recognition(ICDAR), 13th International Conference on IEEE, pp. 846-850, May 2015.
W. Yang, L. Jin, Z. Xie and Z. Feng, "Improved deep convolutional neural network for online handwritten Chinese character recognition using domain-specific knowledge," in Document Analysis and Recognition (ICDAR), 13th International Conference on. IEEE, pp. 551-555, May 2015.
D. Ham, D. Lee, I. Jung and I. Oh, "Construction of Printed Hangul Character Database PHD08," Journal of the korea contents association, vol. 8, no. 11, pp.33-40, Nov. 2008.
B. Sin and J. Kim, "On-line Handwritten Character Recognition with Hidden Markov Models," in proceeding of the Korea Information Science Society, pp. 533-542, Oct. 1992.
J. Ha and B. Shin, "Optimization of Number of States in HMM for On-line Hangul Recognition," in Proceeding of the Korea Information Science Society, vol. 25, no. 2, pp. 372-374, Oct. 1998.
T. Hwang and S. Kim, "Hangul Recognition Using The Path Following Algorithm," IE interfaces, vol. 3, no. 2, pp. 53-62, Oct. 1990.
I. Kim and X. Xiaohui, "Handwritten Hangul recognition using deep convolutional neural network," International Journal on Document Analysis and Recognition (IJDAR), vol. 18, no. 1, pp. 1-13, Mar. 2015.
Y. LeCun, L. Bottou, Y. Bengio and P. Haffner, "Gradient-Based Learning Applied to Document Recognition," in Proceeding of the IEEE 86.11, pp. 2278-2324, 1998.
ImageNet Large Scale Visual Recognition Challenge [Internet]. Available: http://image-net.org/.
A. Krizhevsky, I. Sutskever and G. E. Hinton, "ImageNet Classification with Deep Convolutional Neural Network," in Proceeding of the Neural Information Processing Systems 25(NIPS), pp. 1097-1105, 2012.
C. Szegedy, W. Liu, Y. Jia, P. Sermanet, S. Reed, D. Anguelov, D. Erhan, V. Vanhoucke and A. Rabinovich, "Going deeper with convolutions," in Proceeding of the Computer Vision and Pattern Recognition (CVPR), pp. 1-9, 2015.
S. Arora, A. Bhaskara, R. Ge and T. Ma, "Provable Bounds for Learning Some Deep Representations," CoRR (Computing Research Repository), abs/1310.6343, 2013.
Recognition Technologies and Innovation Ace (RETIA) ABBYYFineReader12 [Internet]. Available: http://www.retia.co.kr/cnt/products/products.html?category1&uid24&namefinereader-12&tab1.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.