HaaS云端一体智能语音交互方案

简介: 智能语音交互作为物联网领域的一个重要生态成员,是一种全新的交互方式,它能够解放双手,随时提供服务,无须借助任何按键。近年来智能家居逐渐走入千家万户,产业市场规模不断增长。智能家居产品种类繁多,很多家庭有着智能门锁、扫地机器人、智能电视、智能洗衣机、智能电冰箱等不同类型的智能家居产品,这些产品需要一个交互性好的控制中心,基于智能语音交互技术的智能音箱脱颖而出。

1、方案背景

智能语音交互作为物联网领域的一个重要生态成员,是一种全新的交互方式,它能够解放双手,随时提供服务,无须借助任何按键。近年来智能家居逐渐走入千家万户,产业市场规模不断增长。智能家居产品种类繁多,很多家庭有着智能门锁、扫地机器人、智能电视、智能洗衣机、智能电冰箱等不同类型的智能家居产品,这些产品需要一个交互性好的控制中心,基于智能语音交互技术的智能音箱脱颖而出。想必很多开发者都有玩过天猫精灵、小爱同学或者小度吧,看到这些炫酷的人工智能产品,是不是也很想搞清楚它到底怎么工作的冲动,是不是也想自己打造一台专属智能语音交互产品。仅仅通过说出“HaaS HaaS”、“天猫精灵”、或“小爱同学”,就可以唤醒它进行语音交互。在商业领域的人工智能产品要么是C或者C++开发,工作量巨大。本方案以HaaS EDU K1为硬件载体,基于HaaS云端一体智能语音交互框架,通过数100行Python代码帮助你轻松打造一款智能音箱。

2、智能语音交互技术

智能语音交互涉及语音识别、语音合成、自然语言理解等技术,实现“能听、会说、懂你”式的智能人机交互体验。通过语音识别将语音转为句子,通过NLP自然语音处理让机器理解句子并回答,再将句子转为语音。

2.1 智能语音交互全链路

智能语音交互的全链路较长,从语音输入到语音合成输出通常包括端点检测、信号处理、语音唤醒、语音识别、自然语言处理、语音合成、语音播放等步骤,如下图所示:

其中语音交互包含的内容如下图所示,按照算法流程分成以下四项:

1)识别是否唤醒设备 (KWS,语音唤醒)

2)识别说的话(ASR ,Automatic Speech Recognition 自动语音识别技术)

3)对识别的内容提取信息并处理(NLP,Natural Language Processing自然语言处理 )

4)把处理结果发出声音给人(TTS,TextToSpeech 从文本到语音技术)

2.1.1 语音唤醒技术

语音唤醒在学术上被称为keyword spotting(简称KWS),需要在连续语流中实时地检测出说话人的特定片段。这里要注意,检测的“实时性”是一个关键点,语音唤醒的目的就是将设备从休眠状态激活至运行状态,所以唤醒词说出之后,需要立刻被检测出来。那么,该怎样评价语音唤醒的效果呢?通行的指标有四个方面,即唤醒率、虚警率、响应时间和功耗水平:

  • 唤醒率,指用户交互的成功率,专业术语为召回率(被唤醒次数中正确唤醒的比例)。
  • 虚警率,用户未进行交互而设备被唤醒的概率(被唤醒次数中被误唤醒的比例)。
  • 响应时间,指从用户说完唤醒词后,到设备给出反馈的时间差。
  • 功耗水平,即唤醒系统的耗电情况。很多智能设备是通过电池供电,需要满足长时续航,对功耗水平就比较在意。

语音唤醒能力主要依赖于语音唤醒模型(下称“唤醒模型”),是整个语音唤醒核心。唤醒模型主要负责在听到唤醒词后马上切换为工作状态,所以必须要实时监测,才能做到听到后及时反馈。一是需要实时响应,二是唤醒模型对算力的要求不高,一般唤醒模型是做在本地的(区别于云端的ASR识别)。这就是我们即使没有联网,你叫“HaaS HaaS”,她也会答应你的原因。

2.1.2 语音识别技术

