AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

Gmail Inbox 发布基于深度学习的智能回复功能

  • 2015-11-13
  • 本文字数:1734 字

    阅读完需:约 6 分钟

作为日常工作最主要的沟通手段,Email 在发明后几十年仍然活跃在工作第一线,越来越多的智能功能被添加进来。近日,继旅程助手提醒推荐功能以后,Gmail 团队发布了Inbox 最新功能:智能回复(Smart Reply)(界面如下图),并撰文阐述了背后基于深度学习的实现思路

推出智能回复功能的契机很直白:由于工作强度的增强,人们的交流日益频繁,然而大多数人有用手机收发邮件的习惯,使得回复Email 有时变成了很烦躁的事情,费时费力。而很多时候,工作邮件都可以通过一些简短的回复例如“正在尝试”、“马上发给您”、“开会时讨论一下”等等来解决。智能回复就是基于这种考虑,通过深度学习技术,来“猜测”可能的简短回复,帮用户简化回复过程。智能回复会基于用户收到的邮件内容,来推荐三个可能的回复供用户选择,一个直观的展示参见下图:

智能回复将此前数次按键输入直接简化为一两次,极大方便了用户,提高了Inbox 体验,而后台支撑该功能的技术却是相当复杂。Inbox 利用机器学习技术(确切来讲是深度学习技术)识别那些能够被“秒回”的邮件,并动态生成回复。值得一提的是,用户选择智能回复词的过程中,后台的机器学习模型会根据选择不断迭代。下面再介绍一些具体的技术细节。

在展开介绍之前,多说一句Google 内部的很多项目都在使用机器学习技术来改进用户体验,比如利用深度学习改进语音搜索 YouTube 缩略图等等。因此 Gmail 团队的 Bálint Miklós 看到了上文中提到的回复邮件痛点,找到资深科学家 Greg Corrado,后者表示了极大的兴趣。

智能回复的原理是很复杂的,涉及到自然语言理解和生成技术,这些技术多用于机器翻译,而回复邮件也可以抽象认为是个机器翻译问题,即来信是一种语言,而回信是另一种语言,智能回复就是要理解来信,并“翻译”生成回信。长期的实践已经表明相关技术并没有发展到能直接应用到产品中的程度,大部分时间都只能实现一些逗乐聊天机器人。但对于智能回复词这一特定场景,是能够给出比较满意答案的。Google 科学家 Oriol Vinyals, Ilya Sutskever 和 Quoc Le 在去年曾重点研究理解和生成技术,称为序列学习,Greg 的同事Anjuli Kannan 在此基础上开发了可生成智能回复的产品级神经网络。

类似其他序列学习系统,智能回复功能由一对RNN 组成,如下图所示。

一个用来对用户收到的邮件内容进行编码,另一个则用来预测可能的回复。编码网络一次读入一个单词,然后生成一个由数字组成的向量。该向量被Geoff Hinton 老先生称为“ thought vector ”,能够在一定程度上表达邮件的语义。在这种情况下,英文句子“Are you free tomorrow?”和句子“Does tomorrow work for you?”语义距离更近。第二个网络根据 thought vector 来生成一个语义语法都正确的回复。值得一提的是,整个网络都无需任何人工接入,完全通过历史邮件和回复来学习模型。

Greg 提到,跟邮件打交道的一个挑战就是,学习模型的输入和输出都很长,有时多达几百单词。因此需要选择合适的 RNN 模型,Google 选择的是 LSTM 模型,能够很好处理比较远的单词之间的依赖关系,并能够发现邮件内容中最重要的部分,而不会被附近的短句所影响。Greg 还提到,另一个挑战就是用户的隐私问题,在模型训练的过程当中,要保证没有任何人阅读用户的邮件,全程都是机器自动化操作。

最后 Greg 还分享了开发过程中的一些感受。最开始的时候,智能回复给出的三个答案基本意思相同,用户很难取舍。最后机器学习专家 Sujith Ravi 解决了这个问题,并表示这是一个典型的“回复多样性”缺乏问题,可通过计算句子语义相似度来解决,而不仅仅是考虑单词的相似度。另一个早期版本中的问题是不管邮件内容是什么,智能回复都倾向给出“I love you”的回复,因为类似感谢、听起来不错和我爱你这样的回复太常见了。后来通过对可能回复的概率进行归一化解决,使得回复不但常见,而且要和邮件的内容也比较相关。

