0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

谷歌语音输入法可离线识别啦!

电子工程师 来源:lp 2019-03-15 10:02 次阅读

谷歌语音输入法可离线识别啦!

这次出手的,又是谷歌 AI 团队。刚刚,他们为旗下的一款手机输入法 Gboard (不要跟谷歌拼音输入法搞混了啊~)上线了新功能:离线语音识别。目前这一新功能,只能在其自家的产品 Pixel 系列手机上使用。

广大已经下载或正在赶往下载路上的 Pixel 圈外人士,包括 iOS 用户可能都会失望了。

他们是这样描述这款新功能的配置的:端到端、全神经、本地部署的语音识别系统。

在其最近的论文 “Streaming End-to-End Speech Recognition for Mobile Devices” 中,他们提出了一种基于 RNN-T(RNN transducer)的训练模型。

它非常紧凑,可满足在手机上部署。这意味着不会出现太多网络延迟或紊乱,即使用户处于脱机状态,这款语音识别系统也始终可用。该模型始终以字符级工作, 因此即便你说话,它也会逐个字符地输出单词,就好像有人在实时键入并准确在虚拟键盘听写出你说的话。

例如,下面两张图片中展示的是在听写系统中输入相同句子时的情况展示:左侧为服务器端,右侧为本地端。哪边的语音识别体验更好呢?

总结起来就是,“离线状态下,没有任何延迟。”这也是谷歌此次亮出的大杀器。

发生延迟是因为你的语音数据必须从手机传输到服务器上,解析完成后再返回。这可能需要几毫秒甚至几秒的时间。万一语音数据包在以太网中丢失,则需要更长的时间。

将语音转换成毫秒级的文本需要相当多的计算力。这不只简单是听到声音然后写一个单词那么简单,而是需要理解一个人讲话的含义,以及背后涉及的很多有关语言和意图的上下文语境。

在手机上是可以做到这一点的,但如此的话,又会很损耗电池电量。

语音识别模型简史

一般来讲,语音识别系统由几个部分组成:将音频片段(通常为 10 毫秒帧)映射到音素的声学模型、将音素连接起来形成单词的发声模型,以及一个表达给定模型的语言模型。在早期系统,这些组件是相对独立优化的。

2014 年左右,研究人员开始专注于训练单个神经网络,将输入音频波形直接映射到输出句子。通过在给定一系列音频特征的情况下生成一系列单词或字形来学习模型,这种 sequence-to-sequence 的方法促使了 attention-based 和 listen-attend-spell(LAS)模型的诞生。虽然这些模型在准确性方面表现出极大的前景,但它们通常会检查整个输入序列,并且在输入时不允许输出,这是实时语音转录的必要特征。

同时,一种称为 connectionist temporal classification(CTC)的技术有助于减少当时识别系统的延时问题。这对于后来创建 RNN-T 架构是一次重要的里程碑,也被看作是 CTC 技术的一次泛化。

(编者注:CTC,其全称为 Connectionist Temporal Classfication,由 Graves 等人于 2006 年提出,用于训练递归神经网络(RNN)以解决时序可变的序列问题。它可用于在线手写识别或识别语音音频中音素等任务。发展到如今,CTC 早已不是新名词,它在工业界的应用十分成熟。例如,在百度近日公布的在线语音识别输入法中,其最新语音模型在CTC 的基础上还融合了 Attention 等新技术。)

何为RNN-T?

RNN-T 是一种不采用注意力机制的 sequence-to-sequence 模型。与大多数 sequence-to-sequence 模型(通常需要处理整个输入序列(在语音识别中即是波形)以产生输出句子)不同,RNN-T 会连续处理输入样本和流输出符号。

输出符号是字母表的字符。RNN-T 会逐个输出字符,并在适当的位置输入空格。它通过反馈循环执行此操作,该训练将模型预测的符号反馈到其中以预测下一个符号。如下图所示。

用输入音频样本 x 和预测符号 y 表示 RNN-T。预测符号(Softmax 层的输出)通过预测网络反馈到模型中。

有效训练这样的模型已经很困难,但随着新开发的训练技术进一步将单词错误率降低了 5%,它的计算强度变得更高。为了解决这个问题,研究人员开发了一个并行实现过程,因此 RNN-T 损失功能可以在 Google Cloud TPU v2 上大批量运行。训练中实现了大约 3 倍的加速。

离线识别

