Normalization Layers, Transfer Learning

nauna·2021년 9월 24일
0

딥러닝 입문

목록 보기
9/9

Normalization Layers

Batch Normalization

Covariant shift
: a change in the distribution of functions domain

어떤 batch가 input으로 들어가도 항상 균일한 input이 될 수 있게끔 normalization 작업이 필요
weight update와 관계없이 일관된 input으로 node에 들어가서 node가 혼란스러워하지 않게 만드는 것

feature별로 정규화하여 feature 수 만큼의 평균과 분산 계산

  • Normalized x
  • Output

    -> β와 γ가 μ와 σ를 일정하게 유지시켜줌

Layer Normalization

data별로 정규화를 하여 batch_size만큼의 평균과 분산 계산

Transfer Learning

pretrained weight를 사용하는 것
low level의 feature는 image net filter(weight)를 사용하여 추출

  • 딥러닝의 한계와 극복
  1. Data가 많이 필요
    -> 이미 거대한 양의 data에 pretrained 된 모델이다.
  2. train에 소요되는 시간
    -> transfer learning하는 모델의 일부 layer를 freeze
    -> 처음부터 해당 구조의 모델을 train하는 것보다 적은 시간 소요
  • transfer learning 전략의 2가지 기준
  1. data의 크기
  2. data간의 유사성

모델 종류

Cifar 10

from tensorflow.keras.datasets import cifar10

VGG16

from tensorflow.keras.applications.vgg16 import VGG16
vgg16 = VGG16(weights='imagenet')

ResNet50

from tensorflow.keras.applications.resnet import ResNet50
resnet50 = ResNet50(weights='imagenet')

0개의 댓글