프로젝트/코드프레소 체험단

이미지 데이터 처리를 위한 CNN 완벽 가이드 - Keras의 CNN API

KimCookieYa 2022. 3. 5. 14:56

Convolution layer

tf.keras.layers.Conv2D(
	filters, kernel_size, strides=(1, 1), padding='valid', activation=None, ...
    **kwargs
)

'''
filters : 필터의 개수
kernel_size : tuple. 필터의 크기
strides : default=(1,1). 필터를 이동시킬 값
padding : valid(패딩X)/same(원본과 동일한 출력이 나오도록 패딩O)
activation : Feature Map을 Activation Map으로 변환시키는 함수
'''

 

 

Pooling layer

# Sub sampling
# 일반적으로 Average보다 Max Pooling을 많이 쓴다.

tf.keras.layers.MaxPool2D(
	pool_size=(2,2), strides=None, padding='valid', data_fotmat=None,
    **kwargs
)

'''
pool_size : convolution 결과에서 얼마만큼 압축할지의 값
strides : stride
padding : valid(패딩X)/same(패딩O)
data_format : 중요X
'''

 

 

Loss function

 - label 데이터의 종류에 따라 loss function이 달라진다

 - sparse_categorical_crossentropy : label-encoding

 - binary_crossentropy : label-encoding

 - categorical_crossentropy : one-hot-encoding

model.compile(optimizer='rmsprop', loss='binary_crossentropy', metrics=['accuracy'])