Step by Step带你玩转DuerOS-智能语音系统的系统组成(1)
E****u · E****u 发布于2017-09-29 21:21 浏览:4810 回复:7

一个完整的智能语音系统主要由如下几个核心部分组成:

  • 麦克风阵列

  • 唤醒识别

  • 语音识别(ASR)

  • 自然语言处理(NLP/NLU)

  • 内容召回
    下面我们逐个介绍各个组成部分

麦克风阵列

麦克风用来将模拟的声音信号转换为数字信号,核心器件是ADC(Analog to Digital Controller)控制器,我们在日常生活中常见的麦克风大多是单麦克风,外形如下图所示:

单麦克风

单麦克风

而在智能语音系统中,大多使用麦克风阵列,外形如下图所示:

麦克风阵列

麦克风阵列


麦克风阵列在硬件上可以简单的理解成,一个麦克风阵列由多个麦克风组成。图中的麦克风阵列,每个红框就是一个麦克风。
麦克风阵列和普通的单麦克风相比有什么样的优点和缺点呢?

优点

首先麦克风阵列具有更好的远场拾音效果,举个不太严谨的例子,使用单麦克风打电话,手机需要放在半米的范围之内,对方才能听清说话的声音;但使用麦克风阵列,手机放在3~5米的范围之内,对方也能清晰的听到语音。
其次,麦克风阵列能够获取声源的角度信息,也就是说能够辨别声音的来源,但单麦克风做不到。
所以,在大多的智能语音系统中均采用麦克风阵列,而百度的DuerOS个人开发套件使用的就是麦克风阵列(包含两个麦克风)。

缺点

最显著的缺点就是麦克风阵列的成本相比于单麦克风而言,价格会高出很多。

技术点

  • 麦克风选型:驻极体/数字麦克风

  • 麦克风一致性

  • AEC

  • 波束合成

  • 盲源分离
    对具体的技术细节感兴趣的同学可以逐条了解下,这里就不逐一展开了。

语音唤醒

语音唤醒的常见场景就是用户使用唤醒词(如百度的“小度小度”,亚马逊的“Alex”)将设备激活。
实际上设备在通过唤醒词激活之前也是一直在工作的,设备一直在录音,并检查录音的数据中是否包含预设的唤醒词(如“小度小度”、“Alexa”),当检测到有唤醒词,设备便进入唤醒状态。
当前对于个人开发者相对友好的免费的唤醒引擎主要有:

语音识别(ASR)

语音识别(ASR)简单的说就是讲语音转化为文本,目前几乎所有的语音系统都是先将语音转化为文本,然后再基于文本进行后续的语义理解和处理的。

自然语言处理(NLP/NLU)

有了语言识别(ASR)获取的文本信息,后面就进入了自然语言处理单元了,可以说这个步骤是最接近我们概念上理解的人工智能了。这个部分会从输入文本中获取用户的意图和对应的关键信息。举个例子,对应用户输入请求:“我想听周杰伦的歌”,NLU会将请求拆解成如下的结构化结果:

  • 意图:听歌

  • 词槽:周杰伦
    有了NLU的处理结果,就可以获取用户请求的结果了。

内容召回

假设你有两个资源库,其中,一个是电影库,一个是歌曲库。当接收NLU的处理结果后,从意图(听歌)上,你可以判别用户希望从歌曲库中获取资源,从词槽(周杰伦)可以判断用户想听歌曲的类别。有了意图和词槽就能从资源库中检索到用户期望的结果,并将结果按请求的路径返回。

完整过程

下面我们将上面的各个核心部分连贯起来,想象茶几上放着一个智能音响,用户坐在两米外的沙发上,用户通过语音发出请求“小度小度”,音响的提示灯亮起指示激活状态,用户说“我想听周杰伦的歌”,稍后,音响播放周杰伦的青花瓷。

  • 满足远场(3~5米)拾音:麦克风阵列

  • 提示灯亮起指示设备激活:唤醒引擎

  • 语音请求转化为文本:语音识别(ASR)

  • 从文本中识别出意图(听歌)和词槽(周杰伦):自然语言处理(NLU)

  • 通过意图和词槽返回结果:内容召回

上一篇:

《Step by Step带你玩转DuerOS-写在最前面(0)》


下一篇:

《Step by Step带你玩转DuerOS - DuerOS能力初体验(2)》


系列目录:

《Step by Step带你玩转DuerOS-智能语音系统的系统组成(1)》

点赞  ( 3 )
收藏
评论(7)
共7条回复 最后由M****子回复于2017-12-20 15:09
#2智****命回复于2017-09-30 10:44:00

官方的吗?感觉很专业啊

0
#3E****u回复于2017-09-30 10:48:04
#2 智****命回复
官方的吗?感觉很专业啊

你猜

0
#4智****命回复于2017-09-30 16:31:59
#3 E****u回复
你猜[图片]

我猜是内部人士,要不费这老大力气写这么详细的教程。

坐等更新

0
#5魔****天回复于2017-10-08 10:09:32

不错 坐等下一篇  这几天先研究下这几个免费的唤醒引擎

0
#6w****d回复于2017-10-09 11:08:28

厉害了,赞一个

0
#7****au回复于2017-10-12 10:32:18

明显不是官方的,官方的话语音唤醒不是有的么,怎么会介绍第三方的语音识别

0
#8M****子回复于2017-12-20 15:09:17

请问DuerOS用的远场语音识别算法是哪家的方案?

0
TOP