CNN(Convolution Neural Network) 이용하기
실습 환경은 Python 3.6과 tensorflow 1.5이다. CNN(합성곱 신경망) 이미지 인식 분야에 주로 사용되는 신경망. 기본적으로 컨볼루션 계층과 풀링 계층으로 구성된다. 컨볼루션(합성곱) 계층 2차원 평면 행렬에서 지정된 윈도우의 값에 가중치와 편향을 적용해 하나의 값으로 압축하는 계층 한 윈도우당, 가중치는 윈도우의 크기와 같은 가중치를 곱해야 한다. 편향은 1개만 있으면 된다. ex) 28x28 입력층(이미지)에 대하여 3x3의 윈도우를 구성했을 때 필요한 최소 가중치의 개수는 3x3 9개, 편향의 개수는 9개이다. 왜 최소라고 적었냐면, 윈도우가 이동할 때 몇 칸씩 이동하냐에 따라 필요한 윈도우 개수가 달라지기 때문이다. 이 이동 범위를 우리는 스트라이드(stride)라고 부른다. 또..