CN114005458A - 基于流水线架构的语音降噪方法、系统及存储介质 - Google Patents
基于流水线架构的语音降噪方法、系统及存储介质 Download PDFInfo
- Publication number
- CN114005458A CN114005458A CN202111386356.XA CN202111386356A CN114005458A CN 114005458 A CN114005458 A CN 114005458A CN 202111386356 A CN202111386356 A CN 202111386356A CN 114005458 A CN114005458 A CN 114005458A
- Authority
- CN
- China
- Prior art keywords
- layer
- data
- calculation
- voice data
- noise reduction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000009467 reduction Effects 0.000 title claims abstract description 61
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000004364 calculation method Methods 0.000 claims abstract description 77
- 238000012545 processing Methods 0.000 claims abstract description 64
- 238000003062 neural network model Methods 0.000 claims abstract description 27
- 238000013528 artificial neural network Methods 0.000 claims abstract description 22
- 230000000694 effects Effects 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 7
- 230000003595 spectral effect Effects 0.000 claims description 5
- 238000001228 spectrum Methods 0.000 claims description 5
- 238000013461 design Methods 0.000 abstract description 9
- 230000010365 information processing Effects 0.000 abstract 1
- 239000011159 matrix material Substances 0.000 description 53
- 238000007792 addition Methods 0.000 description 13
- 238000004422 calculation algorithm Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 230000000306 recurrent effect Effects 0.000 description 4
- 230000004913 activation Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012821 model calculation Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0264—Noise filtering characterised by the type of parameter measurement, e.g. correlation techniques, zero crossing techniques or predictive techniques
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/27—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
- G10L25/30—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Soundproofing, Sound Blocking, And Sound Damping (AREA)
Abstract
本申请公开了一种基于流水线架构的语音降噪方法、系统及存储介质,方法包括:上位机将待处理的语音数据发送给下位机,下位机接收上位机发送过来的待处理的语音数据,根据预设的数据处理加速器对待处理的语音数据进行降噪处理,得到降噪后的语音数据。数据处理加速器将待处理的语音数据输入预设的神经网络模型;根据神经网络模型每层的特点,动态分配每层计算单元的个数和计算任务;控制各个计算单元对每层的数据进行并行计算;若当前层的数据计算完成,控制进行下一个神经网络层的计算,得到降噪后的语音数据。该方法在下位机上以流水线架构的方式进行神经网络的计算,简化了设计复杂度,降低资源占用率,减小功耗,缩短信息处理的总耗时。
Description
技术领域
本发明涉及语音数据处理技术领域,特别涉及一种基于流水线架构的语音降噪方法、系统及存储介质。
背景技术
随着军队现代化建设水平的不断提升,对武器装备的智能化操控需求越来越高,其中语音操控技术可以有效提升武器装备的操控效率。战场环境极为复杂,高噪声恶劣环境下的噪音干扰会严重影响语音识别准确率,给语音操控带来挑战。
而且,语音降噪实现过程对保真性、实时性、连续性要求较高,目前单凭CPU无法满足上述要求,但是现有技术中的语音降噪循环神经网络算法于FPGA(Field-ProgrammableGate Array,现场可编程门阵列,)上实现时的设计复杂、资源占用过多、功耗大、耗时长。给语音识别效率带来严重影响。
发明内容
本公开实施例提供了一种基于流水线架构的语音降噪方法、系统及存储介质。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。
第一方面,本申请实施例提供了一种基于流水线架构的语音降噪系统,包括:
上位机,用于将待处理的语音数据发送给下位机;
下位机,用于接收上位机发送过来的待处理的语音数据,根据预设的数据处理加速器对待处理的语音数据进行降噪处理,得到降噪后的语音数据,其中,数据处理加速器采用流水线架构的方式进行计算。
在一个可选地实施例中,下位机,包括:
PCIE接口、AXI总线、AXI LITE总线、片上存储器、片上缓存器、数据处理加速器;
其中,上位机通过PCIE接口与下位机相连,PCIE接口与第一AXI总线相连,第一AXI总线与片上存储器相连,片上存储器通过第二AXI总线与片上缓存器相连,片上缓存器与数据处理加速器相连,数据处理加速器与AXI LITE总线相连,AXI LITE总线与PCIE接口相连;
上位机通过PCIE接口、第一AXI总线、片上存储器、第二AXI总线、片上缓存器将待处理的语音数据和参数数据发送到数据处理加速器;
上位机通过PCIE接口、AXI LITE总线将指令数据发送到数据处理加速器。
在一个可选地实施例中,数据处理加速器包括:
控制单元,用于控制计算单元采用流水线架构的方式进行计算;
计算单元,用于根据待处理的语音数据、参数数据以及预设的神经网络模型进行计算,得到降噪后的语音数据;
输出单元,用于输出降噪后的语音数据。
在一个可选地实施例中,控制单元用于控制计算单元采用流水线架构的方式进行计算,包括:
控制单元具体用于根据神经网络模型每层的特点,动态分配每层计算单元的个数和计算任务,并根据指令数据控制各个计算单元对每层的数据进行并行计算;
控制单元还用于检测当前层的数据是否计算完成,若当前层的数据计算完成,控制进行下一个神经网络层的计算。
在一个可选地实施例中,还包括:
下位机将降噪后的语音数据通过PCIE接口发送给上位机。
在一个可选地实施例中,下位机为现场可编程门阵列。
第二方面,本申请实施例提供了一种基于流水线架构的语音降噪方法,包括:
上位机将待处理的语音数据发送给下位机;
下位机接收上位机发送过来的待处理的语音数据,根据预设的数据处理加速器对待处理的语音数据进行降噪处理,得到降噪后的语音数据,其中,数据处理加速器采用流水线架构的方式进行计算。
在一个可选地实施例中,根据预设的数据处理加速器对待处理的语音数据进行降噪处理,包括:
数据处理加速器将待处理的语音数据输入预设的神经网络模型;
根据神经网络模型每层的特点,动态分配每层计算单元的个数和计算任务;
控制各个计算单元对每层的数据进行并行计算;
检测当前层的数据是否计算完成,若当前层的数据计算完成,控制进行下一个神经网络层的计算;
得到降噪后的语音数据。
在一个可选地实施例中,预设的神经网络模型包括语音活性检测模块,由依次连接第一Dense层、第一GRU层以及第二Dense层组成,包括噪声谱估计模块,由第二GRU层组成,包括谱减法模块,由第三GRU层以及第三Dense层组成。
第三方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机可读指令,计算机可读指令可被处理器执行以实现上述实施例提供的一种基于流水线架构的语音降噪方法。
本申请实施例提供的技术方案可以包括以下有益效果:
本申请实施例提供的基于流水线架构的语音降噪方法,在下位机上以流水线架构的方式进行语音降噪神经网络算法的计算,包括根据神经网络模型每层的特点,动态分配每层计算单元的个数和计算任务;控制各个计算单元对每层的数据进行并行计算,若当前层的数据计算完成,控制进行下一个神经网络层的计算,得到降噪后的语音数据。该方法简化了设计复杂度,降低了资源占用率,减小了设备功耗,而且大大缩短了语音数据处理的总耗时,满足语音数据处理的实时性要求。该设计能够应用在任何以循环神经网络为基础的算法架构之中。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的一种基于流水线架构的语音降噪系统的结构示意图;
图2是根据一示例性实施例示出的一种流水线架构的示意图;
图3是根据一示例性实施例示出的一种基于流水线架构的语音降噪方法的流程示意图;
图4是根据一示例性实施例示出的语音降噪神经网络模型的示意图;
图5是根据一示例性实施例示出的一种GRU网络结构示意图;
图6是根据一示例性实施例示出的一种计算机存储介质的示意图。
具体实施方式
以下描述和附图充分地示出本发明的具体实施方案,以使本领域的技术人员能够实践它们。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本发明的一些方面相一致的系统和方法的例子。
目前,语音降噪实现过程对保真性、实时性、连续性要求较高,单凭CPU无法满足上述要求,但是现有技术中的语音降噪循环神经网络算法于FPGA上实现时的设计复杂、资源占用过多、功耗大、耗时长,给语音识别效率带来严重影响。针对现有技术中存在的问题,本申请实施例提供了一种基于流水线架构的语音降噪系统,该系统简化了设计复杂度,降低了资源占用率,减小了设备功耗,而且大大缩短了语音数据处理的总耗时,满足语音数据处理的实时性要求。
下面结合附图对本申请实施例提供的基于流水线架构的语音降噪系统进行详细介绍。
参见图1,基于流水线架构的语音降噪系统具体包括以下结构。
上位机,用于将待处理的语音数据发送给下位机。
在本申请的一些实施例中,基于流水线架构的语音降噪系统包括上位机,其中,上位机可以为平板电脑、笔记本电脑、台式计算机、PC主机等,但并不局限于此。在上位机上运行驱动和控制程序,上位机将控制命令、待处理的语音数据以及模型计算所需的参数数据发送到下位机。
下位机,用于接收上位机发送过来的待处理的语音数据,根据预设的数据处理加速器对待处理的语音数据进行降噪处理,得到降噪后的语音数据,其中,数据处理加速器采用流水线架构的方式进行计算。
在本申请的一些实施例中,下位机可以为现场可编程门阵列。如图1所示,下位机包括:PCIE接口、AXI总线、AXI LITE总线、片上DDR(片上存储器)、片上缓存器、数据处理加速器。
其中,上位机通过PCIE接口与下位机相连,PCIE接口与第一AXI总线相连,第一AXI总线与片上存储器相连,片上存储器通过第二AXI总线与片上缓存器相连,片上缓存器与数据处理加速器相连,数据处理加速器与AXI LITE总线相连,AXI LITE总线与PCIE接口相连。
具体地,在上位机上运行驱动和控制程序,上位机通过PCIE接口、第一AXI总线、片上存储器、第二AXI总线、片上缓存器将待处理的语音数据和模型计算所需的参数数据发送到数据处理加速器。上位机通过PCIE接口、AXI LITE总线将指令数据发送到数据处理加速器。上位机控制命令主要包括:系统复位命令、音频条复位命令和计算模块启动命令等。待处理的语音数据由上位机进入FPGA中的数据处理加速器处理,处理后的降噪语音数据经PCIE接口传回上位机。从软硬件任务划分的角度看,上位机程序主要负责任务的调用和控制,而FPGA主要负责大数据量的计算。
在一种可能的实现方式中,通过数据处理加速器对待处理的语音数据进行降噪处理。在计算任务的粒度上,采用粗粒度的划分,也就是将一层神经网络的计算看成一个计算任务。上位机依次调度和控制FPGA完成计算。虽然,粗粒度的任务划分在灵活性上要差一点,但是计算性能更高。
具体地,数据处理加速器采用流水线架构的方式进行计算,图2是根据一示例性实施例示出的一种流水线架构的示意图,如图2所示,数据处理加速器包括控制单元,用于控制计算单元采用流水线架构的方式进行计算。包括多个计算单元,用于根据待处理的语音数据、参数数据以及预设的神经网络模型进行计算,得到降噪后的语音数据。包括输出单元,用于输出降噪后的语音数据。
其中,控制单元具体用于根据神经网络模型每层的特点,动态分配每层计算单元的个数和计算任务,并根据指令数据控制各个计算单元对每层的数据进行并行计算。
具体地,控制单元可以获取计算所需的神经网络模型,结合不同神经网络的网络结构共同点,将相似的神经网络子单元进行模块化设计,以复用的形式进行分层顺序执行。如图2所示,被复用的模块为计算单元1、计算单元2、计算单元3,这些模块可分别被循环神经网络中的记忆门模块、遗忘门模块、更新门模块等替代,也可分别被卷积神经网络中的卷积模块、激活模块、池化模块等替换。
在一个示例性场景中,神经网络模型包括卷积层,在计算该层数据时,控制单元划分了3个计算单元,根据计算单元1进行卷积计算,根据计算单元2进行激活函数计算,根据计算单元3进行池化计算。并且控制这三个计算单元并行计算。大大提高了数据处理的效率。
进一步地,控制单元还用于检测当前层的数据是否计算完成,若当前层的数据计算完成,控制进行下一个神经网络层的计算。
具体地,控制单元检测最后一步的计算单元是否计算完成,若计算完成,控制下发下一网络层的计算数据,并根据下一网络层的特点,动态调整计算单元的个数和计算任务。
在本申请实施例中,控制单元可以采用流水线架构的方式进行计算,在计算每层数据时,通过划分多个计算单元并行计算,在当前层数据计算完成后,控制进行下一网络层的计算,直到数据处理完成。该方式大大提高了数据处理的效率,缩短了语音降噪系统的耗时。
可选地,本申请实施例提供的基于流水线架构的FPGA系统,能够应用在任何以循环神经网络为基础的算法架构之中。提高神经网络模型在FPGA上的运行效率。
在本申请实施例中,多个计算单元将待处理的语音数据、参数数据输入预设的神经网络模型进行计算,得到降噪后的语音数据。其中,图4是根据一示例性实施例示出的预设的神经网络模型的示意图。如图4所示,将音频42维特征数据输入预设的神经网络模型进行计算。
具体地,模型左半部分包括语音活性检测模块,语音活性检测模块包括依次连接的第一Dense层、第一GRU层以及第二Dense层,用于实现VAD的一维输出。右半部分包括噪声谱估计模块,由第二GRU层组成,包括谱减法模块,由第三GRU层以及第三Dense层组成,右半部分用于实现22维的增益数据输出。如图4所示,第一Dense层为Dense tanh(24)层,第一GRU层为GRU ReLU(24)层,第二Dense层为Dense sig(1)层,第二GRU层为GRU ReLU(48)层,第三GRU层为GRU ReLU(96)层,第三Dense层为Dense sig(22)层。
其中,左半部分为网络的VAD功能输出模块,其输入为一个42维的特征向量,输出为一个1维向量vad。VAD功能部分的计算过程通过第一Dense层、第一GRU层以及第二Dense层级联实现。
在第一Dense层计算模块中,输入参数包括第一Dense层权重参数,维度为24*42,第一Dense层输入特征向量维度为42*1,两矩阵乘加运算,第一Dense层输出特征向量的维度为24*1。
第一GRU层:在第一GRU层,GRU模块计算分为四步,第一步:输入参数包括第一Dense层输出特征向量维度为24*1、第一中间状态向量state维度为24*1和第一GRU层权重参数W1,维度为24*24,W2维度为24*24,第一GRU层权重参数W1与第一Dense层输出特征向量进行矩阵乘加运算,得到维度为24*1的向量。第一GRU层权重参数W2与第一中间状态向量state进行矩阵乘加运算,得到维度为24*1的向量。两矩阵再相加得到第一GRU层重置门控向量r维度为24*1。
第二步:输入参数包括第一Dense层输出特征向量24*1、第一中间状态向量state,维度24*1和第一GRU层权重参数W3维度为24*24,W4维度为24*24,第一GRU层权重参数W3与第一Dense层输出特征向量进行矩阵乘法运算,得到维度为24*1的向量;第一GRU层权重参数W4与第一中间状态向量state进行矩阵乘法运算,得到维度为24*1的向量;两矩阵再相加得到第一GRU层更新门控矩阵Z维度为24*1。
第三步:输入参数包括第一Dense层输出特征向量24*1、第一中间状态向量state24*1和第一GRU层权重参数W5维度为24*24,W6维度为24*24,第一GRU层权重参数W5与第一Dense层输出特征向量进行矩阵乘法运算,得到维度为24*1的向量;第一GRU层权重参数W6维度为24*24、第一中间状态向量state维度为24*1和第一GRU层重置门控矩阵r维度为24*1三个矩阵进行矩阵乘法运算,得到维度为24*1的向量;两矩阵再相加得到第一GRU层结果状态变量h1维度为24*1。
第四步:输入参数包括第一GRU层更新门控矩阵Z维度为24*1、第一中间状态向量state维度为24*24和第一GRU层结果状态变量h1维度为24*1,第一GRU层更新门控矩阵Z与第一中间状态向量state进行矩阵乘法运算,得到维度为24*1的向量;第一GRU层更新门控矩阵Z和第一GRU层结果状态变量矩阵h1进行矩阵乘法运算,得到维度为24*1的向量;两矩阵再相加得到第一GRU层结果状态矩阵h维度为24*1。矩阵相乘过程中维度不足的,计算时自动补1。
第二Dense层:在第二Dense层计算模块中,输入参数包括第一GRU层结果状态矩阵h维度为24*1及第二Dense层权重参数维度为24*1,两矩阵乘加运算,第二Dense层输出特征向量的维度为1*1。
右半边网络:右半边为网络的22维频带增益输出模块,其输入为一个90维的特征向量,输出为一个22维频带增益输出。频带增益输出模块的计算过程通过第二GRU层、第三GRU层以及第三Dense层三个模块级联实现。
第二GRU层:在第二GRU层中,GRU模块计算分为四步,第一步:输入参数包括第二GRU层输入特征向量维度为90*1(由第一Dense层输入特征向量维度为42*1,第一Dense层输出特征向量的维度为24*1,第一GRU层结果状态矩阵h维度为24*1拼接而成)、第二中间状态向量state维度为48*1和第二GRU层权重参数W1维度为48*90,W2维度为48*90,第二GRU层权重参数W1与第二GRU层输入特征向量进行矩阵乘加运算,得到维度为48*1的向量;第二GRU层权重参数W2与第二中间状态向量state进行矩阵乘加运算,得到维度为48*1的向量;两矩阵再相加得到第二GRU层重置门控向量r维度为48*1。
第二步:输入参数包括第二GRU层输入特征向量维度为90*1、第二中间状态向量state维度为48*1和第二GRU层权重参数W3维度为48*90,W4维度为48*90,第二GRU层权重参数W3与第二GRU层输入特征向量进行矩阵乘加运算,得到维度为48*1的向量;第二GRU层权重参数W4与第二中间状态向量state进行矩阵乘加运算,得到维度为48*1的向量;两矩阵再相加得到第二GRU层更新门控矩阵Z维度为48*1。
第三步:输入参数包括第二GRU层输入特征向量维度为90*1、第二中间状态向量state维度为48*1和第二GRU层权重参数W5维度为48*90,W6维度为48*90,第二GRU层权重参数W5与第二GRU层输入特征向量进行矩阵乘法运算,得到维度为48*1的向量;第二GRU层权重参数W6、第二中间状态向量state维度为48*1和第二GRU层重置门控矩阵r,三个矩阵进行矩阵乘法运算,得到维度为48*1的向量;两矩阵再相加得到第二GRU层结果状态变量h1维度为48*1。
第四步:输入参数包括第二GRU层更新门控矩阵Z维度为48*1、第二中间状态向量state维度为48*48和第二GRU层结果状态变量h1维度为48*1,第二GRU层更新门控矩阵Z与第二中间状态向量state进行矩阵乘法运算,得到维度为48*1的向量;第二GRU层更新门控矩阵Z和第二GRU层结果状态变量矩阵h1进行矩阵乘法运算,得到维度为48*1的向量;两矩阵再相加得到第二GRU层结果状态矩阵h维度为48*1。
第三GRU层:在第三GRU层中,Gru模块计算分为四步,第一步:输入参数包括第三GRU层输入特征向量维度为114*1(由第一Dense层输入特征向量维度为42*1,第一GRU层结果状态矩阵h维度为24*1,第二GRU层结果状态矩阵h维度为48*1拼接而成)、第三中间状态向量state维度为96*1和第三GRU层权重参数W1维度为96*114,W2维度为96*114,第三GRU层权重参数W1与第三GRU层输入特征向量进行矩阵乘加运算,得到维度为96*1的向量;第三GRU层权重参数W2与第二中间状态向量state进行矩阵乘加运算,得到维度为96*1的向量;两矩阵再相加得到第三GRU层重置门控向量r维度为96*1。
第二步:输入参数包括第三GRU层输入特征向量维度为114*1、第三中间状态向量state维度为96*1和第三GRU层权重参数W3维度为96*114,W4维度为96*114,第二GRU层权重参数W3与第三GRU层输入特征向量进行矩阵乘加运算,得到维度为96*1的向量;第二GRU层权重参数W4与第三中间状态向量state进行矩阵乘加运算,得到维度为96*1的向量;两矩阵再相加得到第三GRU层更新门控矩阵Z维度为96*1。
第三步:输入参数包括第三GRU层输入特征向量维度为114*1、第三中间状态向量state维度为96*1和GRU ReLU(96)权重参数W5维度为96*114,W6维度为96*114,第三GRU层权重参数W5与第三GRU层输入特征向量进行矩阵乘法运算,得到维度为96*1的向量;第三GRU层权重参数W6、第三中间状态向量state和第三GRU层重置门控矩阵r,三个矩阵进行矩阵乘法运算,得到维度为96*1的向量;两矩阵再相加得到第三GRU层结果状态变量h1维度为96*1。
第四步:输入参数包括第三GRU层更新门控矩阵Z维度为96*1、第三中间状态向量state维度为96*96和第三GRU层结果状态变量h1维度为96*1,第三GRU层更新门控矩阵Z与第三中间状态向量state进行矩阵乘法运算,得到维度为96*1的向量;第三GRU层更新门控矩阵Z和第三GRU层结果状态变量矩阵h1进行矩阵乘法运算,得到维度为96*1的向量;两矩阵再相加得到第三GRU层结果状态矩阵h维度为96*1。
第三Dense层:在第三Dense层计算模块中,输入参数包括第三Dense层权重参数维度为22*96及第三GRU层结果状态矩阵h维度为96*1,两矩阵乘加运算,第三Dense层输出特征向量的维度为22*1。
计算单元通过将待处理的语音数据、参数数据输入预设的神经网络模型进行计算,得到降噪后的语音数据。本申请实施例中的预设的神经网络模型,主要包括GRU网络,相比一般的序列信号处理算法,如LSTM算法,使用GRU算法能够达到相当好的效果,并且相比之下更容易进行训练,能够很大程度上提高训练效率,因此本申请实施例拟采用GRU网络在原理上实现语音降噪。
图5是根据一示例性实施例示出的一种GRU网络结构示意图。如图5所示,xt表示当前的输入,ht-1表示上一个节点传递下来的隐状态,结合xt和ht-1,GRU会得到当前隐藏节点的输出yt和传递给下一个节点的隐状态ht。r表示控制重置的门控,z表示控制更新的门控,⊙表示矩阵中对应的元素相乘,因此要求两个相乘矩阵是同型的。表示两个矩阵相加。
本申请实施例提供的基于流水线架构的语音降噪系统,采用DSP复用技术,也就是一个DSP做两次乘法计算,当前芯片内集成的DSP为DSP48_E2,对与这种DSP来说,最高支持的乘法位宽A口为26位,B口为18位。可以使用这种乘法器在一个周期内做两次乘法运算,这样能够起到节约FPGA内部资源,减少FPGA内部资源利用率,进而减少设备功耗。
采用流式数据传输技术,多模块FPGA内部IP同时协作,增加FPGA工作效率,避免频繁的对数据进行读写。内部数据的流式传输结构有效的增加了数据的可复用性。减低了资源使用量,增加了运行速度。
采用层次化结构,层次化结构的优点就是可以通过上层配置定义内部所用寄存器与分布式存储器大小,对于不同的神经网络结构或者相同的神经网络结构不同的输入尺寸来说,模型的参数量和中间结果大小都不相同。通过层次化结构与可缩放设计可以根据任务需求对处理器内部处理能力进行配置,为了节省资源消耗,就需要对网络结构中参数大小进行详细计算,以此为依据,分配资源量,用刚好足够的空间去存储、暂存数据,保证神经网络处理器能够正常运行的同时尽可能的节约资源量以减低功耗,间接减少了资源使用量。
该系统在下位机上以流水线架构的方式进行语音降噪神经网络算法的计算,得到降噪后的语音数据。简化了设计复杂度,降低了资源占用率,减小了设备功耗,而且大大缩短了语音数据处理的总耗时,满足语音数据处理的实时性要求。
本公开实施例还提供一种基于流水线架构的语音降噪方法,如图3所示,该方法包括:
S301上位机将待处理的语音数据发送给下位机。
S302下位机接收上位机发送过来的待处理的语音数据,根据预设的数据处理加速器对待处理的语音数据进行降噪处理,得到降噪后的语音数据,其中,数据处理加速器采用流水线架构的方式进行计算。
在一个可选地实施例中,根据预设的数据处理加速器对待处理的语音数据进行降噪处理,包括:数据处理加速器将待处理的语音数据输入预设的神经网络模型;根据神经网络模型每层的特点,动态分配每层计算单元的个数和计算任务;控制各个计算单元对每层的数据进行并行计算;检测当前层的数据是否计算完成,若当前层的数据计算完成,控制进行下一个神经网络层的计算;得到降噪后的语音数据。
在一个可选地实施例中,预设的神经网络模型左半部分包括语音活性检测模块,语音活性检测模块包括依次连接的第一Dense层、第一GRU层以及第二Dense层,用于实现VAD的一维输出。右半部分包括噪声谱估计模块,由第二GRU层组成,包括谱减法模块,由第三GRU层以及第三Dense层组成,右半部分用于实现22维的增益数据输出。
需要说明的是,上述实施例提供的基于流水线架构的语音降噪系统在执行基于流水线架构的语音降噪方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的基于流水线架构的语音降噪方法与基于流水线架构的语音降噪系统实施例属于同一构思,其体现实现过程详见系统实施例,这里不再赘述。
本申请实施例还提供一种与前述实施例所提供的基于流水线架构的语音降噪方法对应的计算机可读存储介质,请参考图6,其示出的计算机可读存储介质为光盘600,其上存储有计算机程序(即程序产品),计算机程序在被处理器运行时,会执行前述任意实施例所提供的基于流水线架构的语音降噪方法。
需要说明的是,计算机可读存储介质的例子还可以包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
本申请的上述实施例提供的计算机可读存储介质与本申请实施例提供的基于流水线架构的语音降噪方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于流水线架构的语音降噪系统,其特征在于,包括:
上位机,用于将待处理的语音数据发送给下位机;
下位机,用于接收上位机发送过来的待处理的语音数据,根据预设的数据处理加速器对待处理的语音数据进行降噪处理,得到降噪后的语音数据,其中,所述数据处理加速器采用流水线架构的方式进行计算。
2.根据权利要求1所述的系统,其特征在于,所述下位机,包括:
PCIE接口、AXI总线、AXI LITE总线、片上存储器、片上缓存器、数据处理加速器;
其中,上位机通过PCIE接口与下位机相连,PCIE接口与第一AXI总线相连,第一AXI总线与片上存储器相连,片上存储器通过第二AXI总线与片上缓存器相连,片上缓存器与数据处理加速器相连,数据处理加速器与AXI LITE总线相连,AXI LITE总线与PCIE接口相连;
上位机通过所述PCIE接口、第一AXI总线、片上存储器、第二AXI总线、片上缓存器将待处理的语音数据和参数数据发送到数据处理加速器;
上位机通过所述PCIE接口、AXI LITE总线将指令数据发送到数据处理加速器。
3.根据权利要求2所述的系统,其特征在于,所述数据处理加速器包括:
控制单元,用于控制计算单元采用流水线架构的方式进行计算;
计算单元,用于根据待处理的语音数据、参数数据以及预设的神经网络模型进行计算,得到降噪后的语音数据;
输出单元,用于输出所述降噪后的语音数据。
4.根据权利要求3所述的系统,其特征在于,所述控制单元用于控制计算单元采用流水线架构的方式进行计算,包括:
所述控制单元具体用于根据所述神经网络模型每层的特点,动态分配每层计算单元的个数和计算任务,并根据指令数据控制各个计算单元对每层的数据进行并行计算;
所述控制单元还用于检测当前层的数据是否计算完成,若当前层的数据计算完成,控制进行下一个神经网络层的计算。
5.根据权利要求1所述的系统,其特征在于,还包括:
下位机将降噪后的语音数据通过PCIE接口发送给上位机。
6.根据权利要求1-5任一项所述的系统,其特征在于,所述下位机为现场可编程门阵列。
7.一种基于流水线架构的语音降噪方法,其特征在于,包括:
上位机将待处理的语音数据发送给下位机;
下位机接收上位机发送过来的待处理的语音数据,根据预设的数据处理加速器对待处理的语音数据进行降噪处理,得到降噪后的语音数据,其中,所述数据处理加速器采用流水线架构的方式进行计算。
8.根据权利要求7所述的方法,其特征在于,根据预设的数据处理加速器对待处理的语音数据进行降噪处理,包括:
所述数据处理加速器将待处理的语音数据输入预设的神经网络模型;
根据所述神经网络模型每层的特点,动态分配每层计算单元的个数和计算任务;
控制各个计算单元对每层的数据进行并行计算;
检测当前层的数据是否计算完成,若当前层的数据计算完成,控制进行下一个神经网络层的计算;
得到降噪后的语音数据。
9.根据权利要求8所述的方法,其特征在于,所述预设的神经网络模型包括语音活性检测模块,由依次连接第一Dense层、第一GRU层以及第二Dense层组成,包括噪声谱估计模块,由第二GRU层组成,包括谱减法模块,由第三GRU层以及第三Dense层组成。
10.一种计算机可读介质,其特征在于,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如权利要求7至9任一项所述的一种基于流水线架构的语音降噪方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111386356.XA CN114005458A (zh) | 2021-11-22 | 2021-11-22 | 基于流水线架构的语音降噪方法、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111386356.XA CN114005458A (zh) | 2021-11-22 | 2021-11-22 | 基于流水线架构的语音降噪方法、系统及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114005458A true CN114005458A (zh) | 2022-02-01 |
Family
ID=79929715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111386356.XA Pending CN114005458A (zh) | 2021-11-22 | 2021-11-22 | 基于流水线架构的语音降噪方法、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114005458A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114755961A (zh) * | 2022-06-15 | 2022-07-15 | 浙江杭可仪器有限公司 | 一种老化测试箱的控制系统 |
CN117275499A (zh) * | 2023-11-17 | 2023-12-22 | 深圳波洛斯科技有限公司 | 自适应神经网络的降噪方法及相关装置 |
-
2021
- 2021-11-22 CN CN202111386356.XA patent/CN114005458A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114755961A (zh) * | 2022-06-15 | 2022-07-15 | 浙江杭可仪器有限公司 | 一种老化测试箱的控制系统 |
CN117275499A (zh) * | 2023-11-17 | 2023-12-22 | 深圳波洛斯科技有限公司 | 自适应神经网络的降噪方法及相关装置 |
CN117275499B (zh) * | 2023-11-17 | 2024-02-02 | 深圳波洛斯科技有限公司 | 自适应神经网络的降噪方法及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108280514B (zh) | 基于fpga的稀疏神经网络加速系统和设计方法 | |
CN111176727B (zh) | 计算装置以及计算方法 | |
US11462003B2 (en) | Flexible accelerator for sparse tensors in convolutional neural networks | |
CN109102065B (zh) | 一种基于PSoC的卷积神经网络加速器 | |
CN109919315B (zh) | 一种神经网络的前向推理方法、装置、设备及存储介质 | |
JP2022070955A (ja) | ニューラルネットワーク処理のスケジューリング | |
CN111667051A (zh) | 适用边缘设备的神经网络加速器及神经网络加速计算方法 | |
CN110738316B (zh) | 基于神经网络的操作方法、装置及电子设备 | |
CN114005458A (zh) | 基于流水线架构的语音降噪方法、系统及存储介质 | |
CN110222818B (zh) | 一种用于卷积神经网络数据存储的多bank行列交织读写方法 | |
US11797830B2 (en) | Flexible accelerator for sparse tensors in convolutional neural networks | |
CN108304925B (zh) | 一种池化计算装置及方法 | |
CN112015545A (zh) | 车辆边缘计算网络中的任务卸载方法及系统 | |
TWI775210B (zh) | 用於卷積運算的資料劃分方法及處理器 | |
CN116627662B (zh) | 边缘计算的资源处理方法、装置、存储介质及电子设备 | |
CN113065643A (zh) | 一种用于执行多任务卷积神经网络预测的装置和方法 | |
CN111860773A (zh) | 处理装置和用于信息处理的方法 | |
CN116702852B (zh) | 基于多阶段事件驱动的动态重构神经网络加速电路及系统 | |
CN112200310A (zh) | 智能处理器、数据处理方法及存储介质 | |
CN111381882B (zh) | 数据处理装置及相关产品 | |
CN111783984A (zh) | 一种神经网络运算方法、装置、设备及存储介质 | |
CN115130672B (zh) | 一种软硬件协同优化卷积神经网络计算的方法及装置 | |
CN114897133A (zh) | 一种通用可配置的Transformer硬件加速器及其实现方法 | |
CN111078625B (zh) | 片上网络处理系统和片上网络数据处理方法 | |
CN115081600A (zh) | 执行Winograd卷积的变换单元、集成电路装置及板卡 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |