文章目录
越来越多的人选择在网上消费,并且越来越的证据表明商品的评论信息会影响到消费者的消费决定。评论挖掘的主要任务是从评论中了解到用户对产品的哪些功能、属性进行了怎样的评论,并抽取成简短有效的信息。
评论挖掘主要有以下几个子任务:
产品特征分为显示特征和隐含特征。
首先介绍一下什么是词向量和语言模型。 (1) 词向量就是用来将语言中的词进行数学化的一种方式。有了词向量之后就可以对词进行聚类、分类、计算相似度等等。 (2) 语言模型就是用来计算一个句子的概率的模型,简单来说就是判断一句话是不是正常人说出来的。常见的应用场景:机器翻译、语音识别得到若干候选之后,可以利用语言模型挑一个尽量靠谱的结果。
特征词去重采用聚类的方法对特征词进行聚类,归属于同一类的即为同义词。其中判断词语的相似度,采用计算特征词的词向量,然后计算向量间的相似度(例如计算向量夹角)的方法。
关于同义词聚类,Google推出的Word2Vec是一个不错的工具,关于Word2Vec的介绍请参考之前的博文:自然语言处理之Word2Vec
http://blog.163.com/xh_ding/blog/static/1939032892014312102457581
对评论语料进行词法和依存句法分析生成三元组:
<Attribute, Subject, Value>
Subject:产品
Attribute:特征
Value:特征观点
把用户评论句子切分为只包含一个特征词的短句并将评论抽象概括为<Holder, Topic, Sentimentl>
。
采用基于情感词典的方式计算短句的情感得分:
$$Score=\sum_{ w_i \in V} \frac{S_w}{dis(w_i, f)}$$
$w_i$ 代表句子中的情感词
V代表情感词典中情感词集合
$S_{w_i}$代表$w_i$在情感词典中的极性值
$f$代表该句子中的特征词
$dis(w_i, f)$代表在句子中情感词$w_i$与特征词f之间的距离,距离越远情感词$w_i$对特征词f的影响越小,因此赋予的权重也越小。
在此基础之上应用否定词、转折词规则以及基于上下文情感的连词规则和蕴含连词规则。最终计算得到短句的情感倾向得分。
以上是针对中文的用户评论挖掘的一个大致粗略的过程。
在去年暑假的时候我们实验室为一家公司做了一个导购网站,其中用户评论挖掘这部分是一个特点,当时淘宝、京东等各大电商网站还没有或者刚刚开始注意到用户评论的这个点。我做的就是用户评论挖掘这一部分,主要是对每一件商品的每一条评论进行处理,最后得到每件商品的优缺点(以标签的方式呈现,算是短摘要)以及关于该商品的优缺点长摘要(摘要是根据每件商品下的评论得到的,较客观)。主要步骤是: 1、得到每件商品的所有评论。 2、对每条评论进行分词 3、对分词后的词语配合本地的词库进行聚类,形成语料库。这一步说的简单点就是将所有的同义词归为一类。比方说,价格 价位 价钱 售价归为价格这一类。 4、建立情感词,主要是形容词和副词的情感语料库。 5、根据情感词以及情感词位置判断分句的情感取向。 6、标记属性词和情感词的位置,为以后高亮显示做准备。
另外,我们还做了商品推荐、评论质量排序等功能。由于我们只是做了手机、平板电脑两种商品,所以较简单一些,其中一些可能还不够准确,如有不对的地方请指正,谢谢。