2016년 5월 31일 화요일

컨볼루셔널 뉴럴넷 (Convolutional Neural Network)


정말 오랜만에 T-Robotics 글로 찾아뵙습니다. (오랜만에 한글로 블로깅을 하니 속이 다 시원하네요 ㅎㅎ) 오랜만에 T-Robotics에 들어와 통계를 보니 여전히 잘 팔리는(?) 글은 딥러닝의 소개에 대한 글이더군요. 물론 최고 조회수의 글은 알파고에 대한 얘기였지만, 그건 한 때의 붐이었을 뿐이고 현재까지도 가장 잘 팔리는 글은 바로 딥러닝에 대한 이야기였습니다.
[Link]  쉽게 풀어쓴 딥러닝의 거의 모든 것
흥행에는 이 메인 사진의 역할도 컸던 듯... (출처)

"쉽게 풀어쓴 딥러닝" 이야기에서도 언급했 듯 딥러닝 연구들을 방법에 따라 크게 세 부류로 나누자면 좋은 피쳐를 찾기 위한 RBM, Autoencoder 등의 Unsupervised Learning과 이미지 인식, 자연어 처리 등 다양한 분야에서 혁신적 성과를 얻고 있는  Convolutiontional Neural Network (CNN), 그리고 시퀀스 데이터에 적합한 Recurrent Neural Network (RNN)를 들 수 있겠는데요, 그 중에 으뜸을 꼽으라면 역시 CNN을 꼽을 수 있겠죠. 그런데 왜 이렇게 CNN이 성공적인 효과를 내는 것일까요? 저는 그런 의문이 들었고 CNN의 핵심인 'Convolution이란 무엇인가'에 대해 좀더 이해하고 싶었습니다. 그래서 이 블로그 글을 시작합니다. Convolutional Neural Network에 대한 이해!