곰퓨타 2021. 3. 10. 11:25

이는 부스트코스의 강의를 참고하였다 .

www.boostcourse.org/ai214/lecture/43768/?isDesc=false

 

파이토치로 시작하는 딥러닝 기초

부스트코스 무료 강의

www.boostcourse.org

 

내 사진을 분류하는 deep learning model 만들기

<layer1>

Convolution layer : rgb 3 channel을 받아서, 출력사이즈는 6 channel로, kernel size는 5x5로 하고, padding 은 주지 않고, stride = 1로 하고자 함

maxpool layer : kernel_size = 2(2X2), stride =2 

 

<layer2>

Convolution layer : 앞에서 6 channel size로 나왔으므로 in_c = 6이고, out_c = 16으로 하고 kernel_size=5 (5x5)로 함. 

 

<layer3>

view를 통해 flat하게 만들어준다. (batch_size x [16,13,29] (channel, height, width) => batch_size x [6032])

(initial) 64x128 

(layer1) {((64-5)/1)+1} x {((128-5)/1)+1} = 60 x 124 -> maxpooling 30x 62

(layer2) {((30-5)/1)+1} x {((62-5)/1) + 1} = 26 x 58 -> maxpooling 13 x 29

(layer3 ) batch_size x [16,13,29] => batch_size x [16*13*29] = batch_size x [6032]

fully_connect layer => (input = 6032, output= 120)

fully_connect layer => (input = 120 , output=2)

 

 

10-4-1에서 로드한 데이터를 불러와 모델을 생성한 코드는 아래 github에 자세히 나와있다 !

모델을 생성하는 코드 및 모델을 불러오는 코드도 제시되어 있다 .

github.com/deeplearningzerotoall/PyTorch/blob/master/lab-10_4_2_ImageFolder_2.ipynb