一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种语音识别方法及装置与流程

2021-10-09 16:18:00 来源:中国专利 TAG:装置 语音识别 方法 信息


1.本技术涉及信息技术领域,尤其涉及一种语音识别方法及装置。


背景技术:

2.目前的语音识别技术主要依赖于基于深度学习的算法,为了得到高识别率的语音识别模型,需要大量的与真实场景相匹配的语音数据,其中房间混响以及说话人与麦克风的距离角度等是影响语音识别模型性能的重要因素之一,然而有遮挡、异形房间的混响很难用算法仿真,例如说话人在餐厅,而麦克风在客厅,或者说话人背对麦克风,说话人与麦克风之间存在遮挡等情况下识别率会明显降低,而混响数据又很难大量的采集,无法做到对这些情况海量的数据覆盖。


技术实现要素:

3.本技术实施例提供了一种语音识别方法及装置,用以增强语音识别模型的鲁棒性。
4.本技术实施例提供的一种语音识别方法包括:
5.对预先确定的房间脉冲响应rir数据进行掩蔽;
6.将掩蔽后的rir数据与原始语音数据进行卷积,得到新的语音数据;
7.利用所述新的语音数据训练语音识别模型。
8.通过该方法,对预先确定的房间脉冲响应rir数据进行掩蔽;将掩蔽后的rir数据与原始语音数据进行卷积,得到新的语音数据;利用所述新的语音数据训练语音识别模型,从而增强了语音识别模型的鲁棒性,提升了语音识别模型在房间有遮挡及多角度等情况下的语音识别率,简单、高效、适用性强。
9.可选地,对预先确定的房间脉冲响应rir数据进行掩蔽,具体包括:
10.确定对所述rir数据进行掩蔽的时间段;
11.将所述时间段的rir数据,替换为预设值。
12.可选地,所述预设值为零,或者为所述rir数据中的一部分rir数据的平均值,或者为随机数。
13.可选地,所述时间段的rir数据,包括所述rir数据中的一段时间或多段时间的rir数据。
14.可选地,所述时间段的起始位置包括从0开始的预设范围内的随机值。
15.可选地,所述时间段的时长包括从0开始的预设范围内的随机值。
16.可选地,所述rir数据是预先模拟生成的,或者是在真实场景中采集得到的。
17.本技术实施例提供的一种语音识别装置,包括:
18.第一单元,用于对预先确定的房间脉冲响应rir数据进行掩蔽;
19.第二单元,用于将掩蔽后的rir数据与原始语音数据进行卷积,得到新的语音数据;
20.第三单元,用于利用所述新的语音数据训练语音识别模型。
21.本技术另一实施例提供了一种计算设备,其包括存储器和处理器,其中,所述存储器用于存储程序指令,所述处理器用于调用所述存储器中存储的程序指令,按照获得的程序执行上述任一种方法。
22.本技术另一实施例提供了一种计算机存储介质,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行上述任一种方法。
附图说明
23.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅是本技术的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
24.图1为本技术实施例提供的rir数据示意图;
25.图2为本技术实施例提供的经过掩蔽后的rir数据示意图;
26.图3为本技术实施例提供的一种语音识别方法的流程示意图;
27.图4为本技术实施例提供的一种语音识别方法的流程示意图;
28.图5为本技术实施例提供的一种语音识别装置的结构示意图;
29.图6为本技术实施例提供的一种语音识别装置的结构示意图。
具体实施方式
30.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,并不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
31.本技术实施例提供了一种语音识别方法及装置,用以增强语音识别模型的鲁棒性,从而提升语音识别模型在房间有遮挡及多角度等情况下的语音识别率,简单、高效、适用性强。
32.其中,方法和装置是基于同一申请构思的,由于方法和装置解决问题的原理相似,因此装置和方法的实施可以相互参见,重复之处不再赘述。
33.本技术实施例旨在提升语音识别模型的泛化能力,提出对房间脉冲响应(rir)数据进行随机的掩蔽(mask),增加样本的多样性,使语音识别模型在不依赖于特定的直达声和反射声的情况下也能够准确的进行语音识别,提升语音识别模型对有遮挡以及异形房间(多角度)等情况下的鲁棒性。房间混响由直达声和反射声组成,其中直达声指的是声源未经反射直接传播到麦克风的声音信号,其余经过障碍物反射和吸收之后传播到麦克风的声音信号是反射声。
34.本技术实施例提供的技术方案,主要包括下面三个方面:
35.1、模拟生成rir数据,或直接使用真实场景中采集的rir数据。其中,关于如何采集rir数据,可以有多种方法,例如:在房间播放某个激励信号,对其引起的响应进行录音。
36.2、生成一组随机数,包括对rir数据进行掩蔽的起始位置的随机数和时间长度的
随机数,用于对随机的直达声或房间反射声的时间以及时长进行掩蔽。也就是说,本步骤用于确定对所述rir数据进行掩蔽的时间段,其中,所述时间段的起始位置包括从0开始的预设范围内的随机值,所述时间段的时长包括从0开始的预设范围内的随机值。
37.3、将rir样本中对应时间以及时长的数据替换为零,将得到的新rir数据与原始语音数据进行卷积运算,得到新的语音数据。卷积运算指的是将卷积核与音频信号对应元素相乘并相加。例如,一维离散卷积的公式如下,设f(n)为rir,g(n)为原始音频信号,n为信号f(n)的长度,s(n)则为计算结果。
[0038][0039]
本技术实施例通过在数据增广阶段对仿真得到的(例如利用image方法仿真得到)rir数据进行随机的掩蔽(mask),以增强语音识别模型的泛化性能,尤其是提升其在异形房间、有遮挡、说话人背对麦克风等情况下的鲁棒性。所述的数据增广,是指对原始数据通过加噪、加混响等方法进行数据的扩充。
[0040]
本技术实施例提供的技术方案,例如包括:
[0041]
步骤一、首先,需要模拟生成rir数据,也可以使用在真实场景中采集的rir数据。可以利用现有技术模拟生成rir数据,从而能够有效生成房间脉冲响应。
[0042]
所述rir数据,与麦克风和说话人的距离角度、墙壁反射率、房间尺寸(长宽高)、混响时间等参数有关,其中墙壁反射率与墙壁的材质有关,是人为设定的参数;其中,所述混响时间指的是声源停止发声后衰减60db所需要的时间,可以利用赛宾公式(赛宾公式是经验公式)得到。而这种仿真的方法(例如pyroomacoustics)只能生成无遮挡的矩形房间环境下的数据。
[0043]
生成rir数据的方式不唯一,本技术实施例中并不依赖于生成rir的方式,任何方式生成的rir数据或是真实场景中采集的rir数据都可以直接使用本技术实施例提供的方法。
[0044]
例如,参见图1,是模拟生成的rir样本,其横坐标是时间,纵坐标是当前时刻的房间冲击响应(amp),图1表示采样率为16000的8000个采样点的rir,总时长也就是半秒,后续在步骤二中,该rir样本与原始语音数据进行卷积运算便得到了加过混响的新语音数据。所述原始语音数据指的是在静音室用高保真麦克风采集的没有混响的语音数据。所述原始语音数据指的就是我们需要利用rir加混响的对象,是所采集的原始数据。所述新语音数据包含了原始语音数据的直达声和房间反射声。
[0045]
步骤二、本技术实施例对房间反射声随机的掩蔽(掩蔽的内容是随机的,可以包括直达声也可以包括反射声),所述掩蔽指的是将有效值替换为零(当然除了零以外的其他值也可以),旨在减小语音识别模型对一部分房间反射声的依赖,使语音识别模型即便在有遮挡的条件下也能准确的识别。其中,所述直达声是指从声源发声后直接传播到麦克风的声音信号;早期反射声,例如是指直达声之后100ms(当然不限于此数值,具体值可以根据实际需要而定)以内的反射声。
[0046]
具体地:
[0047]
首先,确定掩蔽的时长,例如取rir数据中0至200均匀分布的随机值,设为s,若s等于200,即掩蔽rir数据中连续的200个采样点的数据,例如图1所示的音频采样率为16k,200
个采样点也就是12.5ms,掩蔽的时长设为mask_len。而后,确定掩蔽的起始位置,例如取0至1000均匀分布的随机值(例如取到的随机数为100,则对rir的第100个采样点至第300个采样点进行掩蔽),设为mask_start,因此对mask_start至mask_start mask_len这些采样点进行掩蔽,掩蔽的方法就是将这些采样点的数据替换为零,经过掩蔽之后的rir数据如图2所示。
[0048]
然后,将新的rir数据与原始语音数据进行卷积,得到新的语音数据。例如,若mask_len等于100,mask_start=500,也就是在这个新的rir数据所模拟的混响房间中掩蔽了直达声到达之后的第31.25ms至37.5ms的反射声。其中,采样率为16k,500/16000=0.03125(第31.25ms),100/16000=0.00625,0.03125 0.00625=0.0375(第37.5ms)。
[0049]
最后,将新的语音数据用于语音识别模型的训练。
[0050]
图3所示即为本技术实施例提供的语音识别方法的流程示意图。
[0051]
需要说明的是,上述对本技术实施例提供的技术方案仅作为举例说明,本技术还有其他实现方式,例如,对rir数据进行随机掩蔽的方式不唯一,本技术实施例对一段连续的早期反射声进行掩蔽,也可以随机取多段不同长度的房间脉冲响应(即图1的rir数据)进行掩蔽,这都属于本技术实施例的范畴。其次,对于rir数据掩蔽的位置,本技术实施例用零数值进行替换,也可以使用整段rir数据的平均值或者其他随机数进行替换,这都属于本技术实施例的范畴。
[0052]
综上所述,参见图4,本技术实施例提供的一种语音识别方法,包括:
[0053]
s101、对预先确定的房间脉冲响应rir数据进行掩蔽;
[0054]
s102、将掩蔽后的rir数据与原始语音数据进行卷积,得到新的语音数据;
[0055]
s103、利用所述新的语音数据训练语音识别模型。
[0056]
可选地,对预先确定的房间脉冲响应rir数据进行掩蔽,具体包括:
[0057]
确定对所述rir数据进行掩蔽的时间段;
[0058]
将所述时间段的rir数据,替换为预设值。
[0059]
可选地,所述预设值为零,或者为所述rir数据中的一部分rir数据的平均值,或者为随机数。
[0060]
可选地,所述时间段的rir数据,包括所述rir数据中的一段时间或多段时间的rir数据。
[0061]
可选地,所述时间段的起始位置包括从0开始的预设范围内的随机值。所述预设范围,例如0~1000。
[0062]
可选地,所述时间段的时长包括从0开始的预设范围内的随机值。所述预设范围,例如0~200。
[0063]
可选地,所述rir数据是预先模拟生成的,或者是在真实场景中采集得到的。
[0064]
参见图5,本技术实施例提供的一种计算设备,可以是任意种类的终端设备,例如智能家电等(当然也可以是网络设备),该装置包括:
[0065]
存储器11,用于存储程序指令;
[0066]
处理器12,用于调用所述存储器中存储的程序指令,按照获得的程序执行:
[0067]
对预先确定的房间脉冲响应rir数据进行掩蔽;
[0068]
将掩蔽后的rir数据与原始语音数据进行卷积,得到新的语音数据;
[0069]
利用所述新的语音数据训练语音识别模型。
[0070]
可选地,对预先确定的房间脉冲响应rir数据进行掩蔽,具体包括:
[0071]
确定对所述rir数据进行掩蔽的时间段;
[0072]
将所述时间段的rir数据,替换为预设值。
[0073]
可选地,所述预设值为零,或者为所述rir数据中的一部分rir数据的平均值,或者为随机数。
[0074]
可选地,所述时间段的rir数据,包括所述rir数据中的一段时间或多段时间的rir数据。
[0075]
可选地,所述时间段的起始位置包括从0开始的预设范围内的随机值。所述预设范围,例如0~1000。
[0076]
可选地,所述时间段的时长包括从0开始的预设范围内的随机值。所述预设范围,例如0~200。
[0077]
可选地,所述rir数据是预先模拟生成的,或者是在真实场景中采集得到的。
[0078]
参见图6,本技术实施例提供的一种语音识别装置,例如可以是任意种类的终端设备,例如智能家电等(当然也可以是网络设备),该装置包括:
[0079]
第一单元21,用于对预先确定的房间脉冲响应rir数据进行掩蔽;
[0080]
第二单元22,用于将掩蔽后的rir数据与原始语音数据进行卷积,得到新的语音数据;
[0081]
第三单元23,用于利用所述新的语音数据训练语音识别模型。
[0082]
可选地,对预先确定的房间脉冲响应rir数据进行掩蔽,具体包括:
[0083]
确定对所述rir数据进行掩蔽的时间段;
[0084]
将所述时间段的rir数据,替换为预设值。
[0085]
可选地,所述预设值为零,或者为所述rir数据中的一部分rir数据的平均值,或者为随机数。
[0086]
可选地,所述时间段的rir数据,包括所述rir数据中的一段时间或多段时间的rir数据。
[0087]
可选地,所述时间段的起始位置包括从0开始的预设范围内的随机值。所述预设范围,例如0~1000。
[0088]
可选地,所述时间段的时长包括从0开始的预设范围内的随机值。所述预设范围,例如0~200。
[0089]
可选地,所述rir数据是预先模拟生成的,或者是在真实场景中采集得到的。
[0090]
需要说明的是,本技术实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0091]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式
体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read

