简介

文本情感分析(sentiment analysis),又称为意见挖掘,是对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程。其中,主观情感可以是他们的判断或者评价,他们的情绪状态,或者有意传递的情感信息。因此,情感分析的一个主要任务就是情感倾向性的判断,情感倾向分为正面、负面和中性,即褒义、贬义和客观评价。研究初期,大量研究者都致力于针对词语和句子的倾向性判断研究,但随着互联网上大量主观性文本的出现,研究者们逐渐从简单的情感词语的分析研究过渡到更为复杂的情感句研究以及情感篇章的研究。文本情感分析主要可以归纳为3项层层递进的研究任务,即情感信息的抽取、情感信息的分类以及情感信息的检索与归纳]。情感信息抽取就是将无结构的情感文本转化为计算机容易识别和处理的结构化文本。情感信息分类则是利用情感信息抽取的结果将情感文本单元分为若干类别,供用户查看,如分为褒、贬、客观或者其他更细致的情感类别。情感信息检索和归纳可以看作是与用户直接交互的接口,强调检索和归纳的两项应用。 

情感分析是一个新兴的研究课题,具有很大的研究价值和应用价值,正受到国内外众多研究者的青睐。目前实现情感分析的技术主要包括基于机器学习法和基于语义方法两类。

类别

基于统计机器学习法

随着大规模语料库的建设和各种语言知识库的出现,基于语料库的统计机器学习方法进入自然语言处理的视野。多种机器学习方法应用到自然语言处理中并取得了良好的效果,促进了自然语言处理技术的发展。机器学习的本质是基于数据的学习(Learning from Data)。利用机器学习算法对统计语言模型进行训练,最后用训练好的分类器对新文本情感进行识别。 基本的算法有:支持向量机(SVM)、朴素贝叶斯(NB)、K-近邻(KNN)、简单线性分类器(SLC)和最大熵(ME)等。

近年来有关自然语言处理、人工智能、信息检索、数据挖掘以及Web应用等领域的多个国际顶级会议(AAAI、ACL、SIGIR等)都收录了文本情感倾向分析的相关论文。机器学习的方法虽然在目前来讲分类的准确程度比较高,但是它针对每一种产品使用前,训练样本集的建立都需要采用人工方法对大量的评论文章逐一阅读甄别,并进行手工标志,这与利用自动情感分类降低人的阅读负担这一初衷还有着一定的差距。因此,近来许多研究者将情感分析研究的重点集中在对训练样本的需求量较低的语义方法上。

基于语义的方法

最初学者想到利用词典将手工采集的种子评价词语进行扩展来获取大量的评价词 .这种方法简单易行,但是较依赖于种子评价词语的个数和质量,并且容易由于一些词语的多义性而引入噪声.为了避免词语的多义性,一部分学者使用词典中词语的注释信息来完成评价词语的识别与极性判断.此外,一些学者沿用了Turney等人的点互信息的方法,通过计算WordNet中的所有形容词与种子褒义词代表good和贬义词bad之间的关联度值来识别出评价词语情感倾向。

基于文本语义理解的情感挖掘北京理工大学大数据搜索与挖掘实验室张华平主任研发了NLPIR大数据语义智能情感分析技术。

NLPIR情感分析技术提供两种模式:全文的情感判别(左图)与指定对象的情感判别(右图)。情感分析主要采用了两种技术:1.情感词的自动识别与权重自动计算,利用共现关系,采用Bootstrapping的策略,反复迭代,生成新的情感词及权重;2.情感判别的深度神经网络:基于深度神经网络对情感词进行扩展计算,综合为最终的结果。NLPIR情感分析内容形式包括特定人物的正、负面分析,这样可以从整体看到特定人物对社会观点和事情的态度,从而来判断他的态度是积极的还是消极的 。同时通过喜、怒、哀、乐、惊、惧等几种情感维度分别展现他的性格取向,是稳重型还是冒进型;是积极乐观的还是消极愤世的;这样就可以综合的反应特定人物的情感状态。