据悉,智能回复功能将会在下周发布的 iOS 和 Android 版本中,感兴趣的读者可以进行更新尝试。


感谢杜小芳对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-11-13 18:002255
用户头像

发布了 268 篇内容, 共 128.4 次阅读, 收获喜欢 24 次。

关注

评论

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

APP上运行小程序的混合移动研发模式

Speedoooo

容器 ios开发 APP开发

AI运动:阿里体育端智能最佳实践

阿里巴巴终端技术

最佳实践 端智能

多变的智能降噪

睿象云

运维 告警 智能运维 告警管理

构建 Snowpack + React + Typescript + Electron的Desktop App

吴脑的键客

typescript Electron React webpack

Kafka中的数据不丢失机制及CAP理论详解

五分钟学大数据

11月日更

潜藏在手机中的新威胁:免安装应用安全指北

安第斯智能云

安全 移动端

云小课 | 网站接入WAF失败怎么办?看这里就够了

华为云开发者联盟

华为云 Web应用防火墙 接入WAF失败 故障排查

论文解读丨无监督视觉表征学习的动量对比

华为云开发者联盟

视觉 无监督学习 无监督视觉 表征学习 动量对比

巅峰对话在线研讨 Q&A:Oracle Database 21c vs openGauss 2.0新特性解读和架构演进

墨天轮

数据库 oracle opengauss

博文推荐 | 一文带你看懂 Pulsar 的消息保留和过期策略

Apache Pulsar

架构 云原生 中间件 干货 Apache Pulsar

频繁更新主机,导致pod ip不够解决方法

ilinux

ETL和数据建模

大数据技术指南

11月日更

译文|选择 Apache Pulsar 而非 Kafka 的 10 个理由

Apache Pulsar

kafka 架构 云原生 中间件 Apache Pulsar

Black Hat Europe 2021议题解读:Wi-Fi Mesh中的安全攻击面

百度安全

Black Hat Wi-Fi Mesh

一个站点不够学?那就在用Python增加一个采集目标,一派话题广场+某金融论坛话题广场爬虫

梦想橡皮擦

11月日更

Go iota 原理和源码剖析

编程宝库

🏆【Alibaba中间件技术系列】「RocketMQ技术专题」小白专区之领略一下RocketMQ基础之最!

码界西柚

RocketMQ 消息队列 Alibaba技术 11月日更

阿里IM技术分享(六):闲鱼亿级IM消息系统的离线推送到达率优化

JackJiang

架构设计 即时通讯 IM

一图看懂 Apache ShardingSphere 5.0.0

SphereEx

数据库 开源 ShardingSphere

虚拟机与容器的混合管理实践

安第斯智能云

Kubernetes 后端 云化底层的那些事

博文推荐|Pulsar 存储空间不释放的问题分析与解决方法

Apache Pulsar

架构 云原生 Apache Pulsar 技术干货 BookKeeper 存储空间

TDengine助力曲靖卷烟厂有效提升时序数据存取效率

TDengine

数据库 tdengine 后端

视野 | OpenSearch,云厂商的新选择?

RadonDB

数据库 搜索引擎; Elastic Search

She Builds Summit|邀您一同感受她的科技力量!

SphereEx

开源 AWS SphereEx 潘娟

亿磐获评《新闻周刊》2021年度最受雇员喜爱工作场所

InfoQ_434670063458

亿磐 EPAM 新闻周刊

技术分享| 如何做一款容纳百人的视频会议?

anyRTC开发者

音视频 WebRTC 视频会议 实时通信 视频通话

拒绝编译等待 - 动态研发模式 ARK

字节跳动终端技术

ios 字节跳动 移动开发

Python 中的反转字符串:reversed()、切片等

华为云开发者联盟

Python 切片 反转字符串 reversed 反转

北省廊坊市本地有等保测评机构吗?在哪里?

行云管家

网络安全 等保 等级保护 等保测评 廊坊

【堡垒机小知识】堡垒机是硬件还是软件?

行云管家

网络安全 信息安全 数据安全 堡垒机

这可能是,Flutter 中最“强悍”的内存泄漏检测方案......

阿里巴巴终端技术

flutter ios android 内存泄漏

Gmail Inbox发布基于深度学习的智能回复功能_语言 & 开发_张天雷_InfoQ精选文章