더북(TheBook)

코드 5-20 라이브러리 호출 및 ResNet50 내려받기

import tensorflow_hub as hub
model = tf.keras.Sequential([
          hub.KerasLayer("https://tfhub.dev/google/imagenet/resnet_v2_152/feature_vector/4",
                         input_shape=(224,224,3),
                         trainable=False),
          tf.keras.layers.Dense(2, activation='softmax') ------ 사전 훈련된 모델을 가져와서 밀집층(완전연결층)을 추가
])

훈련과 검증 데이터셋을 충분히 확보하기 위해 ImageDataGenerator를 사용하여 데이터를 확장합니다.

코드 5-21 데이터 확장

train = ImageDataGenerator(
                 rescale=1./255,
                 rotation_range=10,
                 width_shift_range=0.1,
                 height_shift_range=0.1,
                 shear_range=0.1,
                 zoom_range=0.1)

train_generator = train.flow_from_directory(train_dir,
                                            target_size=(image_height, image_width),
                                            color_mode="rgb",
                                            batch_size=BATCH_SIZE,
                                            seed=1,
                                            shuffle=True,
                                            class_mode="categorical")

valid = ImageDataGenerator(rescale=1.0/255.0)
valid_generator = valid.flow_from_directory(valid_dir,
                                            target_size=(image_height, image_width),
                                            color_mode="rgb",
                                            batch_size=BATCH_SIZE,
                                            seed=7,
                                            shuffle=True,
                                            class_mode="categorical")

model.compile(loss='binary_crossentropy',
              optimizer='adam',
              metrics=['accuracy'])
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.