使用Keras載入含有自定義層或函式的模型操作

2021-10-12 22:03:17 字數 1113 閱讀 1192

更多程式設計教程請到:菜鳥教程

高州陽光論壇

人人影視

當我們匯入的模型含有自定義層或者自定義函式時,需要使用custom_objects來指定目標層或目標函式。

例如:

我的乙個模型含有自定義層「sincconv1d」,需要使用下面的**匯入:

from keras.models import load_model

model = load_model('model.h5', custom_objects=)

如果不加custom_objects指定目標層layer,則會出現以下報錯:

valueerror: unknown layer: sincconv1d

同樣的,當我的模型含有自定義函式「my_loss」,需要使用下面的**匯入:

from keras.models import load_model

model = load_model('model.h5', custom_objects=)

補充知識:keras載入模型load_model報錯——valueerror: unknown layer: crf

我就廢話不多說了,大家還是直接看**吧!

from keras.models import load_model

model = load_model(model_path)

會報錯,需要在load_model函式中新增custom_objects引數,來宣告自定義的層

(用keras搭建bilstm-crf,在訓練模型時,使用的是:

from keras_contrib.layers.crf import crf)

from keras_contrib.layers.crf import crf, crf_loss, crf_viterbi_accuracy

model = load_model(model_path, custom_objects=)

Keras載入含有自定義層或函式的模型

當我們匯入的模型含有自定義層或者自定義函式時,需要使用custom objects來指定目標層或目標函式。例如 我的乙個模型含有自定義層 sincconv1d 需要使用下面的 匯入 from keras.models import load model model load model model....

Keras 自定義層

keras自定義或者重寫層,需要實現三個方法 問題 參考 keras 自定義層 最後舉乙個conditional layer normalization的例子 基於conditional layer normalization的條件文字生成 自定義層需要實現三個方法 class layernorma...

keras自定義層

keras學習筆記 二 keras實現自定義層 例1,參考博文1中的自定義層attentiondecoder。def build self,input shape for model details that correspond to the matrices here.self.batch si...