当前位置:   article > 正文

用机器学习实现情感分析_基于机器学习的情感分析

基于机器学习的情感分析
 
更多文章欢迎来我的小博客

教程链接:https://www.bilibili.com/video/av19178430/?spm_id_from=333.23.home_video_list.1

知识

  1. 情感分析两种方法:

    • 基于词典的方法:先对句子进行分词,然后统计个个词汇的个数,最后在情感字典中查找这些单词对应的情感值,然后可以计算出总体的情感。

    • 机器学习的方法:输入大量句子以及这些句子的情感标签,就可以训练一个句子情感分类器,预测新的句子的情感。

    • 机器学习方法的优点:机器学习对情感分析会更为精准,深度神经网络可以很好的分辨出一些反讽语气的句子,这些句子的情感不是通过简单的表面词汇分析可以理解的。

  2. 前馈过程接受固定大小的输入,比如二进制数;递归网络可以接受序列数据,比如文本。

  3. 使用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.)
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/542504
推荐阅读
相关标签
  

闽ICP备14008679号