文章目录
3. sentiment analysis pre-processing(情感分析预处理步骤)
强调了情感分析的任务很多,文章给出了研究问题的图示(图1)。图1里包括的内容包括:
- 主观性分类
- 情感极性分类(基于aspect的情感分类,上下文极性消歧,情绪评级预测,跨域情绪分类,跨语言情感分类)
- 情绪摘要
- 情绪可视化
- 讽刺检测
- 实体,意见持有人和时间提取
- 词义消歧
- 情感词典生成
- 情感研究和检索
- 垃圾邮件检测

因此,作为信息检索领域的情感分析,除了观点摘要、隐式/显式特征提取等问题外,还面临着NLPs尚未解决的问题,如否定处理、讽刺检测等。
常用的情感分析下图所示,从各种格式的资源中转换为文本,通过NLP方法进行处理。处理步骤包括:文本预处理、特征提取和特征选择。分类步骤可以使用不同的情感分析方法进行。

3.1 Data extraction(数据提取)
3.1.1 数据收集和提取
获取文本数据,一般通过网络爬虫或者是第三方数据。可以从社交媒体,评论网站(电子商务网站或者专业的评论网站),博客,论坛,访谈记录(可以是口头谈论的书面记录,或者是音频和视频记录中完成)
利用相关工具来创建生成相关数据,通过一些API,免费可用的公开数据集,网络爬虫,crowdsourcing(众包服务)。
3.2 数据预处理
一般从社交媒体中获取的数据一般是非结构化的,含有大量噪声和拼写或语法错误,所以要对文本进行清洗和预处理,更重要的是降低输入数据的维度,因为一些词是无用的,应该被删除,他不会对该文本的极性产生任何影响(如冠词,介词,标点符号等)。针对不同的预处理和NLP任务的部分公开可用工具如下表所示。

常用的python处理包有:NLTK,TextBlob(完成诸如标记化、词性标注等NLP任务)
经过研究人员的整理,再次过程中涉及的共同任务有:
- Tokenization(标记化):该步骤将文本分解成更小的元素,命名为标记(例如,文档转换成句子,句子转换成单词);
- Stop words removal(停用词去除)
- Part-of-Speech(post)tagging(词性标记):该步骤识别文本的不同结构元素,如动词、名词、形容词和副词
- Lemmatization(词形还原):词形还原就是去掉单词的词缀,提取单词的主干部分,通常提取后的单词会是字典中的单词。词形还原就是去掉单词的词缀,提取单词的主干部分,通常提取后的单词会是字典中的单词
预处理步骤中可能会信息额外的处理和清理步骤,例如扩展缩写和删除重复字符,如Iiiiiiike中的I。所以为了更好地情感分析,需要进行两个基本的步骤,特征提取和特征选择。
3.3 特征提取
特征提取(FE)或者是特征工程师情感分析过程中的一个基本任务,他直接影响情感分类的性能。其目的是提取描述文本重要特征的有价值的信息(例如表达情感的词曲),当然在情感分析中用到了一些重要特征有:
- 词汇出现和词频:最简单的特征表示方法,常用语信息检索和情感分析(n-gram方法,TF-IDF方案)
- 词性标记:在给定语言中标识该词功能的标签或注释。一般来说,单词可以分为几个词类(如名词、动词、冠词、形容词、介词、代词、副词、连词、叹词等)。例如"This camera is good"这句话会被标注为斯坦福对数线性Part-Of-Phase Tagger7:This (限定词DT ),Camera (名词NN ),is (动词VBZ ),good (形容词JJ )。一些情感分析方法依赖于形容词,因为形容词是意见的重要指标。
- 观点词和短语:观点词是常用于表达积极或消极情感的词(例如,好的和美好的为积极情绪,坏的和可怕的为消极情绪) [ 105 ]。除了很多形容词外,还有名词、动词、一些常用短语、成语等也可以在不使用评价词的情况下表达观点和情感
- 否定词:也称为意见转一次,指可能改变观点倾向,逆转情感极性的词,例如:not,never,none,nobody,nowhere,neither,connot这些常见的否定词。但是这些单词一般会在停用词李彪中,并在预处理阶段被剔除,所以在进行处理否定词需要小心,并不是每一个否定词的出现都会导致否定
情感分析的文本一般是文本格式,需要将输入的文本转化为适合分类算法的固定长度特征向量。这种文本表示一般基于词袋模型(BoW)和向量空间模型(VSM)。一把来说,文本表示算法使用关键词集合。基于这些预定义的关键词,特征提取算法计算文本中的词语权重,然后形成一个数字向量,该数字向量就是文本的特征向量(其实也就是在一定维度下,用一组向量来唯一表示一个词),一些典型的文本表示技术:
3.3.1 词袋模型(BoW)
最简单的模型。没有考虑词和词之间的排列顺序,句子结构以及语法构造,只是单纯的考虑了词语出现的次数,所以他丢失了句子之间的信息。
考虑如下两个句子:
S1:the camera of this phone is awesome.
S2:I want this phone:it is all about the camera.I love it.
通过构建一个词汇表如下图,然后将一个句子编码为一直单词词汇表长度的定长向量,其中向量中每个位置的值表示训练集中每个单词的计数或频率。词频-逆文档频率( Term Frequency-Inverse Document Frequency,TF-IDF )是词频-逆文档频率的扩展,也是一种简单有效的方法。