在传统的语音识别引擎中,声学、发声和语音模型组合成一个大的图搜索(search graph),其边缘用语音单元及其概率标记。当语音波形呈现给识别系统时,“解码器”在给定输入信号的情况下会搜索图中相似度最高的路径,并读出该路径所采用字序列。通常,解码器采用基础模型的有限状态传感器(Finite State Transducer, FST)表示。然而,尽管有复杂的解码技术,图搜索仍很困难,因为生产模型几乎有 2GB 大小。这可不是在移动电话上想托管就可以实现的,因此这种方法需要在线连接才能正常使用。

为了提高语音识别的有效性,研究人员尝试直接在设备上托管新模型以避免通信网络的延迟和固有的不可靠性。因此,端到端的方法不需要在大型解码器图上进行搜索。相反,解码器包括通过单个神经网络的集束搜索(beam search)。RNN-T 与传统的基于服务器端的模型具有相同的精度,但前者只有 450MB,而且更加智能地使用参数和打包信息。但即便在如今的智能手机上,450MB 还是占用了很大的空间,例如通过大型网络是信号传播可能会很慢。

因此,研究人员通过使用参数量化和混合内核技术进一步减小了模型大小。这项技术早在 2016 年就已发布,并在 TensorFlow Lite 版本中提供公开的模型优化工具包。模型量化相对于训练的浮点模型提供 4 倍压缩,在运行时实现了 4 倍加速,这使得 RNN-T 比单核上的实时语音运行得更快。压缩后,最终模型大小只占 80MB。

效果如何?

谷歌公开这一新功能后,TechCrunch 评论称,“鉴于 Google 的其他产品几乎没有是离线工作的,那么你会在离线状态下写一封电子邮件吗?当然,在网络条件不好的情况下,这款应用新功能可能会解决了用户痛点,但显然,这还是有点讽刺(鸡肋)。”

而这也一度吸引来了 HackerNews 上不少用户评论,他们也将部分矛头指向了所谓的“离线功能”:

“离线功能虽然不是最主要的吸引力,但正如本文中提到的,延迟问题的减少是巨大的。他们可能没有提及的是对隐私问题的影响。不过,用户一般不会离线处理事物,但如果需要来回的稳定数据包流,连接网络也是很麻烦的问题。”

不过,经过尝试后的用户还是非常看好:“我只是将我的 Pixel1 代切换到飞行模型,并尝试了语音输入。果然,它的离线工作速度很快!这令人非常印象深刻(我之前尝试过,但过去它只能理解一些特殊的短语。)

有多好方法可以实现这一功能呢,但我认为任何应用都能从这次语音的改进中受益。“

为此,营长也特意下载了 Gboard、讯飞、百度三家语音输入法,试看它们在飞行模式下的效果如何。

Round 1

Gboard:目前非 Pixel 手机中离线语音尚无法使用,且针对某些机型甚至不支持语音。不过,打字还是比较丝滑流畅的。

Round 2

讯飞:可下载离线语音包,不过在正常网络通畅情况下,语音识别的速度和准确性还是相当高的。

Round 3

百度:也可下载离线语音,无网络连接状态下,语音识别效果还是可以的。

不知国内经常使用讯飞、百度输入法的小伙伴们,看到这一消息有何想法?欢迎留言。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 谷歌
    +关注

    关注

    27

    文章

    6128

    浏览量

    104973
  • 输入法
    +关注

    关注

    0

    文章

    48

    浏览量

    9669
  • 语音识别
    +关注

    关注

    38

    文章

    1711

    浏览量

    112501

原文标题:Google又逆天:语音输入离线实时输出文字,仅占80MB!然而……

