短文本情感分析

author author     2022-09-04     646

关键词:

一、什么是情感分析:

情感分析(SA)又称为倾向性分析和意见挖掘,它是对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程,其中情感分析还可以细分为情感极性(倾向)分析,情感程度分析,主客观分析等。

情感极性分析的目的是对文本进行褒义、贬义、中性的进行判断。

情感程度分析主要是对同一情感极性中再进行划分或者细分,以描述该极性的强度。例如“喜爱”和“敬爱”都是褒义词,但是“敬爱”相对来说褒义的程度更加强烈一些。

主客观分析主要目的是识别文本中哪些部分是客观称述而不带情感色彩,哪些是带有情感的主管描述。在对于微博,或者商品评论时,这个分析步骤一般都忽略,因为微博和商品评论本身就一定存在强烈的情感色彩,而且客观描述的情感值理论上是为零,不影响最终的情感分析结果。

二、情感分析的主要方法:

现阶段主要的情感分析方法主要有两类:

基于词典的方法

基于机器学习的方法

基于词典的方法主要通过制定一系列的情感词典和规则,对文本进行段落拆借、句法分析,计算情感值,最后通过情感值来作为文本的情感倾向依据。

基于机器学习的方法大多将这个问题转化为一个分类问题来看待,对于情感极性的判断,将目标情感分类2类:正、负;对情感程度的分析则转化为回归问题看待。对训练文本进行人工标标注,然后进行有监督的机器学习过程。

在还没有获得大量文本的情况下,使用基于词典的方法或者简单的机器学习方法是一个不错的选择。获得大量文本后,可以尝试使用一些复杂的机器学习方法甚至使用深度学习来进一步提升分析效果。

三、基于词典的情感分析:

情感分析对象的粒度最小是词汇,但是表达一个情感的最基本的单位则是句子,词汇虽然能描述情感的基本信息,但是单一的词汇缺少对象,缺少关联程度,并且不同的词汇组合在一起所得到的情感程度不同甚至情感倾向都相反。所以以句子为最基本的情感分析粒度是较为合理的。篇章或者段落的情感可以通过句子的情感来计算。

基于词典的情感分析大致步骤如下:

技术分享

考虑到语句中的褒贬并非稳定分布,以上步骤对于积极和消极的情感词分开执行,最终的到两个分值,分别表示文本的正向情感值和负向情感值。

进过以上的步骤,每篇文章的每个段落的每个句子都会有相应的情感分值,之后针对需求,可以针对句子的分值作统计计算,也可以针对段落的分值作统计计算,得到最后的文本的正向情感值和负向情感值。

四、基于词典的情感分析实践:

(1)基于词典的情感分析首先要构建情感词典及程度副词词典。通常是拉取一些比较成熟的情感词典。常见的如知网台湾大学简体中文情感极性词典。将几个词典组合后再针对需要添加领域内的一些词就差不多了。

(2)  准备待分析文本、分词工具:

待分析文本:可以爬取一些购物网站、团购、电影平台的评论数据作为实验数据。

分析工具:中文的话推荐使用结巴分析,PythonJava等都有对应的接口,文档和应用案例也相对较多。同时需要准备一份自定义词典,由于领域内的新词及一些网络流行语等不容易切分出来,自己制作一份词典就OK了。

(3)利用结巴分词分解出一段文本中的句子、及每个句子中词汇:

(4)计算部分:首先将一段输入文本调用句子切分函数得到一系列句子,对每个句子进行分析处理,得到每个句子的分词结果。搜索分词结果中的情感词并标注和计数,由于情感词存在一些修饰词(如非常、一般、不等)对情感词的情感程度甚至情感极性影响很大,在此,搜索情感词前的程度词,根据程度大小,赋予不同权值,同时搜索情感词前的否定词,赋予反转权值(-1)。综合得到一个句子的正向情感得分、负向情感得分。

(5)综合每个句子的结果得到最后的文本情感值。

我们爬取了某购物网站的共计18978条平均数据,采用基于词典的方法对短文本情感倾向进行分类其结果如下图:

技术分享
 

总结:

基于情感词典的技术重点分析文本中出现的情感词、同时关联该词附近的修饰词来最终表达句子的情感倾向。在句子结构复杂、无情感词出现但有明显情感倾向的情况下,基于词典的方法就会失效。因此,可以考虑从句子结构,词频,词序等方面构建更多特征,使用机器学习方法来解决这一类的问题。最终综合多个模型来表达最终的结果。

 

在此,本人也构建了一个基于word-embedding的CNN模型来进行情感分析,相比于基于词典的情感分析,CNN对复杂长句具备一定的优势,可以参考本人另外一篇博文:CNN在中文文本分类的应用

 

文章来源:http://blog.csdn.net/zbc1090549839/article/details/52800441

nlp文本情感分析(代码片段)

...办法复原,惨兮兮/(ㄒoㄒ)/,具体内容今天来补上文本情感分析一、情感分析简介二、文本介绍及语料分析三、数据集分析四、LSTM模型五、重点函数讲解plot_modelnp_utils.to_categoricalmodel.summary()特别感谢一、情感分析简介 ... 查看详情

2016年,文本分析情感分析和社交分析的10大趋势

文本分析、情感分析和社交分析帮助你在一定规模上转化成客户、病人、公众以及市场的“声音”。这项技术目前大量地应用于一系列的工业产品中,从医疗健康到金融、媒体、甚至客户市场。它们从线上、社交网络、企... 查看详情

