转载

情人节必备技能 ,如何根据女友的微博检测她的情绪值?

雷锋网 (公众号:雷锋网) 编者按:如何通过女友最近发布的微博内容检测她的情绪状况?丁香园前端工程师DIYgod 给出了自己的解决方案。本文由 原作者授权雷锋网发布,转载请联系本人。 原文地址  

情人节必备技能 ,如何根据女友的微博检测她的情绪值?

(微博检测最终完成效果,雷锋网注)

就是这样,代码写好了,就差个女朋友了。

最后的效果就是检测某一微博博主新发的微博,如果判断为消极情绪就发出警告(手机通知、邮件通知、自动发一条上图那样的微博之类的)。

项目地址:

https://github.com/DIYgod/Weibo2RSS  以 RSS 形式输出消极情绪的微博

https://github.com/DIYgod/Text2Emotion 分析一句话的情绪值

使用方法:

消极情绪微博 RSS 配合 IFTTT 使用,具体设置如下图,条件是 RSS 出现新内容,行为是发一条微博通知(也可以改成手机通知或者邮件通知等)。

情人节必备技能 ,如何根据女友的微博检测她的情绪值?

下面是我的开发过程。

一、分词

这东西自己做不来,所以只好找现成的解决方案,找到了下面几个:

结巴中文分词

哈工大语言技术平台云

新浪云中文分词

讯飞语言云

腾讯文智

除了腾讯文智其他都是免费或者开源的,简单比较之后选择了锤子 Big Bang 也在用的讯飞。

二、情绪分析

这个关键在于词典,也是找现成的:

中文情感极性词典 NTUSD

大连理工情感词汇本体库

大连理工的本体库标注了超过两万词语,包括这些词语词性种类、情感类别、情感强度及极性等信息,像下面这样:

情人节必备技能 ,如何根据女友的微博检测她的情绪值?

看起来很不错,就选择了这个。

词典下载下来是一个 excel 表格,把它先另存为成 csv 格式,然后就可以导入到 mongodb 数据库里了。

情人节必备技能 ,如何根据女友的微博检测她的情绪值?

三、情绪值计算

把要分析的话进行分词处理,再把每个词语的情绪值进行累加,就可以得出一条微博的情绪值。

这里其实还有很多算法工作可以做,但简单起见,我只是进行了累加。

然后写完发现效果很差,原因是词典内容太少,很多词语都没有,所以很多句子根本判断不出来。

最后废弃了上面的所有东西,直接使用腾讯文智的收费服务。。。

四、应用到微博

抓取微博内容的原理很简单,新浪微博的微博秀是不需要登录就可以访问的,直接使用 Node.js 解析页面就可以拿到微博内容。

然后对微博内容进行情绪值计算,把消极情绪的微博输出成 RSS。

五、监控

输出成 RSS,监控也容易了,其中 IFTTT 效果最佳,检测到 RSS 有新内容时,可以触发手机通知、邮件通知、发一条微博等行为。

以上,其实最大的问题还是:我差个女朋友。

雷锋网版权文章,未经授权禁止转载。详情见 转载须知 。

原文  http://www.leiphone.com/news/201702/WuOVmnAXdjserLXw.html
正文到此结束
Loading...