【发布时间】:2018-06-06 03:16:35
【问题描述】:
我使用 ModelCheckpoint 来保存最好的自动编码器模型如下:
checkpoint = ModelCheckpoint("ae_model", monitor='val_loss', verbose=1, save_best_only=True, mode='max')
callbacks_list = [checkpoint]
# encoder layer
encoded = Dense(128, activation='relu')(input)
encoder_output = Dense(10)(encoded)
# decoder layer
decoded = Dense(128, activation='relu')(decoded)
# construct the autoencoder model
autoencoder = Model(input=input_img, output=decoded)
# construct the encoder model
encoder = Model(input=input_img, output=encoder_output)
autoencoder.compile(loss='mse', optimizer='adam')
autoencoder.fit(x_train, x_train, epochs=100, batch_size=10,
shuffle=True, validation_split=0.33,
callbacks=callbacks_list)
但是,当保存了最好的自动编码器模型时,如何保存编码器模型?所以我可以像下面这样重用编码器模型。
from keras.models import load_model
encoder = load_model('encoder_model')
或者是否有其他方法可以将编码器与自动编码器模型分开?
from keras.models import load_model
autoencoder = load_model('autoencoder_model')
encoder = autoencoder.???
谢谢,
【问题讨论】:
标签: python keras autoencoder