语音识别技术即Automatic Speech Recognition(简称ASR),是指将人说话的语音信号转换为可被计算机程序所识别的信息,从而识别说话人的语音指令及文字内容的技术。语音识别主要是将人类语音中的词汇内容转换为计算机可读的输入,一般都是可以理解的文本内容,也有可能是二进制编码或者字符序列。但是,我们一般理解的语音识别其实都是狭义的语音转文字的过程,简称语音转文本识别(Speech To Text,STT)更合适,这样就能与语音合成(Text To Speech,TTS)对应起来。

语音技术在近年来开始改变我们的生活和工作方式。对于某些嵌入式设备来说,语音成为了人机交互的主要方式。出现这种趋势的原因,首先是计算能力的不断提升,通用GPU等高计算能力设备的发展,使得训练更复杂、更强大的声学模型(Acoustic Model, AM)变得可能,高性能的嵌入式处理器的出现,使得语音识别的终端应用变得可能;其次,借助近乎无处不在的互联网和不断发展的云计算,我们可以得到海量的语音数据资源,真实场景的数据使得语音识别系统变得更加鲁棒;最后,移动设备、可穿戴设备、智能家居设备、车载信息娱乐系统正变得越来越流行,在这些设备上,语音交互变成了一个无法避免的交互方式。目前,基于近场信号的、受控环境(低噪声、低混响)下的标准音语音识别能够达到很高的水平。然而在智能音箱开放性的真实环境,语音识别依然是一个不小的挑战,需要结合前端信号处理一起来优化。

2.1.3 自然语言处理技术

NLP: 自然语言处理(Natural Language Processing) 是研究人与计算机交互的语言问题的一门学科,是指用计算机对自然语言的形、音、义等信息进行处理,即对字、词、句、篇章的输入、输出、识别、分析、理解、生成等的操作和加工。实现人机间的信息交流,是人工智能界、计算机科学和语言学界所共同关注的重要问题。在人工智能领域或者是语音信息处理领域中,学者们普遍认为采用图灵试验可以判断计算机是否理解了某种自然语言,具体的判别标准有以下几条:

  • 第一,问答,机器人能正确回答输入文本中的有关问题;
  • 第二,文摘生成,机器有能力生成输入文本的摘要;
  • 第三,释义,机器能用不同的词语和句型来复述其输入的文本;
  • 第四,翻译,机器具有把一种语言翻译成另一种语言的能力。

2.1.4 语音合成技术

语音合成是通过机械的、电子的方法产生人造语音的技术。TTS技术(又称文语转换技术)隶属于语音合成,它是将计算机自己产生的、或外部输入的文字信息转变为可以听得懂的、流利的汉语口语输出的技术。

语音合成的系统可分为前端和后端,如下图所示:

基于深度学习的语音合成:随着AI技术不断发展,基于深度学习的语音合成技术逐渐被人们所知道,DNN/CNN/RNN等各种神经网络构型都可以用来做语音合成系统的训练,深度学习的算法可以更好地模拟人声变化规律。


2.1.4.1 语音合成步骤

文本处理

  
这一步做的事情是把文本转化成音素序列,并标出每个音素的起止时间、频率变化等信息。
作为一个预处理步骤,它的重要性经常被忽视,但是它涉及到很多值得研究的问题,比如拼写相同但读音不同的词的区分、缩写的处理、停顿位置的确定等等。

语音合成

  
狭义上这一步专指根据音素序列(以及标注好的起止时间、频率变化等信息)生成语音,广义上它也可以包括文本处理的步骤。

3、HaaS云端一体智能语音交互方案

云端一体涉及端、云,设备端以HaaS EDU K1为硬件载体,集成AliOS Things

3.1 硬件组成

3.1.1 HaaS语音扩展板

HaaS语音扩展板是专门为HaaS EDU K1教育神器打造的,无缝对接,即插即用。

3.1.2 麦克风和喇叭

如果没有HaaS语音扩展板也没有关系,请按照如下步骤接入麦克风和喇叭:

3.2 系统框架

整个框架及交互流程如下:

从框架可以看到,它是一个完整的云端一体智能语音全链路交互流程,包括了本地语音唤醒、回声消除、降噪、ASR、NLP、TTS等。基于它可以实现智能语音交互产品的开发。

