主题-情感识别的比赛

这几天在做那个比赛,,做的有点晚了,只能粗糙的做一下子了。现将所做的过程,边记录边思考一下。

首先工具要得力,搜索了一下,可能有点不全,对于我而言,最适合本次比赛的无疑是snownlp以及jieba,先说snownlp,之后说jieba的使用。

对于snownlp,我是直接pip的,我的python版本是2.7的,pip install snownlp。

from snownlp import SnowNLP

在SnowNLP中,属性值有:

words 用于得到分词,在这里使用的是自带的字典来处理的
sentiments 得到情感为积极的分数[0,1],越接近1说明更积极,越接近0说明越消极
pinyin 得到句子中的每个词的拼音形式
han 可以将繁体字转变为简体的标准的汉字形式
keywords(n) 可以提取出文本中的前n个关键词
summary(n) 可以利用n个句子来总结文本的形式
sentences 可以把文本来划分为句子

简单的进行测试:
在我这边,需要将xlsx格式的数据导入,然后我的目标是将每一行的文本进行切分为一段一段的文本,所以就是利用到了sentences的操作,效果如下:

text: 收到了,太实惠了,买了一大箱,以后继续购买,送货速度快服务也好
sentences: 收到了
           太实惠了
           买了一大箱
           以后继续购买
           送货速度快服务也好

对每一条评论中的子句来进行分词处理,并且得到其词性,对于其中的形容词是最有可能情感词,对于其中识别出来的情感词处理,对于子句中的名词来作为最有可能为主题词的部分,对于情感部分,有子句的情感来给出。
先测试一下,这种情况下的好坏。
呜呼,我好像有点想多哦,对于每一个子句而言,怎么匹配情感词与主题呢?这是一个巨大的问题,具体来说,应该会用到了句法和语义依存的分析情况。

在这里,我已经尝试着用了snownlp和jieba分词,因为jieba分词比较准确,我还是采用了jieba分词以及构建训练得到的外部的字典来对句子进行分词。

import jieba
jieba.load_userdict('dictionary_train.txt')
import jieba.posseg as pseg
seg_lists = pseg.cut(text_split)

此时的text_split为需要进行分词的子句部分。

需要对子句进行句法分析。首先明确,什么是依存句法分析?在这里,我参考大神的博客,具体贴出地址:http://blog.csdn.net/jiangjingxuan/article/details/54729126
依存句法分析,是指语句中的成分之间的依赖关系。
语义依存分析,是主要关注句子的语义的问题。
语义依存分析注重实词之间的逻辑关系,而依存句法主要强调的是助词,介词的作用。
一般而言是对依存句法分析和语义依存相结合使用。在这里我们采用pyplt来进行处理。
首先,pip install pyplt
其次,到官网来下载ltp model(需要注意版本)
也可以从百度云下载https://pan.baidu.com/share/link?shareid=1988562907&uk=2738088569&errno=0&errmsg=Auth%20Login%20Sucess&&bduss=&ssnerror=0&traceid=#list/path=/
然后,进行简单的测试。

今日进行简单的更新,昨晚真的做的有点心累,因为LTP下载的时候,我下载的比较慢,自己一直没能运行成功,急躁,难以平复自己的心情,但今天,又再一次理顺思路然后就可以得到解决了。
在这里,我的电脑是win32系统,装的64位的python2.7版本,这边pyplt的版本是0.1.9.1, 对应的ltp模型是3.3.1版本。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值