조이쓰 2022. 2. 18. 22:13

강의 내용 Review


📍배운내용📍

  • Modules of Classifier
  • Convolutional Neural Networks

👉강의내용👈

Ch.01 딥러닝 네트워크의 연산

Lecture7. Convolutional Neural Networks

Modules of Classifier

  • Input 이미지를 그대로 넣으면 성능이 떨어짐, 그래서 피처로 만들어서 넣음
  • Feature Extractor : Convolutional Layers + Pooling Layer 
  • Classifier : Dense Layers
  • Convolutional Layers + Pooling Layer 를 플랫튼 하면 Dense Layer가 됨 
  • 피처추출 알고리즘은 많음, 어떤것을 사용하는가 생각하는게 중요
  • 피처 추출값은 같은 분류에 대해서는 비슷한 벡터값을 가져야함
  • 다른 분류값에대해서는 다른 벡터값을 가져야함  

Convolutional Neural Networks

  • 딥러닝에서는 Feature Extractor 파라미터를 연산함
  • 분류의 마지막에 소트프맥스를 사용해서 각 레이블에 대한 확률값을 구함 
  • 모델은 꼭 그림이나 테이블로 표현해서 그려야함!
  • Feature Extractor + Classifier + Loss Calculator

CNN 예제

import numpy as np 
import tensorflow as tf
from tensorflow.keras.layers import Conv2D

N, n_H, n_W, n_C = 1,5,5,3
n_filter = 3
k_size = 4
images = tf.random.uniform(minval=0, maxval=1, shape=(N, n_H, n_W, n_C))

# Forward Propagation(Tensorflow)
conv = Conv2D(filters = n_filter, kernel_size = k_size)
Y = conv(images)
# print(Y.shape)
Y = np.transpose(Y.numpy().squeeze(), (2,0,1))
# print(Y.shape)
print("Y(Tensorflow): \n", Y)

W, B = conv.get_weights()

# Forward Propagation(Manual)
images = images.numpy().squeeze()
Y_man = np.zeros(shape=(n_H - k_size +1, n_W - k_size +1, n_filter))

for c in range(n_filter):
    c_W = W[:,:,:,c]
    c_b = B[c]
    for h in range(n_H - k_size +1):
        for j in range(n_W - k_size + 1):
            window = images[h:h+k_size, j:j+k_size, :]
            conv = np.sum(window*c_W) + c_b
            Y_man[h,j,c] = conv
print("Y(Manual): \n", np.transpose(Y_man, (2,0,1)))

공부사진 


강의듣기
강의 필기

 

26일차 후기


챕터1 부분을 다들었다. 생각보다 강의 진도가 잘 안나간다ㅠㅠ
얼른 얼른 들어야지

 

 

 

https://bit.ly/37BpXiC

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.