唤醒词_好听的唤醒词

唤醒词_好听的唤醒词语音唤醒定义语音唤醒在学术上被称为keywordspotting(简称KWS),给它做了一个定义:在连续语流中实时检测出说话人特定片段。这里要注意,检测的“实时性”是一个关键点,语音唤醒的目的

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

语音唤醒

定义

语音唤醒在学术上被称为keyword spotting(简称KWS),给它做了一个定义:在连续语流中实时检测出说话人特定片段。

这里要注意,检测的“实时性”是一个关键点,语音唤醒的目的就是将设备从休眠状态激活至运行状态,所以唤醒词说出之后,能立刻被检测出来,用户的体验才会更好。

那么,该怎样评价语音唤醒的效果呢?通行的指标有四个方面,即唤醒率、误唤醒、响应时间和功耗水平:

➤唤醒率,指用户交互的成功率,专业术语为召回率,即recall。

➤误唤醒,用户未进行交互而设备被唤醒的概率,一般按天计算,如最多一天一次。

➤响应时间,指从用户说完唤醒词后,到设备给出反馈的时间差。

➤功耗水平,即唤醒系统的耗电情况。很多智能设备是通过电池供电,需要满足长时续航,对功耗水平就比较在意。

语音唤醒的技术路线

经过长时间的发展,语音唤醒的技术路线大致可归纳为三代,特点如下:

第一代:基于模板匹配的KWS

训练和测试的步骤比较简单,训练就是依据注册语音或者说模板语音进行特征提取,构建模板。测试时,通过特征提取生成特征序列,计算测试的特征序列和模板序列的距离,基于此判断是否唤醒。

唤醒词_好听的唤醒词

 

 

 

第二代:基于HMM-GMM的KWS

将唤醒任务转换为两类的识别任务,识别结果为keyword和non-keyword。

 唤醒词_好听的唤醒词

 

 

 

第三代:基于神经网络的方案

神经网络方案又可细分为几类,第一类是基于HMM的KWS,同第二代唤醒方案不同之处在于,声学模型建模从GMM转换为神经网络模型。 第二类融入神经网络的模板匹配,采用神经网络作为特征提取器。第三类是基于端到端的方案,输入语音,输出为各唤醒的概率,一个模型解决。

 

 唤醒词_好听的唤醒词

 

 

 

 

 

 

语音唤醒的难点

语音唤醒的难点,主要是低功耗要求和高效果需求之间的矛盾。

一方面,目前很多智能设备采用的都是低端芯片,同时采用电池供电,这就要求唤醒所消耗的能源要尽可能的少。

另一方面,用户对体验效果的追求越来越高。目前语音唤醒主要应用于C端,用户群体广泛,且要进行大量远场交互,对唤醒能力提出了很高要求。

要解决两者之间的矛盾,对于低功耗需求,我们采用模型深度压缩策略,减少模型大小并保证效果下降幅度可控;而对于高效果需求,一般是通过模型闭环优化来实现。先提供一个效果可用的启动模型,随着用户的使用,进行闭环迭代更新,整个过程完成自动化,无需人工参与。

 

语音唤醒的典型应用

语音唤醒的应用领域十分广泛,主要是C端产品,比如机器人、音箱、汽车等。比较有代表性的应用模式有如下几种:

➤传统语音交互:先唤醒设备,等设备反馈后(提示音或亮灯),用户认为设备被唤醒了,再发出语音控制命令,缺点在于交互时间长。

➤One-shot:直接将唤醒词和工作命令一同说出,如“叮咚叮咚,我想听周杰伦的歌”,客户端会在唤醒后直接启动识别以及语义理解等服务,缩短交互时间。

➤Zero-shot:将常用用户指定设置为唤醒词,达到用户无感知唤醒,例如直接对车机说“导航到科大讯飞”,这里将一些高频前缀的说法设置成唤醒词。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166854.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 排序之选择排序、堆排序、归并排序、高速排序

    排序之选择排序、堆排序、归并排序、高速排序

    2022年1月24日
  • JavaScript闭包

    JavaScript闭包闭包内部函数拥有比它的外部函数更长的生命周期!!!函数可以访问它被创建时所处的上下文环境!!!内部函数能访问外部函数的实际变量,而无需复制!实例:/**点击li标签时,调用其onclick事件,执行代码段function(){alert(i);}*此时,i在全局中的值为4*/window.onload=init;functioninit(){ var

    2022年6月29日
  • 小树311_森林小道

    小树311_森林小道原题链接森森开了一家快递公司,叫森森快递。因为公司刚刚开张,所以业务路线很简单,可以认为是一条直线上的N个城市,这些城市从左到右依次从0到(N−1)编号。由于道路限制,第i号城市(i=0,⋯,N−2)与第(i+1)号城市中间往返的运输货物重量在同一时刻不能超过C​i​​ 公斤。公司开张后很快接到了Q张订单,其中j张订单描述了某些指定的货物要从S​j​​ 号城市运输到T​j​​ 号城市。这里我们简单地假设所有货物都有无限货源,森森会不定时地挑选其中一部分货物进行运输。安全起见,这些货物不会在中

    2022年8月9日
  • 前端和后端开发的异同点_后端开发需要掌握什么技术

    前端和后端开发的异同点_后端开发需要掌握什么技术昨天有朋友问我你写了这么多年的代码,你到底是前端开发人员还是后端开发人员?我被这个问题给愣住了,问题不在前端和后端,而在于这么多年我还是一个开发人员。但我不在乎这件事情,因为这么多年了,我发现我对写代

    2022年8月1日
  • python的zipfile.open_python之zipfile[通俗易懂]

    python的zipfile.open_python之zipfile[通俗易懂]1简述zip文件是一个常用的归档和与压缩标准。zipfile模块提供了创建、读取、写入、添加及列出zip文件的工具。zipfile里有2个非常常用的class,分别是Zipfile和ZipInfo,在绝大多数情况下,我们只需要使用这2个class就可以了。Zipfile是主要的类,用于创建和读取zip文件,而ZipInfo是储存zip文件每个信息的。2Zipfile基本操作1创建一个zip对…

    2022年9月16日
  • react全家桶包括哪些_react 自定义组件

    react全家桶包括哪些_react 自定义组件一、create-react-app脚手架1.1创建项目并启动npxcreate-react-appreact_appcdreact_appnpmrunstart

    2022年10月25日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号