接下来看一下基于HaaS AI框架的云端一体开发流程,左侧是HaaS EDU K1设备端通过麦克风进行语音采样,经过回声消除和降噪后进行唤醒识别,再通过阿里云智能语音交互的一句话识别能力进行后续的语音对话识别。然后通过阿里云对话机器人对识别的结果进行语义的理解,再进行回答。最后再通过阿里云智能语音交互平台的语音合成功能将回答文字结果转换成语音下载到设备端进行语音播放。开发者可以通过阿里云智能语音交互平台提供的丰富定制化能力定制语音类型、比如杭州话,并且可以通过个性化人声定制将语音助手定制为老婆或女友的声色。通过这个流程帮助开发者快速打造定制化程度很高的智能语音交互产品。

3.1.1 阿里云智能语音交互平台

3.1.1.1 语音识别(ASR)

阿里云智能语音交互平台的语音识别包含不同的识别服务:

  • 实时语音识别服务:对长时间的语音数据流进行识别,适用于会议演讲、视频直播等长时间不间断识别的场景。
  • 一句话识别服务对一分钟内的短语音进行识别,适用于对话聊天,控制口令等较短的语音识别场景。
  • 录音文件识别服务:对上传的音频文件进行识别,适用于非实时识别场景。

在本方案中运用了一句话识别功能,用于识别语音指令。

3.1.1.2 语音合成(TTS)

阿里云智能语音交互平台的语音合成服务包括:

  • 语音合成服务:将文本转化为接近真人的语音服务,包含男女童音、多语言/方言。适用于智能客服、电话外呼等虚拟对话场景。
  • 长文本语音合成服务:将超长文本(十万字)合成为接近真人的语音服务,包含男女童音、多语言/方言(且拥有音频重复使用权)。适用于文学伴读、新闻阅读等场景。
  • 离线语音合成:在弱网或无网状态下,通过设备本地的语音合成模型,将文本转换成自然流畅的语音。

在本方案中运用了它的第一个语音合成服务,对短文本进行合成。

3.1.2 阿里云智能对话机器人平台

阿里云智能对话机器人依托阿里云AI技术,提供一体化对话机器人服务,精准理解用户意图,支持界面化流程配置、自定义三方业务集成等功能。本方案中运用它来构建问答、多轮对话流、闲聊等功能。

3.3 系统架构

HaaS EDU K1主控设备中集成AliOS Things物联网操作系统,它构建了智能语音交互相关的应用组件,可以通过Python语言很方便的进行功能调用。

  • AI Agent组件:是AliOS Things上的AI引擎核心模块,后端接入不同的推理引擎,本案例中使用了TFLite-Micro推理引擎,结合ARM CMSIS NN算子库适配在HaaS EDU K1上,用于本地离线唤醒词或快捷词识别。
  • uCloud AI组件:集成了阿里云智能语音交互及对话机器人接口,与云端进行交互。
  • uVoice组件:是AliOS Things上智能语音解决方案的核心组件,提供了本地音频,URL音频,TTS合成等基础功能,音频格式支持mp3, m4a, wav, opus等主流格式,本案例中使用它来进行本地mp3语料的响应播报。

4、案例展示

基于本方案实现的智能语音交互助手案例如下:

https://player.bilibili.com/player.html?bvid=BV1QM4y1G7Yf

详细请参考文章《爆肝一周,用Python在物联网设备上写了个智能语音助手》

5、总结

近年来,智能语音交互技术在当今很多领域已经得到充分应用,比如智能家居、可穿戴设备、智能车载等领域,智能语音作为交互入口发挥着巨大作用。但是很多开发者想要学习运用智能语音技术门槛高,没有一个比较完整的方案或途径进行学习。而HaaS云端一体智能语音交互方案以HaaS EDU K1物联网教育开发板为硬件载体,让开发者能够学习如何开发云端一体智能语音交互产品,纯Python的开发方式也将大大缩短开发时间,得以快速场景化应用。