only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0092]
本技术实施例提供了一种计算设备,该计算设备具体可以为桌面计算机、便携式计算机、智能手机、平板电脑、个人数字助理(personal digital assistant,pda)等。该计算设备可以包括中央处理器(center processing unit,cpu)、存储器、输入/输出设备等,输入设备可以包括键盘、鼠标、触摸屏等,输出设备可以包括显示设备,如液晶显示器(liquid crystal display,lcd)、阴极射线管(cathode ray tube,crt)等。
[0093]
存储器可以包括只读存储器(rom)和随机存取存储器(ram),并向处理器提供存储器中存储的程序指令和数据。在本技术实施例中,存储器可以用于存储本技术实施例提供的任一所述方法的程序。
[0094]
处理器通过调用存储器存储的程序指令,处理器用于按照获得的程序指令执行本技术实施例提供的任一所述方法。
[0095]
本技术实施例提供了一种计算机存储介质,用于储存为上述本技术实施例提供的装置所用的计算机程序指令,其包含用于执行上述本技术实施例提供的任一方法的程序。
[0096]
所述计算机存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(mo)等)、光学存储器(例如cd、dvd、bd、hvd等)、以及半导体存储器(例如rom、eprom、eeprom、非易失性存储器(nand flash)、固态硬盘(ssd))等。
[0097]
本技术实施例提供的技术方案可以应用于终端设备,也可以应用于网络设备。
[0098]
其中,终端设备也可称之为用户设备(user equipment,简称为“ue”)、移动台(mobile station,简称为“ms”)、移动终端(mobile terminal)等,可选的,该终端可以具备经无线接入网(radio access network,ran)与一个或多个核心网进行通信的能力,例如,终端可以是智能家电、移动电话(或称为“蜂窝”电话)、或具有移动性质的计算机等,例如,终端还可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置。
[0099]
网络设备可以为基站(例如,接入点),指接入网中在空中接口上通过一个或多个扇区与无线终端通信的设备。基站可用于将收到的空中帧与ip分组进行相互转换,作为无线终端与接入网的其余部分之间的路由器,其中接入网的其余部分可包括网际协议(ip)网络。基站还可协调对空中接口的属性管理。例如,基站可以是gsm或cdma中的基站(bts,base transceiver station),也可以是wcdma中的基站(nodeb),还可以是lte中的演进型基站(nodeb或enb或e

nodeb,evolutional node b),或者也可以是5g系统中的gnb等。本技术实施例中不做限定。
[0100]
上述方法处理流程可以用软件程序实现,该软件程序可以存储在存储介质中,当存储的软件程序被调用时,执行上述方法步骤。
[0101]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机
可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
[0102]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0103]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0104]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0105]
显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文章

  • 日榜
  • 周榜
  • 月榜