写点什么

Twitter 情感分析技术

  • 2015-12-21
  • 本文字数:2295 字

    阅读完需:约 8 分钟

情感分析是自然语言处理(NLP)、文本分析和计算语言学中的一个挑战性问题。一般意义上,情感分析主要是分析用户对于各种对象或问题的意见。它最初是利用长文本(如信件、电子邮件等)来进行分析。随着互联网的发展,像 microbloging 网站、论坛和社交网络等互联网应用爆发式增长,情感分析也越来越受到重视。用户使用这些应用进行的各种交互行为(分享、评论、推荐、交友等)产生了大量的数据,被称为用户产生内容,这些数据蕴含着大量的信息,反映了用户的内在行为规律。庞大的数据量要求使用自动化技术来进行挖掘和分析。目前,利用微博数据进行情感分析是一项挑战性的工作,已有的工作主要采用了词法分析方法和机器学习方法,以及两种方法的融合。

背景

根据分析的载体不同,情感分析涉及到很多的主题,包括针对电影评论、商品评论,以及新闻和博客等的情感分析。在本文中,主要介绍针对 Twitter 内容的情感分析方法。对情感分析的研究到目前为止主要集中在两个方面:识别给定的文本实体是主观的还是客观的,以及识别主观的文本的极性。大多数情感分析研究都使用机器学习方法。

在情感分析领域,文本可以划分为积极的或消极的类,或者多种类别,即积极、消极和中性(或不相关)。针对 Twitter 内容的情感分析技术可以分为:

  • 词法分析
  • 基于机器学习的分析
  • 混合分析

词法分析

这种技术主要使用了一个由预标记词汇组成的字典。输入文本通过词法分析器被转换为一个个单词。将每一个新的单词与字典中的词汇进行匹配。如果有一个积极的匹配,分数加到输入文本的分数总池中。例如,如果“戏剧性”在字典中是一个积极的匹配,然后文本的总分数会递增。相反,如果有一个消极的匹配,输入文本的总分数会减少。虽然这项技术本质上感觉有些业余,但已被证明是有价值的。词法分析技术的工作方式如下图。

文本的分类取决于文本的总得分。目前有大量的工作致力于度量词法信息的有效性。对单个短语,通过手动标记词汇(仅仅包含形容词)的方式,大概能达到 80%的准确率,这是由评价文本的主观性所决定的。有研究者将同样的方法用于电影评论的数据中,准确率仅仅为 62%。除了手动标记词汇的方法,还有研究者利用互联网搜索引擎标记词汇的极性。他们使用两个 AltaVista 搜索引擎进行查询:目标词汇 +“good”和目标词汇 +“bad”,最后的得分根据搜索的结果的数量进行统计,准确率从 62% 提高到了 65%。后来还有研究者使用了 WordNet 数据库,他们通过在 WordNet pyramid 中计算目标词汇与“good”和“bad”之间的最小路径距离(Minimum Path Distance,MPD),并将 MPD 转换为分数值,存储在词汇字典中,这种方法的准确率可以达到 64%。还有研究者通过简单地从消极词汇集合中去除积极词汇,来评价语义差距,得到了 82%的准确度。词法分析也存在一个不足:其性能(时间复杂度和准确率)会随着字典大小(词汇的数量)的增加迅速下降。

基于机器学习的分析

机器学习技术由于其高的适应性和准确性受到了越来越多的关注。在情感分析中,主要使用的是监督学习方法。它可以分为三个阶段:数据收集、预处理、训练分类。在训练过程中,需要提供一个标记语料库作为训练数据。分类器使用一系列特征向量对目标数据进行分类。在机器学习技术中,决定分类器准确率的关键是合适的特征选择。通常来说,unigram(单个短语),bigrams(两个连续的短语),trigrams(三个连续的短语)都可以被选为特征向量。当然还有其他的一些特征,如积极词汇的数量,消极词汇的数量,文档的长度,支持向量机(SVM),和朴素贝叶斯(NB)算法等。取决于所选择的各种特征的组合,精度可以达到从 63%至 80%。下图是基于机器学习的分析所涉及到的主要步骤:

同时,机器学习技术也面临很多挑战:分类器的设计、训练的数据的获取、对一些未见过的短语的正确解释。相比词法分析方法,它在字典大小呈指数倍增长的时候依然工作得很好。

混合分析

情感分析研究的进步吸引大量研究者开始探讨将两种方法进行组合的可能性,既可以利用机器学习方法的高准确性,又可以利用词法分析方法的快速特点。有研究者利用由两个词组成的词汇和一个未标记的数据,将这些由两个词组成的词汇划分为积极的和消极的类。利用被选择的词汇集合中的所有单词产生一些伪文件。然后计算伪文件与未标记文件之间的余弦相似度。根据相似性量度,该文件被划分为积极的或消极的情感。这些训练数据集然后被送入朴素贝叶斯分类器进行训练。