相关实践学习
达摩院智能语音交互 - 声纹识别技术
声纹识别是基于每个发音人的发音器官构造不同,识别当前发音人的身份。按照任务具体分为两种: 声纹辨认:从说话人集合中判别出测试语音所属的说话人,为多选一的问题 声纹确认:判断测试语音是否由目标说话人所说,是二选一的问题(是或者不是) 按照应用具体分为两种: 文本相关:要求使用者重复指定的话语,通常包含与训练信息相同的文本(精度较高,适合当前应用模式) 文本无关:对使用者发音内容和语言没有要求,受信道环境影响比较大,精度不高 本课程主要介绍声纹识别的原型技术、系统架构及应用案例等。 讲师介绍: 郑斯奇,达摩院算法专家,毕业于美国哈佛大学,研究方向包括声纹识别、性别、年龄、语种识别等。致力于推动端侧声纹与个性化技术的研究和大规模应用。
相关文章
|
人工智能 语音技术 Android开发
|
机器学习/深度学习 数据采集 人工智能
【技术揭秘】高性能粤语语音识别模型构建方案
随着人工智能技术的飞速发展,语音识别(Automatic SpeechRecognition)的应用越来越广泛,对于多语种多口音语音识别的需求也在日渐增加。虽然语音识别系统的基本原理和框架是不受限于语种的,在建立一个新语种的ASR模型时,还是需要结合到语言本身的特点,才能得到较好的效果。
【技术揭秘】高性能粤语语音识别模型构建方案
|
3月前
|
机器学习/深度学习 自然语言处理 机器人
基于深度学习的智能语音机器人交互系统设计方案
**摘要** 本项目旨在设计和实现一套基于深度学习的智能语音机器人交互系统,该系统能够准确识别和理解用户的语音指令,提供快速响应,并注重安全性和用户友好性。系统采用分层架构,包括用户层、应用层、服务层和数据层,涉及语音识别、自然语言处理和语音合成等关键技术。深度学习模型,如RNN和LSTM,用于提升识别准确率,微服务架构和云计算技术确保系统的高效性和可扩展性。系统流程涵盖用户注册、语音数据采集、识别、处理和反馈。预期效果是高识别准确率、高效处理和良好的用户体验。未来计划包括系统性能优化和更多应用场景的探索,目标是打造一个适用于智能家居、医疗健康、教育培训等多个领域的智能语音交互解决方案。
|
缓存 自然语言处理 物联网
|
人工智能 物联网 芯片
应用速递 | AI智能语音护眼仪方案
应用速递栏目:应用速递是面向IoT厂商推荐芯片开放社区(OCC)上的典型应用案例,便于IoT厂商精准获取方案,快速实现产品落地。
141 0
应用速递 | AI智能语音护眼仪方案
|
人工智能 自然语言处理 小程序
爆肝一周,用Python在物联网设备上写了个智能语音助手-总体方案-《神奇的物联网》
基于HaaS EDU K1物理网开发板,通过数100行Python代码轻松打造一款智能语音助手!
876 0
爆肝一周,用Python在物联网设备上写了个智能语音助手-总体方案-《神奇的物联网》
|
Linux 语音技术 开发工具
开放下载!《无需从0开发 1天上手智能语音离在线方案》
玩转智能生活,平头哥芯片开放社区第二本系列电子书《无需从0开发 1天上手智能语音离在线方案》现已开放下载,立即下载阅读吧!
23750 0
开放下载!《无需从0开发 1天上手智能语音离在线方案》
|
存储 自然语言处理 算法
|
小程序 IDE 物联网
HaaS100 云端钉一体智能语音播放器设计
文主要介绍如何基于HaaS100硬件平台搭建“云端钉一体”(阿里云IoT平台 + HaaS100 + 钉钉小程序)的智能语音播放器。包括加载/卸载HaaS100上的声卡模块、TTS (Text to Speech)、智能语音合成功能、开始/停止录音、录音文件路径/data/rec.pcm音乐播功能(例如音量调节/播放/暂停/上一首/下一首/播放列表等)四大小程序,以及音量调节,本地音乐/ 网络音乐播放(.mp3, .m4a等格式)等、 TTS (Text to Speech),智能语音合成功能两大地本地CLI功能。
HaaS100 云端钉一体智能语音播放器设计