实训项目:基于textcnn汽车行业评论文本的情感分析(代码片段)

基于TextCNN汽车行业评论文本的情感分析    使用卷积神经网络对汽车行业评论文本进行情感分析。  数据集        爬取汽车之家车主口碑评论文本,抽取口碑中最满意以及最不满意评论文本,分别作为正向情... 查看详情

似乎无法导入谷歌云顶点 AI 文本情感分析数据集

】似乎无法导入谷歌云顶点AI文本情感分析数据集【英文标题】:Can\'tseemedtoimportgooglecloudVertexAITextSentimentAnalysisDataset【发布时间】:2021-12-0101:42:17【问题描述】:我正在尝试使用谷歌云顶点AI文本情感分析。我根据以下参考创建... 查看详情

文本情感分析在serverless架构下的应用

文本情感分析是指对包含人们观点、喜好、情感等的主观性文本进行检测。该领域的发展和快速起步得益于社交媒体。越来越多的用户从单纯地获取互联网信息向创造互联网信息转变,例如产品评论、论坛讨论、博客等由用户发... 查看详情

实训第七天

...为倾向性分析和意见挖掘,它是对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程,其中情感分析还可以细分为情感极性(倾向)分析,情感程度分析,主客观分析等。情感极性分析的目的是对文本进行褒义、贬... 查看详情

实训第十一天

...为倾向性分析和意见挖掘,它是对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程,其中情感分析还可以细分为情感极性(倾向)分析,情感程度分析,主客观分析等。情感极性分析的目的是对文本进行褒义、贬... 查看详情

文本情感分析:基于词袋模型(vsmlsan-gram)的文本表示(代码片段)

...模型融合的方法,这一系列会有四篇文章。这篇文章整理文本特征工程的内容。文本的特征工程主要包括数据清洗、特征构造、降维和特征选择等 查看详情

snownlp情感分析源码解析(代码片段)

最近发现了snownlp这个库,这个类库是专门针对中文文本进行文本挖掘的。主要功能:中文分词(Character-BasedGenerativeModel)词性标注(TnT 3-gram隐马)情感分析(现在训练数据主要是买卖东西时的评价,所以对其他的一些可能... 查看详情

如何用python做情感分析?(代码片段)

...析的小案例在维基百科上,情感分析的定义是:文本情感分析(也称为意见挖掘)是指用自然语言处理、文本挖掘以及计算机语言学等方法来识别和提取原素材中的主观信息。情感分析不是炫技工具。它是闷声发... 查看详情

微博情感分析(代码片段)

每个文本文件包含相对应类的数据(0:喜悦1:愤怒2:厌恶3:低落对应不同类别的感情)文本读取用均值的方差,在高斯分布里面计算某个词的概率。对文本特征进行提取,提取词频。通过词频在各种词频目录里面进行匹配。对... 查看详情

文本情感分析:基于word2vec和glove词向量的文本表示(代码片段)

...客用词袋模型,包括词频矩阵、Tf-Idf矩阵、LSA和n-gram构造文本特征,做了Kaggle上的电影评论情感分类题。这篇博客还是关于文本特征工程的,用词嵌入的方法来构造文本特征,也就是用word2vec词向量和glove词向量进行文本表示,... 查看详情

用rnn&cnn进行情感分析-pytorch(代码片段)

....预处理数据集二、利用RNN进行情感分析1.使用RNN表示单个文本2.加载预训练的词向量3.训练和评估模型4.预测三、利用CNN进行情感分析1.一维卷积2.textCNN模型3.加载预训练词向量4.训练和评估模型5.预测一、情感分析及数据集情感分... 查看详情

论文泛读156使用情感分析方法从社交媒体文本语料库中识别消极因素

贴一下汇总贴:论文阅读记录论文链接:《Identifyingnegativityfactorsfromsocialmediatextcorpususingsentimentanalysismethod》一、摘要自动情感分析在决策中起着至关重要的作用。许多组织花费大量预算通过手动查看他们的反馈/评论或推... 查看详情

情感分析:基于循环神经网络

...nalysis:UsingRecurrentNeuralNetworks与搜索同义词和类比词类似,文本分类也是单词嵌入的一个下游应用。在本文中,将应用预训练的词向量(glow)和具有多个隐藏层的双向递归神经网络,如图1所示。将使用该模型来判断长度不定的文... 查看详情

从整体视角了解情感分析文本分类!(代码片段)

... 作者:太子长琴,算法工程师,Datawhale成员文本分类是自然语言处理(NLP)最基础核心的任务,或者换句话说,几乎所有NLP任务都是「分类」任务,或者涉及到「分类」概念。比如分词、词性标注... 查看详情

kesci---2019大数据挑战赛预选赛---情感分析(代码片段)

一、预选赛题------文本情感分类模型    本预选赛要求选手建立文本情感分类模型,选手用训练好的模型对测试集中的文本情感进行预测,判断其情感为「Negative」或者「Positive」。所提交的结果按照指定的评价指... 查看详情

情感分析:使用循环神经网络(代码片段)

...析:使用循环神经网络1-使用循环神经网络表示单个文本2-加载预训练的词向量3-训练和评估模型4-小结情感分析:使用循环神经网络与词相似度和类比任务一样,我们也可以将预先训练的词向量应用于情感分析。由于I... 查看详情