합성곱 신경망(Convolution Neural Network) 이란 무엇일까요? 먼저 들어가기 전 간단한 요약을 보고 들어가겠습니다. 해당 요약을 잘 숙지해주시고 본문의 내용을 관심있게 뵈주시길 부탁드립니다. ⓐ 인간의 시신경을 모방(다중 퍼셉트론)하여 만든 딥러닝 구조 중 하나 ⓑ 합성곱을 이용하여 이미지의 공간적 특징을 유지 본 글을 시작하기 앞서 알아두면 좋은 내용을 추천한다. 경사 하강법 (Gradient descent) 오차역전파 (Back propagation) 합성곱 신경망(CNN)의 필요성 1998년 Yann LeCun, et. al.가 손 글씨 숫자를 인식하는 딥러닝 구조 LeNet-5를 발표하며 현재 합성곱 신경망의 초석이 되었습니다. 관련해서 자세한 내용은 논문 을 참고 부탁드리며, 향후 본 블로그에서 자세히 설명하도록 하겠습니다. 오늘은 합성곱 신경망의 핵심이 되는 합성곱(convolution)과 풀링(pooling), 플래튼에 대해서 살펴보도록 하겠습니다. 마지막으로 keras MNIST(Modified National Institute of Standards and Technology) 이미지 데이터를 활용한 파이썬 예제 코드를 공부하도록 하겠습니다. 우리가 알고 있는 일반적인 신경망의 학습은 입력층에서 은닉층을 거쳐갈수록 점점 복잡한 특징들을 학습해나갑니다. 일반적인 신경망의 학습과 별반 다르지 않게 합성곱 신경망 또한 모델(함수) 계수의 오차를 계산하고 오차 만큼 역 전파( 오차역전파 )하여 가중치를 조정해가는 학습 과정입니다. 여기서 다른 점은 일반 신경망에서는 특정 학습을 전 결합층(MLP, Fully-Connected Layer)에서 했다면, 합성곱 신경망에서는 합성곱층(convolution layer)에서 오차를 계산하고 오차만큼 역 전파하여 가중치를 조정하는 점 입니다. 이미지를 벡터로 변환한 결과 ( 출처 ) 그런데 이미지 학습에 있어서 전 결합층(MLP,...