import numpy as np import matplotlib.pyplot as plt import keras from keras.datasets import imdb from keras.models import Sequential from keras.layers import Dense,Flatten,Dropout from keras.layers import LSTM from tensorflow.python.keras.layers.embeddings import Embedding from keras.preprocessing import sequence from keras.utils import pad_sequences

加载数据集,仅保留前 n 个字

top_words = 10000 (X_train,y_train),(X_test,y_test) = imdb.load_data(num_words=top_words)

统计每条评论的词数

lens = list(map(len,X_train)) print('max,min,mean:{}',format((np.max(lens),np.min(lens),np.mean(lens))))

画直方图

plt.hist(lens) plt.show()

取出每一条评论观察它的数值

print(len(X_train[0])) print(X_train[0])

词索引偏移

INDEX_FROM=3

词转索引

word_to_id = keras.datasets.imdb.get_word_index() word_to_id = {k:(v+INDEX_FROM) for k,v in word_to_id.items()} word_to_id[''] = 0 word_to_id['START'] = 1 word_to_id['UNK'] = 2

索引转词

id_to_word = {value:key for key,value in word_to_id.items()} print(''.join(id_to_word[id] for id in X_train[0]))

检查代码内容:代码没有明显的错误,可以运行。

IMDB 影评情感分析:使用 Keras LSTM 实现文本分类

原文地址: https://www.cveoy.top/t/topic/or1K 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录