- 文献综述:
文本情感分类是文本分类中的一个重要分支,也称之为意见挖掘。简而言之,文本的情感分类就是对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程。情感分类中,按照处理文本的粒度不同,可分为词语短语级、句子级、篇章级等几个研究层次。在此,对词语短语级的情感分类进行详细阐述。在情感分析中可以认为构成篇章的基本单位包括词、短语、和固定搭配,对于它们的褒贬程度的度量是判别文本情感倾向的基础。国外许多学者做了大量研究,其主要研究方法分为基于字典和基于语料库两种。
针对这一研究课题,众多研究者一直致力于探索情感分类的问题,通过对线上文本进行分析处理,然后使用不同的分类器进行训练,预测未标记的数据,进而实现对情感的分类[1,2]。
前人已经在不同等语言级别的情感分类上积累了大量的工作,包括文档级别、句子级别以及词级别。进行情感倾向的主要内容为从获取到的原始数据中识别用户的情感倾向是积极还是消极,Turney等人[3]使用了一种无监督方法结合交互信息来从词语的等级预测情感类型。Pang等人[4]提出了一种结合了主观检测的半监督学习算法,并实现了在句子级别的情感识别。Eguchi等人[5]提出了一种在句子中使用情感词、主题词以及情感极性作为三元组进行训练的生成模型。在文档级别,Turney等人[6]还提出了一种结合了交互信息的弱监督学习方法来预测整个文档的情感极性。Wu等人[7]采用了基于多任务学习方法来训练针对不同领域的多个情感分类器来实现对整个文档情感极性的判断。
虽然前人已经做了大量的工作,但是大量前人的工作都是将单个词语作为一个相对独立的实体进行处理的,很多的方法都是基于简单的统计工作完成的,部分研究工作是考虑了词语间的相似度和关系来进行学习的[8,9]。这些方法由于既没有考虑词语组合间的问题,也没有考虑内容的潜在特征,因此具有比较大的局限性。
基于语料库的词语短语级的情感判别主要是根据它们的语法特性,对大规模语料库进行信息挖掘,从而得到统计数据并对其极性做出判断。在研究早期,学者发现由某些连词连接的形容词具有相同或相反的极性,Hatzivassilolou和Mckeown[10]利用大规模语料库华尔街日报中的连接词信息来自动识别形容词的情感倾向,利用聚类算法将它们归属于褒义或贬义的类别集合。Turmey和Littman[11]提出了点互信息的方法判别词的褒贬倾向。Dave等[12]从语料中抽取特征集合,通过分析此特征集合和己标记文本的关系来判定词汇的语义倾向。
基于词典的词语短语的情感判别,主要是根据词典WordNet或HowNet中词语间的关联来判别词语的极性。sista等[13]将GI(General Inquirer)和WordNet中的褒义和贬义词作为种子词,得到一个扩展后的较大规模情感词集合,并以此作为分类特征,利用机器学习方法对文本褒贬义进行了自动分类。Faye Baron和Graeme Hirst[14]从文档中抽取倾向性强的搭配作为种子词汇,取得了较好的分类效果。相对于英语,中文的词汇、短语的情感分析研究起步较晚。中科院自动化所的王根等[15]提出了词语倾向性的极坐标方式,并采用均衡化的互信息方法计算了词语倾向性。北京理工大学的李钝博士[16]把短语归结为一个非递归的基本词汇及依存关系的集合,提出了一种基于短语中心词之间依存概率统计分析方法,并将其应用于对短语的倾向性和倾向强度的计算。
鉴于近几年深度学习技术迅速发展,深度学习在自然语言处理上的应用也越来越多,其中比较有效的就是 Word Embedding 了。
基于词袋模型[17]的方法在目前的自然语言处理方向上已经有比较多的应用了,这些方法将重复的词叠加起来,增加重复词在句子中的权重。在词袋模型中,句子会被映射到一个向量空间上,向量的每一个维度代表这唯一的一个词,一个词在句子中出现的次数越多,这个词对应的维度的权重越高。词袋模型假设每个词之间是相互独立的,因此one-hot表示方法是必须面对这种固有的限制的,即不能体现出词与词之间的关系。正是由于这种限制,有很多对词袋模型的改进方法被提了出来,比如局部加权词袋模型[18,19],TF-IDF[20]以及语义哈希表示法[21-24]。
而Word Embedding方法就是为了解决上述的问题而提出来的。
将单个词语映射到向量空间的想法最开始是由Hinton等人[25]提出来的,在他的方法中,两个词之间的语义相似度可以通过计算两个词分别对应的向量空间的距离来表示,具体计算方法可以采用余弦距离、欧氏距离或者汉明距离等。这种方法极大的方便了词与词之间关系的研究。在Bengio等人[26]提出了神经语言模型后,基于Word Embedding方法的工作开始逐渐的增加了。R. Collobert等人[27,28]通过使用词类标注以及实体识别技术提出了一种半监督的方法来获得Word Embedding。Huang等人[29]通过一种词袋模型来挖掘出整篇文档的更加丰富的语义信息,跳出了传统模型只关注有限个上下文的问题。Mikolov等人[30,31]提出了一种使用循环神经网络来训练Word Embedding的方法。并且在这基础之上,开发了一款叫做word2vec的工具用来实现Word Embedding工作。
