经过一个月的技术调查和编码实践,最终通过纯词法分析写出了情感分析的技术原型,统计结果比较满意,也算对自己一个月来研究成果的初步肯定。
首先该技术原型主要面向舆情,舆情的特点是语料来源广泛,主题相关性不明显,从网上抓取的舆情可以是任何形式任何主题的。正统的新闻,微博,论坛评论等等,因此判断难度较大。国内情感分析成果主要应用于对特定领域的评论倾向分析来改善产品和做用户调研。针对有主题相关性的语料,可以用目前非常优秀的SVM支撑向量机分类算法通过前期训练,将训练出的数学模型去预测未知语料,正确率最佳可达90%以上。
但是在舆情领域SVM这种算法就不尽如人意了,所以经过技术调查,我采用纯词法分析且基于情感词典这样一种与SVM恰恰相反的非学习监督方法完成了该技术原型,针对网上抓取的测试语料的判断准确率为:积极文本准确率在80%左右,消极文本因为难度较大(后面会说道)准确率在70%左右。同时保证了错误率在%10左右。正误率之比在10:1之上。先看图说话。
环境:C+WindowsApi,VS2010,Windows7 x64
技术原型界面:
参数解释:
testText.txt:要测试的文本,因为舆情文本一般较短,所以技术原型这里将每句作为一个语料单位。
emDic.txt:使用的情感词基准词典。
bDetail:是否展示判断过程,即情感倾向分析的细节,0/1。
sepValue:分类权值。用于正负面及未知的分类权值,测试最佳:0.8
分词细节:
分类结果:
消极语料判错原因分析(手动跟踪了100多条文本分析过程得出):
1)口语化严重(这本书与名著的距离好远,不怎么样),
2)表达隐晦,高级语法(暗喻,反讽),
3)错别字,
4)文本过短(情感信息较少)。
5)情感倾向不不明显:如 还好。
6)某些词领域评价词使用率较高,影响判断:没到货等
7)积极倾向,大于消极倾向(先抑后扬,人工分错)
8)情感词修饰主体不一致(书内容描述)
错误文本举例:
这本书叫《于丹心得》更好一些。(贬义)
看完这本书,我感觉于丹更像一位幼儿园老师。(贬义)
书看了一遍就送人了。(贬义)
说的真好。(贬义)
改进方向:
交叉对比:研究第二种方法可以两种方法交叉对比来提高分类精度。
全自动学习机制:自动丰富词库,或者加入监督学习机制更新词库。
Just a display,还得继续研究。。。。
本文转hackfreer51CTO博客,原文链接:http://blog.51cto.com/pnig0s1992/825981,如需转载请自行联系原作者