通过预先训练的嵌入,我们可以将它们指定为keras嵌入层中的权重。要使用多个嵌入,指定多个嵌入层是否合适?即
embedding_layer1 = Embedding(len(word_index) + 1,
EMBEDDING_DIM,
weights=[embedding_matrix_1],
input_length=MAX_SEQUENCE_LENGTH,
trainable=False)
embedding_layer2 = Embedding(len(word_index) + 1,
EMBEDDING_DIM,
weights=[embedding_matrix_2],
input_length=MAX_SEQUENCE_LENGTH,
trainable=False)
model.add(embedding_layer1)
model.add(embedding_layer2)This建议将它们总结起来,并将它们表示为一个层,这不是我想要的。
发布于 2020-07-08 22:45:37
我遇到了同样的issue.Is it,因为keras.Embedding层内部使用了某种对象(让我们称之为x_object ),该对象在keras.backend全局会话K中初始化。因此,第二个嵌入层抛出一个异常,说明x_object名称已经存在于图中,不能再次添加。
发布于 2021-01-12 15:46:31
如果你想在一个模型中使用多个嵌入层,答案就在这个线程Multiple Embedding layers for Keras Sequential model中
https://stackoverflow.com/questions/49805424
复制相似问题