情感分析不是单单的对特定人物感情来进行分析,同时还要对特定人物相关事件一起来分析从而得出更加科学、全面的分析报告。NLPIR系统能够实体抽取智能识别文本中出现的人名、地名、机构名、媒体、作者及文章的主题关键词,这是对语言规律的深入理解和预测,并且其所提炼出的词语不需要在词典库中事先存在。NLPIR实体抽取系统采用基于角色标注算法自动识别命名实体,开发者可在此基础上搭建各种多样化的大数据挖掘应用。

技术实现

LDA

LDA是一种监督学习的降维技术,也就是说它的数据集的每个样本是有类别输出的。这点和PCA不同。PCA是不考虑样本类别输出的无监督降维技术。LDA的思想可以用一句话概括,就是“投影后类内方差最小,类间方差最大”。什么意思呢? 我们要将数据在低维度上进行投影,投影后希望每一种类别数据的投影点尽可能的接近,而不同类别的数据的类别中心之间的距离尽可能的大。假设我们有两类数据 分别为红色和蓝色,如下图所示,这些数据特征是二维的,我们希望将这些数据投影到一维的一条直线,让每一种类别数据的投影点尽可能的接近,而红色和蓝色数据中心之间的距离尽可能的大。

上图中提供了两种投影方式,哪一种能更好的满足我们的标准呢?从直观上可以看出,右图要比左图的投影效果好,因为右图的红色数据和蓝色数据各个较为集中,且类别之间的距离明显。左图则在边界处数据混杂。在实际应用中,我们的数据是多个类别的,我们的原始数据一般也是超过二维的,投影后的也一般不是直线,而是一个低维的超平面。

在第三节和第四节我们讲述了LDA的原理,现在我们对LDA降维的流程做一个总结。

    输入:数据集D={(x1,y1),(x2,y2),...,((xm,ym))}D={(x1,y1),(x2,y2),...,((xm,ym))} ,其中任意样本xixi 为n维向量,yi∈{C1,C2,...,Ck}yi∈{C1,C2,...,Ck} ,降维到的维度d。

    输出:降维后的样本集$D′$

    1) 计算类内散度矩阵SwSw

    2) 计算类间散度矩阵SbSb

    3) 计算矩阵S−1wSbSw−1Sb

    4)计算S−1wSbSw−1Sb 的最大的d个特征值和对应的d个特征向量(w1,w2,...wd)(w1,w2,...wd) ,得到投影矩阵WWW

    5) 对样本集中的每一个样本特征xixi ,转化为新的样本zi=WTxizi=WTxi

    6) 得到输出样本集D′={(z1,y1),(z2,y2),...,(zm,ym)}

参考:

  • 知乎NLPIR, https://www.zhihu.com/question/34630134/answer/635437345
  • https://www.cnblogs.com/pinard/p/6244265.html

