Keras

CNN(Convolution Neural Network) Layer 이야기

이부일 2017. 12. 29. 16:45

import numpy as np

from keras.models import Sequential
from keras.layers import Dense
from keras.layers import Flatten
from keras.layers.convolutional import Conv2D
from keras.layers.convolutional import MaxPooling2D
from keras.utils import np_utils
from keras.utils.vis_utils import model_to_dot
from IPython.display import SVG

%matplotlib inline


# 모델 구성하기
model = Sequential()
model.add(Conv2D(2, (3, 3), padding = "same", activation = "relu", input_shape = (8, 8, 1)))
model.add(MaxPooling2D(pool_size = (2, 2)))
model.add(Conv2D(3, (2, 2), padding = "same", activation = "relu"))
model.add(MaxPooling2D(pool_size = (2, 2)))
model.add(Flatten())
model.add(Dense(8, activation = "relu"))
model.add(Dense(3, activation = "softmax"))


# 모델 출력하기
SVG(model_to_dot(model, show_shapes = True).create(prog = "dot", format = "svg"))

자동 대체 텍스트를 사용할 수 없습니다.


[출처] 블록과 함께하는 파이썬 딥러닝 케라스, 김태영 지음, DigitalBooks, p112~124