본문 바로가기
필기 노트/처음 배우는 딥러닝 수학

[딥러닝 기초] 합성곱 신경망(CNN) - 2

by misconstructed 2020. 7. 13.
728x90

안녕하세요 :)

오늘은 저번 게시물에서 마저 다루지 못한 합성곱 신경망에 대해서 더 다뤄보겠습니다.

이전 게시물을 아직 보지 못하셨으면 여기를 클릭해주세요!

이번 게시물에서는 이전에 다룬 유닛의 오차를 합성곱 신경망에서 어떻게 사용할 것인지에 대해서 알아보겠습니다.

합성곱 신경망

합성곱 신경망에서 유닛의 오차(δ)

합성곱 신경망에서는 두 가지 종류의 유닛의 오차가 존재합니다.

  1. 합성곱층의 유닛의 오차
  2. 출력층의 유닛의 오차

합성곱층과 출력층에 대해서 서로 다른 방법으로 유닛의 오차를 사용하게 됩니다.

1. 출력층 유닛

출력층 유닛의 기울기 성분

유닛의 오차를 이용해서 출력층 유닛의 기울기 성분을 표현해보겠습니다.

출력층을 간략하게 그려보면 다음과 같습니다.

출력층 이미지

유닛의 오차(δ)를 이용해서 출력층 유닛의 기울기 성분을 표현하면 다음과 같습니다.

출력층 유닛의 기울기

출력층 유닛의 오차

출력층의 활성화 함수를 a() 라고 가정하고, 제곱오차를 사용한다고 가정했을 때, 

출력층 유닛의 오차는 다음과 같이 정의할 수 있습니다.

2. 합성곱층 유닛

합성곱층 유닛의 기울기 성분

합성곱 수행 과정

이전에 다룬 합성곱층의 수행 과정에 대해서 다시 정리해보겠습니다.

위의 그림과 같은 과정을 통해서 구해진 합성곱(c)에 고유한 편향을 더하면 가중입력(z)를 구할 수 있습니다.

가중입력 z를 수식으로 표현하면 다음과 같습니다.

합성곱층의 가중입력

합성곱층 유닛의 기울기 성분을 유닛의 오차를 이용해서 표현하면 다음과 같습니다.

합성곱층 유닛의 기울기 성분

합성곱층 유닛의 오차

합성곱층의 유닛의 오차를 구해보겠습니다.

합성곱층 - 풀링층 - 출력층으로 신경망이 구성되어 있다고 가정하겠습니다.

신경망 구조 예시

신경망이 위 그림과 같이 구성되었을 때, 합성곱층 유닛의 오차(δ)는 다음과 같이 구할 수 있습니다.

위와 같은 방식으로 유닛의 오차를 구하면, 직접 미분을 수행하지 않아도 합성곱층 유닛의 오차를 구할 수 있습니다.


처음 배우는 딥러닝 수학
국내도서
저자 : 와쿠이 요시유키,와쿠이 사다미 / 박광수역
출판 : 한빛미디어 2018.02.01
상세보기

<처음 배우는 딥러닝 수학>을 읽으면서 개인적으로 정리한 내용입니다.

제가 잘못 이해했거나, 수정이 필요한 부분에 대한 피드백은 언제든지 환영입니다.

감사합니다 :)

728x90

댓글