title:NRC-Canada-2014: Detecting Aspects and Sentiment in Customer Reviews
最近在研究aspect-based sentiment analysis (ABSA), 然后先从SemEval国际竞赛中排名比较靠前的系统中学习一下经验。今天要介绍的是加拿大国家研究局(NRC-Canada)的研究员公布的系统。
介绍系统之前,我们先来了解一些ABSA的定义:传统的情感分析(SA)主要是面向文档或者句子,也就是文档层面的情感分类(document-level sentiment classification),这种粗粒度的分类只考虑文档整体的情感倾向性(sentiment polarity),在现实应用中是不够的。对于一条商品的评论,传统的情感分类系统只是输出用户对于商品整体的评价(positive, negative或者neutral),但是往往其他用户更关注的是一些细节的评价好坏,例如:手机的待机时间,手机的屏幕大小,手机的重量等等。刚刚所提到的待机时间, 屏幕尺寸,重量就是手机的aspect。简单的来说ABSA就是更细粒度的情感分类任务,目的是在apsect的基础上从文本中挖掘更多有用的信息。
下面我们再来看一下这项比赛官方的定义:
ABSA aims to identify the aspects of the entities being reviewed and to determine the sentiment the reviewers express for each aspect.
可以看到,上面提到的手机就是这里的entity。ABSA这个任务的目的有两个:
- 从文本中自动检测aspect
- 在aspect的基础上对文本进行情感分析,也就是评论者对于entity的某一个方面(aspect)的情感倾向性
开始介绍这几位研究员的工作之前,我先简单的评价一下这个系统,他们的系统主要以设计有效的特征(features)以及引入一些外部语料资源(corpus and lexical resouces),由于神经网络2014年还没有占领nlp,他们的系统在当时还是很牛逼的
他们的系统一共参加了4个子任务:(1) aspect抽取 (aspect term extraction); (2) 判断aspect上的情感倾向 (aspect term polarity); (3) 判断aspect所属的范畴 (aspect category detection); (4) 判断aspect category上的情感倾向
先来介绍一下他们使用的外部资源:
1. 外部语料(external corpus):
- [Yelp restaurant reviews corpus (包含183935条评论)](http://www.yelp.com/dataset_challenge "Yelp restaurant reviews corpus")
- Amazon laptop reviews corpus(处理之后包含124712条评论,原始数据在[这里](http://archive.org/details/asin_listing/))
虽然这两个外部语料是没有经过人工标注的,但是用户评论之外还有用户评分,很大程度上代表了用户的倾向性,引入携带这些信息的大规模语料有助于构造更通用(general)的情感词典(sentiment lexicon)。在他们的系统中,用户评分为1星和2星的分被认为是消极情感(negative),4星和5星的则被认为是积极情感(positive)
2. 情感词典(sentiment lexicon)
2.1 领域内部的情感词典(in-domain sentiment lexicon)
在这个系统中,作者构造了4个情感词典分别用于restaurant domain和laptop domain。情感词典的原理很简单,就是给每一个词关联一个得分(score), 得分的符号代表了情感的倾向性,绝对值代表了情感的强度(绝对值一般取)。系统采用了point-wise mutual information来计算每一个词的情感得分:
score(w)=PMI(w,pos)−PMI(w.neg)
公式中PMI代表单词 w 和情感类(
PMI(w,pos)=freq(w,pos)∗N</