3.3.2 分布式表示方法(word embedding 词嵌入)
- word2vec:利用浅层神经网络学习单词分布式表示(词嵌入 word embedding),分为CBOW和Skip-Gram,分别是从上下文预测当前词和从当前词预测上下文。
- Global vector(Glove):通过聚合来自语料库的全局词-词共现矩阵生成词向量,其结果表示词向量空间的有趣线性子结构。GloVe模型的优点是可以在更多的数据上快速训练,因为实现可以并行化
当然也有很多新的传统词嵌入方法,如Doc2vec,FastText等,然而,传统的词嵌入方法学习的词分布是独立于任何特定任务的。对于情感分析,可以利用情感词典等可用资源对分布进行增强。
3.4 特征选择
一个特征可以是不相关的、相关的和冗余的。为了去除无关和冗余的特征,各种特征选择( Feature Selection,FS )方法被使用。FS是从特征列表中识别并剔除过多的、不相关的特征以减小特征维度空间大小的过程,有助于提高情感分类的准确率。
特征选择一般分类基于词典的方法和统计方法。前者通常是人为收集,在此过程中通过收集具有强烈情感的属于来构建一个小的特征集。这种方法的优点是有效,但是耗时较长,例如SentiWordNext8词库。对于统计方法来说,也是常用的特征选择方法,但是无法将携带情感的特征与不携带情感的特征分开。
统计方法通常分为4类,filter approach,wrapper approach,embedded approach,and hybrid approach(过滤,包装,嵌入,混合)
- Filter approach(过滤方法):最常见的特征选择方法。它在不使用任何机器学习算法的情况下,基于训练数据的一般特征进行特征选择。根据一些统计方法并对其选择最高排名的特征。优点是:过滤方法计算开销比较小,适用于特征数量较高的数据集常用方法包括信息增益,卡方,文档频率,互信息等。
- Wrapper approach(包装方法):该方法依赖于机器学习算法,根据所应用的机器学习算法的结果性能评估特征子集,通过特定的建模算法识别出性能最佳的特征集。包装方法是学习算法(朴素贝叶斯或者是SVM)和特征子集生成策略(例如forward or backward selection)
- Embedded approach(嵌入式方法):在建模算法中融入特征选择过程。它使用包含自身内置能力的分类算法来选择特征,因此,与包装器方法相比,它在计算上是高效的。但是他是针对应用学习算法。常用的嵌入式算法为决策树算法。
- Hybrid approach(混合方法):该方法是过滤器和包装器方法的结合,混合方法通常具有较高的性能和精度,并利用组合方法的优势。许多混合特征选择方法被提出用于情感分析。
4.情感分析技术
情感分析方法在大多数文献中分为三类:机器学习方法、基于词库的方法(使用情感词典)和混合方法,下图给出了情感分析的概要
4.1 机器学习方法
需要训练集和测试集,通过ML的方法对情感极性进行分类。其中可以分为监督学习、无监督学习、半监督学习和强化学习。对于有无标签的情况,分别采用监督学习或者是无监督学习。半监督学习一般用于包含一些已标记样本的未标记数据集。 讲话学习可以利用试错机制帮助智能体与周围环境进行交互,已获得最大累计回报。故机器学习算法可已得到很好的分类结果,但这需要很大的训练数据集才能达到很好地性能。在特定数据集上并不如其他领域。
4.1.1 监督学习
需要带标签的训练文档,其中的标签一般是情感分类(积极,消极,中立)。监督学习分类线性、概率、基于规则和决策树四类。
(1)线性方法
- 支持向量机(SVM):非概率房内器,通过寻找到一个最佳分类超平面,一个有效的分离意味着该超平面离任一一类训练点具有最大间隔,较大的间隔提高了模型的鲁棒性。一般通过混合方法如SVM+朴素贝叶斯或者SVM+决策树可以得到很好结果,单独使用机器学习的方法进行文本分类,SVM精度最高。
- Artificial Neural Network(ANN):我个人的理解就是神经网络。

