Python TypeError:无法将SparSetSensor类型的对象转换为Tensor
我正在为imdb情感分析数据集构建一个文本分类模型。我下载了数据集,并遵循此处给出的教程- 我得到的错误是Python TypeError:无法将SparSetSensor类型的对象转换为Tensor,python,keras,Python,Keras,我正在为imdb情感分析数据集构建一个文本分类模型。我下载了数据集,并遵循此处给出的教程- 我得到的错误是 TypeError: Failed to convert object of type <class 'tensorflow.python.framework.sparse_tensor.SparseTensor'> to Tensor. Contents: SparseTensor(indices=Tensor("DeserializeSparse:0",
TypeError: Failed to convert object of type <class 'tensorflow.python.framework.sparse_tensor.SparseTensor'> to Tensor. Contents: SparseTensor(indices=Tensor("DeserializeSparse:0", shape=(None, 2), dtype=int64), values=Tensor("DeserializeSparse:1", shape=(None,), dtype=float32), dense_shape=Tensor("stack:0", shape=(2,), dtype=int64)). Consider casting elements to a supported type.
你可以找到一个类似的公开问题
建议的解决方案是使用Tensorflow版本2.1.0和Keras版本2.3.1。我还收到了错误消息
TypeError: Failed to convert object of type <class 'tensorflow.python.framework.sparse_tensor.SparseTensor'> [...]
(虽然速度似乎很慢,但我不得不限制训练样本。)
编辑:
当我删除这一行(而不是添加.todense()
)时,它似乎也能工作:
model.add(Dropout(rate=dropout_rate, input_shape=x_train.shape[1:]))
有关更多详细信息,请参阅本讨论:
x_train = vectorizer.fit_transform(train_texts).todense()
x_val = vectorizer.transform(val_texts).todense()
model.add(Dropout(rate=dropout_rate, input_shape=x_train.shape[1:]))