写点什么

借助情感分析教计算机理解情感

  • 2019-06-19
  • 本文字数:2269 字

    阅读完需:约 7 分钟

借助情感分析教计算机理解情感

情感分析教计算机识别文本中的人类情感。基本原则是在简单性和准确性之间进行权衡。方法有很多,从使用与情绪相关的单词列表,到使用词嵌入、神经网络和注意机制等深度学习技术。


Johnson Controls 首席数据科学家Donagh Horgan将在RebelCon.io 2019大会上介绍为 Twitter 构建的一个情感分析器。大会将于 6 月 19 日至 20 日在爱尔兰科克举行。根据活动网站介绍:


  • RebelCon 连续第三年将科克软件工程社区聚集在一起,举行为期两天的研讨会,讨论软件行业的最新技术、文化和开发实践;

  • RebelCon 是由开发者社区为社区举办的非营利性技术会议。


在他的演讲中,Horgan 将展示如何迭代地为 Twitter 情感分析构建一个 AI 驱动的管道。


在过去的几年里,情感分析被用于越来越多的应用程序:它用于在客户支持中根据客户的感知情感倾向对进来的问题进行排序,在市场调研和民意调查中了解人们如何思考某些话题,在论坛和在线讨论区中检测辱骂、威胁和怒火。Johnson Controls 利用情感分析来发现暴力威胁,以更好地保护客户及其员工。


据 Horgan 说,情感分析在生命安全方面有着很大的机会。过去一年里发生了几起大规模枪击事件,犯罪嫌疑人事先在公共或半公共论坛上发布了警告。他看到了让机器分析这类内容从而拯救生命的可能;这种分析的成本将非常低。


InfoQ 采访了 Donagh Horgan,了解我们可以如何使用情感分析来教机器理解情感。


InfoQ:什么是情感分析?


Donagh Horgan:情感分析是人工智能的一个领域,它致力于教计算机识别文本中的人类情感。情感分析的目的是理解书面文本中的各种情感和强度。

通常,对于人类而言,这是一项简单的任务。例如,如果我告诉你“这部电影很棒”,你不用太考虑就会知道,我(1)对这部电影的评价很高(2)而且感到兴奋(3)。但是,对于机器来说,学习如何做到这一点更加困难,因为语言并不简单。例如,我可以说,“This movie is better than that one,”但不是“This movie is gooder than that one”,而那种知识是与生俱来的。

但是,计算机是通过算法工作的,要写出一套精确的、可维护的规则来理解英语中出现的所有异常情况是非常困难的。更糟糕的是,有许多不同的语言。这是个棘手的问题。


InfoQ:情感分析是如何工作的?


Horgan:有几种不同的方法,但基本原则是在简单性和准确性之间进行权衡。一种简单的方法是列出与你想要跟踪的每种情感相关的单词。例如,你可以做一个正面词汇表(好、很好、优秀)和一个负面词汇表(不好、极差、糟糕)。然后,你拿起你感兴趣的那篇文章,把其中出现的所有正面和负面的单词都记下来。如果总体上是正面的,那么你就可以得出结论:文本是正面的;否则,你可以得出结论:它是负面的。

你可以通过给每个单词设定一个“强度(strength)”,从而使这个过程更加准确。例如,“好”可能是 60%正面,但“很棒”听起来更加正面,你可能会给一个 80%的分数。并不像听起来那么费力,网上有免费开放的情感词列表(例如,Python 库pattern),所以你通常不需要自己整理。

但简单的单词计数往往无法识别细微的差别,无法掌握更多专用的语言结构。例如,我可能会告诉你,“这部电影非常好”,这可能会生成一个中性或者负面分数,取决于你如何看待“非常(awfully)”这个词。虽然借助单词计数可以变通地解决解决这个问题,但一般来说,这些方法还不足以彻底地解决该问题。

一个解决方案是使用机器学习算法,让计算机学习单个单词或词对或更长一点的文本与给定情感相关的概率。我不会介绍这里用到的数学知识,但构建一个合理的朴素贝叶斯模型(或者至少是比单词计数要好)并不难。


InfoQ:情感分析有多可靠?我们可以相信其分析结果吗?


Horgan:遗憾的是,目前已知的所有方法都缺少某种形式的上下文。例如,单词计数过于强调单词,所以无法理解诸如“重大失败(great failure)”这样的短语。使用朴素贝叶斯算法就可以解决这个问题,因为它可以学会把情绪与词对、三个词或任意长度的短语关联起来,但是,对于特定的双重否定,如果你没有足够的样本,它就仍可能在“I can’t get no satisfaction”这样的句子上犯错。

