Python 加载模型时未定义Keras连接

Python 加载模型时未定义Keras连接,python,keras,deep-learning,Python,Keras,Deep Learning,在我的一个lambda层中,我使用keras.layers import concatenate中的来连接两个张量,它在训练过程中没有任何问题,我成功地保存了模型文件 但是,当我加载模型时,它会抛出以下错误: NameError:未定义名称“连接” 有人知道可能出了什么问题吗?在加载模型之前,我已经导入了连接 lambda层如下所示: def concat_l1_l2(vests): l1, l2 = vests l1 = K.l2_normalize(l1, axis=-1)

在我的一个lambda层中,我使用keras.layers import concatenate中的
来连接两个张量,它在训练过程中没有任何问题,我成功地保存了模型文件

但是,当我加载模型时,它会抛出以下错误:

NameError:未定义名称“连接”

有人知道可能出了什么问题吗?在加载模型之前,我已经导入了连接

lambda层如下所示:

def concat_l1_l2(vests):
    l1, l2 = vests
    l1 = K.l2_normalize(l1, axis=-1)
    l2 = K.l2_normalize(l2, axis=-1)
    return concatenate([l1, l2])

也许下面这些会解决你的问题。 尝试将您的肋函数传递给keras的载荷函数,即

load(model_path,{"concat_l1_l2":concat_l1_l2})

我在从json文件加载模型时也遇到了同样的问题,请尝试以下代码行(这对我很有用):


一个可能的问题是,您的一个脚本名为
keras
keras.layers
-请先仔细查看您的命名。谢谢您的回答,但我没有这样的脚本名..错误来自keras.models中的json中的model_函数,直到相同的错误。。。错误来自keras.modelst中的json中的model_中的函数这很奇怪。。。你是否尝试过将模型保存并加载为.h5文件?是的,我尝试过。。我试着用两种不同的方式连接、连接和保存模型(json和权重,整个模型)。。他们都给了我那个错误好吧。。。现在是随机猜测。。。您是否尝试这样导入:导入keras.layers.concatenate?
from keras.layers import concatenate
model_from_json(model_file, custom_objects={'concatenate': concatenate})