谷歌Gboard应用的语言模型创新:提升打字体验的隐私保护技术

  每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领域的领跑者。点击订阅,与未来同行! 订阅:https://rengongzhineng.io/

谷歌的键盘应用程序Gboard通过使用语言模型(LM)来改善用户的打字体验,提供了下一个词预测、自动更正、智能编写、滑动输入和校对等功能。我们的研究人员优先考虑开发负责任的方法,既能提高Gboard的LM性能,又能维护最高的隐私标准。近年来,我们取得了重大进展,包括向用户提供数据使用披露和配置控制,以及使用联邦学习和差分隐私(DP)来训练Gboard的LM,从而提供可量化且严格的数据匿名度量。

Gboard的LM设计为使用预定义的常用词列表,称为词汇表。LM的性能取决于这个词汇表的质量,而词汇表随时间可能会变化。不属于词汇表的词被称为词外词(OOV)。OOV词出现的原因有几个,例如,某些语言的词汇表在Gboard中仍在开发中,所以OOV词的比例可能较高。在词汇表相对完整的语言中,如美国英语,OOV词通常由于新兴的流行词(如“COVID-19”和“Wordle”)、非典型大小写(如“tuesday”)以及用户偏好的不寻常拼写(如“cooool”)或甚至打字错误而出现。由于用户在键盘上输入的信息性质敏感,OOV发现是一项具有挑战性的任务。

今天,我们很高兴分享几种通过发现新的常用词来提高LM性能的方法,同时保持强大的数据最小化和DP保证。这些研究工作包括与语言学家合作揭示新的OOV词,使用隐私保护的联邦分析和其他DP算法,以及使用受信任执行环境(TEE)。

与语言学家的合作


发现OOV词的一种方法是通过与外部方负责任的合作获取经过审查的词汇表。例如,我们与皇家机构西班牙皇家学院(RAE)合作,该机构的使命是确保西班牙语的稳定性,创建了更精细的西班牙语字典并将其纳入Gboard。这使得对在西班牙打字的用户来说,自动更正更快、词汇推荐更好,从而改善了Gboard体验。许多之前缺失的词包括常见名字、品牌名和地点名;相对技术性的词(如“euribor”、“dopamina”、“tensiómetro”);以及特定于西班牙说话者的变形(如“cuidáis”、“invitáis”、“tiráis”)。

我们使用之前的训练数据重新训练我们的西班牙语LM,并通过联邦重新训练下游模型,取得了显著的质量改进。OOV词的总比例下降了7.3%。打字词在初始提交后被修改的频率降低,由于使用了更大的词汇表,打字速度也因此得到提升。

隐私保护的联邦分析
另一种改进词汇表的方法是从用户设备中发现频繁的OOV词。这本身是一项具有挑战性的任务,因为用户在其设备上键入的内容性

质敏感。因此,我们需要精心设计机制,在数据收集和处理阶段保护用户的敏感信息。为此,我们采用联邦分析,这是一种数据最小化方法,用于在不共享敏感数据的情况下对分布式数据集执行统计查询,并通过新算法扩展它到开放集领域。这使得我们能够在保护用户贡献通过数据最小化技术(如安全聚合(SecAgg))和数据匿名化技术(如DP)的同时,动态地发现OOV词。

No, it seems like the response was cut off. Here's the continuation and conclusion of the translation:

我们开发的一项技术是SecAggIBLT,它结合了可逆的布隆查找表(IBLT)和SecAgg。IBLT是一种线性数据结构,允许高效地插入、删除和查找键值对。在这里,用户将其OOV词插入到初始化为零的IBLT中,然后通过SecAgg进行聚合。这保证了即使是诚实但好奇的服务器,也只能看到聚合的IBLT(所有设备上的所有OOV词及其频率),而不是单个用户的贡献。这种方法为用户贡献提供了匿名性,并阻止服务器将特定词与单个用户联系起来。在数据处理阶段,中心DP应用于发现的OOV词及其计数,以确保对少数个体来说独特的OOV词永远不会被发布。DP使用参数(ε,δ)来量化隐私保护(数值越小,保护越强)。它提供了一个正式保证,即发布的数据模式在设备之间足够普遍,从而防止个体识别。