现在的最新技术是深度学习,它使用词嵌入、神经网络和注意机制等技术,学习人类语言的复杂结构。但即使是这些模型也会搞不明白更复杂的语言结构,如讽刺和挖苦。事实上,甚至在人类中间,人们对情感的判断一致性也很少超过 80%。我认为这里的教训是,语言和情感绑定在一起,但这种关系并不总是清晰的,甚至对我们而言也是如此。目前,机器只能做得和我们一样好。


InfoQ:您在为 Twitter 构建情感分析器的过程中学到了什么?


Horgan:实际上相当多。它比听起来容易,也比听起来难。你可以试下现成的方法,它们有效,但如果你想使自己构建的东西非常准确,你得更具体一点。比如,你可以考虑发推特的人的个人资料。唐纳德·特朗普就是一个很好的例子,他要么非常正面,要么非常负面。将这类信息加入关于单个用户的算法中可以得到更好的结果。


InfoQ:如果 InfoQ 的读者想了解更多关于情感分析的内容,他们该如何入手?


Horgan:关于数据科学,有很多教程(有些更高级)通常是针对只想快速入手的计算机迷。一般来说,Natural Language Processing with Python是一个很好的起点,虽然这不是免费的。有很多有用的 Python 库提供了良好的文档和教程,如nltkspacytextblobvadergensim


InfoQ 正在以文章、问答、综述的形式对RebelCon.io 2019 大会进行报道。InfoQ 此前发表了 Sabine Wojcieszak 的文章“CI= 持续改进,DevOps 的动力源泉”。


查看英文原文Teaching Machines to Understand Emotions With Sentiment Analysis


2019-06-19 08:005656
用户头像

发布了 912 篇内容, 共 639.5 次阅读, 收获喜欢 1627 次。

关注

评论

发布
暂无评论
发现更多内容

管理笔记 [9]:组织与督导,管理者的两个宝

L3C老司机

28天写作

关于Linux系统中Message中的Session日志详解

运维研习社

Centos 7

翻译:《实用的Python编程》02_02_Containers

codists

Python 人工智能 容器 后端 数据结构与算法

BOE(京东方)全面发力8K 成为央视8K超高清技术合作伙伴

爱极客侠

iOS BAT面试对答题

ios 面试

二、MongoDB基础知识

Kylin

读书笔记 七日更 分布式数据库mongodb 二月春节不断更

阿里+腾讯+字节+滴滴+美团java面试题及答案(2021版)1353道题全部开源

Java架构追梦

Java 面试 架构师 金三银四

Jenkins通过OpenSSH实现Windows下的CI/CD

运维研习社

jenkins CI/CD Windows Server 2012 R2

IO 模型知多少 | 理论篇

io

为行动而读书-《麦肯锡精英高效阅读法》读书笔记

Harris

读书笔记

第十三周 数据应用二 作业 「架构师训练营 3 期」

胡云飞

抓包带你详解TCP的11种状态

运维研习社

三次握手 四次挥手 TCP/IP 抓包

面试官一上来就问我Chrome底层原理和HTTP协议(万字长文)

我是哪吒

大前端 后端 chorme 28天写作 2月春节不断更

【STM32】CubeMX+HAL 输出PWM

AXYZdong

硬件 stm32 2月春节不断更

学习 Java 语言,你必须知道的 Java 简史

白色蜗牛

Java spring 程序员

Instana:如何评价可观察性方案?

行人23

京东方“8K+5G”技术助力牛年春晚 开启超高清视频直播时代

爱极客侠

一文搞懂Linux下Ulimit资源限制

运维研习社

Linux linux命令 ulimit

你好,2021~

数据社

程序员 2021年展望

做出赋能其他人的产品是技术牛人最好的证明

刘华Kenneth

敏捷 平台

实例详解Linux下ulimit每个参数

运维研习社

Linux ulimit linux系统资源管理 open file

Kafka.03 - Message 介绍

insight

kafka 2月春节不断更

创业公司人力资源体系建设的几点思考

一笑

人力资源 28天写作

Nginx如何监控各server的流量

运维研习社

nginx Prometheus zabbix upstream

Nginx加密套件配置不当,造成SSL无法建立连接

运维研习社

nginx zabbix SSL证书 证书监控

为什么做这样一个产品之容量评估篇

数列科技杨德华

28天写作

2021年目标,我打算这样去实现

谙忆

如何解决Nginx实现动静分离或反向代理时资源路径不匹配

运维研习社

nginx 反向代理 动静分离

说说规则引擎

张老蔫

28天写作

牛启新春|优质文章人气大挑战

InfoQ写作社区官方

热门活动

测试技术

牛鬼蛇神VS魑魅魍魉

借助情感分析教计算机理解情感_AI&大模型_Ben Linders_InfoQ精选文章