文章出处:【微信号:rgznai100,微信公众号:rgznai100】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    EVS103智能纯离线语音识别芯片介绍

    算法与芯片架构深度融合,为客户提供 Turnkey 语音识别方案,可广泛且快速应用于各类带电池的小家电、可穿戴设备、玩具、单火线供电设备、86盒等需要语音操控的产品。该方案支持50条本地指令
    的头像 发表于 11-11 11:34 94次阅读
    EVS103智能纯<b class='flag-5'>离线</b><b class='flag-5'>语音</b><b class='flag-5'>识别</b>芯片介绍

    TLV320AIC3204N1_L有语音输入、IN1_R没语音输入时,采集IN1_R的数据声音是IN1_L端的声音,为什么?

    使用方式:IN1_L与IN1_R分别单端输入,DSP模式与DSP5509进行数据交互。当IN1_L有语音输入、IN1_R没语音输入时,采集IN1_R的数据,发现声音是IN1_L端的声音。请问是什么原因呢?或者有什么解决办法吗?
    发表于 10-16 06:16

    物联网系统智能控制产品的语音识别方案_离线语音识别芯片分析

    01 物联网系统中为什么要使用离线语音识别芯片 物联网系统中使用离线语音识别芯片的原因主要基于以
    的头像 发表于 09-26 17:56 384次阅读
    物联网系统智能控制产品的<b class='flag-5'>语音</b><b class='flag-5'>识别</b>方案_<b class='flag-5'>离线</b><b class='flag-5'>语音</b><b class='flag-5'>识别</b>芯片分析

    瑞芯微RK3566鸿蒙开发板Android11修改第三方输入法为默认输入法

    本文适用于触觉智能所有支持Android11系统的开发板修改第三方输入法为默认输入法。本次使用的是触觉智能的Purple Pi OH鸿蒙开源主板,搭载了瑞芯微RK3566芯片,类树莓派设计,是Laval官方社区主荐的一款鸿蒙开发板。
    的头像 发表于 09-24 09:43 320次阅读
    瑞芯微RK3566鸿蒙开发板Android11修改第三方<b class='flag-5'>输入法</b>为默认<b class='flag-5'>输入法</b>

    智能玩具用离线语音识别芯片有什么优势

    随着科技的发展,很多智能电子产品和儿童玩具实现了与人类的交互,语音芯片在这些人机交互中起到了不可替代的作用,语音识别芯片在智能玩具中的应用就为其带来了更多的优势。‌离线
    的头像 发表于 09-20 10:00 219次阅读
    智能玩具用<b class='flag-5'>离线</b><b class='flag-5'>语音</b><b class='flag-5'>识别</b>芯片有什么优势

    什么是离线语音识别芯片?与在线语音识别的区别

    离线语音识别芯片适用于智能家电等,特点为小词汇量、低成本、安全性高、响应快,无需联网。在线语音识别功能更广泛、
    的头像 发表于 07-22 11:33 350次阅读

    【AWTK使用经验】如何添加中文输入法

    目前需要在AWTK程序中用到中文输入法,并且要自定义输入法的联想词,此时需要用到AWStudio添加软键盘和输入法。下面将介绍如何使用AWStudio在项目中添加
    的头像 发表于 06-20 08:25 966次阅读
    【AWTK使用经验】如何添加中文<b class='flag-5'>输入法</b>

    安信推出了一款AI离线语音识别的产品—VC系列模组

    VC系列模组是安信开发的一款AI离线语音识别的产品,主芯片是云知声推出的离线语音
    的头像 发表于 04-15 10:29 543次阅读

    澎湃微离线语音识别应用实例

    随着科技的飞速发展,人机交互的方式也在不断演变。在键盘、触摸屏之后,语音识别技术正逐渐成为人机交互的新宠。从技术路线上来讲语音识别又分为在线语音
    发表于 03-15 14:11 355次阅读
    澎湃微<b class='flag-5'>离线</b><b class='flag-5'>语音</b><b class='flag-5'>识别</b>应用实例

    离线语音在灯带上的应用

    离线语音识别,一种无需依赖云端计算即可在本地设备上实现语音交互的技术,正在逐渐渗透到家居照明的领域中。与传统的在线语音
    的头像 发表于 12-20 11:03 792次阅读
    <b class='flag-5'>离线</b><b class='flag-5'>语音</b>在灯带上的应用

    离线语音识别与在线语音识别有什么不一样?

    离线语音识别与在线语音识别有什么不一样? 离线语音
    的头像 发表于 12-12 14:36 1134次阅读

    离线语音识别,“自然说”为产品赋能

    相比于云端语音识别离线语音识别技术具有更高的识别准确率和更快的响应速度。因为
    的头像 发表于 12-11 11:20 435次阅读
    <b class='flag-5'>离线</b><b class='flag-5'>语音</b><b class='flag-5'>识别</b>,“自然说”为产品赋能

    离线语音识别及控制是怎样的技术?

    引言:随着人工智能的飞速发展,离线语音识别技术成为了一项备受瞩目的创新。离线语音识别技术能够将人
    的头像 发表于 11-24 17:44 1079次阅读
    <b class='flag-5'>离线</b><b class='flag-5'>语音</b><b class='flag-5'>识别</b>及控制是怎样的技术?

    离线语音识别及控制是怎样的技术?

    、什么是离线语音识别  离线语音识别是指在设备本地进行语音
    发表于 11-24 17:41

    方言离线语音控制场景解决方案

      随着科技的不断发展,离线语音识别技术已经变得越来越成熟。在日常生活中,老人或小孩可能会遇到一些困难,如操作复杂的电子设备。为了解决这一问题,离线
    发表于 11-17 17:57