簡體   English   中英

無法加載 keras model 與未知自定義 lambda 丟失 ZC1C425268E68385D1AB507ZF41A7

[英]can't load keras model with unknown custom lambda loss function

我的 model 看起來像

Keras中的單個output多個損失函數: https://stackoverflow.com/a/51705573/9079093

model = Model(inputs=[sketch_inp, color_inp], outputs=disc_outputs)

opt = Adam(lr=learning_rate, beta_1=.5)



model.compile(loss=lambda y_true, y_pred : tf.keras.losses.binary_crossentropy(y_true, y_pred) + \
                                                 pixelLevelLoss_weight * pixelLevelLoss(y_true, y_pred) + \
                                                 totalVariationLoss_weight * totalVariationLoss(y_true, y_pred) + \
                                                 featureLevelLoss_weight * featureLevelLoss(y_true, y_pred),\
                    optimizer=opt)

保存 model 后,我想加載它並完成訓練,但我不知道如何用這個自定義損失 function 加載它

在加載 model 時,只需使用 cutom_objects 參數來傳遞損失。

如果您要加載的 model 包含自定義層或其他自定義類或函數,您可以通過custom_objects參數將它們傳遞給加載機制:

from keras.models import load_model
# Assuming your model includes instance of an "AttentionLayer" class
model = load_model('my_model.h5', custom_objects={'AttentionLayer': AttentionLayer})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM