Gidhub BE Developer

ConvNet의 Conv 레이어 만들기

2018-02-22
goodGid


ConvNet의 Conv 레이어 만들기

자동차란 이미지가 있다.

자동차 이미지를 잘라서

하나의 입력으로 넣게 된다.


CONV 레이어라고 부른다.

그 오른쪽은 RELU 레이어라 부른다.

FC(Fully Connected)는

최종적인 Labling을 하게 된다.


Start with an image ( width x height x depth)

이미지 크기가 32 x 32 이고

Color이기 때문에 3가지의 RGB가 있다.

그리고 이런 작업을 통해서

1개의 값을 뽑아낸다.


전체 이미지를 하나의 입력으로 받지 않고

이미지의 일부분만 처리한다.

처리한다는건 여기서 filter라는 개념을 갖고 설명한다.


그리고 filter가 하는건

2번째 사진을 보면

Wx + b라는 작업을 통해

1개의 값을 뽑아낸다.


같은 filter로 다른 부분의 이미지를 봐야한다.


옆,아래로 움직이면서

각각 값들을 구한다.

하나의 filter로 (= 같은 w)

전체 이미지를 훑는다.

그리고 각각의 점에 해당하는 1개의 값을 갖고 온다.


그렇다면
How many numbers can we get
우리는 몇개의 점(=값)을 갖고와야 하는가?


구하는 방식은 어렵지 않다.

단순 계산이다.

정리를 하자면 다음과 같다.

그런데 이렇게 작아질수록

우리는 어떤

정보를 잃게 된다.


그래서 실제로 사용할 때는 다음과 같이 한다.

padding이라는 개념을 사용한다.

테두리에 0으로 값을 두른다.

그 이유는

  1. 그림이 급격하게 작아지는 것을 방지

  2. 모서리부분을 알려준다.


filter의 수를 늘려보자


Convolution layers

가운데 Activation Map의

weight variable의 수는

5 x 5 x 3 x 6 = 450


Comments

Content