有研究者使用背景词法信息作为单词类关联,提出了一种统一的框架,设计了一个 Polling 多项式分类器(PMC)(也称为多项式朴素贝叶斯),在训练中融入了手动标记数据。他们声称利用词法知识后性能得到了提高。

比较

在文献 [ 1 ] 中,研究者在电影评论及推荐、新闻评论领域相关的用户微博数据上进行测试,通过对所有的方法进行比较表明机器学习方法可以得到最好的结果,最差的是词法分析方法。但是,如果没有找到合适的分类器,机器学习方法可能会导致非常糟糕的结果。

出于分类器的训练目的,用户可以使用公开可用的数据集,包括:Cornel 电影评论集,通用询价形容词列表,雅虎网络搜索 API,WordNet Java API,WEKA M.L. Java API(仅适用于机器学习目的),SVM-light ML(M.L. 分类器)等。

文献 1

[ 1 ] R. Prabowo and M. Thelwall. Sentiment analysis: A combined approach. Journal of In-formatics (2009) 143-157


感谢杜小芳对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。

2015-12-21 18:004909
用户头像

发布了 268 篇内容, 共 122.2 次阅读, 收获喜欢 24 次。

关注

评论 1 条评论

发布
用户头像
大佬,情感分析目前业界有没有比较成熟的做法
2022-02-23 08:21
回复
没有更多了
发现更多内容

得物社区计数系统设计与实现

得物技术

性能优化 重构 稳定性

【活动报名】 拥抱公平《 Impact Tech, She Can 》

亚马逊云科技 (Amazon Web Services)

人工智能

2023年金三银四大厂高频Java面试题(附答案)整理总结

架构师之道

程序员 java面试

HummerRisk 使用教程:k8s检测

HummerCloud

聊聊池化层和步长为2的卷积层

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号 3 月 PK 榜 卷积层

大数据计算引擎 EasyMR:拥抱开源,引领技术创新

袋鼠云数栈

大数据 大数据基础平台

一站式管理多平台小程序的办法

Onegun

微信小程序 小程序管理平台 小程序管理

论文分享丨Holistic Evaluation of Language Models

华为云开发者联盟

人工智能 华为云 论文 华为云开发者联盟 企业号 3 月 PK 榜

开发和测试融合,到底该怎么做?

BY林子

敏捷开发 敏捷测试

综合系统清理优化工具:MacCleaner PRO中文激活版

真大的脸盆

Mac Mac 软件 mac系统清理优化软件 清理工具 清理优化

尚硅谷Java真题详解教程发布

小谷哥

ChatGPT能否取代程序员?仍然是一个需要认真探讨的问题,对此你怎么看?

兴科Sinco

OpenAPI openai #人工智能 ChatGPT

直击面试!阿里技术官手码12W字面试小册在Github上爆火

Java你猿哥

Java 后端 面经 简历 Java工程师

硬核!阿里出品2023版Java架构师面试指南,涵盖Java所有核心技能

三十而立

Java java面试

如何防止AD域环境遭受恶意攻击?

嘉为蓝鲸

AD #运维

低代码开发平台如何推动企业数字化转型

力软低代码开发平台

2023年一线大厂 Java 面试八股文大全(整理版)附答案详解!

采菊东篱下

Java 程序员 面试

gRPC快速整合SpringCloud

Java你猿哥

Java gRPC Spring Cloud 后端 ssm

我眼中的优秀PM

BY林子

团队管理 项目管理

户外广告屏为什么会坏?

Dylan

LED 户外LED显示屏

4种API性能恶化根因分析

华为云开发者联盟

开发 API 华为云 华为云开发者联盟 企业号 3 月 PK 榜

HummerRisk 使用教程:资源态势

HummerCloud

赋能数字经济新动能 焱融科技获评「人工智能高质量发展-行业责任担当」企业

焱融科技

人工智能 文件存储 容器存储 分布式文件存储 全闪存储

开门见山|首期《崖山论“见”》技术 Meetup启程

YashanDB

模型训练过程中,混合精度训练稳定性解决方案

Openlab_cosmoplat

模型训练 开源社区

BugBuilder: 高质量大规模缺陷库自动构建方法

华为云开发者联盟

开发 华为云 补丁 华为云开发者联盟 企业号 3 月 PK 榜

机器学习算法(一): 基于逻辑回归的分类预测

汀丶人工智能

数据挖掘 机器学习 数据分析 逻辑回归

JAVA实战:如何让单元测试覆盖率达到80%甚至以上

Java你猿哥

Java ssm 单元测试 Java工程师 java实战

Docker等容器技术应用到移动开发的探索

Onegun

容器 docker build 小程序容器

矩阵佛萨奇(MetaForce)合约开发源码搭建

薇電13242772558

web3

延伸测试边界,银行测试团队转型建议

BY林子

软件测试 敏捷测试 测试转型

Twitter情感分析技术_语言 & 开发_张天雷_InfoQ精选文章