(2)概率方法
通过预测一个组类的概率分布,他们通常基于贝叶斯定理。概率分类器易于实现,计算速度快,并且不需要大量的训练数据。但是如果数据不满足分布假设,分类性能有时会变差,常用概率分类器都是基于贝叶斯定理,它依赖于词袋模型的特征提取,因此单词在文档中的位置被忽略。(贝叶斯定理就不给出了)常用的一些概率分类方法:
-
贝叶斯网络
-
最大熵(条件指数分类器):通过满足下列式子来估计给定文档的类别标签C的条件分布以最大化系统的熵。即: P M E ( c ∣ d ) = 1 Z ( d ) e x p ( ∑ i λ i , c f i , c ( d , c ) ) \bm{P_{ME}(c|d)=\frac{1}{Z(d)}exp(\sum_i\lambda_{i,c}f_{i,c}(d,c))} PME(c∣d)=Z(d)1exp(i∑λi,cfi,c(d,c))
其中 Z ( d ) Z(d) Z(d)是归一化函数, f i , c f_{i,c} fi,c关于特征 f i f_i fi和类别 c c c的特征函数,其中 λ i , c \lambda_{i,c} λi,c为特征参数,确保观测特征与给定集合的期望特征相匹配。
f i , c ( d , c ) = { 0 n i ( d ) > 0 a n d c ′ =c 1 otherwise \bm{f_{i,c}(d,c)=\begin{cases} 0& \text{$n_i(d)>0$ $and$ $c'$=c}\\1& \text{otherwise}\end{cases}} fi,c(d,c)={01ni(d)>0 and c′=cotherwise
最大熵在使用unigram和双字母组特征的时候表现出显著的准确性。 -
Rule-based approach(基于规则的方法)(?什么东西,没懂2022/12/1):基于规则的方法。"基于规则的分类"一词可以用来指任何利用IF - THEN规则进行类别预测的分类方案[ 162 ]。因此,该技术所涉及的分类器依赖于一组规则来进行情感分类。一个规则可以表示为LHS→RHS,其中左边( LHS )表示该规则的前件或以DNF (析取范式)表示的特征集上的一组条件,右边( RHS )表示如果LHS满足[ 138、162]则该规则的一个结论或结果(类标签)。基于规则的分类器能够快速地对新实例进行分类,其性能与决策树相当。基于规则的方法的另一个优点是可以避免过拟合。但是,如果规则太多,它们的解释就会变得困难和极度劳动密集。此外,它对噪声数据的性能较差。
简单介绍一下rule-based范式,可以参考这篇博客:AI 范式五讲之一 – 基于规则的 (Rule-Based) 范式 -
决策树算法:易于理解和解释,也能够处理噪声数据,但是不稳定,而且容易出现过拟合。决策树方法在大数据集上表现很好
-
集成学习:就是通过将几个单独的分类器机械能组合,已获得一个优于其中每一个分类器的分类器。集成系统往往具有更好的泛化性和良好的准确性。在集成学习当中,有一个有趣的序列方法Boosting技术,通过训练一些列的弱分类器来提高预测性能。每一个新的分类器只用其前辈分类效果较差的样本进行训练。其优点在于:( 1 )最终的分类器(一个分类器团队)学习对所有类型的数据做出准确的预测。( 2 )单个分类器的性能不好并不重要,因为团队中的其他成员最有可能解决问题。不同的提升模型被提出,包括自适应提升( Adaptive Boosting,AdaBoost )、梯度提升( Gradient Boosting Machine,GBM )和提升支持向量机( Boosted SVM )。
4.1.2 无监督学习
情感分析领域的无监督方法一般使用聚类,它可以将数据分为不同的类别,而不需特别指定其类别代表什么情感。其中聚类分析技术可以分类层次聚类和划分聚类。
- 层次聚类:主要分类聚集和分裂两种策略。
- 划分方法:旨在将数据划分为一组互不重叠的簇,其中每个元素只分配给一个簇。这种方法是基于相似性准则,一般是欧式距离
最流行的划分算法还是k-means方法以及其变体。
4.1.3 半监督学习
当有标记数据难以获得时,半监督学习( SSL )方法也被使用,但与无监督方法不同,该技术使用少量的初始有标记训练数据来指导特征学习过程。因此,它介于有监督和无监督方法之间。SSL方法充分利用了大量低成本的无标签数据,节省了大量的时间和精力,在获得更多有标签数据的同时,获得了泛化能力强的分类器。(我能力有限。555,这里就只有以后再慢慢了解了)
- Generative approach(生成性方法)
- Co-training approach(协同训练方法)
- Self-training approach(自训练方法)
- Graph-based approach (基于图的方法)
- Multi-view learning approach(多视角学习方法)
4.1.4 强化学习(有可能创新的地方)
强化学习( Reinforcement Learning,RL )是一种机器学习方法,智能体在下一时间步根据对其先前动作的评价进行奖励。RL算法利用试错机制帮助智能体与周围环境进行交互以获得最大的累积奖励。强化学习已被应用于解决机器人控制等不同问题,且多用于游戏中。然而,尽管该方法具有处理复杂任务的能力,特别是与神经网络的集成,但将其应用于解决情感分析问题的研究却十分匮乏。该方法的主要优点是与人类的学习过程相似,这在情感分析领域是非常理想的。强化学习利用学习到的历史经验来修正训练过程中的错误,从而做出更好的决策,使其接近完美。另一方面,强化学习模型的构想可能会费力。而且,强化学习需要大量的数据,计算代价高昂。
4.1.5 深度学习
DL包括CNN (卷积神经网络) 、RNN (递归神经网络) 、DBN (深度信念网络) 等多种神经网络模型。这些模型不需要提供由工程师手工挑选的预定义特征,但是它们可以自己从数据集中学习复杂的特征。另一方面,它们是复杂的和计算非常昂贵的。一些研究详细介绍了用于情感分析的深度学习方法。然而,接下来的小节将对用于情感分析的最常见的深度学习模型进行简要的描述和总结。
- Deep neural network

(DNN):其实就是一个简单的神经网络架构 - CNN(卷积神经网络):在情感分析领域变得非常出门,同时,证明了预训练的词嵌入可以帮助深度学习NLP任务的良好特征。
- RNN(循环神经网络):适用于长序列信息的捕捉和记忆能力,广泛的应用与情感分析等NLP任务中。但是容易出现梯度小时等问题,为了克服这个问题随着时代的发展,逐渐出现LSTM,双向LSTM
- 其他神经网络,例如递归神经网络RecNN,效果没有以上三种方法好。其他无监督的深度神经网络如自编码器及其变体也被应用与情感分析,但很难直接用于该任务。一般的情况是使用编码器层作为分类器的特征提取器,如Zhou等的工作。结合两个或多个深度学习模型是一种混合方法,也常用于Rehman等的工作中。作者提出了一种使用LSTM的混合模型和一种名为Hybrid CNN - LSTM的深度CNN模型用于情感分类。下表说明了DNN、CNN和RNN (见表7)的潜在优缺点。
4.2 基于词典的方法
基于词库的(也称为知识型)方法是用于情感分析的两种主要方法之一,它需要一个词汇资源(一个预定义的单词列表),该词汇资源使用的分数将词与它们的语义倾向关联为消极或积极的词。例如,一个分数可以是简单的极性值,如正、负或中性词分别为+ 1、- 1或0,也可以是反映情感强度或强度的值。文档的最终倾向性是通过计算组成文档的词语的语义倾向性值得到的。将文档标记为单词或微短语,然后将来自词典的情感值分配给每个元素。为了得出给定文档的整体情感,可以使用公式或算法(例如,求和和平均)。
基于词典的方法可以被认为是一种无监督学习,因为他不需要任何训练数据。但是他的主要问题还是领域依赖(domain dependency),因为词语是可以有多种意思和意义。比如
The TV screen is too small.
This camera is very small.
这两个句子中,第一个句子的小是具有否定的,对于一般人来说更喜欢大的屏幕,对于第二个句子,的小具有积极意义,因为照相机小,方便携带。即对于不同特定的领域建造其特定的情感词典或者使用词典自适应的方法进行避免领域依赖问题。
当然对于其他有标签的自适应方法不同,这种方法采用无标签数据区学习目标领域和资源库中的情感词典。有采用迁移学习的方法来学习新的特定领域的词库。但是主要的创建和标注情感词典的三种技术如下:
4.2.1 Manual approach(手工标注)
对于人工标注,需要两个阶段。即情感词列表生成和情感标签的分配。十分耗时耗力。
有以下比较出门的人工标注词典:
Wilson et al. created MPQA Subjectivity Lexicon(主观词库),
Taboda et al. [232] created Semantic Orientation CALculator (SO-CAL) which are based on a manual lists of negators and intensifiers(基于否定词和强化词人工列表的语义指向)
当然现在的研究者可以使用crowdsourcing 和 gameification。crowdsourcing是指通过互联网平台让一个群体共同进行对目标进行操作实际。而gameification则是用于游戏化的方法应用到非游戏领域(类似于让玩家赋予情感极性,从而构建情感词典)。
4.2.2 Dictionary-based approach(基于词典的方法)
使用该方法有一个假设,即同义词具有相同的情感极性,反义词具有相反的情感极性。该方法中的情感词典也一般是利用WordNet或者thesauri(叙词表)构建。首先,通过提前收集的人工词典的种子词列表,随后通过在其他词汇资源中搜索单词的同义词和反义词来扩展单词列表。之后可以通过人工检查,以去除和纠正错误。
有一下著名的词典:
- SentiWordNet3.0
- WordNet3.0:通过SentiWordNet和自动标记技术
- theasurus:极性词库
基于词典的方法同样面临无法发现具有领域特定方向的词,因此不适合上下文和领域特定分类。
4.2.3 Corpus-based approach(基于语料库的方法)
与基于词典的方法不同,基于语料库的方法从具有已知方向的种子情感词列表开始,利用句法或者是共现模式在大型预留中发现具有方向的新情感词。额外情感词的设备使用语言学的约束或连接词(比如,and,or,but)。由连词(如simple and easy)连接的一对形容词通常具有相同的情感方向。除开这种“情感一致性”思想,可以为这些连接词设计一些新的规则。一般分为统计方法和语义方法。
- Statistical approach:相似的情感词频繁出现在同一语境,在概率上他们是具有相同的情感。因此一个词的位置极性是根据它在同一语境中出现其他词共现的频率得到的。针对于共现频率,通过Turney`s method for computing mutual information。
- Semantic approach:通过使用不同的规则来衡量单词之间的相似性,并将相同的情感直接分配给语义相近的单词。
4.3 Hybrid approach(混合方法)
一般是结合词库方法和机器学习的方法。主要依赖与机器学习的高精度和词典方法的稳定性。通常的做法是将词库方法得分作为情感分类器的输入特征。
只有少数模型使用混合方法进行情感分析。他们大多使用基于词典的方法标注词语极性,以便在情感分析分类器中进一步使用。
例如有通过将词典嵌入和注意力机制集成到卷积神经网络中,通过多个来源的词库来获取单词得分来构建词库嵌入。即三种方法嵌入集成一个CNN模型:串联,多通道和分离卷积。
4.4 Other approach
4.4.1 Aspect-based approach
Aspect-based 的情感分析师一种fine-grained(细粒度)情感分析任务。旨在预测文本中给定方面或者目标术语的情感极性。
Aspect可以是目标的attribute(属性),characteristics(特征)或者是features of the target目标的特征。Aspect-based方法主要包括两个阶段:方面抽取和情感分类。第一阶段就是提取aspect并对这些aspect的同义词进行分组,让这些aspect可以指代一个实体;第二阶段旨在确定每个aspect的情感。采用显式的aspect-sentiment matching,包括寻找名词组、寻找情感词组、将名词组匹配到情感词组、提取方面得分等步骤。实验结果表明,该方法比长短时记忆( Long Short-Term Memory,LSTM )和条件随机场( Conditional Random Fields,CRF )模型的基本架构具有更好的性能。
4.4.2 迁移学习
迁移学习是指利用数据的相似性、数据分布、模型任务等将一个领域以及学习到的知识应用到新领域的方法。现在非常受欢迎,并且非常有用,特别是在一些需要时间成本的方法,因为他并不需要从头开始训练。
4.4.3 多模态情感分析
这个领域仍在发展。除了文本之外,该领域可以将音频和视觉数据等其他模态融入情感分析。多模态可以是两种不同的模态组合的双模态,也可以是包含三种模态的三模特,然而在此过程中,多模态内容或信息的融合存在融合策略、超参调节,可解释性和速度的调整。
A. Balazs, J.D. Velásquez, Opinion mining and information fusion: A survey, Inf. Fusion. 27 (2016) 95–110, https://doi.org/10.1016/j.inffus. 2015.06.002.
上面文章提出了信息融合应用与情感分析和观点挖掘的综述。
N. Majumder, D. Hazarika, A. Gelbukh, E. Cambria, S. Poria, Multimodal sentiment analysis using hierarchical fusion with context modeling, Knowledge-Based Syst. 161 (2018) 124–133, https://doi.org/10.1016/j. knosys.2018.07.041.
提出了基于在线评论对产品进行排序的信息融合过程和方法的概述
比如通过分词的方式来融合不同模态的特征向量,而不是简单串联,或者是通过图文一致性驱动的多模态情感分析,即探索图像与文本之间的相关性。
4.5 Evaluation metrics(评价指标)
用于评价模型性能的指标会有 confusion matrix(混淆矩阵),Rceiver Operator Characteristic(ROC)和Area Under the Curve(AUC)。
要活的一个良好的模型,需要在训练过程中解决诸如过拟合或者处理噪声等问题。
本文深入探讨情感分析的预处理步骤,包括数据提取、预处理、特征提取和选择。重点介绍词袋模型、词嵌入等特征表示方法,并讨论机器学习中的监督学习、无监督学习、半监督学习和强化学习在情感分析中的应用。此外,还涵盖了基于词典的方法和混合方法,以及新兴的深度学习和多模态情感分析技术。
&spm=1001.2101.3001.5002&articleId=128134199&d=1&t=3&u=9454cb72597e43c7bbae663f2a00f8cb)
849

被折叠的 条评论
为什么被折叠?



