1. 서론
신경망은 인간 두뇌의 신경 회로의 구조를 모방한 모델로써 문자 인식을 비롯한 물체 검출 방법으로 많이 응용되어 왔다. 이러한 신경망 연구는 1940년대부터 연구가 진행되고 있으며 현재까지 여러 차례 연구 패러다임으로 인기를 끌기도 하였다. 1980년에 신경망의 학습 방법중에 오차역 전파 방법 [1]이 그 중 하나였으며 퍼셉트론의 출력과 교사 신호로부터 오차를 구하고 파라미터를 갱신하는 학습기법이다. 특히, Deep Learning의 특징량의 학습이 식별기에 어떤 영향을 주고 있는지를 CNN을 이용한 학습결과가 도출되었다.
본 연구에서는 CNN의 회선과 풀링에 의해 자동 생성된 특징량이 미세한 기하변화에 대하여 어느 정도 불변성을 가지는지에 대한 실험 결과를 제시하였다. 그리고 기존의 신경망의 학습방법으로 사용된 랜덤 학습을 적용하여 CNN이 기하변화에 대한 불변성을 개선할 수 있는지를 테스트하고 랜덤 학습을 적용함으로써 자동 생성되는 특징 변화를 관찰하였고 그에 대한 실험결과를 제시하였다[2].
2. CNN
2.1 시스템 구성
CNN은 다층 퍼셉트론의 하나로 중간층에서 회선과 풀링 작업을 여러번 반복하고, 특징량을 자동으로 취득하는 신경망이다. CNN은 Hinton과 Srivastava의 연구의 근간을 두고 있는데[3], 그 연구에서 Hinton은 Fig. 1 (a)와 같이 고양이의 초기 시각 피질에 특정 기울기를 가진 선에 선택적으로 반응하는 단순 세포와 특정 기울기를 가진 선을 이동시켜도 반응하는 복잡한 세포의 존재를 확인했다. 그 후, Fukushima 연구팀은 Fig. 1 (b)와 같은 수학적 모델이 되는 Neocognitron라는 시각 패턴 인식에 대한 계층적 신경 회로 모델을 발표했다 [4].
Fig. 1 Technology underlying CNN
Neocognitron는 동일한 결합 가중치를 가진 유닛을 병렬로 나열하고, 출력을 상위 계층으로 통합하는 풀링을 수행하는 기하학적 변화에 대한 불변성을 실현하고 있지만, CNN은 Neocognitron에 오차 역 전파 법을 이용한 경사하강 최적화 기법을 도입한 방법이다.
2.2 특징추출과 식별
특징 추출부에서는 중간 계층의 회선과 풀링 작업을 반복함으로써 특징량을 자동으로 생성한다. 이 절에서는 CNN의 특징 추출부에서 처리되는 회선과 풀링의 처리방법을 제시한다[5][6].
• 회선 처리
CNN의 회선처리는 가중치 필터과 입력 이미지 또는 가중치 필터와 특징맵에서 내적을 취하고, 라스타스캔(Rater scan)을 통해 반복 회선을 실시하여 특징맵을 구할 수 있다.
가중치 필터는 오차역전파에 의한 경사 하강 최적화법에 의해 학습된다. 회선 처리에서 이미지와 가중치 필터의 크기를 각각 nx × ny, nw × nw 할 때 출력되는 특징 맵의 크기, n′x, n′y는 식 (1)과 같다.
n′x = nx - nw + 1
n′y = ny - nw + 1 (1)
• 풀링 처리
풀링은 입력되는 특징맵의 작은 영역에서 값을 출력하고 새로운 특징 맵으로 변환하는 작업으로써 여러 개의 값 중에서 가장 큰 값을 꺼내서 모아 놓는 것을 뜻한다. 풀링을 하는 목적으로는 우선 풀링 유닛 수를 줄이기 위해 조정하는 매개 변수를 줄일 수있다. 그리고 작은 영역에서 응답 값을 출력하기 위해 기하학적 변화 등에 대한 불변성을 획득할 수있다. CNN에서 자주 사용되는 것은 맥스 풀링이다. 맥스 풀링은 Fig. 2와 같이 있는 작은 영역 P의 값, hi에서 최대값을 선택하는 풀링이다. 맥스 풀링의 출력, h′은 식 (2)와 같이 나타낼 수 있다. 여기서 i는 작은 영역 P의 위치를 나타낸다.
\(\begin{align}h_{i}=\max _{i \in P} h_{i}\end{align}\) (2)
Fig. 2 Example of a Multi Layer Perceptron
맥스 풀링 회선 층의 출력과 인접한 2×2의 유닛의 최대값을 선택하기 위해 출력되는 특징맵의 크기는 식 (3)과 같이 결정된다.
n′x = nx/2
n′y = ny/2 (3)
• 식별부
CNN의 식별부에서는 기존의 다층 퍼셉트론과 유사한 구조를 하고 있으며 특징 추출부에서 생성된 특징 맵을 입력하고 식별을 수행한다. Fig. 2에 식별의 프로세서를 나타내었다. 특징 추출부 회선과 풀링처리에 의해 자동 생성된 특징맵을 식별부 Full-Connect 층 단위로 입력한다. 이때, 마지막으로 생성된 특징맵과 Full-Connect 층 단위의 층간 가중치는 전체와 결합된다. 마지막으로 기존의 다층 퍼셉트론과 같이 출력 계층의 유닛에 응답 값을 입력하고 식별을 수행하게 된다.
3. 실험환경
CNN을 이용해서 자동 생성된 특징량의 효과를 평가하기 위하여 CNN의 특징량의 시각화와 CNN의 기하학적 변환에 따른 불변성에 대해서 실험을 수행하였다. 두 실험을 위한 영상 데이터는 MNIST Dataset을 사용하였고 CNN의 매개 변수로 실험하였다.
3.1 실험설정
실험을 위한 입력 영상은 필기체 인식 실험에서 널리 이용되고 있는 MNIST 데이터세트의 특정 영역에서 잘라낸 필기체 데이터를 사용하였다[7][8].
그림 3은 실험을 위해 사용된 MNIST 데이터 세트의 샘플이다. MNIST 데이터세트는 숫자 0에서 9까지의 필기체 이미지에 의해 생성된 데이터 집합이다. 학습 샘플에는 5,000개 검증 샘플은 1,000장, 평가 샘플은 1,000장을 각각 사용하였다. 이때 이미지 크기는 30×30픽셀로 설정하였다.
Fig. 3 Experimental MNIST dataset
3.2 학습 매개 변수
실험에서 적용한 CNN 가중치 필터의 크기는 5×5이고 첫 번째 층은 4(6)장, 두 번째 층은 12장 이용하였다. 풀링은 2×2의 작은 영역에서 최대 값을 출력하는 맥스 풀링을 사용하였고, 식별부 Full-Connect 층의 단위 수는 500개 사용있다. 학습 계수는 0.1로 설정하고 미니배치 크기는 10개 또는 20개 미니배치 학습을 실시하게 된다. 학습 오차의 계산은 교차 엔트로피 오차 함수를 이용하고 출력 레이어 단위의 활성화 함수는 소프트 맥스 함수를 사용하였다. 또한 각 실험의 비교 실험에서 사용한 다층 퍼셉트론은 중산층이 첫 번째 층에서 유닛수가 1000개의 다층 퍼셉트론을 사용하였다. 학습 계수와 배치 크기는 CNN과 동일하게 0.1과 10로 각각 설정하였다. epoch 수는 300에서 실험을 수행하였다.
4. 실험결과
4.1 실험 개요
CNN의 형상 변화에 대한 불변성의 실험에 대해 말한다. 식별 샘플에 평행 이동, 회전, 크기 변화의 형상 변화를주고 식별 정밀도가 어떻게 변화하는가를 관찰하였다. 이때 CNN이 어떤 특징맵을 생성하고 있는지를 확인하고 풀링 처리에 의해 불변성을 획득할 수 있는지를 실험하였다. 식별 정확도를 비교하기 위해 기존의 다층 퍼셉트론을 이용하여 마찬가지로 기하학적 변화를 실시한 식별 샘플을 입력하여 식별 정확도를 비교하였다.
실험에 의해 CNN이 특징량을 자동 생성하여 불변성을 획득할 수 있는지를 실험하였다. 또한 신경망의 기존 학습 방법인 무작위 학습을 CNN에 도입함으로써 CNN에서 자동으로 생성된 특징량에 어떤 변화가 생길 것인가를 실험한다. 랜덤 학습은 신경망의 학습 샘플에 임의성을 갖게하고 학습하여 일반화 성능을 향상시키는 방법이다. 입력하는 학습 예제는 그림 4와 같이 무작위로 평행 이동, 회전의 형상 변화를 주고 학습을 진행하였다. 랜덤 학습이 없는 실험 결과와 랜덤 학습이 있는 실험 결과를 각각 비교하고 각 형상 변화에 대한 성능 향상 결과를 관찰하였다.
Fig. 4 Example of an sample data with geometric transformation
4.2 실험 결과
CNN으로 학습한 입력 영상에 대하여 평행이동과 회전 변화를 시켰을 때의 실험을 수행하였다. 본 실험에서 수행한 기하학적 변화에 대한 요약을 표 1에 나타내었다. 여기서 평행 이동에서의 “-”는 왼쪽 방향, “+”는 올바른 방향으로 회전시킨 것을 나타낸다.
표 1. 식별 샘플에 대한 기하학적 변화
먼저 각각의 기하학적 변화를 주었을 때의 식별률에 대한 결과를 그림 5(a)∼(c)에 나타내었다. 여기에서 CNN의 형상 변화에 대한 불변성을 비교하기 위해 다층 퍼셉트론 (MLP)과 CNN(Support Vector Machine) 이용한 실험결과를 비교하였다. 그림 5(a)∼(c)에서와 같이 다층 퍼셉트론 방법보다 CNN 쪽이 기하학적 변화에 대한 강건성이 높다는 것을 알 수 있다.
Fig. 5 Change in misclassification rate due to geometric change
식별 샘플에 대한 기하학적 변화를 시켰을 때의 특징 맵을 그림 5로 표시하였다. 그림 5(a)는 수평축 이동량(픽셀량) 대비 수평이동에 따른 오식별율이 40%정도로 유지되고 있음을 알 수 있다. 그림 5(b)는 수평축 회전각 대비 회전에 대한 오식별율이 15% 정도로 유지되는 것을 알 수 있었다. 이 결과에서 1층째의 풀링 처리 결과는 미세한 변화를 흡수하고 2층째의 풀링 처리는 1층째에서 흡수 할 수 없었던 변화를 흡수하여 강건성을 확보하고 있는 것을 알 수 있었다.
5. 결론
본 논문에서는 인공지능 기반의 객체 인식을 위한 Convolutional Neural Network에 대한 이론적 배경과 강건성에 대한 실험적 근거를 제시하였다. Convolutional Neural Network을 이용한 숫자 데이터에 대한 이동과 회전에 대한 특징추출과 강건성을 실험적 결과로 제시하였다. 제시한 방법의 객관성을 확보하기 위한 MLP와 비교하여 성능의 우위를 보여주였다. Convolutional Neural Network을 대상으로 특징량의 학습이 식별에 효과를 검증하기 위해 특징량의 자동 생성 과정을 조사하고 자동 생성된 특징량의 효과를 제시하였다. 실험 결과 자동 생성된 특징량은 학습에 의해 식별에 유효한 특징량에 변화하고 자동 생성된 특징량은 기하학적 변화에 강건성을 이동과 회전에 대한 오차율 결과를 제시하였다.
사사
본 논문은 2019년도 정부(교육부)의 재원으로 한국연구재단의 지원을 받아 수행된 기초연구사업임(No. 2016R1D1A1B04932124).
References
- D. Rumelhart, G. Hintont, and R. Williams, "Learning representations by back-propagating errors," Nature, pp.533-536, (1986).
- A. Krizhevsky, I. Sutskever, and G. E. Hinton, "Imagenet classication with deep convolutional neural networks," Advances in Neural Information Processing Systems 25, pp.1106-1114, (2012).
- G. E. Hinton, N. Srivastava, A. Krizhevsky, I. Sutskever, and R. Salakhutdinov, "Improving neural networks by preventing co-adaptation of feature detectors," CoRR, vol. abs/1207.0580, (2012).
- N. Dalal, and B. Triggs, "Histograms of oriented gradients for human detection," International Conference on Computer Vision & Pattern Recognition, vol.2, pp.886-893, (2005).
- K.J Choi, "Optimization of Posture for Humanoid Robot Using Artificial Intelligence, "Journal of the Korean Society of Industry Convergence, vol.22, no.2, pp.87-93, (2019). https://doi.org/10.21289/KSIC.2019.22.2.87
- J.P. Lee, J.W. Lee, G.H. Lee, "A Scheme of Security Drone Convergence Service using Cam-Shift Algorithm," Journal of the Korean Society of Industry Convergence, vol.7, no.5, pp.629-34, (2016).
- S.J. Hong, Y.H. Cho," A System Implementation Based on Matlab and NET for Recognizing Facial Expression, "Conference of the Korean Society of Industry Convergence, pp.7-12, (2009).
- Y.J. Kim, H.J. Kim, J.Y. Han, S. Lee, "Classification of Tire Tread Wear Using Accelerometer Signals through an Artificial Neural Network," Journal of the Korean Society of Industry Convergence, vol.23, no.2, pp.163- 171, (2020).