在Gboard的使用案例中,由于用户输入可能来自包含敏感信息的大量可能性,例如英语用户可能会输入任意长度的单词或短语,包含来自拉丁字母表的字符、数字列表或其他特殊字符,这些输入可能包含他们的个人信息,如用户名和信用卡号。因为SecAggIBLT能够发现这样独特的词,它依赖于服务器在SecAgg之后正确应用中心DP来确保用户隐私。本身它并不阻止好奇的服务器检查发现的OOV词,可能访问敏感信息。这要求我们开发算法,用更强的数据最小化和DP保证来发现频繁的OOV词。

为此,我们在现有的研究基础上开发了LDP-TrieHH,通过迭代构建字典树(前缀树)数据结构来学习频繁的单词。LDP-TrieHH在数据收集过程中提供了强大的数据最小化和严格的本地DP(LDP)保证。在将LDP-TrieHH算法应用到特定语言时,如在美国和印度尼西亚使用的英语,字典树的每一层都存储与该层深度相对应的一组常见前缀。字典树从根部开始迭代构建,最大长度为15。在每一层,我们收集来自一组用户的反馈,他们只通过在上一层学到的常见前缀后指示一个字符来贡献他们的数据。例如,如果“CO”是算法在前一层学到的一个常见前缀,用户输入单词“COVID-19”,用户将只通过提交对“COV”的投票而不是整个单词“COVID-19”来贡献他们的数据,这减少了从投票过程中泄露的信息量。

我们还通过最小化用户参与(每个用户在最多一个层的投票阶段参与)、限制每个用户可以贡献的投票数量(60天期间平均每天一个单词)、并在用户的投票中添加本地噪音来提供严格的LDP保证(ε=10.0每个单词),从而进一步保护用户投票的隐私。为此,我们使用子集选择机制,它在LDP下提供最优的效用-

隐私权衡。在每一层,我们从大量用户(每层50万)中收集投票,这些投票经过聚合和阈值处理,以过滤掉不常见的前缀。通过这一额外的数据处理步骤,通过聚合分析隐私放大,LDP-TrieHH提供了每个词的中心DP保证(ε=0.315,δ=1e-10),每个用户在60天内最多贡献60个单词(即平均每天一个单词)。为了提高发现词的覆盖率,我们连续运行LDP-TrieHH多次,构建几个具有不同用户集的字典树。在后续运行中,我们要求用户只贡献尚未从前几次运行中学到的OOV词,以更有效地利用每个用户的贡献预算。通过LDP-TrieHH,我们能够发现占英语和印尼语OOV词的16.8%和17.5%。此报告提供了更多细节。

通过TEE扩展到更多语言,实现可验证的隐私
使用LDP-TrieHH方法私下发现OOV词的能力依赖于Gboard活跃的英语和印尼语用户的大量(数百万)数量。然而,对于使用量较小的语言,LDP-TrieHH的准确性将不可避免地较低。为了更好地跨语言扩展,包括使用量较低的语言,Gboard现在正在利用受信任执行环境(TEE)的服务器端处理联邦数据,开始进行验证这种方法的实验,使用合成和真实数据。

TEE是常见处理器的安全扩展,通过嵌入的秘密加密密钥(由硬件制造商签名)来促进工作负载的保密性、完整性和可验证性。我们正在开发的系统,如本白皮书所述,使设备能够验证只能在受TEE保护的过程中解密安全上传的数据,这一过程只发布私有化的聚合数据,且数据不能用于任何其他目的。TEE方法通过DP增强,提供与LDP-TrieHH类似的隐私保护,具有更好的可扩展性,并对类似的隐私威胁具有强大的抵抗力。未来几个月将有更多更新。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/697348.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

YOLOv9改进策略目录 | 包含卷积、主干、检测头、注意力机制、Neck上百种创新机制

👑 YOLOv9有效涨点专栏目录 👑 专栏视频介绍:包括专栏介绍、得到的项目文件、模型二次创新、权重文件的使用问题,点击即可跳转。 前言 Hello,各位读者们好 本专栏自开设两个月以来已经更新改进教程50余篇其中包含Re…

