前提・実現したいこと
InceptionV3をファインチューニングし,画像分類(分類数 : 300)をGPUにて学習させていますが,
accuracyは,98%と高くなっていますが,val_accuracyは,35%と低く,
lossは,順調に下がっていますが,val_lossは変動しており,過学習が発生しています.
学習用と検証用の精度の乖離が大きい原因と改善方法について教えてください.
・データの読み込み:ImageDataGeneratorをflow_from_directoryでディレクトリ配下を読み込み
・Epoch数:5
・optimizer : Adam(amsgrad=True)
該当ソースコード
python
1top_model = InceptionV3(weights='imagenet', include_top=False, input_tensor=(299, 299, 3)) 2x = top_model.output 3x = GlobalAveragePooling2D()(x) 4x = Dense(512, activation='relu')(x) 5x = BatchNormalization()(x) 6predictions = Dense(classifies_num, activation='softmax')(x) 7model = Model(inputs=top_model.input, outputs=predictions) 8for layer in top_model.layers: 9 layer.trainable = False
フォルダ構成
train/ 各フォルダ300枚 0001/ ×××1.jpg ×××2.jpg 0002/ ×××3.jpg 0003/ ×××4.jpg validation/ 各フォルダ75枚 0001/ ○○○1.jpg 0002/ ○○○2.jpg 0003/ ○○○2.jpg
あなたの回答
tips
プレビュー