使用联邦学习预测文本选择

1727418996957.jpg

智能文本选择于 2017 年作为 Android O 的一部分推出,是 Android 最常用的功能之一,它通过预测用户点击时所需的单词或单词集,并自动适当扩展选择范围,帮助用户轻松快速地选择、复制和使用文本。通过此功能,选择会自动扩展,对于具有定义分类类型的选择(例如地址和电话号码),用户可以使用某个应用来打开选择,从而节省用户更多时间。

今天,我们将介绍如何通过使用联合学习负责任地训练神经网络模型以处理用户交互,同时保护用户隐私,从而提高智能文本选择的性能。这项工作是 Android 新的Private Compute Core安全环境的一部分,它使我们能够将模型在某些类型的实体上的选择准确率提高高达 20%。

用于实体选择的服务器端代理数据

智能文本选择与Smart Linkify 背后的技术相同,它不会预测任意选择,而是专注于明确定义的实体,例如地址或电话号码,并尝试预测这些类别的选择范围。在没有多词实体的情况下,该模型被训练为仅选择单个单词,以最大限度地减少错误地进行多词选择的频率。

智能文本选择功能最初是使用来自已应用schema.org注释 的网页的代理数据进行训练的。然后,这些实体被嵌入到一组随机文本中,模型被训练为只选择实体,而不会溢出到其周围的随机文本中。

虽然这种在 schema.org 注释上进行训练的方法有效,但它有几个局限性。数据与我们期望用户在设备上看到的文本有很大不同。例如,带有 schema.org 注释的网站通常具有比用户在手机上输入的格式更合适的实体。此外,嵌入实体进行训练的文本样本是随机的,不能反映设备上的真实上下文。

用于联邦学习的设备反馈信号

随着新版本的发布,模型不再使用代理数据进行跨度预测,而是使用联邦学习在设备上进行真实交互训练。这是一种机器学习模型的训练方法,其中中央服务器协调在多台设备之间分配的模型训练,而使用的原始数据保留在本地设备上。标准的联邦学习训练过程如下:服务器首先初始化模型。然后,开始一个迭代过程,其中 (a) 对设备进行采样,(b) 选定的设备使用其本地数据改进模型,(c) 然后仅发回改进后的模型,而不是用于训练的数据。然后,服务器对收到的更新进行平均,以创建在下一次迭代中发送的模型。

对于智能文本选择,每次用户点击选择文本并更正模型的建议时,Android 都会获得有关模型应预测的选择范围的精确反馈。为了保护用户隐私,选择会暂时保存在设备上,而不会在服务器端可见,然后通过应用联合学习技术来改进模型。该技术的优势在于,它使用与推理期间看到的相同类型的数据来训练模型。

联合学习与隐私

联邦学习方法的优势之一是它可以保护用户隐私,因为原始数据不会暴露给服务器。相反,服务器只会接收更新后的模型权重。不过,为了防范各种威胁,我们探索了保护设备上数据、安全聚合梯度和降低模型记忆风险的方法。

用于训练联合智能文本选择模型的设备代码是 Android 私有计算核心安全环境的一部分,这使得它特别适合安全地处理用户数据。这是因为私有计算核心中的训练环境与网络隔离,并且只有在应用联合和其他隐私保护技术时才允许数据传出。除了网络隔离之外,私有计算核心中的数据还受到限制其使用方式的政策的保护,从而防止可能进入设备的恶意代码。

为了聚合设备上训练代码生成的模型更新,我们使用安全聚合,这是一种加密协议,允许服务器计算联邦学习模型训练的平均更新,而无需读取各个设备提供的更新。除了受到安全聚合的单独保护外,更新还受到传输加密的保护,从而在网络上针对攻击者建立两层防御。

最后,我们研究了模型记忆。原则上,训练数据的特征可能会被编码在发送到服务器的更新中,在聚合过程中存活下来,并最终被全局模型记住。这可能使攻击者能够尝试从模型中重建训练数据。我们使用Secret Sharer中的方法(一种量化模型无意中记住其训练数据的程度的分析技术)来实证验证模型没有记住敏感信息。此外,我们采用了数据屏蔽技术来防止某些类型的敏感数据被模型看到

结合起来,这些技术有助于确保联合智能文本选择以保护用户隐私的方式进行训练。

实现卓越的模型质量

使用联邦学习训练模型的初步尝试失败了。损失没有收敛,预测基本上是随机的。调试训练过程很困难,因为训练数据是在设备上,而不是集中收集的,因此无法检查或验证。事实上,在这种情况下,甚至不可能确定数据是否符合预期,而这通常是调试机器学习管道的第一步。

为了克服这一挑战,我们精心设计了高级指标,让我们了解模型在训练期间的表现。这些指标包括训练示例的数量、选择准确度以及每种实体类型的召回率和准确率指标。这些指标是在联合训练期间通过联合分析收集的,该过程与模型权重的收集过程类似。通过这些指标和许多分析,我们能够更好地了解系统的哪些方面运行良好以及哪里可能存在错误。

修复这些错误并做出额外改进后,例如为数据实现设备上的过滤器、使用更好的联合优化方法和应用更强大的梯度聚合器,模型训练得很好。

结果

使用这种新的联合方法,我们能够显著改进智能文本选择模型,改进程度取决于所使用的语言。多词选择准确度的典型改进范围在 5% 到 7% 之间,而单词性能没有下降。正确选择地址(支持的最复杂实体类型)的准确度提高了 8% 到 20%,同样,这取决于所使用的语言。这些改进每天为用户自动扩展数百万个额外选择。

国际化

这种联合学习方法对于智能文本选择的另一个优势是它能够扩展到更多语言。服务器端训练需要手动调整每种语言的代理数据,以使其更类似于设备上的数据。虽然这只能在一定程度上起作用,但对于每种额外的语言来说,这都需要付出巨大的努力。

然而,联邦学习管道会根据用户交互进行训练,无需进行此类手动调整。一旦模型在英语方面取得良好结果,我们将相同的管道应用于日语,并看到更大的改进,而无需专门针对日语选择调整系统。

我们希望这种新的联合方法能够让我们将智能文本选择扩展到更多语言。理想情况下,这也可以在不手动调整系统的情况下实现,从而可以支持资源匮乏的语言。

结论

我们开发了一种联合学习方法,可以根据用户交互来预测文本选择,从而大大改进了部署到 Android 用户的智能文本选择模型。这种方法需要使用联合学习,因为它无需在服务器上收集用户数据即可工作。此外,我们还使用了许多最先进的隐私方法,例如 Android 的新私有计算核心、安全聚合和秘密共享器方法。结果表明,隐私不一定是训练模型时的限制因素。相反,我们设法获得了一个明显更好的模型,同时确保用户的数据保持私密。

致谢

许多人为这项工作做出了贡献。我们要感谢 Lukas Zilka、Asela Gunawardana、Silvano Bonacina、Seth Welna、Tony Mak、Chang Li、Abodunrinwa Toki、Sergey Volnov、Matt Sharifi、Abhanshu Sharma、Eugenio Marchiori、Jacek Jurewicz、Nicholas Carlini、Jordan McClead、Sophia Kovaleva、Evelyn Kao、Tom Hume、Alex Ingerman、Brendan McMahan、Fei Zheng、Zachary Charles、Sean Augenstein、Zachary Garrett、Stefan Dierauf、David Petrou、Vishwath Mohan、Hunter King、Emily Glanz、Hubert Eichner、Krzysztof Ostrowski、Jakub Konecny、Shanshan Wu、Janel Thamkul、Elizabeth Kemp 以及参与该项目的其他所有人。

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

评论