强大技术做支撑 谷歌输入法背后的机器智能

该转换器沿着从起始状态(粗体1)到最终状态(两圈状态0和1)的路径编码“I”,“I’ve”,“If”。 每个弧用一个输入按键(“:”之前)和一个对应的输出字符(“:”之后)标记,其中ε编码空符号。 “I’ve”中的撇号可以省略。 用户有时会跳过空格键。 为了说明这一点,转换器中的单词之间的过渡空格键是可选的。 ε和空格后弧允许存在多个单词。

概率n元传感器用于表示键盘的语言模型。 模型中的状态代表一个(直到)n-1个字的上下文,并且离开该状态的弧,将被标记为一个后续字符以及跟随该上下文的概率(由文本数据估计)。 这些与给出关键触摸序列的可能性(滑动中的离散触摸或连续手势)的空间模型被组合并且用波束搜索进行探索。

通用FST原则,如流式传输,动态模型支持等,为构建新的键盘解码器带来了很大的帮助,但还需要添加一些新的功能。 当人们说话的时候,并不需要解码器来完善你所说的话,或者猜测你会在后面说些什么来省下几个音节; 但是当你输入时,你会感受到词语完成和预测的帮助。 此外,该团队希望键盘可以提供无缝多语言支持,如下所示。

在Gboard上输入三种语言

让新的解码器投入实际应用是一项复杂的工作,但FST原则有很多好处。 例如,支持印地语等语言的音译只是解码器的简单扩展。

音译模型

在许多具有复杂脚本的语言中,已经开发了罗马化系统,以将字符映射成拉丁字母,通常根据其发音。 例如,拼音“xièxiè”对应汉字“谢谢”。 拼音键盘允许用户在QWERTY布局上方便地输入单词,并将它们自动“翻译”到目标脚本中。 同样,一个音译印地语键盘允许用户输入“daanth”(牙齿)“????”。 而拼音确定是一个罗马化系统,印地语音译则更模糊; 例如“daant”将是“????”的有效替代方案。

印地语的滑动字符转换

正如从字母序列到单词(词典)的传感器映射以及为单词序列提供概率的加权语言模型自动化,该团队为拉丁语按键序列和目标脚本符号序列构建了22种印度语的加权转换器映射。 一些语言属于多个书写系统(例如Bodo可以写在孟加拉文或梵文的脚本中),因此在音译和本机布局之间,在短短几个月内就建立了57种新的输入法。

FST解码器的本质性质将支持完成所有的工作,预测,滑动打字和许多UI功能,无需额外的工作,从而使 Gboard能够从一开始就向印度用户提供丰富的体验,一个更智能的键盘。

总而言之,最近的工作将解码延迟降低了50%,将用户手动更正的字数减少了10%以上,能够为印度的22种官方语言提供音译支持,并启用了许多新功能。

虽然谷歌团队希望这些最近的变化能够改善用户的打字体验,但他们也同时认识到,在移动设备上打字的问题绝对不能算是解决了。 Gboard仍然会提出似乎不直观或低效用的建议,并且手势的解码建议仍然可能为人类永远不会选择的词语。 然而,该团队的工作为强大的机器智能算法的转变开辟了新的空间,谷歌正在积极探索为全球用户提供更有用的工具和产品。

登陆|注册欢迎登陆本站,认识更多朋友,获得更多精彩内容推荐!