kerasでpix2pixのモデルを実装しようと試みている初学者です。
あるサイトに掲載されているサンプルコードを参考にしています。
その中で、以下の3つのモデルが定義されコンパイルされています。
Python
1generator_model.compile(loss='mae', optimizer=opt_discriminator) 2 3DCGAN_model.compile(loss=loss, loss_weights=loss_weights, optimizer=opt_dcgan) 4 5discriminator_model.compile(loss='binary_crossentropy', optimizer=opt_discriminator)
これらを含んだ「pix2pixモデル」を学習させた後、重みを含めたモデルの保存を行い、テストしたいと考えています。
その際、例えば下記のように1つ1つ別々にモデルを保存することはできますが、
Python
1generator_model.save('generator.h5') 2 3DCGAN_model.save('DCGAN.h5') 4 5discriminator_model.save('discriminator.h5')
学習後に、保存されたこれらのモデルを全て使ってテストすることは可能でしょうか?
もしくは、3つのモデルを1つにまとめてから学習させ、保存し、テストした方がよいのでしょうか。
こうした複数モデルの保存とテストの方法を教えて頂けますと非常に助かります。
何卒よろしくお願い致します。
該当のソースコード
Python
1def train(): 2 # load data 3 rawImage, procImage, rawImage_val, procImage_val = load_data(datasetpath) 4 5 img_shape = rawImage.shape[-3:] 6 patch_num = (img_shape[0] // patch_size) * (img_shape[1] // patch_size) 7 disc_img_shape = (patch_size, patch_size, procImage.shape[-1]) 8 9 # train 10 opt_dcgan = Adam(lr=1E-3, beta_1=0.9, beta_2=0.999, epsilon=1e-08) 11 opt_discriminator = Adam(lr=1E-3, beta_1=0.9, beta_2=0.999, epsilon=1e-08) 12 13 # load generator model 14 generator_model = load_generator(img_shape, disc_img_shape) 15 # load discriminator model 16 discriminator_model = load_DCGAN_discriminator(img_shape, disc_img_shape, patch_num) 17 18 generator_model.compile(loss='mae', optimizer=opt_discriminator) 19 discriminator_model.trainable = False 20 21 22 DCGAN_model = load_DCGAN(generator_model, discriminator_model, img_shape, patch_size) 23 24 loss = [l1_loss, 'binary_crossentropy'] 25 loss_weights = [1E1, 1] 26 DCGAN_model.compile(loss=loss, loss_weights=loss_weights, optimizer=opt_dcgan) 27 28 29 30 discriminator_model.trainable = True 31 discriminator_model.compile(loss='binary_crossentropy', optimizer=opt_discriminator)
補足情報(FW/ツールのバージョンなど)
これらモデルは「functional API」を使用して定義されております。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。