본문 바로가기

Machine, Deep Learning/Machine, Deep Learning 용어 설명

컨볼루션 신경망 (CNN, Convolutional Neural Network)

반응형
SMALL

컨볼루션 신경망은 입력된 이미지에서 다시 한번 특징을 추출하기 위해 마스크(필터, 윈도 또는 커널이라고도 합니다)를 도입하는 기법입니다. 예를 들어서 3x3 마스크를 미리 준비합니다. 각 칸에는 가중치가 들어있습니다. 그 가중치의 값을 곱해서 새로운 Convolved Feature을 만들어 냅니다. 이렇게 만들어진 층을 컨볼루션(합성곱)이라고 부릅니다.

앞서 구현한 컨볼루션 층을 통해 이미지 특징을 도출했지만, 그 결과가 여전히 크고 복잡하면 이를 다시 한번 축소해야합니다. 이 과정을 풀링(pooling) 또는 서브 샘플링(sub sampling)이라고 합니다.

풀링 기법 중 맥스 풀링(max polling)을 가장 많이 씁니다. 정해진 구역 안에서 가장 큰 값만 다음 층으로 넘기고 나머지는 버립니다.

이런 특징을 가진 층을

이렇게 재가공 합니다.

또한, 노드가 많아지거나 층이 많아진다고 해서 학습이 무조건 좋아지는건 아닙니다. 왜냐하면 과적합(overfitting)이 일어날 수 있기 때문입니다. 그래서 나온 방법이 드롭아웃(drop out) 기법입니다. 랜덤하게 노드를 끔으로써 학습 데이터에 지나치게 치우쳐 과적합이 발생하는 상황을 막을 수 있습니다.


이상 컨볼루션 신경망(CNN, Convolutional Neural Network)였습니다. ^_^

반응형
LIST