1.本技术涉及语音识别技术领域,尤其涉及一种音频信号处理方法、装置、电子设备及计算机可读存储介质。
背景技术:2.人工智能(ai,artificial intelligence)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
3.语音识别是人工智能领域中的一个重要方向,近年来也获得了巨大的进展。然而,由于用户在输入语音的同时,不可避免地会收到环境噪声、房间混响乃至其他用户的语音干扰,这些干扰会影响最终的识别结果。也就是说,对于如何提高存在环境噪声、房间混响以及其他用户的语音等干扰的多通道场景下语音识别的准确率,相关技术尚无有效的解决方案。
技术实现要素:4.本技术实施例提供一种音频信号处理方法、装置、电子设备及计算机可读存储介质,能够提高多通道场景下语音识别的准确率。
5.本技术实施例的技术方案是这样实现的:
6.本技术实施例提供一种音频信号处理方法,包括:
7.获取多通道音频信号,将所述多通道音频信号转换为单通道音频信号;
8.对所述单通道音频信号和所述多通道音频信号中的至少一个通道的原始音频信号进行组合处理,得到组合音频信号;
9.对所述组合音频信号进行编码处理,并对编码结果进行分离处理,得到所述单通道音频信号对应的第一权重值、以及所述至少一个通道的原始音频信号对应的至少一个第二权重值;
10.基于所述第一权重值以及所述至少一个第二权重值,对所述单通道音频信号以及所述至少一个通道的原始音频信号进行融合处理,得到用于进行语音识别的组合音频信号。
11.本技术实施例提供一种音频信号处理装置,包括:
12.获取模块,用于获取多通道音频信号;
13.转换模块,用于将所述多通道音频信号转换为单通道音频信号;
14.组合模块,用于对所述单通道音频信号和所述多通道音频信号中的至少一个通道的原始音频信号进行组合处理,得到组合音频信号;
15.编码模块,用于对所述组合音频信号进行编码处理;
16.分离模块,用于对编码结果进行分离处理,得到所述单通道音频信号对应的第一权重值、以及所述至少一个通道的原始音频信号对应的至少一个第二权重值;
17.融合模块,用于基于所述第一权重值以及所述至少一个第二权重值,对所述单通道音频信号以及所述至少一个通道的原始音频信号进行融合处理,得到用于进行语音识别的组合音频信号。
18.上述方案中,所述转换模块,还用于对所述多通道音频信号中的每一个通道的原始音频信号进行回音消除处理;对经过回音消除处理后的所述每一个通道的原始音频信号进行去噪处理;对经过去噪处理后的多个所述通道的原始音频信号进行波束形成处理,得到单通道音频信号。
19.上述方案中,所述获取模块,还用于通过以下方式从所述多通道音频信号中获取用于进行所述组合处理的至少一个通道的原始音频信号:根据所述多通道音频信号确定发声对象的位置;对多个麦克风的位置与所述发声对象的位置之间的距离进行降序排序,并将排序在前的至少一个麦克风采集到的音频信号确定为用于进行所述组合处理的至少一个通道的原始音频信号。
20.上述方案中,所述获取模块,还用于通过以下方式从所述多通道音频信号中获取用于进行所述组合处理的至少一个通道的原始音频信号:确定所述多通道音频信号中的每一个通道的原始音频信号的信噪比;按照信噪比对多个所述通道的原始音频信号进行降序排序,并将排序在前的至少一个通道的原始音频信号确定为用于进行所述组合处理的至少一个通道的原始音频信号。
21.上述方案中,所述编码模块,还用于对所述组合音频信号进行编码处理,得到对应的权重值;所述分离模块,还用于将所述权重值划分为与所述单通道音频信号的维度对应的第一部分、以及与所述至少一个通道的原始音频信号的维度对应的至少一个第二部分;将所述第一部分确定为所述单通道音频信号对应的第一权重值、以及将所述至少一个第二部分确定为所述至少一个通道的原始音频信号对应的至少一个第二权重值。
22.上述方案中,所述融合模块,还用于对所述单通道音频信号进行特征提取,得到对应的第一特征向量;对所述至少一个通道的原始音频信号进行特征提取,得到对应的至少一个第二特征向量;基于所述第一权重值以及所述至少一个第二权重值,对所述第一特征向量与所述至少一个第二特征向量进行加权求和处理,得到用于进行语音识别的组合音频信号。
23.上述方案中,所述装置还包括训练模块,用于在第一训练阶段执行以下处理:单独训练所述信号处理模型,并单独训练所述语音识别模型;在所述第一训练阶段之后的第二训练阶段执行以下处理:对经过单独训练的所述信号处理模型以及所述语音识别模型进行联合训练。
24.上述方案中,所述获取模块,还用于获取单通道音频信号样本;所述装置还包括模拟模块,用于对所述单通道音频信号样本进行多通道模拟处理,得到多通道音频信号样本;所述训练模块,还用于基于所述单通道音频信号样本和所述多通道音频信号样本训练所述信号处理模型。
25.上述方案中,所述获取模块,还用于获取单通道噪声信号;所述模拟模块,还用于根据预设的信噪比,调整所述单通道音频信号样本的能量和所述单通道噪声信号的能量,
并对调整后的所述单通道音频信号样本与所述单通道噪声信号进行叠加处理,得到多通道音频信号样本。
26.上述方案中,所述组合模块,还用于对所述单通道音频信号样本和所述多通道音频信号样本中的至少一个通道的原始音频信号样本进行组合处理,得到组合音频信号样本;所述编码模块,还用于通过所述信号处理模型对所述组合音频信号样本进行编码处理;所述分离模块,还用于对编码结果进行分离处理,得到所述单通道音频信号样本对应的第三权重值、以及所述至少一个通道的原始音频信号样本对应的至少一个第四权重值;所述融合模块,还用于基于所述第三权重值以及所述至少一个第四权重值,对所述单通道音频信号样本以及所述至少一个通道的原始音频信号样本进行融合处理,得到用于进行语音识别的组合音频信号样本;所述训练模块,还用于对所述用于进行语音识别的组合音频信号样本进行回归处理,并将回归结果和所述单通道音频信号样本代入第一损失函数,确定所述第一损失函数取得最小值时所述信号处理模型的参数,基于所述参数更新所述信号处理模型。
27.上述方案中,所述获取模块,还用于获取用于进行语音识别的组合音频信号样本;所述训练模块,还用于通过所述语音识别模型对所述用于进行语音识别的组合音频信号样本进行识别处理,得到识别结果;将所述识别结果与对应的标签代入第二损失函数,确定所述第二损失函数取得最小值时所述语音识别模型的参数,基于所述参数更新所述语音识别模型。
28.上述方案中,所述获取模块,还用于获取所述语音识别模型更新后的参数;所述训练模块,还用于将所述语音识别模型更新后的参数反馈给所述信号处理模型,以更新所述信号处理模型的参数。
29.本技术实施例提供一种电子设备,包括:
30.存储器,用于存储可执行指令;
31.处理器,用于执行所述存储器中存储的可执行指令时,实现本技术实施例提供的音频信号处理方法。
32.本技术实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本技术实施例提供的音频信号处理方法。
33.本技术实施例提供一种计算机程序产品,所述计算机程序产品包括计算机可执行指令,用于被处理器执行时,实现本技术实施例提供的音频信号处理方法。
34.本技术实施例具有以下有益效果:
35.通过将转换得到的单通道音频信号和多通道音频信号中的至少一个通道的原始音频信号进行组合处理,并基于权重值将单通道音频信号和至少一个通道的原始音频信号进行融合处理,得到用于语音识别的组合音频信号,如此,既降低了多通道音频信号中的干扰信息,又保留了部分的原始音频信号,因此在后续进行语音识别时,能够提高语音识别的准确率。
附图说明
36.图1是本技术实施例提供的语音识别系统100的架构示意图;
37.图2是本技术实施例提供的服务器200的结构示意图;
38.图3是本技术实施例提供的音频信号处理方法的流程示意图;
39.图4是本技术实施例提供的音频信号处理方法的流程示意图;
40.图5是本技术实施例提供的音频信号处理方法的流程示意图;
41.图6是本技术实施例提供的信号处理模型的结构示意图;
42.图7是本技术实施例提供的语音识别模型的结构示意图;
43.图8是本技术实施例提供的信号处理模型的训练流程示意图;
44.图9是本技术实施例提供的每帧权重平均值示意图;
45.图10是本技术实施例提供的信号处理模型和语音识别模型的联合训练流程示意图;
46.图11是本技术实施例提供的信号处理模型和语音识别模型上线流程示意图。
具体实施方式
47.为了使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术作进一步地详细描述,所描述的实施例不应视为对本技术的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
48.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
49.在以下的描述中,所涉及的术语“第一第二”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一第二”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本技术实施例能够以除了在这里图示或描述的以外的顺序实施。
50.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
51.对本技术实施例进行进一步详细说明之前,对本技术实施例中涉及的名词和术语进行说明,本技术实施例中涉及的名词和术语适用于如下的解释。
52.1)语音识别:也称自动语音识别(asr,automatic speech recognition)、或者语音转文本识别(stt,speech to text),其目标是以计算机自动将人类的语音内容转换为相应的文字。与说话人识别以及说话人确认不同,后者尝试识别或者确认发出语音的说话人而非其中所包含的词汇内容。
53.2)回音消除(aec,acoustic echo cancelling):是指通过音波干扰的方式消除麦克风与喇叭因空气产生回受路径(feedback path)而产生的杂音。
54.3)波束形成(bf,beam forming):是阵列信号处理中非常重要的任务,其基本处理过程为:1、采用空间分布的传感器阵列采集场数据;2、对所采集的场数据进行线性加权组合处理得到一个标量波束输出。
55.4)字符错误率(cer,character error rate):是语音识别领域的关键性评估指标,cer越低表示语音识别的准确率越高,即识别效果越好。
56.5)多通道音频信号,即多个麦克风同步采集的音频信号,每个麦克风采集的一路音频信号称为单通道音频信号,在未对单通道音频信号进行后续处理之前,也称为原始的
单通道音频信号,简称为原始音频信号。
57.6)组合音频信号,对多个(即至少两个)同步采集的原始音频信号组合后所得到的单通道音频信号,与原始音频信号的区别在于,组合音频信号不是经过麦克风直接采集得到的。
58.语音作为语言的声学表现,是人类交流信息最自然、最有效和最方便的手段之一,近年来,语音识别技术获得了巨大的进展。然而,由于用户在输入语音的同时,不可避免地会收到环境噪声、房间混响乃至其他用户的语音干扰。这些干扰最终使得采集到的音频信号并非纯净的音频信号,而是包含环境噪声、房间混响以及其他用户的语音的多通道音频信号。
59.针对多通道场景下的语音识别,相关技术提供的语音识别系统通常采用的技术方案是将采集到的多通道音频信号首先经过前端处理(例如回音消除处理、去噪处理以及波束形成处理)生成单通道音频信号,接着通过语音识别模型对生成的单通道音频信号进行识别处理,得到识别结果。然而,此方案为了人耳有更好的听觉体验,会大幅压低背景噪声、非主人声(即其他用户发出的语音)和喇叭声等,导致主人声(即当前用户发出的语音)也被损伤,进而导致最终的识别效果明显下降。
60.鉴于此,本技术实施例提供一种音频信号处理方法、装置、电子设备及计算机可读存储介质,能够提高多通道场景下语音识别的准确率。下面说明本技术实施例提供的电子设备的示例性应用,本技术实施例提供的电子设备可以实施为各种类型的终端设备,也可以实施为服务器,或者由服务器和终端设备协同实施。
61.在一些实施例中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本技术实施例中不做限制。
62.下面以由服务器和终端设备协同实施本技术实施例提供的音频信号处理方法为例进行说明。参见图1,图1是本技术实施例提供的音频信号处理系统100的架构示意图,如图1所示,终端设备400通过网络300连接服务器200,其中,网络300可以是广域网或者局域网,又或者是二者的组合。
63.终端设备400中可以配置有多个麦克风(例如分散部署在环境中的多个麦克风)、或者至少一个麦克风阵列(每个麦克风阵列包括多个麦克风),用于对环境(例如会议、电话、音箱、车载等场景)进行音频采集,得到多通道音频信号(以会议场景为例,采集得到的多通道音频信号可以是包括噪声、房间混响以及其他用户发出的干扰语音等的音频信号),此外,在终端设备400上还安装有客户端410,客户端410可以是具有语音输入功能的应用,例如即时通信应用、语音输入应用、语音助手等,这些应用在运行时,会调用上述的多个麦克风(mic,microphone)或者麦克风阵列,以对环境进行音频采集,得到多通道音频信号,随后,终端设备400可以将多通道音频信号通过网络300发送至服务器200,以使服务器200执行后续的语音识别处理。
64.服务器200中部署有训练后的信号处理模型和语音识别模型,服务器200在接收到
终端设备400发送的多通道音频信号之后,首先将多通道音频信号转换为单通道音频信号(例如对多通道音频信号进行回音消除处理、去噪处理以及波束形成处理,以得到对应的单通道音频信号),接着,服务器200对转换得到的单通道音频信号和多通道音频信号中的至少一个通道的原始音频信号进行组合处理,得到组合音频信号,随后,服务器200调用训练后的信号处理模型对组合音频信号进行编码处理,并对编码结果进行分离处理,得到单通道音频信号对应的第一权重值、以及至少一个通道的原始音频信号对应的至少一个第二权重值;在得到第一权重值以及至少一个第二权重值之后,服务器200可以基于第一权重值以及至少一个第二权重值,对单通道音频信号以及至少一个通道的原始音频信号进行融合处理,得到用于语音识别的组合音频信号。最后,服务器200调用训练后的语音识别模型对最终得到的用于语音识别的组合音频信号进行语音识别处理,获得语音识别结果。在获得语音识别结果后,服务器200可以将语音识别结果返回至终端设备400,以在终端设备400的人机交互界面中进行呈现(即向用户展示语音识别结果),或者控制终端设备400执行与语音识别结果相匹配的任务。
65.需要说明的是,本技术实施例提供的音频信号处理方法除了可以由服务器和终端设备协同实施外,还可以由终端设备单独实施,例如服务器训练信号处理模型和语音识别模型,并将训练后的信号处理模型和语音识别模型下发至终端设备,从而终端设备可以在本地基于所获取的多通道音频信号执行后续的语音识别处理。
66.示例的,以图1中示出的终端设备400为例,终端设备400预先接收服务器200下发的训练后的信号处理模型和语音识别模型,如此,终端设备400在获取到多通道音频信号之后,首先将多通道音频信号转换为单通道音频信号,接着,对转换得到的单通道音频信号和多通道音频信号中的至少一个通道的原始音频信号进行组合处理,得到组合音频信号;随后,终端设备400调用预先接收的训练后的信号处理模型对组合音频信号进行编码处理,并对编码结果进行分离处理,得到单通道音频信号对应的第一权重值、以及至少一个通道的原始音频信号对应的至少一个第二权重值;在得到第一权重值以及至少一个第二权重值之后,终端设备400可以基于第一权重值以及至少一个第二权重值,对单通道音频信号以及至少一个通道的原始音频信号进行融合处理,得到用于语音识别的组合音频信号。最后,终端设备400调用预先接收的训练后的语音识别模型对最终得到的用于语音识别的组合音频信号进行语音识别,获得语音识别结果,并在人机交互界面中进行呈现或者执行与所识别出的结果匹配的任务。
67.在一些实施例中,终端设备400或服务器200可以通过运行计算机程序来实现本技术实施例提供的音频信号处理方法。举例来说,计算机程序可以是操作系统中的原生程序或软件模块;可以是本地(native)应用程序(app,application),即需要在操作系统中安装才能运行的程序;也可以是小程序,即只需要下载到浏览器环境中就可以运行的程序;还可以是能够嵌入至任意app中的小程序,其中,该小程序可以由用户控制运行或关闭。总而言之,上述计算机程序可以是任意形式的应用程序、模块或插件。
68.需要说明的是,本技术实施例提供的音频信号处理方法并不限于应用于上述的会议、电话等场景,还可以扩展至其他任意的需要进行语音识别的场景,例如应用于智能家居设备(如智能音箱、智能洗衣机等)、智能穿戴设备(如智能手表)、车载智能中控系统以及ai智能医疗设备等场景中。
69.下面对本技术实施例提供的电子设备的结构进行说明。以本技术实施例提供的电子设备为服务器为例说明,参见图2,图2是本技术实施例提供的服务器200的结构示意图,图2所示的服务器200包括:至少一个处理器210、存储器240、至少一个网络接口220。服务器200中的各个组件通过总线系统230耦合在一起。可理解,总线系统230用于实现这些组件之间的连接通信。总线系统230除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统230。
70.处理器210可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digital signal processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
71.存储器240可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器240可选地包括在物理位置上远离处理器210的一个或多个存储设备。
72.存储器240包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(rom,read only memory),易失性存储器可以是随机存取存储器(ram,random access memory)。本技术实施例描述的存储器240旨在包括任意适合类型的存储器。
73.在一些实施例中,存储器240能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
74.操作系统241,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
75.网络通信模块242,用于经由一个或多个(有线或无线)网络接口420到达其他计算设备,示例性的网络接口420包括:蓝牙、无线相容性认证(wifi)、和通用串行总线(usb,universal serial bus)等;
76.在一些实施例中,本技术实施例提供的音频信号处理装置可以采用软件方式实现,图2示出了存储在存储器240中的音频信号处理装置243,其可以是程序和插件等形式的软件,包括以下软件模块:获取模块2431、转换模块2432、组合模块2433、编码模块2434、分离模块2435、融合模块2436、训练模块2437和模拟模块2438,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。需要指出的是,在图2中为了方便表达,一次性示出了上述所有模块,但是不应视为在音频信号处理装置243排除了可以只包括获取模块2431、转换模块2432、组合模块2433、编码模块2434和分离模块2435的实现,将在下文中说明各个模块的功能。
77.在另一些实施例中,本技术实施例提供的音频信号处理装置可以采用硬件方式实现,作为示例,本技术实施例提供的音频信号处理装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本技术实施例提供的音频信号处理方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(asic,application specific integrated circuit)、dsp、可编程逻辑器件(pld,programmable logic device)、复杂可编程逻辑器件(cpld,complex programmable logic device)、现场可编程门阵列(fpga,field
‑
programmable gate array)或其他电子元件。
78.下面结合附图对本技术实施例提供的音频信号处理方法进行具体说明。参见图3,图3是本技术实施例提供的音频信号处理方法的流程示意图;在一些实施例中,可以由服务器或者终端设备单独实施本技术实施例提供的音频信号处理方法,也可以由服务器和终端设备协同实施。在下面的步骤中,以终端设备和服务器协同实施为例说明本技术实施例提供的音频信号处理方法。
79.在步骤s101中,获取多通道音频信号,将多通道音频信号转换为单通道音频信号。
80.这里,多通道音频信号是指包括环境噪声、回音以及多个人声等干扰信息的音频信号,例如以会议场景为例,在真实的会议场景中存在大量的噪声(例如空调噪声、风扇噪声等)、多径反射、房间混响以及多个人声(即参加会议的多个用户发出的语音)等,因此,针对会议场景采集得到的音频信号是混杂有各种声音的多通道音频信号。
81.在一些实施例中,在获取到多通道音频信号之后,可以通过以下方式将所获取的多通道音频信号转换为单通道音频信号:对多通道音频信号中的每一个通道的原始音频信号进行回音消除处理;对经过回音消除处理后的每一个通道的原始音频信号进行去噪处理;对经过去噪处理后的多个通道的原始音频信号进行波束形成处理,得到单通道音频信号。
82.示例的,以针对会议场景采集得到的混杂有各种声音的多通道音频信号为例,终端设备在调用多个麦克风、或者至少一个麦克风阵列(每个麦克风阵列包括多个麦克风)对会议场景进行音频采集,得到混杂有各种声音的多通道音频信号之后,首先对多通道音频信号中的每一个通道的原始音频信号进行回音消除处理(回音包括声学回音和线路回音,其中,声学回音是由于在免提或者会议场景中,扬声器的声音多次反馈到麦克风引起的,而线路回音是由于物理电子线路的二四线匹配耦合引起的,在实际应用中,可以使用自适应滤波器进行回音消除),随后,对经过回音消除处理后的每一个通道的原始音频信号进行降噪处理,最后,对经过降噪处理后的多个通道的原始音频信号进行波束形成处理(例如对经过去噪处理后的多个通道的原始音频信号进行线性加权组合处理),生成单通道音频信号。
83.需要说明的是,多通道音频信号在经过回音消除处理、降噪处理以及波束形成处理得到单通道音频信号后,虽然可以大幅降低多通道音频信号中的噪声、非主人声(即目标用户之外的其他用户发出的语音,例如假设当前需要对用户a发出的语音进行识别,则用户a之外的其他用户发出的语音即为非主人声)以及喇叭声等,同时也会对主人声(即待识别的目标用户发出的语音)产生较大的损伤,因此,如果仅仅基于转换得到的单通道音频信号进行后续的语音识别,将导致识别效果变差。鉴于此,本技术实施例提供的音频信号处理方法同时将转换得到的单通道音频信号以及多通道音频信号中的至少一个通道的原始音频信号输入信号处理模型,在信号处理模型中使用神经网络进行学习,取二者的优点,互相弥补不足,从而显著提高识别效果。
84.在步骤s102中,对单通道音频信号和多通道音频信号中的至少一个通道的原始音频信号进行组合处理,得到组合音频信号。
85.在一些实施例中,在对单通道音频信号和多通道音频信号中的至少一个通道的原始音频信号进行组合处理之前,可以通过以下方式从多通道音频信号中获取用于进行组合处理的至少一个通道的原始音频信号:根据多通道音频信号确定发声对象的位置;对多个麦克风的位置与发声对象的位置之间的距离进行降序排序,并将排序在前的至少一个麦克
风采集到的音频信号确定为用于进行组合处理的至少一个通道的原始音频信号。
86.示例的,以发声对象为用户a为例,在获取到多通道音频信号之后,可以根据所获取的多通道音频信号中的每一个通道包括的用户a发出的语音信号的强弱进行定位处理,得到用户a的位置,接着,对多个麦克风的位置与用户a的位置之间的距离进行降序排序,并将排序在前的至少一个麦克风采集到的音频信号确定为用于进行组合处理的至少一个通道的原始音频信号,例如假设根据排序结果确定出麦克风1离用户a最近,则将麦克风1采集到的音频信号确定为用于进行组合处理的一个通道的原始音频信号。
87.需要说明的是,这里的多个麦克风与多通道音频信号包括的多个通道之间是一一对应的,即麦克风的数量与通道的数量是一致的,例如麦克风1采集到的音频信号对应于多通道音频信号中第1通道的原始音频信号,麦克风2采集到的音频信号对应于多通道音频信号中第2通道的原始音频信号,以此类推。
88.此外,还需要说明的是,当存在多个发声对象时(例如需要对多个用户发出的语音进行识别时),针对每个发声对象,将与发声对象距离最近的一个或者多个麦克风采集到的音频信号确定为用于进行组合处理的至少一个通道的原始音频信号,例如对于发声对象a,假设麦克风1距离发声对象a最近,则在对发声对象a发出的语音进行识别时,将麦克风1采集到的音频信号确定为用于进行组合处理的一个通道的原始音频信号;而对于发声对象b,假设麦克风2距离发声对象b最近,则在对发声对象b发出的语音进行识别时,将麦克风2采集到的音频信号确定为用于进行组合处理的一个通道的原始音频信号。
89.在另一些实施例中,在对单通道音频信号和多通道音频信号中的至少一个通道的原始音频信号进行组合处理之前,还可以通过以下方式从多通道音频信号中获取用于进行组合处理的至少一个通道的原始音频信号:确定多通道音频信号中的每一个通道的原始音频信号的信噪比;按照信噪比对多个通道的原始音频信号进行降序排序,并将排序在前的至少一个通道的原始音频信号确定为用于进行组合处理的至少一个通道的原始音频信号。
90.示例的,在获取到多通道音频信号之后,可以首先确定出多通道音频信号中的每一个通道的原始音频信号的信噪比,接着,按照信噪比对多个通道的原始音频信号进行降序排序,并将排序在前的至少一个通道的原始音频信号确定为用于进行组合处理的至少一个通道的原始音频信号,例如假设根据排序结果确定出第1通道的原始音频信号的信噪比最小,则将第1通道的原始音频信号确定为用于进行组合处理的一个通道的原始音频信号。
91.需要说明的是,在实际应用中,也可以将多通道音频信号中的任意一个或者多个通道的原始音频信号确定为用于进行组合处理的至少一个通道的原始音频信号,并将所选取的任意一个或者多个通道的原始音频信号与转换得到的单通道音频信号进行组合处理,得到组合音频信号,本技术实施例对此不做限定。
92.在步骤s103中,对组合音频信号进行编码处理,并对编码结果进行分离处理,得到单通道音频信号对应的第一权重值、以及至少一个通道的原始音频信号对应的至少一个第二权重值。
93.在一些实施例中,图3示出的步骤s103可以通过图4示出的步骤s1031至步骤s1033实现,将结合图4示出的步骤进行说明。
94.在步骤s1031中,对组合音频信号进行编码处理,得到对应的权重值。
95.在一些实施例中,在得到组合音频信号之后,可以调用编码器对组合音频信号进
行编码处理,得到编码结果,其中,编码器可以是循环神经网络(rnn,recurrent neural nerwork),接着,调用解码器对编码结果进行解码处理,得到解码结果,其中,解码器也可以是rnn,例如长短时记忆网络(lstm,long short
‑
term mermory),随后,将解码结果输入分类器(例如softmax分类器),得到对应的权重值。
96.示例的,以用于进行组合处理的通道的数量为1个为例,例如选取多通道音频信号中最小信噪比的通道的原始音频信号进行组合处理,假设转换得到的单通道音频信号的维度为256维,且所选取的最小信噪比的通道的原始音频信号的维度也是256维,则将二者进行组合得到的组合音频信号的维度为512维,接着,对512维的组合音频信号进行编码处理、解码处理以及分类处理后,可以得到一个对应的512维的权重值。
97.在步骤s1032中,将权重值划分为与单通道音频信号的维度对应的第一部分、以及与至少一个通道的原始音频信号的维度对应的至少一个第二部分。
98.在一些实施例中,以用于进行组合处理的通道的数量为1个为例,假设选取多通道音频信号中最小信噪比的通道的原始音频信号与单通道音频信号进行组合处理,在对组合得到的组合音频信号进行编码处理得到对应的权重值后(权重值的维度与组合音频信号的维度是相同的,例如当组合音频信号的维度是512维时,对应得到的权重值的维度也是512维),可以将权重值划分为与单通道音频信号的维度对应的第一部分、以及与所选取的最小信噪比的通道的原始音频信号的维度对应的第二部分,例如假设单通道音频信号的维度为256维,所选取的最小信噪比的通道的原始音频信号的维度也是256维,即得到的权重值的维度是512维,则可以将512维的权重值平均划分成两部分,其中,每个部分的维度均是256维。
99.在另一些实施例中,以用于进行组合处理的通道的数量为多个为例,假设选取多通道音频信号中的任意两个通道(例如第1通道和第2通道)的原始音频信号与单通道音频信号进行组合处理,在对组合得到的组合音频信号进行编码处理得到对应的权重值后(权重值的维度与组合音频信号的维度是相同的,例如假设单通道音频信号的维度为256维,第1通道的原始音频信号的维度为256维,第2通道的原始音频信号的维度为256维,将三者进行组合处理,得到的组合音频信号的维度为768维,则针对768维的组合音频信号进行编码处理得到的权重值也是768维),可以将权重值划分为与单通道音频信号的维度对应的第一部分、与第1通道的原始音频信号的维度对应的一个第二部分以及与第2通道的原始音频信号的维度对应的另一个第二部分,例如假设单通道音频信号的维度为256维,第1通道的原始音频信号的维度为256维,第2通道的原始音频信号的维度为256维,则可以将768维的权重值平均划分成三部分,其中,每个部分的维度均是256维。
100.在步骤s1033中,将第一部分确定为单通道音频信号对应的第一权重值、以及将至少一个第二部分确定为至少一个通道的原始音频信号对应的至少一个第二权重值。
101.在一些实施例中,以用于进行组合处理的通道的数量为1个为例,在将权重值(例如λ)划分为与单通道音频信号的维度对应的第一部分(第一部分的维度与单通道音频信号的维度是相同的)、以及与从多通道音频信号中选取的一个通道(例如信噪比最小的通道、距离发声对象最近的麦克风对应的通道、或者任意一个通道)的原始音频信号的维度对应的一个第二部分(第二部分的维度与所选取的一个通道的原始音频信号的维度是相同的)之后,可以将第一部分确定为单通道音频信号对应的权重值(例如λ1)、以及将划分得到的
一个第二部分确定为所选取的一个通道的原始音频信号对应的权重值(例如λ2),其中,λ=λ1+λ2。
102.在另一些实施例中,以用于进行组合处理的通道的数量为多个为例,假设从多通道音频信号中选取任意两个通道(例如第1通道和第2通道)的原始音频信号与单通道音频信号进行组合处理,在将权重值(例如λ)划分成与单通道音频信号的维度对应的第一部分、与第1通道的原始音频信号的维度对应的一个第二部分以及与第2通道的原始音频信号的维度对应的另一个第二部分之后,可以将第一部分确定为单通道音频信号对应的权重值(例如λ1)、将划分得到的一个第二部分确定为第1通道的原始音频信号对应的权重值(例如λ2)、以及将划分得到的另一个第二部分确定为第2通道的原始音频信号对应的权重值(例如λ3),其中,λ=λ1+λ2+λ3。
103.需要说明的是,本技术实施例中的第二权重值并非特指某个通道的原始音频信号对应的权重值,而是将多通道音频信号中的任意一个通道的原始音频信号对应的权重值均称为第二权重值,也就是说,第二权重值的数量可以是多个,例如假设多通道音频信号中的第1通道的原始音频信号对应的权重值为λ2,第2通道的原始音频信号对应的权重值为λ3,则λ2和λ3都可以称为第二权重值。
104.在步骤s104中,基于第一权重值以及至少一个第二权重值,对单通道音频信号以及至少一个通道的原始音频信号进行融合处理,得到用于进行语音识别的组合音频信号。
105.在一些实施例中,图3示出的步骤s104可以通过图5示出的步骤s1041至步骤s1043实现,将结合图5示出的步骤进行说明。
106.在步骤s1041中,对单通道音频信号进行特征提取,得到对应的第一特征向量。
107.在一些实施例中,在将多通道音频信号转换成单通道音频信号之后,可以首先获取单通道音频信号的特征信息,例如可以提取单通道音频信号的梅尔倒谱系数(mfcc,mel
‑
scale frequency cepstralcoefficients),接着,调用编码器对提取出的特征信息进行编码处理,得到对应的特征向量(例如v1),其中,编码器可以采用帧级别编码器模型,例如各类深层神经网络模型,包括多层lstm、多层卷积网络、前馈型序列记忆网络(fsmn,feed
‑
forward sequential memory network)、时延神经网络(tdnn,time
‑
delay neural networks)、卷积神经网络(cnn,convolutional neural networks)、双向长短时记忆网络(bilstm,bi
‑
directional long short
‑
term memory)以及单向长短时记忆网络(unilstm,uni
‑
directional lstm)等中的任意一种或者多种的组合。
108.在步骤s1042中,对至少一个通道的原始音频信号进行特征提取,得到对应的至少一个第二特征向量。
109.在一些实施例中,以用于进行组合处理的通道的数量为1个为例,假设从多通道音频信号中选取最小信噪比的通道的原始音频信号进行组合处理,则可以首先获取最小信噪比的通道的原始音频信号的特征信息,例如提取最小信噪比的通道的原始音频信号的梅尔倒谱系数,接着,调用编码器(例如lstm)对提取出的特征信息进行编码处理,得到对应的特征向量(例如v2)。
110.在另一些实施例中,以用于进行组合处理的通道的数量为多个为例,假设从多通道音频信号中选取任意两个通道(例如第1通道和第2通道)的原始音频信号进行组合处理,则可以针对第1通道和第2通道的原始音频信号执行以下处理:以第1通道的原始音频信号
为例,首先获取第1通道的原始音频信号的特征信息,例如提取第1通道的原始音频信号的梅尔倒谱系数,接着,调用编码器(例如lstm)对提取出的特征信息进行编码处理,得到对应的特征向量(例如v3),同理,对第2通道的原始音频信号执行类似的处理,得到对应的特征向量(例如v4)。
111.需要说明的是,本技术实施例中的第二特征向量并非指某个通道的原始音频信号对应的特征向量,而是将多通道音频信号中的任意一个通道的原始音频信号对应的特征向量均称为第二特征向量,即第二特征向量的数量可以是多个的,例如假设多通道音频信号中的第1通道的原始音频信号对应的特征向量为v2,第2通道的原始音频信号对应的特征向量为v3,则v2和v3均称为第二特征向量。
112.在步骤s1043中,基于第一权重值以及至少一个第二权重值,对第一特征向量与至少一个第二特征向量进行加权求和处理,得到用于进行语音识别的组合音频信号。
113.在一些实施例中,以用于进行组合处理的通道的数量为1个为例,假设从多通道音频信号中选取最小信噪比的通道的原始音频信号进行组合处理,则在基于步骤s1033得到单通道音频信号对应的权重值(例如λ1)和最小信噪比的通道的原始音频信号对应的权重值(例如λ2)、以及在基于步骤s1041和步骤s1042得到单通道音频信号对应的特征向量(例如v1)和最小信噪比的通道的原始音频信号对应的特征向量(例如v2)之后,可以基于权重值λ1以及权重值λ2,对单通道音频信号对应的特征向量v1与最小信噪比的通道的原始音频信号对应的特征向量v2进行加权求和处理(即λ1*v1+λ2*v2),得到用于进行语音识别的组合音频信号。
114.在另一些实施例中,以用于进行组合处理的通道的数量为多个为例,假设从多通道音频信号中选取任意两个通道(例如第1通道和第2通道)的原始音频信号进行组合处理,则在基于步骤s1033得到单通道音频信号对应的的权重值(例如λ1)、第1通道的原始音频信号对应的权重值(例如λ2)和第2通道的原始音频信号对应的权重值(例如λ3)、以及在基于步骤s1041和步骤s1042得到单通道音频信号对应的特征向量(例如v1)、第1通道的原始音频信号对应的特征向量(例如v2)和第2通道的原始音频信号对应的特征向量(例如v3)之后,可以基于权重值λ1、权重值λ2和权重值λ3,对单通道音频信号对应的特征向量v1、第1通道的原始音频信号对应的特征向量v2和第2通道的原始音频信号对应的特征向量v3进行加权求和处理(即λ1*v1+λ2*v2+λ3*v3),得到用于进行语音识别的组合音频信号。
115.在另一些实施例中,上述步骤s103中对组合音频信号进行编码处理以及对编码结果进行分离处理可以是通过信号处理模型来实现的,并且在步骤s104中的语音识别可以是通过语音识别模型来实现的,则在通过信号处理模型对组合音频信号进行编码处理和分离处理、以及通过语音识别模型对最终得到的用于进行语音识别的组合音频信号进行语音识别之前,还可以执行以下处理:在第一训练阶段执行以下处理:单独训练信号处理模型,并单独训练语音识别模型;在第一训练阶段之后的第二训练阶段执行以下处理:对经过单独训练的信号处理模型以及语音识别模型进行联合训练。
116.为便于更加容易理解本技术实施例提供的音频信号处理方法,在对信号处理模型的训练过程进行说明之前,首先对信号处理模型的结构进行介绍。
117.示例的,参见图6,图6是本技术实施例提供的信号处理模型的结构示意图,如图6所示,信号处理模型包括编码层、分类层、分离层和求和模块,其中,编码层(例如lstm)用于
对输入的组合音频信号进行编码处理,得到对应的编码结果,分类层(例如softmax分类器)用于对编码结果进行分类处理,得到对应的权重值,分离(split)层用于将得到的权重值划分成与单通道音频信号的维度对应的第一部分、以及与至少一个通道的原始音频信号对应的至少一个第二部分,并将第一分部作为单通道音频信号对应的第一权重值(例如图6中示出的权重值1)、以及将至少一个第二部分作为至少一个通道的原始音频信号对应的至少一个第二权重值(例如图6中示出的权重值2至权重值n),随后,基于各自对应的权重值分别对单通道音频信号对应的特征向量以及至少一个通道的原始音频信号对应的特征向量进行加权处理,并将经过加权处理后的特征向量送入求和模块中,以进行求和处理,得到最终用于进行语音识别的组合音频信号。
118.下面对信号处理模型的训练过程进行说明。
119.在一些实施例中,可以通过以下方式单独训练信号处理模型:获取单通道音频信号样本;对单通道音频信号样本进行多通道模拟处理,得到多通道音频信号样本;基于单通道音频信号样本和多通道音频信号样本训练信号处理模型,其中,基于单通道音频信号样本和多通道音频信号样本训练信号处理模型的具体过程可以是:首先对单通道音频信号样本和多通道音频信号样本中的至少一个通道的原始音频信号样本进行组合处理,得到组合音频信号样本;接着,通过信号处理模型对组合音频信号样本进行编码处理,并对编码结果进行分离处理,得到单通道音频信号样本对应的第三权重值、以及至少一个通道的原始音频信号样本对应的至少一个第四权重值;随后,基于第三权重值以及至少一个第四权重值,对单通道音频信号样本以及至少一个通道的原始音频信号样本进行融合处理,得到用于进行语音识别的组合音频信号样本;最后,对用于进行语音识别的组合音频信号样本进行回归处理(例如进行线性(linear)回归处理),并将回归结果和单通道音频信号样本代入第一损失函数(第一损失函数可以是各种类型的损失函数,例如均方误差损失函数(mse,mean squared error)、合页损失函数(hlf,hinge loss function)和交叉熵损失函数(cross entropy)等),确定第一损失函数取得最小值时信号处理模型的参数,并基于所确定出的参数更新信号处理模型。
120.需要说明的是,在语音识别系统上线的初期往往很难获得大量的多通道音频信号样本,因此可以通过对单通道音频信号样本进行多通道模拟的方式来获取多通道音频信号样本,例如首先获取单通道噪声信号,并根据预设的信噪比,调整单通道音频信号样本的能量和单通道噪声信号的能量,并对调整后的单通道音频信号样本与单通道噪声信号进行叠加处理,得到多通道音频信号样本。
121.示例的,以会议场景为例,首先选择一个房间类型中的多通道冲激响应载入单通道音频信号样本进行卷积,从而获得计算卷积后的音频信号的能量,接着,根据预设的多通道音频信号样本的信噪比,可以在一定范围(例如50%
‑
60%)随机调整单通道噪声信号的能量,并与上述卷积后的单通道音频信号样本的能量进行叠加处理,得到会议场景下的多通道音频信号样本。
122.类似的,在对语音识别模型的训练过程进行说明之前,首先对语音识别模型的结构进行介绍。
123.示例的,参见图7,图7是本技术实施例提供的语音识别模型的结构示意图,如图7所示,语音识别模型包括声学处理模块、声学解码模块、词表匹配模块和语言解码模块,其
中,声学处理模块用于对输入语音识别模型的用于进行语音识别的组合音频信号进行特征提取,得到对应的声学特征;声学解码模块用于对提取到的声学特征进行解码处理,得到对应的音节阵列;词表匹配模块用于将解码得到的音节阵列与词表进行匹配,得到对应的词阵列;语音解码模块用于对得到的词阵列进行解码处理,输出最终的语音识别结果(例如与输入的组合音频信号对应的文本)。
124.下面对语音识别模型的训练过程进行说明。
125.在一些实施例中,可以通过以下方式单独训练语音识别模型:首先获取用于进行语音识别的组合音频信号样本;接着,通过语音识别模型对用于进行语音识别的组合音频信号样本进行语音识别处理,得到语音识别结果;随后,将语音识别结果与对应的标签代入第二损失函数,确定第二损失函数取得最小值时语音识别模型的参数,并基于所确定出的参数更新语音识别模型。
126.需要说明的是,第二损失函数也可以是各种类型的损失函数,例如可以是均方误差损失函数(mse,mean squared error)、合页损失函数(hlf,hinge loss function)和交叉熵损失函数(cross entropy)、以及时序分类损失函数(ctc,connectionist temporal classification)等,其中,ctc损失函数是序列标注问题中的一种损失函数,传统序列标注算法需要每一时刻输入与输出符号完全对齐,而ctc扩展了标签集合,添加空元素,在使用扩展标签集合对序列进行标注后,所有可以通过映射函数转换为真实序列的预测序列,都是正确的预测结果,也就是在无需数据对齐处理,即可得到预测序列,其目标函数就是最大化所有正确的预测序列的概率和。与传统的语音识别模型训练相比,采用ctc作为损失函数的语音识别模型训练,是一种完全端到端的语音识别模型训练,不需要预先对数据做对齐处理,只需要一个输入序列和一个输出序列即可进行训练,这样就不需要对数据对齐和一一标注,输入输出之间的对齐不再那么重要,可以加快模型的训练速度。
127.下面对信号处理模型和语音识别模型的联合训练过程进行说明。
128.在一些实施例中,可以通过以下方式实现上述的对经过单独训练的信号处理模型以及语音识别模型进行联合训练:获取语音识别模型更新后的参数,将语音识别模型更新后的参数反馈给信号处理模型,以更新信号处理模型的参数,例如在使用mse损失函数单独训练信号处理模型,并使用ctc损失函数单独训练语音识别模型后,可以将语音识别模型更新后的参数反馈给信号处理模型,以更新信号处理模型的参数,如此,相当于同时使用mse损失函数和ctc损失函数对信号处理模型进行训练,使得训练后的信号处理模型和语音识别模型更加匹配,从而进一步提升语音识别的准确率。
129.本技术实施例提供的音频信号处理方法,通过将转换得到的单通道音频信号和多通道音频信号中的至少一个通道的原始音频信号进行组合处理,并基于权重值将单通道音频信号和至少一个通道的原始音频信号进行融合处理,得到用于语音识别的组合音频信号,如此,既降低了多通道音频信号中的干扰信息,又保留了部分的原始音频信号,因此在后续进行语音识别时,能够提高语音识别的准确率。
130.下面,将说明本技术实施例在一个实际的应用场景中的示例性应用。
131.随着语音识别技术的不断发展,多通道语音识别应用越来越广泛,然而,多通道场景下复杂多变的背景噪声、多人同时说话、喇叭播放对方声音等问题也为语音识别带来了巨大的挑战。
132.针对上述技术问题,相关技术提供的语音识别系统通常采用的方案是将采集到的多通道音频信号首先经过前端处理生成单通道音频信号,然后再对单通道音频信号进行识别处理,并且,此方案为了让人耳有更好的听觉体验,会大幅压低背景噪声、非主人声、喇叭声等,导致主人声也被损伤,进而导致识别性能明显下降。
133.鉴于此,本技术实施例提出将经过前端处理后得到的单通道音频信号和原始麦克风信号(例如针对真实会议场景采集得到的多路麦克风信号中的任意一路或者多路原始麦克风信号)一起送入信号处理模型,在信号处理模型中使用动态权重神经网络将二者结合起来,取二者的优点,互相弥补不足,以显著提升识别性能。本技术实施例提供的方案相较于相关技术提供的方案,cer相对下降51%,可广泛应用于会议、电话、音箱以及车载等多通道场景下的语音识别处理。
134.本技术实施例提供的语音识别系统主要包含两部分:信号处理模型和语音识别模型,下面首先对信号处理模型的训练过程进行说明。
135.示例的,参见图8,图8是本技术实施例提供的信号处理模型的训练流程示意图,如图8所示,在模型的训练阶段,原始信号(即原始单通道音频信号)首先经过模拟器获得多通道音频信号(即图8中示出的mic0、
…
、micn,其中mic0表示麦克风0采集到的音频信号,micn表示麦克风n采集到的音频信号),信号中加入了环境噪声、多个人声、喇叭声等,以模拟多通道场景(例如真实的会议场景),接着,将模拟得到的多路麦克风信号分别送入对应的aec模块,以消除麦克风信号中喇叭播放的声音,然后经过降噪模块,去除噪声,最后将经过去噪处理后的多路麦克风信号送入bf模块获得单通道音频信号。
136.在获得单通道音频信号之后,将获得的单通道音频信号和模拟得到的多路麦克风信号中的任意一路麦克风信号(例如mic0)组合(concat)成一路组合信号,接着,将组合得到的一路信号依次送入长短时记忆网络(lstm,long short
‑
term memory)模块、分类(softmax)层和分离(split)层,以得到两个权重值,例如假设经过bf模块得到的单通道音频信号的维度为256维,且从多路麦克风信号中选取的一路麦克风信号(例如mic0)的维度也是256维,则两路信号concat在一起后得到的一路组合信号的维度为512维,在经过lstm模块和softmax层处理后可以得到一个512维的权重值,然后将这个权重值平均分成每个维度都是256维的两部分,以分别作为一路麦克风信号对应的权重值λ1、以及单通道音频信号对应的权重值λ2。同时,将所选取的一路麦克风信号(例如mic0)送入lstm0、以及将获得的单通道音频信号送入lstm1,以得到mic0对应的特征向量vector1以及单通道音频信号对应的特征向量vector2,接着,通过乘法(mul,multiply)模块将此处得到特征向量和前面得到的权重值进行相乘(例如将mic0对应的特征向量vector1与权重值λ1进行相乘、以及将单通道音频信号对应的特征向量vector2与权重值λ2进行相乘),得到两路经过加权处理后的vector,随后,将两路经过加权处理后的vector送入求和(add)模块,以将这两路经过加权处理后得到的vector加在一起得到一路信号,最后,将相加得到的一路信号依次送入线性回归(linear)层和均方误差(mse,mean square error)模块,以使用mse损失函数训练信号处理模型。
137.至此,信号处理模型训练完毕,得到的两路权重(即一路麦克风信号对应的权重以及单通道音频信号对应的权重)的平均值如图9所示,由图9可以看出,随着输入信号的变化,权重值也随之变化,达到了取二者的优点,互相弥补不足的目的。
138.在另一些实施例中,参见图10,图10是本技术实施例提供的信号处理模型和语音识别模型的联合训练流程示意图,如图10所示,为了进一步提升信号处理模型的性能,还可以使用原始单通道音频信号作为监督信号,加入mse损失函数,信号处理模型输出的组合音频信号经过linear层后,计算和原始单通道音频信号之间的损失,然后根据计算得到的损失对信号处理模型进行更新。同时,本技术实施例提出联合训练的策略,即首先单独训练信号处理模型和语音识别模型,例如使用mse损失函数单独训练信号处理模型,使用ctc损失函数单独训练语音识别模型,然后进行联合训练,例如使用mse损失函数和ctc损失函数对经过单独训练的信号处理模型进行联合训练,如此,可以使信号处理模型和语音识别模型更加匹配,以进一步提升识别性能。
139.下面对语音识别系统的上线阶段进行说明。
140.示例的,参见图11,图11是本技术实施例提供的信号处理模型和语音识别模型上线流程示意图,如图11所示,上线时将针对真实会议场景采集得到的多路原始麦克风信号(例如图11示出的mic0、
…
、micn)分别送入aec模块,以消除喇叭播放的声音,然后经过降噪模块,以去除噪声,最后将经过降噪处理后的多路麦克风信号送入bf模块,以获得单通道音频信号。在得到单通道音频信号之后,将获得的单通道音频信号和多路原始麦克风信号中的任意一路麦克风信号(例如mic0)送入信号处理模型,随后,将信号处理模型输出的一路信号送入语音识别模型进行识别,获得最终的识别结果。
141.本技术实施例提出将经过前端处理后得到的单通道音频信号和原始麦克风信号一起送入信号处理模型,在信号处理模型中使用动态权重神经网络将二者结合起来,取二者的优点,互相弥补不足。
142.下面结合实验数据对本技术实施例提供的方案的有益效果进行进一步的说明。示例的,参见表1,表1是本技术实施例提供的方案与相关技术提供的方案的cer对比表,由表1可以看出,本技术实施例提供的方案相较于相关技术提供的方案,cer相对下降51%,可广泛应用于会议、电话、音箱以及车载等多通道场景下的语音识别。
143.表1cer对比表
[0144][0145]
下面继续说明本技术实施例提供的音频信号处理装置243实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器240的音频信号处理装置243中的软件模块可以包括:获取模块2431、转换模块2432、组合模块2433、编码模块2434、分离模块2435和融合模块2436。
[0146]
获取模块2431,用于获取多通道音频信号;转换模块2432,用于将多通道音频信号转换为单通道音频信号;组合模块2433,用于对单通道音频信号和多通道音频信号中的至少一个通道的原始音频信号进行组合处理,得到组合音频信号;编码模块2434,用于对组合音频信号进行编码处理;分离模块2435,用于对编码结果进行分离处理,得到单通道音频信号对应的第一权重值、以及至少一个通道的原始音频信号对应的至少一个第二权重值;融合模块2436,用于基于第一权重值以及至少一个第二权重值,对单通道音频信号以及至少
一个通道的原始音频信号进行融合处理,得到用于进行语音识别的组合音频信号。
[0147]
在一些实施例中,转换模块2432,还用于对多通道音频信号中的每一个通道的原始音频信号进行回音消除处理;对经过回音消除处理后的每一个通道的原始音频信号进行去噪处理;对经过去噪处理后的多个通道的原始音频信号进行波束形成处理,得到单通道音频信号。
[0148]
在一些实施例中,获取模块2431,还用于通过以下方式从多通道音频信号中获取用于进行组合处理的至少一个通道的原始音频信号:根据多通道音频信号确定发声对象的位置;对多个麦克风的位置与发声对象的位置之间的距离进行降序排序,并将排序在前的至少一个麦克风采集到的音频信号确定为用于进行组合处理的至少一个通道的原始音频信号。
[0149]
在一些实施例中,获取模块2431,还用于通过以下方式从多通道音频信号中获取用于进行组合处理的至少一个通道的原始音频信号:确定多通道音频信号中的每一个通道的原始音频信号的信噪比;按照信噪比对多个通道的原始音频信号进行降序排序,并将排序在前的至少一个通道的原始音频信号确定为用于进行组合处理的至少一个通道的原始音频信号。
[0150]
在一些实施例中,编码模块2434,还用于对组合音频信号进行编码处理,得到对应的权重值;分离模块2435,还用于将权重值划分为与单通道音频信号的维度对应的第一部分、以及与至少一个通道的原始音频信号的维度对应的至少一个第二部分;将第一部分确定为单通道音频信号对应的第一权重值、以及将至少一个第二部分确定为至少一个通道的原始音频信号对应的至少一个第二权重值。
[0151]
在一些实施例中,融合模块2436,还用于对单通道音频信号进行特征提取,得到对应的第一特征向量;对至少一个通道的原始音频信号进行特征提取,得到对应的至少一个第二特征向量;基于第一权重值以及至少一个第二权重值,对第一特征向量与至少一个第二特征向量进行加权求和处理,得到用于进行语音识别的组合音频信号。
[0152]
在一些实施例中,音频信号处理装置243还包括训练模块2437,用于在第一训练阶段执行以下处理:单独训练信号处理模型,并单独训练语音识别模型;在第一训练阶段之后的第二训练阶段执行以下处理:对经过单独训练的信号处理模型以及语音识别模型进行联合训练。
[0153]
在一些实施例中,获取模块2431,还用于获取单通道音频信号样本;音频信号处理装置243还包括模拟模块2438,用于对单通道音频信号样本进行多通道模拟处理,得到多通道音频信号样本;训练模块2437,还用于基于单通道音频信号样本和多通道音频信号样本训练信号处理模型。
[0154]
在一些实施例中,获取模块2431,还用于获取单通道噪声信号;模拟模块2438,还用于根据预设的信噪比,调整单通道音频信号样本的能量和单通道噪声信号的能量,并对调整后的单通道音频信号样本与单通道噪声信号进行叠加处理,得到多通道音频信号样本。
[0155]
在一些实施例中,组合模块2433,还用于对单通道音频信号样本和多通道音频信号样本中的至少一个通道的原始音频信号样本进行组合处理,得到组合音频信号样本;编码模块2434,还用于通过信号处理模型对组合音频信号样本进行编码处理;分离模块2435,
还用于对编码结果进行分离处理,得到单通道音频信号样本对应的第三权重值、以及至少一个通道的原始音频信号样本对应的至少一个第四权重值;融合模块2436,还用于基于第三权重值以及至少一个第四权重值,对单通道音频信号样本以及至少一个通道的原始音频信号样本进行融合处理,得到用于进行语音识别的组合音频信号样本;训练模块2437,还用于对用于进行语音识别的组合音频信号样本进行回归处理,并将回归结果和单通道音频信号样本代入第一损失函数,确定第一损失函数取得最小值时信号处理模型的参数,基于参数更新信号处理模型。
[0156]
在一些实施例中,获取模块2431,还用于获取用于进行语音识别的组合音频信号样本;训练模块2437,还用于通过语音识别模型对用于进行语音识别的组合音频信号样本进行识别处理,得到识别结果;将识别结果与对应的标签代入第二损失函数,确定第二损失函数取得最小值时语音识别模型的参数,基于参数更新语音识别模型。
[0157]
在一些实施例中,获取模块2431,还用于获取语音识别模型更新后的参数;训练模块2437,还用于将语音识别模型更新后的参数反馈给信号处理模型,以更新信号处理模型的参数。
[0158]
需要说明的是,本技术实施例装置的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本技术实施例提供的音频信号处理装置中未尽的技术细节,可以根据图3
‑
5中的任一附图的说明而理解。
[0159]
本技术实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本技术实施例上述的音频信号处理方法。
[0160]
本技术实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本技术实施例提供的方法,例如,如图3
‑
5任一附图示出的音频信号处理方法。
[0161]
在一些实施例中,计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、闪存、磁表面存储器、光盘、或cd
‑
rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
[0162]
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
[0163]
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hyper text markup language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
[0164]
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
[0165]
综上所述,本技术实施例通过将转换得到的单通道音频信号和多通道音频信号中
的至少一个通道的原始音频信号进行组合处理,并基于权重值将单通道音频信号和至少一个通道的原始音频信号进行融合处理,得到用于语音识别的组合音频信号,如此,既降低了多通道音频信号中的干扰信息,又保留了部分的原始音频信号,因此在后续进行语音识别时,能够提高语音识别的准确率。
[0166]
以上所述,仅为本技术的实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本技术的保护范围之内。