例如,我试图将位置信息“索引”嵌入到某些矢量中,并在Keras中使用
inputs = Input(shape=(23,))
通常将23表示为要素数量。我想将特征的位置嵌入为一个二维矢量,从位置0到位置22。
但是我不知道如何获取要素的位置索引(我想为keras层添加“枚举”等功能)
pos = K.constant([[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]])
embedding_pos = Embedding(23, 1)(pos)
我实际上将这个embedding_pos与输入相乘,其余算法继续进行。
但我收到此消息
AttributeError:“ NoneType”对象没有属性“ _inbound_nodes”
如果我摆脱了该嵌入层和乘法层,该算法就可以正常工作。我应该如何使用输入要素的位置索引来获取嵌入向量?
======
添加更多信息后,我在各个图层之间移动以查看model.summary(),看起来它的形状为embedding_pos = [None,1],缺少批处理大小。
我认为使用'Constant'不好。我想知道角膜层是否有某种“枚举”功能
=====
根据请求,示例输入如下
批量大小x特征数量= 1 x 10
[[1.0, 4719.0, 0.0001, 472818.44, 958, 6402818., 1.828, 24.321, 55.0, 127.44]]
以此类推...
我想获取功能的索引
[[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]]
将此值用作嵌入的输入。
但是,如果我使用常量,则它不知道批量大小。