Exemplo n.º 1
0
ssd = SSD(model_name, mode='training')

#モデル構造を表示
#ssd.model.summary()

#画像データが格納されているディレクトリと対応する学習用データと検証用データに対するメタデータを指定する.
train_images_dir = os.path.join('train_data', 'train_images')
val_images_dir = os.path.join('train_data', 'train_images')
train_annotation_path = os.path.join('train_data', 'train_annotations.json')
val_annotation_path = os.path.join('train_data', 'val_annotations.json')

#学習用と検証用でデータ生成器を``set_generator``メソッドで作成する.
#あらかじめ``batch_size``を決めておく. ここでは16にしておく.

batch_size =16
ssd.set_generator(train_images_dir, train_annotation_path, batch_size, val_images_dir, val_annotation_path)


#設定
epochs = 10

#まず``ModelCheckpoint``モジュールで``model_checkpoint``オブジェクトを作成する.
#これはepochごとにモデルを保存するモジュールである.
#``filepath``でパス名を指定する.
#今回の場合はsaved_modelsディレクトリ以下にモデルが保存される形とする.
#``monitor``でモニターする値(検証時のaccuracyやloss)を指定する.
#今回は検証時の損失'val_loss'とする.
#``save_best_only``は, Trueにするとモニターする値において
#現状で1番よい結果を出した場合のみモデルが保存される.

from keras.callbacks import ModelCheckpoint