tensorflow - keras 中的多个嵌入层

标签 tensorflow keras embedding word-embedding

使用预训练嵌入,我们可以将它们指定为 keras 嵌入层中的权重。要使用多个嵌入,指定多个嵌入层是否合适? IE。

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建议将它们总结起来并将它们表示为一个层,这不是我所追求的。

最佳答案

我遇到了同样的问题。是不是因为 keras.Embedding 层在内部使用某种对象(我们称之为 x_object),它在 keras.backend 全局 session K 中被初始化。
因此,第二个嵌入层会抛出一个异常,表示 x_object 名称已存在于图中并且无法再次添加。

关于tensorflow - keras 中的多个嵌入层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49805424/

相关文章:

Keras,仅针对验证数据打印指标

go - 使用堆栈跟踪创建自定义错误

c++ - "Embedding"一个文件夹进入C/C++程序

c++ - Python 和动态扩展 C++ 类

arrays - tflite 对象检测推理无法正常工作

tensorflow - 如何在不保存检查点的情况下运行 estimator.train

python - TensorFlow:如何处理图像分割中的无效标记数据?

python - 运行 fully_connected_feed.py 时出错

python - Tensorflow Keras 多输入模型

python - 在 Keras 中合并变量