CNN은 이미지에 주로 사용되는 것이라 볼 수 있다. 하지만 최근에는 이미지 뿐만 아니라 자연어처리에도 사용되고 여러 분야에서 다양하게 CNN을 활용한다. CNN은 convolution layer를 겹겹이 쌓아 분류 문제의 경우 class 만큼의 output을 만들어 낸다. CNN을 하기 위해서는 기본적으로 filter라는 개념을 짚고 넘어가야 한다. filter는 input데이터를 필터사이즈 만큼 곱해서 하나의 output을 출력하게 된다. 이 경우 해당 filter size만큼의 값들이 추출된다. 일반적으로 input 을 넣고 filter를 지난 후 nonlinear function(ReLU와 같은)을 거쳐 출력되며 padding이나 stride를 조정해 output 이미지의 사이즈를 조절할 수 있다..