业界 | 谷歌 Smart Compose:神经网络可以帮你写 Gmail 邮件了

Gmail 的智能预测拼写功能:Smart Compose 技术原理详解。

AI 科技评论按:在 Google I/O 2018 上,除了 Google 助手给餐馆打电话的场景赢得现场观众的喝彩外,在用户写邮件时可预测下一句的 Smart Compose 技术同样也引得众人欢呼。近期,谷歌大脑团队首席软件工程师 Yonghui Wu 在 Google AI Po 出了这篇详细介绍 Smart Compose 原理的博文, AI 科技评论将其内容编译如下。

Google I/O 2018 上,谷歌介绍了 Gmail 中的一项新特性,智能预测拼写功能:Smart Compose,该新特性利用机器学习,交互式地为正在写邮件的用户提供补全句子的预测建议,从而让用户更快地撰写邮件。Smart Compose 基于此前智能回复(Smart Reply)技术开发而来,Smart Compose 提供了全新的方式来帮助用户撰写邮件,无论用户是在回一封来件还是从草稿箱起草一封新邮件。

谷歌在开发 Smart Compose 的过程中,遭遇到了以下这些关键挑战:

  • 延迟:因为 Smart Compose 需基于用户的每一次输入来提供预测,所以它必须提供 100 毫秒以内的理想预测,这样用户才察觉不到任何延迟。这时候,平衡模型复杂性和推理速度就成了一个需要解决的关键难题。
  • 用户规模:Gmail 拥有超过 14 亿的各种用户。为了面向所有用户提供自动组句预测,模型必须拥有足够强的建模能力,这样它才能精细地在不同上下文中提供定制建议。
  • 公平性和用户隐私:在 Smart Compose 的开发过程中,谷歌需要在训练过程中处理潜在偏倚的来源,并遵守像 Smart Reply 功能一样严格的用户隐私标准,以确保模型不会暴露用户的隐私信息。另外,谷歌的研究人员也不具备查看用户邮件的权限,这意味着他们不得不在一个自己都无法查看的数据集上开发和训练一个机器学习系统。

找到对的模型

比如 ngram,neural bag-of-words(BoW)和 RNN language 这种典型的语言生成模型,它们是基于前缀词序列来预测下一个词的。然而,在一封邮件中,用户在当前邮件撰写会话中打下的单词会给模型一个信号,模型会利用该信号来预测下一个单词。为了结合更多用户想表达的上下文,谷歌的模型还会利用邮件主题和此前的邮件正文(假设用户正在回复一封刚刚收到的邮件)。

谷歌的方法是包含利用额外语境的一个方法,该方法是将问题转换成一个序列到序列(seq2seq)的机器翻译任务,其中源序列是邮件主题和上封邮件正文(假设存在上封邮件)的串联,用户正在写的邮件是目标序列。尽管该方法在预测质量上表现良好,但它的延迟要比谷歌严苛的延迟标准超出了好几个量级

为了提高预测质量,谷歌将一个 RNN-LM 神经网络与一个 BoW 模型结合起来,结合后的模型在速度上比 seq2seq 模型要快,且只轻微牺牲了预测质量。在该混合算法中,谷歌通过把词嵌套们平均分配在每个区域内,来对邮件主题和此前的邮件内容进行编码。随后谷歌将这些平均分配后的嵌套连接在一起,并在每次执行解码步骤时将它们提供给目标序列 RNN-LM,过程如下面的模型图解。

Smart Compose RNN-LM 模型架构。将邮件主题和此前邮件信息进行编码,采用的方法是将它们的词嵌套平均分配在每一个区域内。随后,平均后的嵌套会在每次执行解码步骤时提供给目标序列 RNN-LM。

加速模型训练和服务

当然,一旦选定了这种建模方法,谷歌就必须调整各种模型超参数和使用超过数十亿的样本来训练这些模型,所有的这些操作都相当费时。为了实现加速,谷歌使用了一个完整 TPUv2 Pod 来执行实验。在这情况下,谷歌能够在一天之内将一个模型训练至收敛状态。

在谷歌训练出速度上更快的混合模型之后,初始版本的 Smart Compose 在一个标准 CPU 上运行时,依旧存在几百毫秒的平均服务延迟,这与 Smart Compose 努力预测语句来帮用户节省时间的特点是不相符的。幸运的是,谷歌可在推断期间使用 TPU 来大大地加速用户体验,通过分流 TPU 之上的大部分计算,谷歌可以将平均延迟改良至几十毫秒,同时也能大大增加单一机器可处理的服务请求数量。

公平性和隐私

