语音识别类产品的分类及应用场景

文章分类:APP热点新闻 发布时间:2018-01-02 原文作者:Shi Yongfeng 阅读( )

本文主要针对人工智能中的感知智能展开分享,聊聊其中的“语音识别类产品”。

 

    媒体和AI巨头们乐于给大众描绘一幅幅精彩的未来生活蓝图:人工智能可以化身为你的爱车,在沙漠、森林或小巷中风驰电掣;可以是智慧公正的交警,控制红绿灯、缓解交通的拥挤;还可以是给人以贴心照顾的小助理,熟悉你生活中的每一处小怪癖。

    在看到这些美妙的畅想之后,作为一个严谨认真的AI产品经理,我不禁想去探索上述美好未来的实现路径;今天,让我们从人工智能中的感知智能开始——聊聊“语音识别类产品”。

    一、定义

    语音识别是将人类的声音信号转化为文字的过程。

    语音识别、人脸识别和OCR等都属于人工智能中的感知智能,其核心功能是将物理世界的信息转化成可供计算机处理的信息,为后续的认知智能提供基础。

   二、语音识别能满足或支撑的需求层次

    1、人与人之间的信息同步

    转化成文字的语音信息,由于少了时间轴的约束,在同等量级的情况下,人类使用眼睛获取的速度远远快于耳朵。当然,确实也损失掉了一些信息,比如情绪

    2、检索 & 语义抽取

    利用语义建模,对某些业务场景中比较关注的词/语义进行检索,或者将其抽取出来并进行结构化记录。

    3、人机交互

    使用更自然的方式与机器/虚拟助理进行交互,实现拟人对话、对设备的操控或者问题答案的获取。

   4、数据挖掘

    通过对数据的聚类或者与各维度数据体系打通,可以对个人/人群/特定领域的语义数据进行价值挖掘。

    下面,我将以语音识别需求场景之“人机交互”为例,对业界的语音识别产品进行归类和说明。如果大家比较感兴趣,我后续文章可以再对其他的几类需求层次进行进一步的分析。

    三、分类

   1、封闭域识别

    识别范围为预先指定的字/词集合。

    即,算法只在开发者预先设定的封闭域识别词的集合内进行语音识别,对范围之外的语音会拒识。因此,可将其声学模型和语言模型进行裁剪,使得识别引擎的运算量变小;并且,可将引擎封到嵌入式芯片或者本地化的SDK中,从而使识别过程完全脱离云端,摆脱对网络的依赖,并且不会影响识别率。

    业界厂商提供的引擎部署方式包括云端和本地化(如:芯片,模块和纯软件SDK)。

    产品形态:流式传输-同步获取

    典型的应用场景:不涉及到多轮交互和多种语义说法的场景。

    比如,对于简单指令交互的智能家居和电视盒子,语音控制指令一般只有“打开窗帘”、“打开中央台”等;或者语音唤醒功能“Alexa”。但是,一旦涉及到程序猿大大们在后台配置识别词集合之外的命令,如“给小编来一块钱打赏呗”,识别系统将拒识这段语音,不会返回相应的文字结果,更不会做相应的回复或者指令动作。

    2、开放域识别

    无需预先指定识别词集合,算法将在整个语言大集合范围中进行识别。为适应此类场景,声学模型和语音模型一般都比较大,引擎运算量也较大。如果将其封装到嵌入式芯片或者本地化的SDK中,耗能较高并且影响识别效果。

    因此,业界厂商基本上都只以云端形式提供(云端包括公有云形式和私有云形式)。至于本地化形式,只提供带服务器级别计算能力的嵌入式系统(如会议字幕系统)。

    产品形态,按照音频录入和结果获取方式可分为3种:

    1)产品形态1:流式上传-同步获取,应用/软件会对说话人的语音进行自动录制,并将其连续上传至云端,说话人在说完话的同时能实时地看到返回的文字

    语音云服务厂商的产品接口中,会提供音频录制接口和格式编码算法,供客户端边录制边上传,并与云端建立长连接,同步监听并获取中间(或者最终完整)的识别结果。

    对于时长的限制,由语音云服务厂商自定义,一般有<1分钟<5小时两种,两者有可能会采用不同的模型(时长限制<5小时的模型会采用LSTM长时相关性建模)。

    典型应用场景1:

  • 主要在输入场景,如输入法、会议/法院庭审时的实时字幕上屏;
  • 与麦克风阵列和语义结合的人机交互场景,如具备更自然交互形态的智能音响。比如用户说“转发小编这篇文章”,在无配置的情况下,识别系统也能够识别这段语音,并返回相应的文字结果。

    2)产品形态2已录制音频文件上传-异步获取,音频时长一般<3/5小时。用户需自行调用软件接口或是硬件平台预先录制好规定格式的音频,并使用语音云服务厂商提供的接口进行音频上传,上传完成之后便可以断掉连接。用户通过轮询语音云服务器或者使用回调接口进行结果获取。

    由于长语音的计算量较大,计算时间较长,因此采取异步获取的方式可以避免由于网络问题带来的结果丢失。也因为语音转写系统通常是非实时处理的,这种工程形态也给了识别算法更多的时间进行多遍解码。而长时的语料,也给了算法使用更长时的信息进行长短期记忆网络建模。在同样的输入音频下,此类型产品形态牺牲了一部分实时率,花费了更高的资源消耗,但是却可以得到最高的识别率。在时间允许的使用场景下,“非实时已录制音频转写”无疑是最推荐的产品形态。

    典型应用场景2:

    A)已经录制完毕的音/视频字幕配置;

    B)实时性要求不高的客服语音质检和UGC语音内容审查场景等。

    3)产品形态3录制音频文件上传-同步获取,音频时长一般小于<1分钟。用户需自行预先录制好规定格式的音频,并使用语音云服务厂商提供的接口进行音频上传。此时,客户端与云端建立长连接,同步监听并一次性获取完整的识别结果。使用的模型会根据语音云厂商产品策略的不同,而跟随采用上述两/三种模型中的任意一种。

    典型应用场景3:

    作为前两者的补充,适用于无法用音频录制接口进行实时音频流上传,或者结果获取的实时性要求比较高的场景。

    四、概念厘清1、离线 VS 在线

     在较多的客户认知中,离/在线的区别在于“识别过程是否需要通过云端请求”,即“识别引擎是在云端还是本地”。而云计算中的离/在线产品的引擎都处在云端,区别在于“计算过程中,客户端是否需要与云端进行实时数据交互”,即上述所述的“流式上传-同步获取”和“已录制音频文件上传-异步获取”方式。

    两者的定义在人工智能产品领域中有较多冲突,因此并不建议使用“离/在线”概念进行相关产品定义。

    语音识别为感知智能,语义识别为认知智能,前者为后者的前提基础。语音识别将声音转化成文字,语义识别提取文字中的相关信息和相应意图,再通过云端大脑决策,使用执行模块进行相应的问题回复或者反馈动作。

    注:一般来说,为了减少不必要的理解干扰,从业者更倾向于说“自然语言处理(NLP)”等概念,极少使用“语义识别”的说法。

    结语

    最后,结合一小丢丢NLP的人机交互场景栗子作为收尾:

    “给小编这篇文章点个赞呗”,在无后台配置的情况下,封闭域的语音识别系统会拒识这段语音,而开放域的识别系统却能够识别这段语音,返回相应的文字结果。

    不过,现阶段的开放域语义系统在大概率情况下,还是会回复得比较生硬,并且也不会自动识别出相应的意图并做出指令。按照现有比较通用的方法,这个功能需要使用封闭域的NLP,在后台预先配置相关答案,并且根据预先配置的信息抽取意图,再根据意图类别和槽位信息执行相应的动作——即调用微信的点赞接口(假设可以)进行相应的点赞操作。

    听起来好绕呀,是不是觉得还是自己手动点个赞简单粗暴省事得多了呢?

    然而,一切现代人类做起来自然而然 & 毫不费力的动作,都是建构在经过了亿万年的学习进化、兆亿次闭环重复练习的智力基因基础上的;任何人工智能技术,也需要巨量的数据训练和一定的演变周期。

    并且,在所有的科技发展进程中,率先取得突破并能在应用领域成熟的产品,往往都是在封闭域首先出现的。现在,NLP正处封闭域产品化阶段(比如Amazon Echo、Google Home等),而语音识别的产品成熟化已经走过了封闭域、到达了开放域,正在向各行各业的应用场景输送自己的洪荒之力!

    附:脑图:语音识别类产品的分类及应用场景

 

原文来自:Shi Yongfeng