打造清洁宜居家园保护自然生态环境,基于YOLOv7【tiny/l/x】参数系列模型开发构建自然生态场景下违规违法垃圾倾倒检测识别系统

自然生态环境,作为我们人类赖以生存的家园,其健康与否直接关系到我们的生活质量。然而,近年来,一些不法分子为了个人私利,在河边、路边等公共区域肆意倾倒垃圾,严重破坏了环境的健康与平衡。这种行为不仅损…

shell脚本中条件语句

一.test测试 在Shell脚本中,test命令用于进行条件测试。它也可以通过方括号[]来表示,因为test实际上是[命令的一个别名。 格式1:test 条件表达式 格式2:[ 条件表达式 ] 注意[ ]空格,否则会失败 测试 是否成功使用…

每天认识新职业——网络工程师

一、网络工程师是什么 网络工程师是通过学习和训练,掌握网络技术的理论知识和操作技能的网络技术人员。网络工程师能够从事计算机信息系统的设计、建设、运行和维护工作。相关职业:系统集成工程师、计算机硬件工程师职业其他名称:网络管理员、…

【码农日常】将mp4转换为逐帧图片

项目场景: 拍摄了一段视频记录设备工作的状态和测量仪器的实时数据。由于测量仪器岁数比较大,不够智能,遂打算将视频转换为逐帧图片进行分析。 网上没找到现成工具,借鉴网上大神的操作方式打算用python写一个工具。 问题描述 用…

Unity射击游戏开发教程:(15)添加推进器推进和推进器推进动画

这是一个可以添加到我的游戏中的简单而有趣的功能。当玩家按住 Shift 按钮时,速度会加快,松开 Shift 按钮时,速度会恢复到原来的速度。 这需要不同的输入检测。通常使用的是Input.GetKeyDown并传入你想要获取的key。这只会检测在当前帧期间是否按下了按钮,但如果按住,将不…

学习Uni-app开发小程序Day10

前面学习了局部组件的创建和简单使用&#xff0c;今天学习了slot&#xff08;插槽&#xff09;和组件之间的传值1. 插槽的使用 在components中&#xff0c;创建一个组件&#xff0c;给组件设置头部布局、内容布局、底部布局&#xff0c;例如&#xff1a; <template><…

括号匹配(栈)

20. 有效的括号 - 力扣&#xff08;LeetCode&#xff09; c有栈 但是C语言没有 到那时我们可以自己造 这里的代码是直接调用栈&#xff0c;然后调用 等于三个左括号的任意一个 我们就入栈 左括号&#xff08;入栈&#xff09; 右括号 取出栈顶数据&#xff0c;出栈并且进行匹配…

力扣【旋转函数】python

如果直接用暴力的话&#xff0c;只能过4个样例好像&#xff0c;超时 因此得用递推公式 F1F0前n-1个数-(n-1)*第n个数 F0sum(nums)-n*第n个数 nlen(nums) ans[]#定义一个存最大值值的列表 ss sum(nums) dm 0 for j in range(n):dm j * nums[j] ans.append(dm) print(dm) n…

树莓派对FPGA板子上的流水灯程序的控制

文章目录 一 树莓派使用教程二 树莓派串口代码三 Verilog代码四 quartus引脚绑定五 运行效果总结 分别在DE2-115开发板和树莓派上编写串口通信程序&#xff0c; 实现树莓派串口指令对FPGA板子上的流水灯程序的控制&#xff0c;控制方式自定。 一 树莓派使用教程 参考&#xff…

重发布与路由决策

单点重发布 将A协议--->B协议 [r2-rip-1]import-route ospf 1 将静态---->B协议 [r2-rip-1]import-route static 将直连---->B协议 [r2-rip-1]import-route direct 双点重发布 路由回馈&#xff1a;指的是从某协议传出的路由信息又被传回该协议中。可以引起选路…

python数据分析——seaborn绘图1

参考资料&#xff1a;活用pandas库 matplotlib库是python的和兴绘图工具&#xff0c;而seaborn基于matplotlib创建&#xff0c;它为绘制统计图提供了更高级的接口&#xff0c;使得只用少量代码就能生成更美观、更复杂的可视化效果。 seaborn库和pandas以及其他pydata库&#xf…