赞
踩
更多文章欢迎来我的小博客
教程链接:https://www.bilibili.com/video/av19178430/?spm_id_from=333.23.home_video_list.1
情感分析两种方法:
基于词典的方法:先对句子进行分词,然后统计个个词汇的个数,最后在情感字典中查找这些单词对应的情感值,然后可以计算出总体的情感。
机器学习的方法:输入大量句子以及这些句子的情感标签,就可以训练一个句子情感分类器,预测新的句子的情感。
机器学习方法的优点:机器学习对情感分析会更为精准,深度神经网络可以很好的分辨出一些反讽语气的句子,这些句子的情感不是通过简单的表面词汇分析可以理解的。
前馈过程接受固定大小的输入,比如二进制数;递归网络可以接受序列数据,比如文本。
使用AWS(亚马逊云服务)让你的代码在云端上更快更方便的运行。
这里的实例用到的库是tflearn,tflearn是一个深度学习库,他基于TensorFlow,并且提供了更高级的API,可以很好的帮助初学者入门深度学习。
from __future__ import division, print_function, absolute_import import tflearn from tflearn.data_utils import to_categorical, pad_sequences from tflearn.datasets import imdb # Internet Movie Database
pkl:字节流形式数据,更容易转换为其他python对象
取10000单词,10%的的数据作为验证集
train, test, _ = imdb.load_data(path='imdb.pkl', n_words=10000, valid_portion=0.1)
将数据划分为评论集和标签集
trainX, trainY = train testX, testY = test
不能直接将文本数据中的字符串输入神经网络,必须先进行向量化,
神经网络作为一种算法,本质上还是对矩阵进行运算,
因此,将它们转换为数值或向量表示是必要的。
pad_sequences的作用是把输入转换为矩阵的形式,并且对矩阵进行扩充。
矩阵的扩充是为了保持输入维数的一致性。
下面的参数标明了输入的数列会扩充到100的长度,扩充的部分数值为0。
trainX = pad_sequences(trainX, maxlen=100, value=0.) testX = pad_sequences(testX, maxlen=100, value=0.)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。