首页 > 解决方案 > Keras Tokenizer.texts_to_sequences 返回列表列表而不是 np.array

问题描述

我正在为 IMDB 电影评论数据集构建情感分类器,并使用带有 Keras 的 LSTM 层。问题是我无法获得神经网络的正确输入类型(又名。numpy array

这就是我正在做的

xtrain,xtest,ytrain,ytest = model_selection.train_test_split(reviews,review_sent,test_size=0.2,stratify=review_sent)

t = Tokenizer(oov_token=0)

t.fit_on_texts(texts=xtrain)

train_seq = t.texts_to_sequences(xtrain)
test_seq = t.texts_to_sequences(xtest)

type(train_seq)
#returns 'list' of len(xtrain) 

其中评论是评论的字符串,review_sent是一个二进制变量(目标)

列表的每个元素也是一个列表,数字序列代表评论。我在将其转换为时遇到了很多麻烦,np.array因此我可以执行填充并最终得到它,xtrain_padded.shape = (n_train_samples, sequence_lenght)因此它可以成为 keras 模型的输入。

如果有人可以详细说明如何执行此操作,那将非常有帮助。

提前致谢

标签: pythonnumpykeraslstm

解决方案


推荐阅读