从已经标注有正、中、负极性的的微博或评论数据中抽取出正负面短语,或是关于指定的某个明星的正负面短语。
2.11具体思路
1)抽取短语时是按照词性的规律,总结出一般有效短语的词性模板,然后在已经标注有正、中、负的数据中,根据模板来匹配出评价短语。
2)合并语义相近的短语
3)按照电影维度种子词把短语划分到各个维度(或映射到指定明星)
4)根据短语匹配上的情感词来划分正负极性
2.12 流程图
2.2.1模板的选择
1)模板选择方法:
a)根据一般有效评价短语的词性规律总结了部分模板,共23个模板。
a n |
a d n |
a a n |
a a |
a u n |
d v n |
n a |
n d a |
n d v |
n v n |
n n d a |
n d d a |
n c a |
n u n a |
n u n d a |
n n |
v n d a |
v n |
v u d a |
v u a |
i u n |
n a a |
a a a n |
n c a n |
v n v |
n v u a |
n d n u a |
n u n d a |
n n d d a |
n v u d a |
v u d v n |
v u v n |
n v u v n |
v n v n |
n d v n |
n d v n n |
n v n n |
n v u a u n |
n d v u n |
|
b)通过统计相临的词性模板(最长5个词性)的频率,筛选出高频模板,通过观察匹配上这些模板的数据,筛选出部分模板。
2)存在的问题:
现在模板匹配出的短语有一部分是不完整的,不具有实际意义。(这是一个很重要的问题,有待解决)
2.2.2 短语的抽取
1)整体短语的抽取:
匹配出符合模板的短语,并记录其在正、中、负数据中的DF。匹配时可以把原始数据分离成 汉字串 和 词性串(两个串的下标要对应),分离过程中要生成一个词性串下标对应的词性序号的map,然后使用Trie对词性串进行匹配,然后按返回的下标在汉字串中取词。
Eg. “这个/r 电影/n 很/d 好看/a !/w”
汉字串:这个 电影 很 好看 !
词性串:r n d a w
Map:0 0
2 1
4 2
6 3
8 5
使用trie树匹配出词性模板n d a,并且知道模板的开始位置是2,然后查保存的下标对应的序号表,得出模板是在第二个词开始的(下标是1),然后在测字串中,从第二个词 开始,取和词性模板长度一样的词做为抽取出的短语。
2)存在的问题:上面的方法分成了几步稍显麻烦,快速的方法是根据词性模板构造一个有限状态自动机,在匹配时遍历一次数据就抽取出短语。
2.2.3短语的合并
1)基于词典的合并
首先,根据数据总结了一个程度副词词典。然后遍历抽取出的评价短语,如果包含有程度副词词典中的词语,则把此副词去掉,短语的其它部分组成新的短语。
现在使用的程度副词词典
八成 |
大都 |
纷纷 |
基本 |
来讲 |
每每 |
始终 |
向来 |
有时 |
真是 |
白 |
大多 |
刚刚 |
基本上 |
来说 |
明明 |
似的 |
也 |
有些 |
真心 |
白白 |
大略 |
格外 |
极 |
老 |
偶尔 |
太 |
一般 |
又 |
之 |
比较 |
大体上 |
更 |
极度 |
老是 |
颇 |
挺 |
一个劲儿 |
与否 |
只是 |
不仅仅 |
大约 |
更加 |
极了 |
了 |
颇为 |
通常 |
一面 |
越 |
直直 |
不免 |
大致 |
更为 |
极力 |
连 |
确实 |
同样 |
一向 |
越发 |
终年 |
差点儿 |
得 |
过于 |
几乎 |
连连 |
日常 |
统共 |
一再 |
越来越 |
逐步 |
差一点 |
的 |
好 |
渐渐 |
屡次 |
日日 |
统统 |
一直 |
越是 |
逐渐 |
常 |
的的确确 |
好好 |
较 |
屡屡 |
稍 |
万分 |
依然 |
云云 |
转眼间 |
常常 |
多么 |
好容易 |
较为 |
略 |
稍微 |
万万 |
已经 |
再三 |
总 |
常年 |
而言 |
好在 |
仅 |
略微 |
十分 |
往往 |
矣乎 |
早晚 |
总是 |
趁早 |
而已 |
很 |
仅仅 |
马上 |
时常 |
微微 |
永远 |
者 |
足足 |
处处 |
尔尔 |
很少 |
经常 |
蛮 |
时而 |
未免 |
尤其 |
着 |
最 |
纯粹 |
非常 |
很早 |
久久 |
慢慢 |
时时 |
显然 |
有点 |
真 |
最最 |
从来 |
分外 |
缓慢 |
就 |
每 |
实在 |
相当 |
有点儿 |
真的 |
|
2)存在的问题:
a)只是合并包含程度副词的评价短语,明显合并力度不够。有些评价短语的主语相同,定语/谓语 的情感也很相近,这类短语也应该合并。而且某些副词同时也具有形容词的词性,例:“杨幂 好 漂亮” 这里的“好”字明显可以合并,但在“杨幂 嗓音 好”中的“好”字明显不能合并。但由于现在没有考虑词性,没法判断这种情况,所以这样的副词没有加入到副词词典。
b)像“杨坤 扭 屁股”与“杨坤 扭 臀”这样的短语没有合并
c)由于后添加了一部分较长的模板,而这些长模板包含了部分短模板,所以抽取出的短语中,有部分较长的短语包含了较短的短语,这种情况也没有合并。
2.2.4维度划分
1)划分方法:
在抽取出中的短语中匹配维度词,按照匹配出的维度词,把短语映射到相遇到维度。
2)存在的问题:一个短语中如果有多个维度词时,则划分到了多个维度,这里把所有的维度词都当成等权重处理的。
2.2.5划分正负评价短语
1)根据情感词典的划分:
使用正、负情感词典及否定词词典在短语中匹配,若匹配上正面情感词则划分到正向评价中,若匹配上负面情感词则划分到负向评价中。若匹配上正面情感词且匹配上否定词,则划为负向评价,若匹配上负向情感词且匹配上否定词,则划分为正向评价词。若不符合这几种情况,则转入评分划分。(否定词只有在情感词之前才生效)
2)存在的问题:
一个短语中如果有两个极性相反的情感词,现在是直接去掉。这个办法有点粗,应该再进一步优化。
3.1 资源的补充
1)情感词典的补充(用于划分正负短语)
2)同义词典的建立(用于合并)
3)模板的完善(覆盖率与边界)
4)无意义词典的建立(用于过滤)
3.2 相关细节的处理
1)多模式匹配算法的改进
在匹配情感词和维度词阶段,都是使用的的Wu-Manber算法,但此算法在存在大量的模式串时性能下降太快。可以使用AC自动机(Trie树)取代。
3.3 边界问题
1)由于直接采取词性模板匹配的方法,有时候会出现边界切分不好的现象,对于此问题,可以考虑使用词的左右熵或互信息处理下。这样边界可能会好一些
1、使用stanford parser对句子解析后,根据解析后的语法信息能更准确的找出评价短语。
转载请注明出版:本文地址 http://www.cnblogs.com/nocml/p/3542265.html
2、使用序列标注模型,例如 HMM,CRF