#输入的命令中的最后一个参数获得
&ence=argvs[-1]
#载入训练好的模型
print("loadingmodel。。。。。。")
model=load_model('lstm。h5')
model。pile(loss='binary_tropy',
optimizer='adam',metrics=['accuracy'])
#调用lstm模块中的转换函数,把识别对象转换成与模型的输入数据相符的格式
print('当前文本为:',test_sentence)
data=input_traence)
data。reshape(1,-1)
#调用训练好的情绪识别网络进行预测,并打印预测结果
&=model。predict_classes(data)
&[0][0]==1:
print("测试文本为正面情绪")
else:
print("测试文本为负面情绪")
将上述模块保存为“useit。py”,在IPython控制台输入下述命令,使用训练好的网络进行新文本的情绪判别。下面的示例中输出的判别结果是令人满意的。读者可尝试输入其他评论进行情绪识别,但是需要说明,因为这个模型并未精细**,所以出现识别错误是正常的,读者对深度学习掌握得更熟练后可尝试新的方法训练更好的情绪识别网络。
In[2]:ru。py"好好好"
loadingmodel。。。。。。
当前文本为:好好好
测试文本为正面情绪
In[3]:ru。py"太差了"
loadingmodel。。。。。。
当前文本为:太差了
测试文本为负面情绪
为了帮助读者训练效果更好的词向量,本节最后提供一个适用于本案例的词向量训练模块供读者参考。在这个模块中以“语料。txt”代表用来训练词向量的语料文件,读者需要通过自己收集数据建立这个语料文件。
importsys
importos
importcodecs
importmultiprog
importnumpyasnp
fromgensim。models。word2vecimportWord2Vec
fromgensim。corpora。diportDiary
fromgensim。models。word2vecimportLience
fromkeras。preprogimportsequence
np。random。seed(1337)#固定随机数种子,保证结果可复制