/研究资讯 | 情感分析系列— Naive Bayes(朴素贝叶斯)

研究资讯 | 情感分析系列— Naive Bayes(朴素贝叶斯)

情感分析,也被称为态度挖掘,是人工智能NLP(自然语言处理)的一个子领域,旨在从文本中提取态度、评价、意见和情感。受客户互动迅速迁移到数字格式的启发,如电子邮件、聊天室、社交媒体帖子、评论、评论和调查,情感分析已成为组织必须执行的分析的一个组成部分,以了解他们在市场上的定位。情感分析并不是一个新概念,它始终是商业活动的一个重要组成部分,如客户关系管理和营销研究,这些活动促进了公司更好地了解他们的客户,从而进行发展和创新。目前情感分析的发展主要是由客户互动记录的可用性、可访问性以及处理这些数据的所需计算能力的增强而驱动。这种进步确实使得消费者群体也大为受益,包括竞选团队依靠人工智能—情感分析的工具,可以比以往任何时候都能更多地听取他们的选民的意见,来做宣传政策上的增改,以达到增加选票,互利惠民的效果。
情感分析的简单目标是区分单个句子的积极和消极程度。与其他NLP工作一样,我们通常会认为它是一个分类问题,当对精度要求很高时,它也可以被视为一个回归问题。情感分析过去是通过大量的劳动力来阅读和手动评估文本来完成的。这种方法成本很高,而且容易出现人为错误。为了使这一过程自动化,部分企业开始寻求先进的分析方法来解决这一问题。情感分析问题的挑战在于,人们对情感的极性和强度有不同的表达和解释。此外,单词和句子可以根据上下文有多种含义(被称为多义词)。虽然这些问题中的一些可以被缓解,但与其他分析任务一样,速度与性能之间,两者几乎总是需要有一个权衡。
在本系列文章中,我们会接续探讨四种这样的方法。1)朴素贝叶斯算法Naive Bayes,2)基于规则的情感分析器VADER,3)深度学习算法LSTM,以及4)自注意力机制模型Transformers。每种方法都有自己的优点和缺点,我们将简单地比较这些模型的基础版本,并认识到每一种方法都可以进行调整以提高性能,对它们进行相互之间的横向比较,以帮助决策何时应该选择一种方法,本篇将探讨1)Naive Bayes方法。
1. 贝叶斯定理

贝叶斯定理是一个计算条件概率的公式。通过已知概率计算未知的概率,比如我们记A 事件发生的概率是P(A),B 事件发生的概率是P(B),则P(A│B)表示观察到B事件发生时,A事件发生的概率,则其数学表达为:

例如:我们记P(A)为这个企业在上海的概率,P(B)为这个企业是人工智能企业的概率,那么P(A│B)就是已知一家企业是人工智能企业,它来自上海的概率。
P(A)就可以称为先验概率,再加上基于贝叶斯定理和特征条件独立假设的分类方法:朴素贝叶斯分类法,通过特征计算分类的概率,选取概率大的情况,是基于概率论的一种机器学习分类(监督学习)方法,也叫做分类器。朴素贝叶斯算法可以用一句话来概括:贝叶斯定理+条件独立假设。条件独立假设指的是:在解决分类问题时,会选取很多数据特征,为了降低计算复杂度,假设数据各个维度的特征相互独立。

2. 流程步骤

下面将举例说明朴素贝叶斯方法的计算流程,A句 ‘I am happy because I am learning NLP, I am happy, not sad.’(我很高兴,因为我正在学习NLP,我很高兴,而不是悲伤);B句:‘I am sad, I am not learning NLP, I am sad, not happy.’( “我很难过,我没有学习NLP,我很难过,不开心”。)

步骤一:预处理

通过Lower(小写操作)将全部文本转化为小写;删除标点符号;删除停用词;规范化全句用词,以上步骤都属于数据预处理部分。

步骤二:创建字典

为了获得每个单词的概率统计信息,创建这些单词的字典,并以正面和负面计算每个单词的出现次数并计算他们出现的频率。

步骤三、训练

在朴素贝叶斯算法中,我们可以发现每个单词如何对情感产生影响,甚至量化这些影响的程度,正是通过正负两类单词出现的概率之比来计算。让我们举个例子。我们可以看到,“sad”一词出现的可能性在消极类别中比在积极类别中更大。因此,我们将通过公式找到每个单词的积极和消极概率之比,而经过大量的已标注的样本学习和训练之后,我们可以得到一整本字典厚度的每一个单词单独的条件概率。

步骤四、朴素贝叶斯方程

当我们训练好这样的全单词字典之后,我们只要把新获得的句子也全部经过前文这样的处理,得到我们训练成功的字典中每个单词出现的概率比的乘积。由于数据可能不平衡,并且可能导致特定类别的结果有偏差,因此我们将方程式与先验因子相乘(正面概率/负面概率)。

由于我们采用了所有这些比率的乘积,因此最终得出的数字太大或太小而无法存储在设备中,因此出现了似然对数的概念,充分利用对数函数调整参数的取值区间。

以一个例子作为收尾,该句子的总体对数似然值大于零,表示该句子很可能表示积极。

3. 总结

朴素贝叶斯算法也存在很多缺点,如单词之间彼此独立,当单词组合在一起可能会改变他们的积极/消极属性;单词的先后顺序问题也完全被忽略了,以及否定词等对属性的强烈影响;训练集的选取对训练结果的影响也非常大,训练好的字典也很难具有迁移能力;

总的来说,朴素贝叶斯算法是一种简单而强大的算法,在一些规定限制比较完善的场景下会得到高速可靠的使用体验。朴素贝叶斯算法还被用于社会的许多方面,例如垃圾邮件分类,贷款批准等。

本文来自微信公众号“上海市人工智能行业协会”(ID:saia2021)。大作社经授权转载,该文观点仅代表作者本人,大作社平台仅提供信息存储空间服务。