aspect 分类及形容词的情感分类——An unsupervised aspect-sentiment model for online reviews
来源:互联网 发布:于莺的淘宝店 编辑:程序博客网 时间:2024/05/20 01:12
本文使用无监督方法解决aspect分类问题、生成 aspect相关形容词并判断形容词的极性。
总结:本文使用无监督学习并考虑了aspect和sentiment之间的交互,解决aspect检测并自动生成和每个aspect高度相关的包含positive形容词和negative形容词的种子集。aspect检测是通过在句子级别应用的local LDA模型,生成aspects上的一个分布,并且对每个aspect定义一个阈值,如果概率超过该aspect那么认为句子包含了该aspect。然后根据否定前缀和否定词信息以及conjunction信息,为每个aspect得到两组形容词,把出现频率最高的那一组定义为positive,另一组为negative。本文的优秀之处在于没有使用任何词典信息,而是完全数据驱动的,有训练数据得到所有的东西。但本文的缺点是使用形容词作为情感指示器,其他词性的单词对情感判断也是有帮助的。
1、aspect
通过把句子看作文档,应用local LDA模型。假设aspect数目(即topic数目)在10~20之间,通过聚类验证方法(cluster validation scheme)确定最优值。聚类验证法是指对不同model order(聚类数)进行比较,一致性最高的那个数目为最优数目(the one with the most consistent clustering is chosen)。这里为每个aspect关联一个cluster,并把每句话标记为属于最可能aspect对应的cluster。
定义一致性函数:
其中D是句子集合,C为连接矩阵,ij位置上对应的元素值为1表示句子di和dj属于同一个cluster。进行下面的迭代过程:
得分最高的k值为最优k值。本文为14.
2、sentiment
representative words:
为每个aspect生成一组representative word,representative word是根据数据集中的所有名词单词和aspect之间的交互信息得到的。每个名词性单词和aspect的得分:
其中p(w),p(a),p(w,a)分别表示单词w,aspect a和单词w标记为a的概率。
那选择多少个作为aspect的representative word呢?本文的原则是保证每个aspect的representative word覆盖了被LDA模型标记为该aspect的所有单词实例的百分之七十五,这样大概是100-200个。
提取形容词:
首先对每个句子做句法分析(检测否定以及conjunction),如果形容词A被否定词修饰,那么用not-A替代。对每个句子,得到所有的一个形容词修饰一个名词的情况,即名词-形容词对。
构建图:
对Hatzivassiloglou and Mackeown(1997)的方法稍作改动以适应本文任务。本文不考虑disjunction作为相反极性的指示信息,因为在评论信息中,disjunction一般不表示极性的相反,而是perceived expectations上的相反,比如便宜但美味的食物;不是简单的使用conjunction信息,而是通过句法树确定两个形容词修饰的是同一个名词;为每个aspect建立一幅图,以确保面向aspect进行形容词极性划分。
需要看一看原文,对图的格式有个直观感受。
构建种子集合:
使用词素信息以及显式的否定信息得到相反极性的形容词对,用于构建种子集合。从出现频率最大的pair开始,为其中频率较高的那个单词赋予positive。然后按频率递减的顺序,确定其他pairs的极性。pair中和已经标记好极性的单词有最短路径的那一项,标记其极性为邻居节点的极性,另一项为相反极性。
当所有pairs标记好后,进行微调:如果pair内单词极性互换可以使一致性提高,即pair中成员匹配更多邻居的极性;最后,取种子集合中频率较高的那一组作为positive。
极性传播:
上面过程只确定了种子集合里形容词对的极性,并不包含所有的形容词,需要根据种子集合来确定其他形容词的极性。这一步的方法也是参考其他文献。种子集合中的形容词,positive单词打分为1,negative单词打分为0,其他所有的形容词打分为0.5.通过如下公式对所有不在种子集合中的形容词x更新,t表示第t次迭代:
N(x)是x的所有邻居节点,w(y,x)是x,y之间的边的权重,本文设为,是x和y修改同一个名词的次数。
评估:
让志愿者对每个aspect的形容词的极性打分。和本文情感模块得到的结果计算得到两个评估准则。另外比较情感模块使用自动推导的种子集合和人工标记的种子集合的效果。
- aspect 分类及形容词的情感分类——An unsupervised aspect-sentiment model for online reviews
- 基于Attention Model的Aspect level文本情感分类---用Python+Keras实现
- 基于Attention Model的Aspect level文本情感分类---用Python+Keras实现
- aspect level 的文本情感分类试验结果1
- Joint Sentiment/Topic Model & Aspect and Sentiment Unification Model
- Joint Sentiment/Topic Model & Aspect and Sentiment Unification Model
- target情感分类(0,+,-)——Adaptive recursive neurall network for target-dependent sentiment classification
- 训练LSTM模型进行情感分类在IMDB数据集上,使用Keras API(Trains an LSTM model on the IMDB sentiment classification)
- 《Attention-based LSTM for Aspect-level Sentiment Classification》阅读笔记
- aspect-based情感分析的调研
- Aspect Based Sentiment Analysis datasets
- Aspect
- @Aspect
- Aspect
- Aspect
- @Aspect
- target情感分类(1,0,-1)——Target-dependent sentiment classification with long short term memory
- Aspect-level Sentiment Classification using attention mechanism
- Distinct subsequences
- VS2015 Cross-Platform 多语言配置
- HDU 5744 Keep On Movin
- MySQL数据库学习笔记(六)----MySQL多表查询之外键、表连接、子查询、索引
- [笔试测试]减1后被5整除问题
- aspect 分类及形容词的情感分类——An unsupervised aspect-sentiment model for online reviews
- UI基础_自定义等高Cell_xib封装_版本_有GIF_源代码
- Android性能优化典范之多线程篇
- 数据库关系式存储和分布式存储区别
- https模式下记住git密码
- 多媒体-学习计划-编解码(AMR-MP3)_1
- 为servlet项目编写定时任务
- 求逆序数的函数
- Mac 安装运行 Docker for Mac