小编qia*_*iao的帖子

类型错误:传递给参数“索引”的值的数据类型 float32 不在允许值列表中:int32、int64

我使用 Keras 构建模型,模型中有两个输入,其数据类型为“int32”。然后我使用 keras Lamba 层通过 K.gather(reference,indexs) 在嵌入矩阵中查找。我看到索引应该是 int 张量,我认为我的代码满足这一点,我不知道为什么会出现错误。我真的需要帮助!

    input_A = Input(batch_shape=(128,1),name='A_input',dtype='int32')
    input_B = Input(batch_shape=(128,1),name='B_input',dtype='int32')

    input_A_ = Lambda(lambda x:K.reshape(x,(-1,)))(input_A)
    input_B_ = Lambda(lambda x:K.reshape(x, (-1,)))(input_B)

    input_A__ = Lambda(lambda x:K.cast(x,dtype='int32'))(input_A_)
    input_B__ = Lambda(lambda x:K.cast(x,dtype='int32'))(input_B_)

    embedded_text_A = Lambda(lambda x:K.gather(M1,x))(input_A__)
    embedded_text_B = Lambda(lambda x:K.gather(M1,x))(input_B__)
Run Code Online (Sandbox Code Playgroud)

python keras

5
推荐指数
1
解决办法
7331
查看次数

标签 统计

keras ×1

python ×1