新手探索NLP(七)——情感分析相关推荐

  1. 新手探索NLP(六)——全文检索

    全文检索技术--Lucene的介绍 转载自https://blog.csdn.net/yerenyuan_pku/article/details/72582979 查看全文 http://www.ta ...

  2. 新手探索NLP(四)

    学习NLP需要一个比较系统的概要.所以理论上这个应该写在第一篇. [NLP的技术概貌] NLP里细分领域和技术实在太多,根据NLP的终极目标,大致可以分为自然语言理解(NLU)和自然语言生成(NLG) ...

  3. 新手探索NLP(三)

    目录 NLP语言模型 词的表示方法类型 1.词的独热表示one-hot representation 简介 不足 2. 词的分布式表示distributed representation 简介 建模类 ...

  4. NLP之情感分析:基于python编程(jieba库)实现中文文本情感分析(得到的是情感评分)之全部代码

    NLP之情感分析:基于python编程(jieba库)实现中文文本情感分析(得到的是情感评分)之全部代码 目录 全部代码 相关文章 NLP之情感分析:基于python编程(jieba库)实现中文文本情 ...

  5. NLP:文本情感分析快速入门

    最近由中国计算机学会(CCF)主办,雷锋网,香港中文大学(深圳)承办的2018全球人工智能与机器人峰会(CCF-GAIR)在深圳召开,由于博主主要做NLP方向,主要在做情感分析,文本生成方面,所以主要 ...

  6. 新手探索NLP(八)——序列标注

    转载自知乎https://zhuanlan.zhihu.com/p/50184092 NLP中的序列标注问题(隐马尔可夫HMM与条件随机场CRF) Introduction 序列标注问题(sequen ...

  7. 【NLP】情感分析:BERT vs Catboost

    作者 | Taras Baranyuk 编译 | VK 来源 | Towards Data Science 介绍 情感分析是一种自然语言处理(NLP)技术,用于确定数据是积极的.消极的还是中性的. 情 ...

  8. 深度解读NLP文本情感分析Pipeline

    随着移动互联网的普及,很多人已经习惯于在网络上表达意见和建议.比如电商网站上对商品的评价.社交媒体中对品牌.产品.政策的评价等等.这些评价中都蕴含着巨大的商业价值.而对这种评价的分析就是情感分析的主要 ...

  9. 浅谈 NLP 细粒度情感分析(ABSA)

    作者 | 周俊贤 整理 | NewBeeNLP 最近在调研细粒度情感分析的论文,主要对一些深度学习方法进行调研,看论文的同时记录下自己的一些想法. 首先,何为细粒度的情感分析?如下图,淘宝APP上某商 ...

最新文章

  1. Java集合框架:EnumMap
  2. 突破帧率天花板,超速全时视觉感知芯片重塑机器视觉技术体系
  3. .NET Core SignalR Redis底板详解(一)
  4. 一行代码搞定WordPress面包屑导航breadcrumb
  5. Java解析XMl文件之SAX和DOm方法
  6. check_http语法和选项
  7. 性能优化:MySQL 性能提升之降龙十八掌
  8. debian uefi legacy 区别_电脑硬盘格式有Legacy与UEFI,选择哪一个好?千万别选错了!...
  9. python怎么创意出字符图形_创造课程系列:Python入门
  10. sqlalchemy 初始化数据库
  11. 透视转换oracle,使用Oracle的行列转化函数实现ASH的数据透视功能
  12. Android让控件位于底部
  13. 怎么用c语言输入一串字符个数字,请问这个用c怎么做:输入一串字符,分别统计其中数字和字母的个数...
  14. 了解Spring AOP吗
  15. 基于SSM实现的房屋租赁系统【附源码】(毕设)
  16. 软件工程 | 第三章 需求分析
  17. Android 广播(Broadcast)
  18. 关于数学计算机手抄报简单的,最简单的数学手抄报图片大全
  19. 如何知道电脑开机记录?
  20. desktoplayer.exe病毒及d:\w7rtm\base\wcp\sil\merged\ntu\ntsystem.cpp的解决方案

热门文章

  1. 用7ch中断例程完成jmp near ptr s指令的功能,用bx向中断例程传送转移位移。
  2. Exchange/Office365 自动处理脚本:环境准备篇(一)
  3. [IE9] 如何让你的网站在IE9和Win7任务栏上更闪亮
  4. 《机器人爱好者(第2辑)》——《惑星历险》中的Robby
  5. 怎样提高自己的团队合作能力
  6. DG环境数据库RMAN备份策略制定
  7. 家中电脑无法共享,联通域名解析劫持竟是罪魁
  8. NetBeans 时事通讯(刊号 # 117 - Sep 16, 2010)
  9. 协议学习:TCP/IP协议之物理层 上
  10. 取特定字符串后的数字 linux_Linux相关操作(四)