引语:在不同的情境下,词语会被被赋予不同的情感色彩,通过不同的情感色彩我们可以得到一些信息。而这些信息可以帮助我们更好的工作。
1. 情感分析介绍及作用
情感分析是自然语言处理(NLP)领域的一个任务,又称倾向性分析,意见抽取,意见挖掘,情感挖掘,主观分析等,它是对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程。本文主要讨论的是文本分析。它可以分析文本中作者对特定主体的情感偏好和观点,用于预测电影票房、股票趋势、舆情分析、改进服务及产品、及了解用户的体验等。
2.情感分析的基本流程
情感分析的流程包括文本预处理、特征标注与选择、训练模型、调整模型、其中我们主要说明特征标注与选择部分,因为文本预处理及训练模型、调整模型的部分的主要由算法工程师实现,所以在这里不做过多的解释。
2.1 预处理
预处理主要就是进行数据清洗,删除一些冗余语料。
2.2特征标注与选择
本文的特征主要指的是情感特征,在这里主要介绍情感词的分类、情感标注相关问题。
2.2.1情感词
在不同领域中情感词的标准都是不同的。
闲聊:在闲聊中,以人类所拥有的情绪作为基础的情感分类,如喜、怒、哀、惊、惧等几大类。而每个类别下都有着相关的情感词,如下表
从表中我们可以看出,一个类别的情感里会有很多的相关的情感词。而每类情感都具有强度,不同程度的强度,能看出一个人情绪的变化。
例
今天有一些开心
今天好开心
今天很完美
其中有一些开心的强度为+1,好开心为+2,很完美为+3,我们可以根据情绪的强度来推荐相关技能或者是进行不同方向的聊天设定。
金融-股票:一般情感分析在股票中可以用来分析趋势走向。在这里我们会把情感词分为三类,正向、负向和中性词。如下
2.2.2情感词标注
一般我们接触到的标注文件有两种
成段的历史会话记录:成段的历史会话记录,没有办法直接进行标注。需要进行一些处理。处理方式:①给到相关的研发进行格式处理 ②利用txt和excel进行分行处理
处理过后的文本和一句话一行的短文本的标注方式一样。具体标注的方式需要根据研发团队的要求来走。
2.2.3语义块
通过上面两个不同行业的情感词举例,可以看出不同行业的情感词的标注都是不同的。而我们也可以通过积累做一个情感词的特征库,如
2.3.训练模型——得出结论
当所有数据都准备好之后,算法工程师就开始训练模型了。模型的迭代会进行很多次,每一次都会给出结果,这些结果需要进行人工标注badcase。然后再次进行数据的调整,继续注入到模型里训练。
3.应用场景举例
3.1 AI助手 闲聊
①根据情感词的正负设定回复检查规则
用 户 :我恋爱了
AI 助手 :恭喜了,记得带来给我看看。
其中用户说的“恋爱”是一个正向的情感词,然后AI给出回复。为了不使回复出现相反方向的情感回复,可以根据“情感词”设立检查规则。
②根据情绪分析进行心理健康诊断
前提是需要长期收集用户不同时间段的聊天语料,进行分析。然后在合适的闲聊时候,跟聊天的方式跟用户说出“猜情绪”的聊天内容,对有用进行引导。如果有心理咨询的服务应用可以接入到AI助手会比较好。
例
周五晚上 10点
用 户 :在干嘛
AI助手:在感受你的心,因为我发现最近这一段时间你总是很消极,不能在这样下去了。建议你可以找你的好朋友或者心理医生去聊聊。
③ 情绪传递瓶游戏
将用户此时此刻的情绪传递给附近最近的使用者
将用户此时此刻的情绪传递给随意一个使用者
④根据情感词 进行相关推荐(根据用户上一步动作或历史动作)
也可以建立情感关联词,为用户推荐可以用到信息
例
用户:约到了女神。
约会,女神——玩的地方,吃什么,礼物,天气等。
例
用户:要去和喜欢的男的约会啦。
约会,男的——妆容,衣服.....
例
用户:我不开心
系统时间周五玩晚上
AI可以推荐其出去发泄一下,如去附近的店吃饭或者找朋友KTV。
3.2在线客服
业务分析:在客服的历史会话数据中,用户会咨询商品和投诉商品,通过“情感词+规则”可总结出咨询和投诉的占比。
例 1 商品破损
用户:收到的水杯坏了
其中水杯和坏了是关键词,而水杯是名词,坏了是一个负向情感词,由此可设立一个规则“名词+负向情感词=商品破损”
例2 催物流
用户:都3天了,我的快递呢?
其中的快递是业务词,而3天代表用户已经很着急了,所以在这情境下数词是一个负向的情感词,所以可以基于此建立一个规则“数词+业务关键词=催物流”。然后可以将相关信息通过工单,下达给相关客服。由客服做一个回访。
例:怎么还没到?
其中怎么是疑问代词, 而用户已经产生了疑问,就说明他已经产生了负面情绪,所以疑问代词在这样的情境下就是一个负向情感词 。而没到指的是物流进行的一个状态,所以可以设立一个规则“疑问代词+业务关键词 =催物流”。
3.3金融类
预测股票走势和价格
股票有利好和利空之分。在情感词里利好是正向情感词,利空是负向情感词。而股票的走势预测是需要根据情感词进行分析的,所以要建立关于正面和负面的情感词典,然后通过情感分析进行预测。
相关的文本,可以从新闻、股票网站、论坛、微博及财务报表获得。获得数据后,并标注后,就可以开始训练模型了。
4.文本分析的难点
中国的语言博大精深,单凭机器是去解析是无法全部言中的。目前有以下几个难点:
4.1反讽
反讽手法是指说反话,用肯定赞美的语言描述明显的丑恶、虚假的现象,表达作者的鄙视与挖苦。这样的情况机器就无法准确的解答原叙述者的本意,很有可能出现误解。
4.2新词
现在是互联网时代,新词几乎每天都在出现。如早先的“佛系”,“猥琐发育”。“皮皮虾我们走”等众多新词。我们人类可以随时接触到这些词,但是机器在不经过训练的情况下,根本就不知道以上的那些词指的是什么,所以往往都会给出不正确的解答。
4.3情境
在生活中,我们会因为时间、地点、事件、天气、心情等一些因素,决定下一句要说出来的话是什么。而机器并不知道那时我们所处的一个环境是怎样的,所以在进行文本分析的时候会产生歧义,导致错误。
如
天气:下雨
事件:约会导致的不开心
用户:好不开心啊
AI:怎么了呢?
用户:他迟到了,还没带礼物。
单纯的从文字上,机器人是无法知道事情具体的一个情境的。所以一般机器人会回答:他这样是不太好。
但如果用户是在跟自己的朋友聊天,朋友可能会说:别生气了,今天的雨下的太大了。他也不是故意的,可以理解的。你稍微惩罚他一下就好。由上可以看出,由于无法理解情境,导致回答的方向不太对。
其实,也许在用户说出不开心的时候,可出发出到查天气的技能,然后返回相关字段,加入模板组成一句话,来确定用户的不开心跟天气有关。
5.多模态分析
现在的技术,让生活便的更便利了。有一些产品不仅仅是通过文本来传达,有语音的也有动态的。
5.1 动态
我理解的动态就是表情+动作,以下举例说明。
监控摄像头:有些人出于自身安全考虑会在自己家门的走廊里安装监控摄像头,如电视剧《欢乐颂》中的安迪。但监控摄像头,需要人眼去观看。如果它可以通过人的表情+动作来判定这个人究竟是正常的人,还是来踩点的小偷会不会更好呢?
5.2语音
每个人的音色都是不同的,如男歌星中的“林俊杰”“王力宏”“王俊凯”等,无论怎么听你都能很容易的认出他们的声音。所以说音色也是可以用来进行分析的。每个人在遇见不同事情时候说话的音量和音调都有所不同,这也是可以去进行分析的两个点。
危险情况举例(纯属虚构)
家里进入盗贼
在一个月黑风高的深夜,熟睡中的你被撬门的声音惊醒。原来,盗贼已经踩了很长时间的点,一般这个时候你都在加班,但今天你因为身体不适早早的就回来了。这时,你突然不知道该怎么办了,是跟盗贼拼命,还是从别的地方逃走?不过逃走是没有可能了,毕竟你住在高楼上,跳下去不死也伤。
如果在这样的情境下,你有在门前的走廊里安装监控摄像头,同时它是智能的可以分析站在门前的人是正常的人还是有问题的人。然后对有问题的人进行警告或者是可以联络小区物业和保安或是及时报警或是发出极大的响声惊动你的邻居。这样你也就安全了,财产也可以保全了。
打车遇见黑司机
一天下午你很着急的打车,没有注意来的车是不是你打的那个车,你就上了车。上了车之后你发现,司机开车的路线不太对,然后司机告诉你说,他要带你走一条小路,那里会更快的到达你的目的地。这时,你发现你上错了车,你试着打开车门。但车门已经被锁。
此时如果你的打车APP里有路线不对的判断,然后通过这个判断,相关客服把情况以及你现在所处的位置反馈给公司,公司可以将相关信息传递给路线附近的滴滴司机,也许就有可能救你一命。
本文参考书目《情感分析 挖掘观点、情感和情绪》刘兵
《文本情感分析关键技术研究》朱俭
以上内容,首发自饭团“AI产品经理大本营”,点击这里可关注:关http://fantuan.guokr.net/groups/219/