Tensorflow报错:InvalidArgumentError:indices[401,33] = 77571 is not in [0, 10000)

在进行影评文本分类时,遇到一个报错,记录下解决过程。

报错信息:

InvalidArgumentError

indices[401,33] = 77571 is not in [0, 10000)

[[{{node embedding/embedding_lookup}} = ResourceGather[Tindices=DT_INT32, dtype=DT_FLOAT, validate_indices=true, _device="/job:localhost/replica:0/task:0/device:CPU:0"](embedding/embeddings, embedding/Cast)]]

后在github上看了这边帖子帖子,再分析了一下编写的RNN代码流程:

1、首先RNN网络第一层定义的的输入是10000

vocab_size = 10000
 
model = tf.keras.Sequential()
model.add(tf.keras.layers.Embedding(vocab_size, 16))
model.add(tf.keras.layers.GlobalAveragePooling1D())
model.add(tf.keras.layers.Dense(16, activation=tf.nn.relu))
model.add(tf.keras.layers.Dense(1, activation=tf.nn.sigmoid))
 
model.summary()

2、后续进行模型训练的时候,传入的数据为15000 * 256长度的

# train_data.shape = (25000, 256)
# train_labels.shape = (25000,)
 
x_val = train_data[:10000]
partial_x_train = train_data[10000:]
 
y_val = train_labels[:10000]
partial_y_train = train_labels[10000:]
 
history = model.fit(partial_x_train,
                    partial_y_train,
                    epochs=40,
                    batch_size=512,
                    validation_data=(x_val, y_val),
                    verbose=1)

3、实际输入的长度与网络定义的长度不符,导致该错误发生

Tensorflow报错:InvalidArgumentError:indices[401,33] = 77571 is not in [0, 10000)_Jayden Huang的博客-CSDN博客_invalidargumenterror:

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值