由于语言理解模型会反映人类的认知偏倚,这样会导致得到多余的词汇联想和句子完成建议,所以在机器学习内实现公平至关重要。Caliskan et al. 在他们近期的「Semantics derived automatically from language corpora contain human-like biases」论文中指出,模型的词联想深陷于自然语言数据的偏倚数据中,这为打造任何一个语言模型都带来了相当的挑战。在模型训练过程中,谷歌积极地寻找方法来持续降低潜在的偏倚。另外,由于 Smart Compose 是基于数十亿的短语和句子进行训练,这与垃圾邮件机器学习模型的训练方法一致,谷歌已经进行了广泛的测试来确保,模型只记忆多种用户都使用的常识语句,关于常识语句的调查结果源自这篇论文 The Secret Sharer: Measuring Unintended Neural Network Memorization & Extracting Secrets(https://arxiv.org/abs/1802.08232)。

未来研究

谷歌将持续地研究改良语言生成模型的预测质量,为此谷歌会通过使用最先进的构架(如 Transformer,RNMT+等)和试用最新、最先进的训练技术来实现这一目标。一旦模型的实验结果满足了谷歌的严格延迟约束条件,谷歌就会把这些更加的先进模型部署到自家产品上去。另外,谷歌还在进行结合个人语言模型的研究,该模型的目的是给系统增加一个新特性,让它能够更加准确地模拟每个用户自己的写作风格。

via Google AI Blog, AI 科技评论编译。

原文发布于微信公众号 - AI科技评论(aitechtalk)

原文发表时间:2018-06-20

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏AI研习社

分布式机器学习时代即将来临?谷歌推出“Federated Learning”

传统机器学习方法,需要把训练数据集中于某一台机器或是单个数据中心里。谷歌等云服务巨头还建设了规模庞大的云计算基础设施,来对数据进行处理。现在,为利用移动设备上的...

37211
来自专栏量子位

国内首个深度学习开发SDK发布:深鉴科技对标英伟达TensorRT

安妮 发自 清华同方科技广场 量子位 出品 | 公众号 QbitAI AI芯片厂商开始意识到,AI芯片的计算性能再好,失去完备的软件包工具链的支持,也将丧失优势...

4397
来自专栏AI科技评论

干货 | 这些关于 TensorFlow 问题的解答,你不能错过

用 10 周时间,让你从 TensorFlow 基础入门,到搭建 CNN、自编码、RNN、GAN 等模型,并最终掌握开发的实战技能。4 月线上开课, www.m...

3175
来自专栏云加头条

王才华:智能钛・一站式机器学习平台TI-ONE是什么?

腾讯云AI平台技术负责人王才华博士在腾讯“云+未来”峰会的「开发者专场」做了主题为“智能钛・一站式机器学习 TI-ONE:腾讯云上的机器(深度)学习IDE”的技...

5958
来自专栏PaddlePaddle

深度学习可视化工具Visual DL——“所见即所得”

1月17日,百度PaddlePaddle& ECharts团队宣布上线深度学习可视化工具Visual DL,该工具可以使得深度学习任务变得生动形象,实现可视分析...

4285
来自专栏AI科技评论

开发 | 分布式机器学习时代即将来临?谷歌推出“Federated Learning”

传统机器学习方法,需要把训练数据集中于某一台机器或是单个数据中心里。谷歌等云服务巨头还建设了规模庞大的云计算基础设施,来对数据进行处理。现在,为利用移动设备上的...

42410
来自专栏钱曙光的专栏

AI 重新定义 Web 安全

目前近 90% 的企业都已经开始使用云计算(包括公有云、私有云等),这说明大规模云化对于企业而言已经不只是趋势,更是确凿的既成事实,云化普及的同时也给安全带来很...

4350
来自专栏AI研习社

最知名的5个机器学习框架,知道一个说明你入门了

AI 研习社消息:业内知名数据科学网站 KDnuggests,昨日评选出了四月份“你不可忽视的五个机器学习项目”。 你可能没听过它们,但今天或许会考虑上手。至于...

4519
来自专栏ATYUN订阅号

还不知道怎么回邮件?Gmail新功能帮你脱离苦海:Smart Compose使用神经网络智能撰写电子邮件

上周在Google I / O上,Google介绍了Smart Compose,这是Gmail的一项新功能,它使用机器学习功能在键入时交互地提供句子完成建议,使...

1014
来自专栏ATYUN订阅号

Berkeley共享自主研究:人-机组合应用model-free RL,优化无人机实时辅助控制

想象这样一个场景,无人机驾驶员远程操控一架四旋翼飞行器,用机载摄像头进行导航和着陆。不熟练的飞行动态、陌生的地形和网络延迟都会影响这个系统,使得人很难对其进行控...

1095

扫码关注云+社区

领取腾讯云代金券