CN116978364A - 音频数据处理方法、装置、设备以及介质 - Google Patents
音频数据处理方法、装置、设备以及介质 Download PDFInfo
- Publication number
- CN116978364A CN116978364A CN202310227622.7A CN202310227622A CN116978364A CN 116978364 A CN116978364 A CN 116978364A CN 202310227622 A CN202310227622 A CN 202310227622A CN 116978364 A CN116978364 A CN 116978364A
- Authority
- CN
- China
- Prior art keywords
- task
- feature
- attention
- audio
- coding
- 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
- 238000003672 processing method Methods 0.000 title abstract description 18
- 239000011159 matrix material Substances 0.000 claims abstract description 392
- 238000000034 method Methods 0.000 claims abstract description 94
- 238000012549 training Methods 0.000 claims abstract description 74
- 230000001131 transforming effect Effects 0.000 claims abstract description 25
- 238000012545 processing Methods 0.000 claims description 132
- 230000009466 transformation Effects 0.000 claims description 84
- 230000004927 fusion Effects 0.000 claims description 70
- 238000010606 normalization Methods 0.000 claims description 64
- 230000002708 enhancing effect Effects 0.000 claims description 52
- 238000011176 pooling Methods 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 22
- 230000003993 interaction Effects 0.000 claims description 20
- 238000003860 storage Methods 0.000 claims description 18
- 238000005070 sampling Methods 0.000 claims description 16
- 238000000429 assembly Methods 0.000 claims description 13
- 238000009432 framing Methods 0.000 claims description 8
- 239000012634 fragment Substances 0.000 claims description 6
- 239000003999 initiator Substances 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000001914 filtration Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 40
- 230000006870 function Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 19
- 238000005516 engineering process Methods 0.000 description 12
- 238000000605 extraction Methods 0.000 description 12
- 238000001228 spectrum Methods 0.000 description 12
- 238000013473 artificial intelligence Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 11
- 238000005457 optimization Methods 0.000 description 11
- 230000007246 mechanism Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 230000000873 masking effect Effects 0.000 description 6
- 230000002123 temporal effect Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 5
- 239000013598 vector Substances 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000010845 search algorithm Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 230000002829 reductive effect Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000004091 panning Methods 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 235000013361 beverage Nutrition 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 210000001260 vocal cord Anatomy 0.000 description 1
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
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- 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
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- 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
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
-
- 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
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using 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
-
- 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
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
- G10L2015/0631—Creating reference templates; Clustering
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Artificial Intelligence (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Evolutionary Computation (AREA)
- Machine Translation (AREA)
Abstract
本申请实施例提供了一种音频数据处理方法、装置、设备以及介质,用于提高网络模型的训练效率和识别准确率。该方法包括:通过初始识别模型中的共享编码组件得到样本音频特征的任务共享编码特征;由第一分支编码组件变换得到第一查询矩阵、第一键矩阵及第一值矩阵,由第二分支编码组件变换得到第二查询矩阵、第二键矩阵及第二值矩阵;由第二查询矩阵、第一键矩阵及第一值矩阵编码得到第一任务编码特征,由第一查询矩阵、第二键矩阵及第二值矩阵编码得到第二任务编码特征;通过不同任务的解码组件得到第一任务识别结果和第二任务识别结果;根据第一任务识别结果、第二任务识别结果、第一任务标签及第二任务标签,训练初始识别模型。
Description
技术领域
本申请涉及人工智能技术领域,尤其涉及一种音频数据处理方法、装置、设备以及介质。
背景技术
目前的各个音频任务都有其各自成熟的网络模型,如说话人识别任务有时延神经网络(Time Delay Neural Network,TDNN)、残差网络ResNet等模型,语音识别任务有AED(Attention based Encoder-Decoder,基于注意力的编解码器)、RNN-T(Recurrent NeuralNetwork Transducer,递归神经网络转换器)、CTC(Connectionist TemporalClassification,时序分类)Conformer等模型。不同音频任务的网络模型的输入都是音频数据,但在构建不同音频任务各自对应的独立网络模型时,往往都有其侧重的音频信息;例如,在构建语音识别任务对应的独立网络模型时,更侧重于音频数据所包含的语音内容的音素信息;在构建说话人识别任务对应的独立网络模型时,更侧重于音频数据中的说话人信息。
目前,不同的音频任务可以构建不同的独立网络模型,当某个特定的应用领域涉及多个音频任务时,可以通过学习各个音频任务各自侧重的音频信息来进行网络模型的构建,训练得到用于实现单个音频任务的网络模型,即每一个音频任务的网络模型需要进行独立训练,可能会造成模型训练效率过低。此外,这些训练完成的网络模型应用在上述特定应用领域中时,每个网络模型都只能学习到各自音频任务所侧重的音频信息,即每个网络模型从输入的待识别的音频数据中所学习到的音频信息是非常有限的,那么通过这些网络模型输出的音频任务识别结果可能是不准确的,这会造成这些网络模型的识别准确率过低。
发明内容
本申请实施例提供一种音频数据处理方法、装置、设备以及介质,可以提高初始识别模型的训练效率,以及提高目标识别模型的任务识别准确率。
本申请实施例一方面提供了一种音频数据处理方法,包括:
获取样本音频数据对应的样本音频特征,通过初始识别模型中的共享编码组件对样本音频特征进行编码,得到任务共享编码特征;
通过初始识别模型中的第一分支编码组件对任务共享编码特征进行变换处理,得到第一查询矩阵、第一键矩阵以及第一值矩阵,通过初始识别模型中的第二分支编码组件对任务共享编码特征进行变换处理,得到第二查询矩阵、第二键矩阵以及第二值矩阵;
通过初始识别网络中的第一分支编码组件对第二查询矩阵、第一键矩阵以及第一值矩阵进行编码,得到第一任务编码特征,通过初始识别网络中的第二分支编码组件对第一查询矩阵、第二键矩阵以及第二值矩阵进行编码,得到第二任务编码特征;
通过初始识别模型中的第一任务解码组件对第一任务编码特征进行解码,得到第一任务识别结果,通过初始识别模型中的第二任务解码组件对任务共享编码特征和第二任务编码特征进行解码,得到第二任务识别结果;
根据第一任务识别结果、第二任务识别结果,以及样本音频数据的第一任务标签和第二任务标签,对初始识别模型进行参数调整,将参数调整后的初始识别模型确定为目标识别模型;目标识别模型用于预测目标音频数据对应的第一任务识别结果和第二任务识别结果。
本申请实施例一方面提供了一种音频数据处理装置,包括:
音频共享编码模块,用于获取样本音频数据对应的样本音频特征,通过初始识别模型中的共享编码组件对样本音频特征进行编码,得到任务共享编码特征;
共享特征变换模块,用于通过初始识别模型中的第一分支编码组件对任务共享编码特征进行变换处理,得到第一查询矩阵、第一键矩阵以及第一值矩阵,通过初始识别模型中的第二分支编码组件对任务共享编码特征进行变换处理,得到第二查询矩阵、第二键矩阵以及第二值矩阵;
任务交互编码模块,用于通过初始识别网络中的第一分支编码组件对第二查询矩阵、第一键矩阵以及第一值矩阵进行编码,得到第一任务编码特征,通过初始识别网络中的第二分支编码组件对第一查询矩阵、第二键矩阵以及第二值矩阵进行编码,得到第二任务编码特征;
任务解码模块,用于通过初始识别模型中的第一任务解码组件对第一任务编码特征进行解码,得到第一任务识别结果,通过初始识别模型中的第二任务解码组件对任务共享编码特征和第二任务编码特征进行解码,得到第二任务识别结果;
模型训练模块,用于根据第一任务识别结果、第二任务识别结果,以及样本音频数据的第一任务标签和第二任务标签,对初始识别模型进行参数调整,将参数调整后的初始识别模型确定为目标识别模型;目标识别模型用于预测目标音频数据对应的第一任务识别结果和第二任务识别结果。
其中,音频共享编码模块获取样本音频数据对应的样本音频特征,包括:
音频分帧单元,用于对样本音频数据进行预加重处理,得到样本音频数据对应的补偿音频数据,将补偿音频数据进行分帧处理,得到补偿音频数据对应的多个音频帧片段;
频域变换单元,用于将多个音频帧片段进行频域变换,得到补偿音频数据对应的音频频率数据,通过三角形滤波器组对音频频率数据进行滤波处理,得到样本音频数据对应的样本音频特征。
其中,音频共享编码模块通过初始识别模型中的共享编码组件对样本音频特征进行编码,得到任务共享编码特征,包括:
音频下采样单元,用于根据初始识别模型中的共享编码组件所包含的下采样层,对样本音频特征进行卷积下采样处理,得到音频采样特征;
第一线性变换单元,用于根据共享编码组件中的线性网络层对音频采样特征进行变换处理,得到第一变换特征;
正则化处理单元,用于根据共享编码组件中的正则网络层对第一转换特征进行正则化处理,得到音频正则化特征;
共享特征获取单元,用于通过共享编码组件中的注意力增强子组件,输出音频正则化特征对应的任务共享编码特征。
其中,共享编码组件所包含的注意力增强子组件的数量为a个,a为正整数;
共享特征获取单元包括:
输入特征获取子单元,用于获取a个注意力增强子组件中的第i个注意力增强子组件的输入特征;i为1时,第i个注意力增强子组件的输入特征为音频正则化特征,i为小于或等于a的正整数;
第一特征变换子单元,用于根据第i个注意力增强子组件中的第一前馈网络层,对第i个注意力增强子组件的输入特征进行变换处理,得到第二变换特征,将第二变换特征和第i个注意力增强子组件的输入特征组合为第一融合特征;
自注意力处理子单元,用于根据第i个注意力增强子组件中的自注意力网络层,输出第一融合特征对应的注意力输出特征,将注意力输出特征和第一融合特征组合为第二融合特征;
卷积运算子单元,用于根据第i个注意力增强子组件中的卷积层,对第二融合特征进行卷积运算,得到音频卷积特征,将音频卷积特征和第二融合特征组合为第三融合特征;
第二特征变换子单元,用于根据第i个注意力增强子组件中的第二前馈网络层,对第三融合特征进行变换处理,得到第三变换特征,将第三变换特征和第三融合特征组合为第四融合特征;
归一化处理子单元,用于根据第i个注意力增强子组件中的归一化层,对第四融合特征进行归一化处理,得到第i个注意力增强子组件的输出特征,将第a个注意力增强子组件的输出特征确定为音频正则化特征对应的任务共享编码特征。
其中,自注意力处理子单元根据第i个注意力增强子组件中的自注意力网络层,输出第一融合特征对应的注意力输出特征,包括:
获取第i个注意力增强子组件中的自注意力网络层对应的变换权重矩阵,基于变换权重矩阵,将第一融合特征变换为第三查询矩阵、第三键矩阵以及第三值矩阵;
对第三查询矩阵和第三键矩阵的转置矩阵进行点乘运算,得到候选权重矩阵,获取第三查询矩阵对应的列数量;
对候选权重矩阵与列数量的平方根之间的比值进行归一化处理,得到注意力权重矩阵,根据注意力权重矩阵与第三值矩阵之间的点乘,确定第一融合特征对应的注意力输出特征。
其中,初始识别模型中的第一分支编码组件包括b个链式连接的注意力增强子组件,第一任务编码特征是指初始识别模型所包含的第一分支编码组件中的第b个注意力增强子组件的输出特征,b为正整数;初始识别模型中的第一任务解码组件包括时序分类解码器和注意力解码器;
任务解码模块通过初始识别模型中的第一任务解码组件对第一任务编码特征进行解码,得到第一任务识别结果,包括:
时序分类解码单元,用于将第一任务编码特征输入至初始识别模型中的时序分类解码器,通过时序分类解码器对第一任务编码特征进行线性变换,输出时序分类概率矩阵;
注意力解码单元,用于将时序分类概率矩阵和第一任务编码特征输入至初始识别模型中的注意力解码器,通过注意力解码器对时序分类概率矩阵和第一任务编码特征进行解码,输出注意力识别结果,将时序分类概率矩阵和注意力识别结果确定为第一任务识别结果。
其中,注意力解码器包括N个注意力解码子组件,N为正整数;
注意力解码单元将时序分类概率矩阵和第一任务编码特征输入至初始识别模型中的注意力解码器,通过注意力解码器对时序分类概率矩阵和第一任务编码特征进行解码,输出注意力识别结果,包括:
将时序分类概率矩阵和第一任务编码特征组合为联合输入特征,将联合输入特征输入至初始识别模型中的注意力解码器;
获取N个注意力解码子组件中的第j个注意力解码子组件的输入特征;j为1时,第j个注意力解码子组件的输入特征包括联合输入特征和音频起始符;j不为1时,第j个注意力解码子组件的输入特征包括联合输入特征和第j-1个注意力解码子组件的输出特征;j为小于或等于N的正整数;
根据第j个注意力解码子组件中的自注意力掩码层,输出第j-1个注意力解码子组件的输出特征所对应的注意力掩码特征,对注意力掩码特征和第j-1个注意力解码子组件的输出特征的组合特征进行归一化处理,得到第一归一化特征;
根据第j个注意力解码子组件中的自注意力网络层,将第一注意力掩码特征变换为第四查询矩阵,将联合输入特征变换为第四键矩阵和第四值矩阵,基于第四查询矩阵、第四键矩阵以及第四值矩阵,输出注意力解码特征,对注意力解码特征和第一归一化特征的组合特征进行归一化处理,得到第二归一化特征;
根据第j个注意力解码子组件中的第三前馈网络层,对第二归一化特征进行变换处理,得到第四变换特征,对第四变换特征和第二归一化特征的组合特征进行归一化处理,得到第j个注意力解码子组件的输出特征,对第N个注意力解码子组件的输出特征进行变换处理,得到输出注意力识别结果。
其中,初始识别模型中的第二分支编码组件包括b个链式连接的注意力增强子组件,第二任务编码特征是指由第二分支编码组件中的b个注意力增强子组件分别对应的输出特征所拼接而成的联合特征,b为正整数;
任务解码模块通过初始识别模型中的第二任务解码组件对任务共享编码特征和第二任务编码特征进行解码,得到第二任务识别结果,包括:
特征拼接单元,用于将任务共享编码特征和第二任务编码特征拼接为任务联合编码特征,将任务联合编码特征输入至初始识别模型中的第二任务解码组件;
注意力统计池化单元,用于根据初始识别模型所包含的第二任务解码组件中的注意力统计池化层,对任务联合编码特征进行池化运算,得到注意力池化特征,将注意力池化特征进行归一化处理,得到第三归一化特征;
全连接处理单元,用于根据初始识别模型所包含的第二任务解码组件中的全连接网络层,对第三归一化特征进行全连接处理,得到目标解码特征,基于目标解码特征输出第二任务识别结果。
其中,模型训练模块包括:
任务损失确定单元,用于根据第一任务识别结果和样本音频数据对应的第一任务标签,确定第一任务损失,根据第二任务识别结果和样本音频数据对应的第二任务标签,确定第二任务损失;
模型损失确定单元,用于获取第一任务权重和第二任务权重,对第一任务权重、第一任务损失、第二任务权重以及第二任务损失进行加权求和,得到初始识别模型对应的模型损失;
网络参数调整单元,用于根据模型损失对初始识别模型的网络参数进行调整,将参数调整后的初始识别模型确定为目标识别模型。
其中,第一任务识别结果包括时序分类概率矩阵和注意力识别结果;
任务损失确定单元根据第一任务识别结果和样本音频数据对应的第一任务标签,确定第一任务损失,包括:
根据时序分类结果和样本音频数据对应的第一任务标签,确定时序分类损失,根据注意力识别结果和样本音频数据对应的第一任务标签,确定注意力损失;
获取时序分类权重和注意力解码权重,对时序分类权重、时序分类损失、注意力解码权重以及注意力损失进行加权求和,得到第一任务损失。
其中,该装置还包括:
第一音频编码模块,用于获取目标音频数据对应的目标音频特征,通过目标识别模型中的共享编码组件对目标音频特征进行编码,得到音频共享编码特征;
第二音频编码模块,用于通过目标识别模型中的第一分支编码组件对音频共享编码特征进行编码,得到第一音频任务编码特征,通过目标识别模型中的第二分支编码组件对音频共享编码特征进行编码,得到第二音频任务编码特征;
音频解码模块,用于通过目标识别模型中的第一任务解码组件对第一音频任务编码特征进行解码,得到第一音频任务识别结果,通过目标识别模型中的第二任务解码组件对音频共享编码特征和第二音频任务编码特征进行解码,得到第二音频任务识别结果。
其中,目标识别模型中的第一任务解码组件包括时序分类解码器和注意力解码器;
音频解码模块通过目标识别模型中的第一任务解码组件对第一音频任务编码特征进行解码,得到第一音频任务识别结果,包括:
第一音频解码单元,用于将第一音频任务编码特征输入至目标识别模型中的时序分类解码器,通过目标识别模型中的时序分类解码器输出第一音频任务编码特征对应的音频分类概率矩阵;
候选路径获取单元,用于根据音频分类概率矩阵确定目标音频数据对应的多个候选路径;候选路径用于表征目标音频数据对应的文本识别结果;
第二音频解码单元,用于将音频分类概率矩阵和第一音频任务编码特征输入至目标识别模型中的注意力解码器,通过目标识别模型中的注意力解码器,对音频分类概率矩阵和第一音频任务编码特征进行解码,得到多个候选路径分别对应的输出概率,将最大的输出概率所对应的候选路径关联的文本确定为第一音频任务识别结果。
其中,音频解码模块通过目标识别模型中的第二任务解码组件对音频共享编码特征和第二音频任务编码特征进行解码,得到第二音频任务识别结果,包括:
联合编码特征输入单元,用于将音频共享编码特征和第二音频任务编码特征拼接为音频联合编码特征,将音频联合编码特征输入至目标识别模型中的第二任务解码组件;
第三音频解码单元,用于通过目标识别模型中的第二任务解码组件对音频联合编码特征进行解码,输出目标音频数据对应的音频对象特征,获取音频对象特征与多个注册音频对象之间的相似度,将最大的相似度所对应的注册音频对象确定为目标音频数据对应的第二音频任务识别结果。
本申请实施例一方面提供了一种计算机设备,包括存储器和处理器,存储器与处理器相连,存储器用于存储计算机程序,处理器用于调用计算机程序,以使得该计算机设备执行本申请实施例中上述一方面提供的方法。
本申请实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序适于由处理器加载并执行,以使得具有处理器的计算机设备执行本申请实施例中上述一方面提供的方法。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述一方面提供的方法。
本申请实施例中的初始识别模型包括第一任务和第二任务共享网络参数的共享编码组件、第一任务关联的第一分支编码组件和第一任务解码组件,以及第二任务关联的第二分支编码组件和第二任务解码组件。在获取到样本音频数据对应的样本音频特征之后,可以通过共享编码组件输出样本音频特征对应的任务共享编码特征;该任务共享编码特征可以输入第一分支编码组件和第二分支编码组件,第一分支编码组件和第二分支编码组件之间可以进行信息交互,如第一分支编码组件中的第一查询矩阵和第二分支编码组件中的第二查询矩阵进行交叉使用。经过共享编码组件和第一分支编码组件后的第一任务编码特征输入至第一任务解码组件,由第一任务解码组件输出第一任务识别结果;经过共享编码组件和第二分支编码组件的输出拼接成的第二任务识别结果输入至第二任务解码组件,由第二任务解码组件输出第二任务识别结果;进而可以基于第一任务识别结果、第二任务识别结果,所述样本音频数据的第一任务标签和第二任务标签,对初始识别模型进行参数调整。也就是说,初始识别模型为第一任务和第二任务所关联的多任务联合网络模型,即通过训练初始识别模型就可以实现第一任务和第二任务的多任务联合优化,可以提高初始识别模型的训练效率;通过在第一分支编码组件和第二分支编码组件之间可以进行信息交互,可以提升第一任务和第二任务之间的联动性,进而可以提高目标识别模型针对第一任务和第二任务的识别准确率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种网络架构的结构示意图;
图2是本申请实施例提供的一种音频数据识别场景示意图;
图3是本申请实施例提供的一种音频数据处理方法的流程示意图一;
图4是本申请实施例提供的一种初始识别模型的整体结构示意图;
图5是本申请实施例提供的一种音频数据处理方法的流程示意图二;
图6是本申请实施例提供的一种初始识别模型中的共享编码组件的结构示意图;
图7是本申请实施例提供的一种初始识别模型中的注意力解码器的结构示意图;
图8是本申请实施例提供的一种音频数据处理方法的流程示意图三;
图9是本申请实施例提供的一种音频数据处理装置的结构示意图;
图10是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为便于理解,下面先对本申请实施例涉及的基础技术概念进行描述:
人工智能(Artificial Intelligence,AI):人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能软件技术主要包括计算机视觉技术、音频处理技术、自然语言处理技术以及机器学习/深度学习、自动驾驶、智慧交通等几大方向。
其中,本申请实施例所提供的音频数据处理方案具体涉及人工智能的音频处理技术。音频处理技术的关键技术可以包括自动语音识别技术(Automatic SpeechRecognition,ASR)、语音合成技术(Text-To-Speech),TTS)以及声纹识别技术等。让计算机能听、能看、能说、能感觉,是未来人机交互的发展方向,其中语音成为未来最被看好的人机交互方式之一。
人工智能云服务:一般也被称作是AIaaS(AI as a Service,AI即服务)。这是目前主流的一种人工智能平台的服务方式,具体来说AIaaS平台会把几类常见的AI服务进行拆分,并在云端提供独立或者打包的服务。这种服务模式类似于开了一个AI主题商城:所有的开发者都可以通过API(Application Programming Interface,应用程序编程接口)接口的方式来接入使用平台提供的一种或者是多种人工智能服务,部分资深的开发者还可以使用平台提供的AI框架和AI基础设施来部署和运维自己专属的云人工智能服务。本申请实施例可以使用平台提供的AI框架和AI基础设施部署和运维训练完成的目标识别模型,该目标识别模型可以为多任务联合网络模型,如可以识别目标音频数据所对应的音频文本,以及该目标音频数据对应的音频对象标签(即确定目标音频数据的说话人)等。
请参见图1,图1是本申请实施例提供的一种网络架构的结构示意图,该网络架构可以包括服务器10d和终端集群,该终端集群可以包括一个或者多个终端设备,这里不对终端集群所包含的终端设备的数量进行限制。如图1所示,该终端集群可以具体包括终端设备10a、终端设备10b以及终端设备10c等;终端集群中的所有终端设备(例如,可以包括终端设备10a、终端设备10b以及终端设备10c等)均可以与服务器10d进行网络连接,以便于各个终端设备均可以通过该网络连接与服务器10d之间进行数据交互。
终端集群的终端设备可以包括但不限于:智能手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备(例如智能手表、智能手环等)、智能语音交互设备、智能家电(例如智能电视等)、车载设备、飞行器等电子设备,本申请对终端设备的类型不做限定。可以理解的是,如图1所示的终端集群中的每个终端设备均可以安装应用客户端(互联网平台),当该应用客户端运行于各终端设备中时,可以分别与上述图1所示的服务器10d之间进行数据交互。其中,各终端设备中运行的应用客户端可以为独立的客户端,也可以为集成在某个客户端中的嵌入式子客户端,本申请对此不做限定。
其中,应用客户端可以具体包括但不限于:浏览器、车载客户端、智能家居客户端、娱乐客户端(例如,游戏客户端)、多媒体客户端(例如,视频客户端)、会议客户端以及社交客户端等具有音频处理功能的客户端。其中,若终端集群所包含的终端设备为车载设备,那么该车载设备可以为智慧交通场景下的智能终端,该车载设备中所运行的应用客户端可以称为车载客户端。
其中,服务器10d可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器,本申请对服务器的类型不做限定。
可以理解的是,图1所示的各个终端设备可以通过音频采集设备获取音频数据,该音频数据可以存储在终端设备本地中,也可以传输给服务器10d进行存储,本申请对此不做限定。其中,上述音频采集设备可以为终端设备所集成的功能组件,或者为终端设备的外接设备,该音频采集设备可以包括但不限于录音设备、手机、麦克风、话筒等设备;服务器10d可以为终端设备中所运行的应用客户端对应的后台服务器。在采集得到音频数据之后,可以对采集到的音频数据进行识别处理,以得到音频数据对应的识别结果;例如,该音频数据对应的识别结果可以为语音识别结果,或者可以为说话人识别(也可以称为声纹识别)结果,或者可以为语种识别结果等。需要说明的是,音频数据的识别处理可以由终端设备执行,也可以由服务器10d执行,本申请对此不做限定。
在与音频处理领域相关的实际业务中,通常会涉及到多个音频任务,此处的音频任务可以包括但不限于:语音识别、说话人识别(声纹识别)、语种识别、说话人类别识别(此处的说话人类别可以包括但不限于:男性、女性、儿童、青少年、老年人等)、声音事件检测等任务。本申请实施例可以根据实际业务所涉及的音频任务类型,在现有音频识别模型的框架上构建多任务联合网络模型,并对多个音频任务模型的相同结构部分引入交叉注意力机制,加强信息的交互学习,以提到多任务联合网络模型的训练效率,并提高多任务联合网络模型的识别性能;换言之,本申请实施例通过训练一个网络模型就可以实现多个音频任务。例如,与音频处理领域相关的实际业务涉及语音识别任务和说话人识别任务,那么可以构建用于实现语音识别任务和说话人识别任务的双任务联合网络模型。
为便于理解,训练阶段的多任务联合网络模型可以称为初始识别模型,训练完成的多任务联合网络模型可以称为目标识别模型。通过训练完成的目标识别模型,可以预测目标音频数据对应的多个任务识别结果;例如,当目标识别模型是针对第一任务和第二任务训练而成的多任务联合网络模型时,利用该目标识别模型可以得到目标音频数据对应的第一任务识别结果和第二任务识别结果。
可以理解的是,多任务联合网络模型的训练及应用过程可以由计算机设备执行,即本申请实施例提出的音频数据处理方法可以由计算机设备执行,该计算机设备可以为图1所示的网络架构中的服务器10d,或者为终端集群中的任一终端设备,或者可以为计算机程序(包括程序代码,例如,终端设备集成的应用客户端)等,本申请实施例对此不做限定。
下面以目标识别模型是针对语音识别任务(即前述第一任务)和声纹识别任务(即前述第二任务)训练而成的多任务联合网络模型为例,对目标识别模型的应用过程进行描述。请参见图2,图2是本申请实施例提供的一种音频数据识别场景示意图。假设初始识别模型已完成训练,那么训练完成的初始识别模型可以称为目标识别模型,且目标识别模型可以发布在图1所示的终端集群中的终端设备所运行的应用客户端中,进而可以将该目标识别模型应用在音频处理领域中,该音频处理领域的业务场景具体可以包括但不限于:视频/音频会议场景、客服音频分析场景、音视频剪辑场景等,此处将不对具体的业务场景进行一一举例。可以理解的是,目标对象(使用终端设备的用户)可以在运行应用客户端中查询目标音频数据的多个任务识别结果。
为便于理解,本申请实施例以视频/音频会议场景为例进行描述,客服音频分析场景、音视频剪辑场景等具体实现过程,可以参见该视频/音频会议场景的描述,此处不再进行赘述。
如图2所示,可以利用音频采集设备20a(例如,麦克风)获取会议中的目标音频数据20b,进而可以对目标音频数据20b进行特征提取,得到目标音频特征20c。其中,该目标音频特征20c可以为音频处理领域中常用的音频特征,该目标音频特征20c可以包括但不限于:FBanks(Filter Banks)特征、MFCC(Mel Frequency Cepstral Coefficents,梅尔频率倒谱系数)特征、LPC(Linear Prediction Coefficient,线性预测系数)特征等,本申请对目标音频特征20c的类型不做限定。
获取训练完成的目标识别模型20d,该目标识别模型20d可以包括语音识别子模型和声纹识别子模型;该语音识别子模型可以包括共享编码组件、第一分支编码组件以及第一任务解码组件(此处的第一任务解码组件也可以称为语音识别解码组件);该声纹识别子模型可以包括共享编码组件、第二分支编码组件以及第二任务解码组件(此处的第二任务解码组件也可以称为声纹识别解码组件)。换言之,共享编码组件为语音识别子模型和声纹识别子模型共享参数的网络结构部分;可以理解的是,目标识别模型20d中的共享编码组件、第一分支编码组件以及第二分支编码组件可以具有相同的网络结构,只是该共享编码组件、第一分支编码组件以及第二分支编码组件具有不同的网络参数。
进一步地,可以将提取到的目标音频特征20c输入至目标识别模型20d,该目标音频特征20c首先输入至目标识别模型20d中的共享编码组件,通过共享编码组件对目标音频特征20c进行编码,得到音频共享编码特征。共享编码组件输出的音频共享编码特征可以分别输入至第一分支编码组件和第二分支编码组件,通过第一分支编码组件可以对音频共享编码特征继续进行编码,得到第一音频任务编码特征,该第一音频任务编码特征可以用于表征目标音频数据20b中所包含的音频内容信息。通过第二分支编码组件可以对音频共享编码特征继续进行编码,得到第二音频任务编码特征,该第二音频任务编码特征可以用于表征目标音频数据20b中所包含的说话人信息。
第一分支编码组件输出的第一音频任务编码特征可以输入至第一任务解码组件,通过第一任务解码组件可以对第一任务解码组件进行解码,输出目标音频数据20b对应的音频文本20e,即通过目标识别模型20d可以将目标音频数据20b转换为文本数据。第二分支编码组件输出的第二音频任务编码特征可以输入至第二任务解码组件,通过第二任务解码组件对第二音频任务编码组件进行解码,输出目标音频数据20b对应的音频对象标识信息20f(如说话人标识信息),即可以通过目标识别模型20d可以识别出目标音频数据20b的说话人。换言之,目标音频数据20b经过特征提取后得到的目标音频特征20c可以输入到目标识别模型20d中,通过该目标识别模型20d既可以输出该目标音频数据20b对应的音频文本20e,也可以输出该目标音频数据20b对应的音频对象标识信息20f,可以提高目标音频数据20b的识别效率和识别性能。
需要说明的是,在将目标识别模型20d应用在音频处理领域中之前,需要对初始识别模型进行训练,训练完成的初始识别模型方可作为目标识别模型20d。其中,初始识别模型可以是指利用音频数据的文本内容和说话人标签,对语音识别任务和声纹识别任务进行联合训练,并发挥两个音频任务之间的联动效应。例如,可以在初始识别模型的训练阶段,在第一分支编码组件和第二分支编码组件之间引入交叉注意力机制,即第一分支编码组件和第二分支编码组件进行信息交互,以加强信息的交互学习,训练得到目标识别模型20d。下面将结合附图3至图7对初始识别模型的训练过程进行描述。
请参见图3,图3是本申请实施例提供的一种音频数据处理方法的流程示意图一;可以理解地,该音频数据处理方法可以由计算机设备执行,该计算机设备可以为服务器,或者可以为终端设备,本申请对此不做限定。如图3所示,该音频数据处理方法可以包括以下步骤S101至步骤S105:
步骤S101,获取样本音频数据对应的样本音频特征,通过初始识别模型中的共享编码组件对样本音频特征进行编码,得到任务共享编码特征。
本申请实施例中,为便于理解,以初始识别模型是指为第一任务和第二任务构建的多任务联合网络模型为例,对初始识别模型的训练过程进行描述。在初始识别模型的训练阶段,计算机设备可以构建初始识别模型的样本数据集,该样本数据集中的样本音频数据可以是指从多个渠道采集到的音频数据,且该样本数据集中的每一个样本音频数据都可以携带第一任务标签和第二任务标签。其中,上述多个渠道可以包括但不限于:线上或线下会议渠道、各类应用客户端中的客服渠道、通讯应用的语音通信等,此处将不对采集样本音频数据的渠道进行一一举例。举例来说,本申请实施例所涉及的第一任务可以为语音识别任务,那么样本音频数据所携带的第一任务标签可以为音频文本内容;第二任务可以为音频对象识别任务(也可以称为声纹识别任务),那么样本音频数据所携带的第二任务标签可以为音频对象标签信息。
可以理解的是,初始识别模型对应的整个样本数据集可以划分为若干个batch(一批样本),即可以将整个样本数据集划分为多个batch来训练初始识别模型;在初始识别模型的训练阶段,可以设置每批样本的大小(记为batch_size),即初始识别模型的一次训练所选取的样本音频数据的数量,训练一个batch可以理解为一次迭代(Iteration),batch的大小会影响初始识别模型的优化程度和速度。当样本数据集中的所有样本音频数据均在初始识别模型中进行了一次正向传播和一次反向传播时,可以将该过程称为一次epoch(时期),也就是说,一个epoch就是将样本数据集中的所有样本音频数据训练一次的过程;样本数据集中的每个样本音频数据的训练过程是相同的。为便于理解,下面以样本数据集中的任意一个样本音频数据为例,对样本数据集在初始识别模型中的正向传播和反向传播进行描述。
对于样本数据集中的样本音频数据,可以对样本音频数据进行特征提取,得到该样本音频数据对应的样本音频特征。其中,该样本音频特征是指广泛应用在音频处理领域中的特征,该样本音频特征可以包括但不限于:FBanks特征、MFCC特征、LPC特征等,在此将不对样本音频特征的类型进行一一举例。需要说明的是,MFCC特征是在FBanks特征的基础上进行离散余弦变换(Discrete Cosine Transform,DCT)所得到的特征,LPC特征可以是指一个样本音频数据的采样可以用过去若干个音频采样的线性组合来逼近,通过线性预测到的采样在最小均方误差意义上逼近实际音频采样,求取一组唯一的预测系数。
需要说明的是,样本音频数据在输入到初始识别模型之前,可以对该样本音频数据进行增强处理;例如,可以在对样本音频数据进行特征提取之前直接对样本音频数据进行增强处理,得到增强后的样本音频数据,进而对增强后的样本音频数据进行特征提取,得到样本音频特征;或者可以在对样本音频数据进行特征提取之后对样本音频特征进行增强处理,得到增强后的样本音频特征。其中,本申请实施例中,针对样本音频数据的增强处理方式可以包括但不限于:插入随机噪音、转移时间、改变音高、变速、Specaugment(一种数据增强方式)等,通过对样本音频数据进行增强处理,可以提高初始识别模型的性能。
进一步地,可以获取初始识别模型,该初始识别模型可以包括第一任务子模型和第二任务子模型,该第一任务子模型包括第一任务编码组件和第一任务解码组件,第一任务编码组件包括共享编码组件和第一分支编码组件;第二任务子模型包括第二任务编码组件和第二任务解码组件,该第二任务编码组件包括共享编码组件和第二分支编码组件。其中,第一任务子模型为第一任务在初始识别模型中的网络结构,第二任务子模型为第二任务在初始识别模型中的网络结构,共享编码组件为第一任务子模型和第二任务子模型中的共享网络结构。
可以理解的是,初始识别模型是在目前通用网络框架的基础上构建的多任务联合网络模型,且初始识别模型所使用的目前通用网络框架对第一任务和第二任务都具有很好的单系统性能。上述目前通用网络框架可以包括但不限于:Transformer框架、Conformer框架等,此处不再对本申请所使用的目前通用网络框架的类型不做限定。例如,第一任务子模型可以为采用Conformer编码部分+Transformer解码部分所组成的基线模型,第二任务子模型可以为采用MFA-Conformer(Multi-scale Feature Aggregation Conformer,多尺度特征增强的Conformer)的基线模型,即可以将Conformer框架作为第一任务和第二任务联合训练的基础,初始识别模型中的共享编码组件可以认为是第一任务和第二任务共享参数的Conformer编码部分,而第一分支编码组件和第二分支编码组件可以认为是第一任务和第二任务无需共享参数的Conformer编码部分。
样本音频数据对应的样本音频特征输入至初始识别模型之后,首先输入至初始识别模型中的共享编码组件,通过共享编码组件对该样本音频特征进行编码,可以输出第一任务和第二任务共享的任务共享编码特征。其中,初始识别模型中的共享编码组件可以由多个具有相同结构的子组件链式连接而成,本申请实施例可以将这些具有相同结构的子组件称为注意力增强子组件(注意力增强子组件的具体结构将在后续实施例的步骤中进行详细描述),如共享编码组件可以包括a个注意力增强子组件,a为正整数,如a可以取值为1,2,……,其中,共享编码组件中的注意力增强子组件具体可以为Conformer编码块。对于共享编码组件,前一个注意力增强子组件(例如,第i个注意力增强子组件,此处的i为小于a的正整数)的输出特征可以作为后一个注意力增强子组件(例如,第i+1个注意力增强子组件,此处的i+1为小于或等于a的正整数)的输入特征,上述任务共享编码特征可以认为是共享编码组件中的最后一个(即第a个)注意力增强子组件的输出特征。
步骤S102,通过初始识别模型中的第一分支编码组件对任务共享编码特征进行变换处理,得到第一查询矩阵、第一键矩阵以及第一值矩阵,通过初始识别模型中的第二分支编码组件对任务共享编码特征进行变换处理,得到第二查询矩阵、第二键矩阵以及第二值矩阵。
具体的,通过初始识别模型中的共享编码组件输出任务共享编码组件之后,该任务共享编码组件可以同时输入初始识别模型中的第一分支编码组件和第二分支编码组件中。在初始识别模型的训练阶段,可以在第一分支编码组件和第二分支编码组件之间引入交叉注意力机制,进而可以增强第一任务和第二任务之间的信息交互。可以理解的是,第一分支编码组件和第二分支编码组件可以具备相同的网络结构,同样可以由多个具有相同结构的注意力增强子组件链式连接而成,如第一分支编码组件都可以包括b个注意力增强子组件,b为正整数,如b可以取值为1,2,……;其中,第一分支编码组件和第二分支编码组件中所包含的注意力增强子组件的数量与共享编码组件所包含的注意力增强子组件的数量可以相同,也可以不同,也就是说,上述a可以等于b,a也可以不等于b,本申请对此不做限定。
需要说明的是,本申请实施例中的注意力增强子组件可以包括自注意力网络层,通过自注意力网络层对应的变换权重矩阵,可以将输入该自注意力网络层的输入特征转换为查询矩阵(query)、键矩阵(key)以及值矩阵(value);其中,自注意力网络层的变换权重矩阵可以包括三个参数矩阵(如第一参数矩阵Wq、第二参数矩阵Wk以及第三参数矩阵Wv)。任务共享编码特征在输入至第一分支编码组件和第二分支编码组件之后,可以作为第一分支编码组件和第二分支编码组件各自所包含的b个注意力增强子组件中的第一个注意力增强子组件的输入特征。通过第一分支编码组件中的第一个注意力增强子组件可以对任务共享编码特征进行变换处理,由第一分支编码组件的第一个注意力增强子组件中的自注意力网络层输出第一查询矩阵、第一键矩阵以及第一值矩阵。通过第二分支编码组件中的第一个注意力增强子组件可以对任务共享编码特征进行变换处理,由第二分支编码组件的第一个注意力增强子组件中的自注意力网络层输出第二查询矩阵、第二键矩阵以及第二值矩阵。
可以理解的是,第一分支编码组件中的每一个注意力增强子组件所包含的自注意力网络层所输出的查询矩阵均可以称为第一查询矩阵,其所输出的键矩阵均可以称为第一键矩阵,其所输出的值矩阵均可以称为第一值矩阵。第二分支编码组件中的每一个注意力增强子组件所包含的自注意力层所输出的查询矩阵均可以称为第二查询矩阵,其所输出的键矩阵均可以称为第二键矩阵,其所输出的值矩阵均可以称为第二值矩阵。
步骤S103,通过初始识别网络中的第一分支编码组件对第二查询矩阵、第一键矩阵以及第一值矩阵进行编码,得到第一任务编码特征,通过初始识别网络中的第二分支编码组件对第一查询矩阵、第二键矩阵以及第二值矩阵进行编码,得到第二任务编码特征。
具体的,在初始识别模型的训练阶段,第一分支编码组件中的自注意力网络层所输出的第一查询矩阵和第二分支编码组件中的自注意力网络层所输出的第二查询矩阵可以进行交叉使用,而第一分支编码组件中的自注意力网络层所输出的第一键矩阵和第一值矩阵由该第一分支编码组件正常使用,第二分支编码组件中的自注意力网络层所输出的第二键矩阵和第二值矩阵由该第二分支编码组件正常使用。因此,可以通过第一分支编码组件对第二查询矩阵、第一键矩阵以及第一值矩阵进行编码,得到第一任务编码特征;可以通过第二分支编码组件对第一查询矩阵、第二键矩阵以及第二值矩阵进行编码,得到第二任务编码组件。
举例来说,在初始识别模型的训练阶段中,假设任务共享编码特征记为Xf0,第一分支编码组件中的第一个注意力增强子组件所包含的自注意力网络层的变换权重矩阵可以包括第一参数矩阵Wq11、第二参数矩阵Wk11以及第三参数矩阵Wv11,那么第一分支编码组件中的第一个注意力增强子组件的第一查询矩阵可以记为Q11=Xf0Wq11、第一键矩阵可以记为K11=Xf0Wk11,以及第一值矩阵可以记为V11=Xf0Wv11。同理,第二分支编码组件中的第一个注意力增强子组件所包含自注意力网络层的变换权重矩阵可以包括第一参数矩阵Wq21、第二参数矩阵Wk21以及第三参数矩阵Wv21,那么第二分支编码组件中的第一个注意力增强子组件的第二查询矩阵记为Q21=Xf0Wq21、第二键矩阵记为K21 Xf0Wk21以及第二值矩阵记为V21=Xf0Wv21。可以将第一分支编码组件中的第一个注意力增强子组件的第一查询矩阵Q11与第二分支编码组件中的第一个注意力增强子组件的第二查询矩阵Q21进行交叉使用,由第一分支编码组件中的第一个注意力增强子组件对第二查询矩阵Q21、第一键矩阵K11以及第一值矩阵V11进行编码,得到第一分支编码组件中的第一个注意力增强子组件的输出特征Xf11;由第二分支编码组件中的第一个注意力增强子组件对第一查询矩阵Q11、第二键矩阵K21以及第二值矩阵V21进行编码,得到第二分支编码组件中的第一个注意力增强子组件的输出特征Xf21。
进一步地,可以将第一分支编码组件中的第二个注意力增强子组件的第一查询矩阵记为Q12(输出特征Xf11与第一参数矩阵Wq12之间的点乘结果)、第一键矩阵记为K12(输出特征Xf11与第一参数矩阵Wk12之间的点乘结果)以及第一值矩阵记为V12(输出特征Xf11与第一参数矩阵Wv12之间的点乘结果);可以将第二分支编码组件中的第二个注意力增强子组件的第二查询矩阵记为Q22、第二键矩阵记为K22以及第二值矩阵记为V22。进而可以将第一分支编码组件中的第二个注意力增强子组件的第一查询矩阵Q12与第二分支编码组件中的第二个注意力增强子组件的第二查询矩阵Q22进行交叉使用。以此类推,第一分支编码组件中的第b个注意力增强子组件的第一查询矩阵Q1b与第二分支编码组件中的第b个注意力增强子组件的第二查询矩阵Q2b进行交叉使用,由此可以由第一分支编码组件输出第一任务编码特征,由第二分支编码组件输出第二任务编码特征;此处的第一任务编码特征可以为第一分支编码组件中的第b个注意力增强子组件的输出特征;第二任务编码特征可以是指由第二分支编码组件中的b个注意力增强子组件分别对应的输出特征所拼接而成的联合特征,或者该第二任务编码特征也可以是指由第二分支编码组件中的任意c个注意力增强子组件分别对应的输出特征所拼接而成的联合特征,c为小于b的正整数,本申请对此不做限定。
步骤S104,通过初始识别模型中的第一任务解码组件对第一任务编码特征进行解码,得到第一任务识别结果,通过初始识别模型中的第二任务解码组件对任务共享编码特征和第二任务编码特征进行解码,得到第二任务识别结果。
具体的,样本音频特征在经过共享编码组件和第一分支编码组件后所得到的第一任务编码特征可以输入至初始识别模型中的第一任务解码组件,通过第一任务解码组件对第一任务编码组件进行解码,得到第一任务识别结果。样本音频特征在经过共享编码组件和第二分支编码组件后所得到的第二任务编码组件可以连同任务共享编码特征一起输入至初始识别模型中的第二任务解码组件,通过第二任务解码组件对任务共享编码特征和第二任务编码特征进行解码,得到第二任务识别结果。可选地,共享编码组件中的a个注意力增强子组件分别对应的输出特征,以及第二分支编码组件中的b个注意力增强子组件分别对应的输出特征均可以拼接为一个联合特征作为第二任务解码组件的输入特征。
其中,初始识别模型中的第一任务解码组件可以包括但不限于:CTC(Connectionist Temporal Classification,连接时序分类)解码器、Attention(注意力)解码器、ACE(Aggregation Cross-Entropy,聚合交叉熵)解码器中的一个或多个解码器,此处将不对第一任务解码组件的类型进行一一举例。本申请实施例中,以初始识别模型中的第一任务解码组件包含CTC解码器(也可以称为时序分类解码器)和Attention(注意力)解码器为例进行描述。时序分类解码器可以认为是一个线性层,通过该时序分类解码器可以将第一任务编码特征转换为时序分类率矩阵,在语音识别任务中,该时序分类概率矩阵可以用于样本音频数据中的每帧音频片段在词汇表中的每个解码单元(可以认为是文本内容)的概率。注意力解码器可以包括一个或多个注意力解码子组件,如注意力解码组件所包含的注意力解码子组件的数量可以为N,N可以为正整数,如N可以取值为1,2,……;其中注意力解码器中的注意力解码子组件具体可以为Transformer解码块(Decoder Block)。
当初始识别模型中的第一任务解码组件包括两个分支(时序分类解码器和注意力解码器)时,由第一分支编码组件输出的第一任务编码特征可以同时输入时序分类解码器和注意力解码器中,通过时序分类解码器对第一任务编码特征进行线性变换,输出时序分类概率矩阵,该时序分类概率矩阵也可以输入至注意力解码器,注意力解码器可以基于第一任务编码特征对时序分类概率矩阵进行重打分,由此输出注意力识别结果,此时的时序分类概率矩阵和注意力识别结果都可以作为样本音频数据对应的第一任务识别结果。
其中,初始识别模型中的第二任务解码组件可以由注意力统计池化层(AttentiveStatistics Pooling)、堆归一化层(Batchnorm)、两层全连接层和softmax分类层(输出维度为音频对象类别数,即说话人类别数)组成;注意力统计池化层使用注意力机制为不同的音频帧赋予不同的权重,并且同时生成加权平均数、加权标准差,将非定长的帧级别特征转为一个定长的向量,再经过堆归一化层和全连接层即可输出用于表征音频对象特征的音频对象嵌入(音频对象标识信息,此时可以默认第二任务为声纹识别任务,该音频对象标识信息可以理解为第二任务识别结果)。可以理解的是,初始识别模型中的第二任务解码组件还可以为其它网络结构,如支持向量机,本申请对此第二任务解码组件的网络结构不做限定。通过初始识别模型中的第二任务解码组件可以对输入的第二任务编码组件和共享编码组件所包含的a个注意力增强子组件的输出特征(包括任务共享编码特征)进行解码,可以输出第二任务识别结果。
需要说明的是,前述步骤S101至步骤S104的描述可以认为是样本音频数据在初始识别模型中的前向计算过程,样本数据在初始识别模型中的反向计算过程将在后续步骤S105中进行描述。
步骤S105,根据第一任务识别结果、第二任务识别结果,以及样本音频数据的第一任务标签和第二任务标签,对初始识别模型进行参数调整,将参数调整后的初始识别模型确定为目标识别模型;目标识别模型用于预测目标音频数据对应的第一任务识别结果和第二任务识别结果。
具体的,由于初始识别模型可以对第一任务和第二任务进行联合训练,因此用于训练初始识别模型的样本音频数据可以携带第一任务标签和第二任务标签。基于第一任务识别结果和样本音频数据所携带的第一任务标签可以计算第一任务损失,该第一任务损失可以包括时序分类解码器对应的损失和注意力解码器的损失。基于第二任务识别结果和样本音频数据所携带的第二任务标签可以计算第二任务损失,该第二任务损失可以选用AM-Softmax损失函数,或者可以选用其他损失函数,本申请对此不做限定。进一步地,通过第一任务损失和第二任务损失可以计算初始识别模型对应的模型损失,通过对模型损失进行最小化优化处理,对初始识别模型进行反向传播,不断训练初始识别模型中的网络参数,当初始识别模型的训练次数达到预先设定的最大迭代次数时,可以保存此时的网络参数,并将包含当前的网络参数的初始识别模型确定为训练完成的目标识别模型。
可以理解的是,在初始识别模型的训练阶段中,若第一任务和第二任务的损失优化下降的速度不同,则可以对第一任务和第二任务在初始识别模型中不共用的网络结构部分设置不同的学习速率,如初始识别模型中的第一分支编码组件和第一任务解码组件的学习速率,与初始识别模型中的第二分支编码组件和第二任务解码组件的学习速率设置为不同的数值。例如,若第一任务为语音识别任务,则初始识别模型中除共享编码组件之外的第一任务子模型的学习速率可以设置为0.003;若第一任务为声纹识别任务,则初始识别模型中除共享编码组件之外的第二任务子模型的学习速率可以设置为0.0015;当然,第一任务子模型在训练时的学习速率和第二任务子模型在训练时的学习速率可以根据实际需求进行设置,本申请对此不做限定。样本音频数据在初始识别模型中的反向传播可以采用优化算法进行迭代计算,该优化算法可以包括但不限于:梯度下降算法、随机梯度下降算法、Adam(Adaptive Moment Estimation,自适应时刻估计方法)等,本申请对初始识别模型在训练阶段中所使用的优化算法的类型不做限定。
请参见图4,图4是本申请实施例提供的一种初始识别模型的整体结构示意图。如图4所示,在初始识别模型的训练阶段中,可以获取用于训练初始识别模型的样本音频数据,通过对该样本音频数据进行特征提取得到样本音频特征;进而可以将样本音频特征输入至共享编码组件,该共享编码组件可以包括a个注意力增强子组件,样本音频特征在经过共享编码组件所包含的a个注意力增强子组件后可以得到任务共享编码特征,即共享编码组件中的第a个注意力增强子组件的输出特征。
共享编码组件输出的任务共享编码特征可以同时输入到两个分支中,即同时输入第一分支编码组件30b和第二分支编码组件30a,第一分支编码组件30b和第二分支编码组件30a都可以包括b个注意力增强子组件;第一分支编码组件30b和第二分支编码组件30a可以利用查询矩阵进行信息交互,即可以将第一分支编码组件30b中的第一查询矩阵Q1与第二分支编码组件30a中的第二查询矩阵Q2进行交叉使用,以实现初始识别模型中的交叉注意力机制。可以利用第一分支编码组件30b中的第一任务编码层,对第一分支编码组件30b中的第一键矩阵K1和第一值矩阵V1,以及第二分支编码组件30a中的第二查询矩阵Q2进行编码,得到第一分支编码组件30b中的注意力增强子组件的输出特征。同理,也可以利用第二分支编码组件30a中的第二任务编码层,对第二分支编码组件30a中的第二键矩阵K2和第二值矩阵V2,以及第一分支编码组件30b中的第一查询矩阵Q1进行编码,得到第二分支编码组件30a中的注意力增强子组件的输出特征。
其中,第一分支编码组件30b中的注意力增强子组件可以理解为将一个第二查询矩阵Q2,一个第一键矩阵K1-第一值矩阵V1的集合映射为一个输出,即第一分支编码组件30b中的注意力增强子组件的输出特征可以认为是对第一值矩阵V1的加权求和,权值可以通过计算第二查询矩阵Q2与当前的第一键矩阵K1的相关程度所得。通过交叉注意力机制在第一分支编码组件30b和第二分支编码组件30a之间选择交换查询矩阵,初始识别模型中的第一任务子模型和第二任务子模型都可以使用对方任务的查询矩阵在自身任务上求得相关性的权值以实现额外信息的辅助。
样本音频特征在经过共享编码组件和第一分支编码组件30b后的输出(第一任务编码特征)可以作为第一任务解码组件30c(可以包括CTC解码器和注意力解码器)的输入,通过CTC解码器可以将第一任务编码特征转换为CTC输出结果(时序分类概率矩阵),该CTC输出结果可以输入注意力解码器中,通过该注意力解码器可以对第一任务编码特征和时序分类概率矩阵进行解码,得到注意力输出结果(也可以称为注意力识别结果)。基于CTC输出结果、注意力输出结果以及样本音频数据所携带的第一任务标签计算第一任务对应的第一任务损失。
样本音频特征在经过共享编码组件和第二分支编码组件30a中的每个注意力增强子组件的输出特征拼接为一个联合特征(可以包括任务共享编码特征和第二任务编码特征)可以作为第二任务解码组件的输入,通过第二任务解码组件可以对共享编码组件和第二分支编码组件30a中的每个注意力增强子组件的输出特征所拼接而成的联合特征进行解码,得到音频对象输出结果(第二任务识别结果);基于音频对象输出结果和样本音频数据所携带的第二任务标签计算第二任务对应的第二任务损失。通过对第一任务损失和第二任务损失进行加权求和,可以得到初始识别模型的模型损失,通过对该模型损失进行最小优化,调整初始识别模型的网络参数,以得到训练完成的目标识别模型。
本申请实施例中,在初始识别的训练阶段中,在获取到样本音频数据对应的样本音频特征之后,可以通过共享编码组件输出任务共享编码特征;该任务共享编码特征可以同时输入第一分支编码组件和第二分支编码组件,第一分支编码组件和第二分支编码组件之间可以进行信息交互,即第一分支编码组件中的第一查询矩阵和第二分支编码组件中的第二查询矩阵进行交叉使用。经过共享编码组件和第一分支编码组件后的第一任务编码特征输入至第一任务解码组件,由第一任务解码组件输出第一任务识别结果;经过共享编码组件和第二分支编码组件的输出拼接成的第二任务识别结果输入至第二任务解码组件,由第二任务解码组件输出第二任务识别结果;进而可以基于第一任务识别结果、第二任务识别结果,所述样本音频数据的第一任务标签和第二任务标签,对初始识别模型进行参数调整。也就是说,初始识别模型为第一任务和第二任务所关联的多任务联合网络模型,即通过训练初始识别模型就可以实现第一任务和第二任务的多任务联合优化,可以提高初始识别模型的训练效率;通过在第一分支编码组件和第二分支编码组件之间可以进行信息交互,可以提升第一任务和第二任务之间的联动性,进而可以提高目标识别模型针对第一任务和第二任务的识别准确率;针对业务上对第一任务和第二任务均有需求的音频处理领域,可以将两个任务的独立网络模型融合为一个模型,可以避免存储两个网络模型,降低资源占用。
请参见图5,图5是本申请实施例提供的一种音频数据处理方法的流程示意图二;可以理解地,该音频数据处理方法可以由计算机设备执行,该计算机设备可以为服务器,或者可以为终端设备,本申请对此不做限定。如图5所示,该音频数据处理方法可以包括以下步骤S201至步骤S214:
步骤S201,对样本音频数据进行预加重处理,得到样本音频数据对应的补偿音频数据,将补偿音频数据进行分帧处理,得到补偿音频数据对应的多个音频帧片段。
为便于理解,本申请实施例仍然以初始识别模型是指为第一任务和第二任务构建的多任务联合网络模型为例,对初始识别模型的训练过程进行描述。在构建了初始识别模型对应的样本数据集之后,可以利用该样本数据集中的样本音频数据训练初始识别模型。对于样本数据集中的每一个样本音频数据,可以对该样本音频数据进行特征提取,得到该样本音频数据对应的样本音频特征。下面以样本音频特征为Fbanks特征为例,对样本音频数据的特征提取过程进行详细描述;其中,样本音频数据的特征提取过程可以包括但不限于:
计算机设备在获取到样本音频数据后,可以对样本音频数据进行预加重处理,得到该样本音频数据对应的补偿音频数据,也就是说,补偿音频数据是对样本音频数据进行预加重处理后所得到的音频数据。预加重处理可以用于提升样本音频数据中的高频部分,使得补偿音频数据的频谱变得平坦,保持在低频到高频的整个频带中,可以采用相同的信噪比来获取频谱;与此同时,预加重处理还可以用于消除发声过程中声带和嘴唇的效应,以补偿样本音频数据受到发音系统所抑制的高频部分,即可以用于突出样本音频数据在高频中的共振峰。
其中,预加重处理可以理解为样本音频数据通过一个高通滤波器所得到的结果,此时高通滤波器的结果可以称为补偿音频数据。该预加重处理可以通过以下关系来表示:H(z)=1-μz-1,其中,z可以表示为样本音频数据,H(z)可以表示为补偿音频数据,μ为参数,μ的值可以处于0.9-1.0之间,如μ可以取值为0.97,本申请对μ的具体取值不做限定。
进一步地,可以对补偿音频数据进行分帧处理,得到补偿音频数据对应的多个音频帧片段。例如,可以对补偿音频数据进行采样,将补偿音频数据中的x1个采样点集合成一个音频帧片段,此处的x1可以为正整数,如x1可以取值为256或者512等,本申请对此不做限定;每个音频帧片段所包含的时长可以根据实际需求进行调整,如一个音频帧片段所包含的时长范围可以为20~40毫秒(ms)。为了避免相邻的两个音频帧片段的变化过大,可以让相邻的两个音频帧片段之间有一段重叠区域,此重叠区域可以包括x2个取样点,x2可以是指小于上述x1的正整数,如x2的值可以为x1的1/2或1/3等。
步骤S202,将多个音频帧片段进行频域变换,得到补偿音频数据对应的音频频率数据,通过三角形滤波器组对音频频率数据进行滤波处理,得到样本音频数据对应的样本音频特征。
具体的,在获取到补偿音频数据对应的多个音频帧片段后,可以对每个音频帧片段都进行加窗处理,可以增加音频帧两端的连续性,进而可以提高后续频域变换的频谱质量;其中,上述加窗处理所使用的窗可以包括但不限于:矩形窗、汉明(Hamming)窗、汉宁(Hanning)窗等。为便于理解,下面以汉明窗为例对音频帧片段的加窗处理进行描述;假设S(xn)为多个音频帧片段中的任意一个音频帧片段,其中,xn可以取值为0,1,…,x1-1,x1用于表示单个音频帧片段的大小,也可以理解为一个音频帧片段所包含的采样点数量,那么音频帧片段S(xn)乘以汉明窗后的结果可以表示为:S(xn)*W(xn),W(xn)用于表示汉明窗,该汉明窗的形式可以表示为:W(xn,a1)=(1-a1)-a1*cos[2πn/(x1-1)],0≤xn≤x1-1;其中,不同的a1值可以产生不同的汉明窗,如a1的值可以取0.46,本申请实施例对此不做限定。
在对每个音频帧片段均进行加窗处理后,可以对加窗处理后的音频帧片段进行频域变换(例如,离散傅里叶变换等),得到每个音频帧片段分别对应的音频频率数据。可选地,在得到补偿音频数据对应的多个音频帧片段之后,为了加快音频特征提取速度,可以无需进行加窗处理,而是直接进行频域变换,得到每个音频帧片段分别对应的音频频率数据。
可以理解的是,由于样本音频数据在时域上的变换通常很难看出音频数据的特性,所以需要将音频数据转换为频域上的能量分布来观察,不同的能量分布可以代表不同音频数据的特性。因此加窗处理后的每一个音频帧片段都可以通过离散傅里叶变换,得到每个音频帧片段在频谱上的能量分布,即每一个音频帧片段分别对应的频谱,并对每个音频帧片段分别对应的频谱取模平方得到样本音频数据的功率谱(也可以称为频谱特征,或者称为音频频率数据)。
样本音频数据对应的音频频率数据(功率谱)输入三角形滤波器,通过三角形滤波器对音频频率数据进行平滑化处理,并消除谐波作用,突出样本音频数据的共振峰。该三角形滤波器组可以是指一组梅尔尺度的三角形滤波器组,也可以称为梅尔滤波器组,该三角形滤波器组可以包括H(H可以为大于1的整数)个滤波器。进一步地,可以对每个三角形滤波器的输出结果进行对数运算,获取样本音频数据的对数能量,即将功率谱转换到梅尔频率中,由此可以得到样本音频数据对应的样本音频特征。
步骤S203,根据初始识别模型中的共享编码组件所包含的下采样层,对样本音频特征进行卷积下采样处理,得到音频采样特征;根据共享编码组件中的线性网络层对音频采样特征进行变换处理,得到第一变换特征。
具体的,在提取到样本音频数据对应的样本音频特征之后,可以将该样本音频特征输入至初始识别模型,且首先输入至初始识别模型中的共享编码组件。其中,共享编码组件可以是以Conformer编码部分为框架的网络结构,例如:共享编码组件可以包括但不限于:下采样层、线性网络层、正则网络层以及a个注意力增强子组件(a可以为正整数,如a可以取值为1,2,……)等结构。
请参见图6,图6是本申请实施例提供的一种初始识别模型中的共享编码组件的结构示意图。如图6所示,将样本音频特征输入共享编码组件之前,可以对样本音频特征进行音频增强处理,此处的音频增强处理方式可以为Specaugment方法,通过该Specaugment方法可以将样本音频特征进行零均值归一化,这样在后续进行掩码(mask)时,可以直接将掩码的位置设置为0;进而可以对零均值归一化后的样本音频特征进行时间维度平移(可以认为是平移数据增强)、时间维度掩码(可以认为是时间维度的增强)以及频率维度掩码(可以认为是频率维度上的增强)等操作,以得到增强处理后的样本音频特征。
增强处理后的样本音频特征输入初始识别模型中的共享编码组件后,可以通过共享编码组件中的下采样层对样本音频特征进行卷积下采样处理,得到音频采样特征。其中,下采样层可以为一个或多个卷积层,此时的下采样层也可以称为卷积采样层(ConvolutionSubsampling),通过该下采样层对样本音频特征进行卷积运算,可以得到音频采样特征。进一步地,下采样层输出的音频采样特征可以输入共享编码组件中的线性网络层(Linear),通过该线性网络层可以对音频采样特征进行线性变换处理,得到第一变换特征;其中,线性网络层可以为一个或多个全连接层。
步骤S204,根据共享编码组件中的正则网络层对第一转换特征进行正则化处理,得到音频正则化特征;通过共享编码组件中的注意力增强子组件,输出音频正则化特征对应的任务共享编码特征。
具体的,如图6所示,共享编码组件中的线性网络层输出第一变换特征后,可以将第一变换特征输入至共享编码组件中的正则网络层,通过该正则网络层可以对第一变换特征进行正则化处理,得到音频正则化特征。其中,共享编码组件中的正则网络层可以为BN(Batch Normalization)层、LN(LayerNorm)层、IN(InstanceNorm)层、GN(GroupNorm)层、Dropout层等,本申请实施例对正则网络层的类型不做限定;正则网络层可以用于稳定初始识别模型的训练,防止网络过拟合。
共享编码组件中的正则网络层输出的音频正则化特征可以输入至共享编码组件中的注意力增强子组件(该注意力增强子组件的网络结构可以如图6所示的Conformer编码块40f);其中,注意力增强子组件的数量可以记为a(a为正整数),当a为大于或等于2的数值时,共享编码组件中的a个注意力增强子组件可以呈链式结构依次串联,如前一个注意力增强子组件的输出特征可以作为后一个注意力增强子组件的输入特征;或者这a个注意力增强子组件也可以进行残差连接,如前一个注意力增强子组件的输入特征和前一个注意力增强子组件的输出特征相加之后的特征可以作为后一个注意力增强子组件的输入特征,本申请对a个注意力增强子组件之间的连接方式不做限定。为便于理解,下面将以a个注意力增强子组件呈链式结构依次串联为例,对音频正则化特征在注意力增强子组件中的处理过程进行描述。
可以理解的是,a个注意力增强子组件可以具有相同的网络结构,例如:一个注意力增强子组件可以依次包括但不限于第一前馈网络层(如图6所示的前馈网络层40a)、自注意力网络层(如图6所示的多头自注意力结构40b,该多头自注意力结构40b可以包括多个自注意力结构)、卷积层(如图6所示的卷积层40c)、第二前馈网络层(如图6所示的前馈网络层40d)以及归一化层(如图6所示的归一化层40e)等。简单来说,一个注意力增强子组件的网络结构类似于一个“三明治”结构:在两个前馈网络层之间连接自注意力网络层和卷积层,注意力增强子组件虽然使用两个前馈网络层,但是每个前馈网络层仅贡献一半的值,即第一前馈网络层和第二前馈网络层的输出特征在乘以二分之一后才会输入下一个网络层;如第一前馈网络层的输出特征在乘以二分之一后输入至自注意力网络层,第二前馈网络层的输出特征在乘以二分之一后输入至归一化层。第一前馈网络层和第二前馈网络层都可以包括一个或多个全连接层,可以用于对输入的特征进行线性变换处理。
其中,下面以a个注意力增强子组件中的任意一个注意力增强子组件(例如,第i个注意力增强子组件,i为小于或等于a的正整数)进行说明。计算机设备可以获取第i个注意力增强子组件的输入特征;其中,当i为1时,第i个注意力增强子组件的输入特征为正则网络层输出的音频正则化特征;当t不为1时,第i个注意力增强子组件的输入特征可以为第i-1个注意力增强子组件的输出特征。根据第i个注意力增强子组件中的第一前馈网络,对第i个注意力增强子组件的输入特征进行变换处理,得到第二变换特征,将第二变换特征和第i个注意力增强子组件的输入特征组合为第一融合特征;例如,将第二变换特征乘以二分之一后的特征值与第i个注意力增强子组件的输入特征相加,可以得到第一融合特征。
将第一融合特征作为第i个注意力增强子组件中的自注意力网络层的输入特征,根据第i个注意力增强子组件中的自注意力网络层,输出第一融合特征对应的注意力输出特征,将注意力输出特征和第一融合特征组合为第二融合特征,如可以将注意力输出特征和第一融合特征相加得到第二融合特征。其中,第一融合特征在第i个注意力增强子组件的自注意力网络层中的处理过程可以包括:第i个注意力增强子组件可以包括一个或多个自注意力网络层,当第i个注意力增强子组件包括一个自注意力网络层时,可以基于第i个注意力增强子组件中的自注意力网络层所对应的变换权重矩阵(可以在初始识别模型的训练过程中学习得到),将第一融合特征变换为第三查询矩阵、第三键矩阵以及第三值矩阵。一个自注意力网络层的变换权重矩阵可以包括第一参数矩阵Wq31、第二参数矩阵Wk31以及第三参数矩阵Wv31;将第一融合特征和第一参数矩阵Wq31进行点乘运算可以得到第三查询矩阵Q31,将第一融合特征和第二参数矩阵Wk31进行点乘运算可以得到第三键矩阵K31,将第一融合特征和第三参数矩阵Wv31进行点乘运算可以得到第三值矩阵V31。第三查询矩阵Q31中的每个查询向量可以用于编码每个特征与其他特征之间的相似性关系,该相似性关系可以决定当前特征与前序特征之间的依赖信息。
进一步地,可以对第三查询矩阵Q31和第三键矩阵K31的转置矩阵进行点乘运算,得到候选权重矩阵(可以表示为表示第三键矩阵K31的转置矩阵),该候选权重矩阵可以认为是第三查询矩阵Q31和第三键矩阵K31中的每一行向量的内积(也可以称为点乘、点积)。为了防止内积过大,可以获取第三查询矩阵Q31对应的列数量(第三查询矩阵Q31和第三键矩阵K31具有相同的列数量,也可以称为向量维度),进而可以对候选权重矩阵与列数量的平方根(可以记为/>)之间的比值进行归一化处理,得到注意力权重矩阵。该注意力权重矩阵可以表示为/>其中softmax函数为用于归一化处理的函数,softmax函数可以用于计算单个特征对于其他特征的自注意力系数,通过softmax函数可以对/>中的每一行进行softmax。将注意力权重矩阵与第三值矩阵V31之间的点乘,确定为第i个注意力增强子组件中的自注意力网络层对应的输出特征Oi1,即/>此时的输出特征Oi1可以作为第一融合特征对应的注意力输出特征。/>
可选地,当第i个注意力增强子组件包括多个自注意力网络层时,那么多个自注意力网络层的输入特征都可以是第一融合特征,即多个自注意力网络层的输入特征均是相同的,那么第i个注意力增强子组件中的每一个自注意力网络层都可以对应一个输出特征,可以依次记为输出特征Oi1、输出特征Oi2、……,进而可以将第i个注意力增强子组件中的多个自注意力网络层分别对应的输出特征拼接为第i个注意力增强子组件对应的注意力输出特征,此处的拼接可以为concat操作;换言之,该注意力输出特征可以为多个自注意力网络层(也可以称为多头注意力结构)的输出特征。
如图6所示,将注意力输出特征和第一融合特征相加得到第二融合特征后,可以将第二融合特征输入至第i个注意力增强子组件中的卷积层40c,根据第i个注意力增强子组件中的卷积层40c,对第二融合特征进行卷积运算,得到音频卷积特征,将音频卷积特征和第二融合特征组合为第三融合特征;例如,可以将音频卷积特征和第二融合特征相加得到第三融合特征。该第三融合特征可以输入至第i个注意力增强子组件中的前馈网络层40d(第二前馈网络层),根据第i个注意力增强子组件中的前馈网络层40d,对第三融合特征进行变换处理,得到第三变换特征,将第三变换特征和第三融合特征组合为第四融合特征;例如,可以将第三变换特征乘以二分之一后的特征值与第三融合特征相加得到第四融合特征。该第四融合特征可以输入至第i个注意力增强子组件中的归一化层40e,根据第i个注意力增强子组件中的归一化层40e,对第四融合特征进行归一化处理,可以得到第i个注意力增强子组件的输出特征,进而可以将第a个注意力增强子组件的输出特征确定为共享编码组件输出的任务共享编码特征。
需要说明的是,样本音频数据可以认为是一个连续的音频信号,那么共享编码组件中的各个部分所处理的音频数据的时长可以是不一样的;例如,共享编码组件中的音频增强处理可以对10毫秒(ms)的音频进行处理,即以10毫秒(ms)的音频为单位进行处理;共享编码组件中的下采样层同样以10毫秒(ms)的音频为单位进行处理;共享编码组件中的线性网络层、正则网络层以及每个注意力增强子组件都以40毫秒(ms)的音频为单位进行处理等。
步骤S205,通过初始识别模型中的第一分支编码组件对任务共享编码特征进行变换处理,得到第一查询矩阵、第一键矩阵以及第一值矩阵,通过初始识别模型中的第二分支编码组件对任务共享编码特征进行变换处理,得到第二查询矩阵、第二键矩阵以及第二值矩阵。
步骤S206,通过初始识别网络中的第一分支编码组件对第二查询矩阵、第一键矩阵以及第一值矩阵进行编码,得到第一任务编码特征,通过初始识别网络中的第二分支编码组件对第一查询矩阵、第二键矩阵以及第二值矩阵进行编码,得到第二任务编码特征。
具体的,初始识别模型中的共享编码组件输出任务共享编码特征之后,该任务共享编码特征可以分别输入至初始识别模型中的两个分支编码组件(包括第一任务对应的第一分支编码组件,以及第二任务对应的第二分支编码组件)。初始识别模型中的两个分支编码组件都可以包括b个注意力增强子组件,两个分支编码组件中的b个注意力增强子组件之间的连接方式与共享编码组件中的a个注意力增强子组件之间的连接方式相同,且b个注意力增强子组件中每一个注意力增强子组件的网络结构与前述共享编码组件中的注意力增强子组件的网络结构相同,如图6所示的Conformer编码块40f的网络结构。
其中,第一查询矩阵、第一键矩阵以及第一值矩阵是由第一分支编码组件所包含的注意力增强子组件中的自注意力网络层变换得到的;第二查询矩阵、第二键矩阵以及第二值矩阵是由第二分支编码组件所包含的注意力增强子组件中的自注意力网络层变换得到的。第二查询矩阵、第一键矩阵以及第一值矩阵的编码处理与前述第三查询矩阵、第三键矩阵以及第三值矩阵的处理过程相同;第一查询矩阵、第二键矩阵以及第二值矩阵的编码处理同样与前述第三查询矩阵、第三键矩阵以及第三值矩阵的处理过程相同。第一任务编码特征可以为第一分支编码组件中的第b个注意力增强子组件的输出特征,第二任务编码特征可以为第二分支编码组件中的b个注意力增强子组件分别对应的输出特征所拼接而成的联合特征,可以丰富第二任务编码特征的多样性,进而可以提高第二任务的识别效果;其中,第一任务编码特征和第二任务编码特征的获取过程均可以参见步骤S204中对任务共享编码特征获取过程的相关描述,此处不再进行赘述。
步骤S207,将第一任务编码特征输入至初始识别模型中的时序分类解码器,通过时序分类解码器对第一任务编码特征进行线性变换,输出时序分类概率矩阵。
具体的,初始识别模型可以包括与第一任务相关联的第一任务解码组件,该第一任务解码组件可以包括时序分类解码器和注意力解码器。第一分支编码组件输出的第一任务编码特征可以输入至时序分类解码器和注意力解码器;通过时序分类解码器可以对第一任务编码特征进行线性变换,输出时序分类概率矩阵;该时序分类概率矩阵可以用于表示样本音频数据中的每一帧音频在词汇表中的每个解码单元的概率,词汇表可以为预先构建的词典。
其中,时序分类解码器可以为CTC(Connectionist Temporal Classification,连接时序分类)解码器,该CTC解码器实质上可以看成是一个线性网络层,通过该线性网络层可以将第一任务编码特征转换为词汇表大小的CTC概率矩阵(即时序分类概率矩阵)。
步骤S208,将时序分类概率矩阵和第一任务编码特征输入至初始识别模型中的注意力解码器,通过注意力解码器对时序分类概率矩阵和第一任务编码特征进行解码,输出注意力识别结果,将时序分类概率矩阵和注意力识别结果确定为第一任务识别结果。
具体的,第一任务编码特征可以输入至第一任务解码组件中的注意力解码器,与此同时,时序分类解码器输出的时序分类概率矩阵也可以输入至注意力解码器;在注意力解码器中,可以基于第一任务编码特征对时序分类概率矩阵进行重评分,输出注意力识别结果;时序分类解码器输出的时序分类概率矩阵和注意力解码器输出的注意力识别结果均可以作为样本音频数据对应的第一任务识别结果。
其中,注意力解码器可以包括N个注意力解码子组件,N可以为正整数,如N可以取值为1,2,……;注意力解码器中的N个注意力解码子组件之间的连接方式可以参见前述共享编码组件中的a个注意力增强子组件之间的连接方式,本申请对N个注意力解码子组件之间的连接方式不做限定。该注意力解码器的网络结构可以参见图7,图7是本申请实施例提供的一种初始识别模型中的注意力解码器的结构示意图。如图7所示的第一任务编码组件可以由共享编码组件和第一分支编码组件构成,该第一任务编码组件可以包括M(此处M的取值可以为前述a和b的数值之和)个注意力增强子组件。初始识别模型所包含的注意力解码器中的N个注意力解码子组件可以具有相同的网络结构,每个注意力解码子组件的网络结构可以如图7所示的模块结构50g,该模块结构50g(即注意力解码子组件)可以包括但不限于掩码多头注意力结构50a、组合+归一化层50b、多头注意力结构50c、组合+归一化层50d、前馈网络层50e以及组合+归一化层50f;在初始识别模型中,N个注意力解码子组件后可以连接线性层50h(例如,该线性层50h可以为全连接网络层)和输出层50i(例如,该输出层50i可以为softmax层)。该线性层50h可以对注意力解码器的输出特征进行线性变换,然后经过输出层50i可以输出注意力识别结果。
下面以注意力解码器所包含的N个注意力解码子组件中的任意一个注意力解码子组件(例如,第j个注意力解码子组件,j为小于或等于N的正整数)进行说明。计算机设备可以将时序分类概率矩阵和第一任务编码特征组合为联合输入特征,并将联合输入特征输入至初始识别模型中的注意力解码器。可以获取N个注意力解码子组件中的第j个注意力解码子组件的输入特征;当j为1时,第j个注意力解码子组件的输入特征包括联合输入特征和音频起始符,该音频起始符可以用于表示样本音频数据的起始标志;当j不为1时,第j个注意力解码子组件的输入特征包括联合输入特征和第j-1个注意力解码子组件的输出特征;换言之,上述联合输入特征可以输入至注意力解码器中的N个注意力解码子组件。对于N个注意力解码子组件中的第j个注意力解码子组件,可以根据第j个注意力解码子组件中的自注意力掩码层(如图7所示的掩码多头注意力结构50a),输出第j-1个注意力解码子组件的输出特征所对应的注意力掩码特征(例如,可以为图7所示的掩码多头注意力结构50a的输出特征),对注意力掩码特征和第j-1个注意力解码子组件的输出特征的组合特征(可以认为是注意力掩码特征与第j-1个注意力解码子组件的输出特征相加后的特征)进行归一化处理,得到第一归一化特征,此处的第一归一化特征可以为图7所示的组合+归一化层50b的输出特征。
进一步地,可以根据第j个注意力解码子组件中的自注意力网络层(如图7所示的多头注意力结构50c,与前述图6所示的多头自注意力结构40b类似),将第一注意力掩码特征变换为第四查询矩阵,将联合输入特征变换为第四键矩阵和第四值矩阵,基于第四查询矩阵、第四键矩阵以及第四值矩阵,输出注意力解码特征,对注意力解码特征和第一归一化特征的组合特征进行归一化处理,得到第二归一化特征。其中,第四查询矩阵、第四键矩阵以及第四值矩阵的获取过程可以参见前述步骤S204中的第三查询矩阵Q31、第三键矩阵K31以及第三值矩阵V31的获取过程,此处不再进行赘述;注意力解码特征可以为图7所示的多头注意力结构50c的输出特征,第二归一化特征可以为图7所示的组合+归一化层50d的输出特征。
将第二归一化特征输入至第j个注意力解码子组件中的第三前馈网络层(如图7所示的前馈网络层50e),根据第j个注意力解码子组件中的第三前馈网络层,对第二归一化特征进行变换处理,得到第四变换特征,对第四变换特征和第二归一化特征的组合特征进行归一化处理,得到第j个注意力解码子组件的输出特征;第j个注意力解码子组件的输出特征可以为图7所示的组合+归一化层50f的输出特征,在得到第N个注意力解码子组件的输出特征后,可以通过线性层50h对第N个注意力解码子组件的输出特征进行变换处理,得到输出注意力识别结果。通过注意力解码器所包含的N个注意力解码子组件中的组合+归一化层,可以防止初始识别模型在训练过程中发生退化,并可以加快初始识别模型的训练速度,提高训练稳定性。
需要说明的是,如图7所示的多头注意力结构50c(自注意力网络层)的计算原理与图6所示的多头自注意力结构40b(自注意力网络层)的计算原理类似,此处不再进行赘述。如图7所示的掩码多头注意力结构50a(自注意力掩码层)的计算原理与多头注意力结构50c的计算原理相同,只是掩码多头注意力结构50a相比于多头注意力结构50c而言多加了一个mask码(掩码),mask可以对某些值进行掩盖,使其在参数更新时不产生效果。本申请实施例中,注意力解码器可以涉及以下两种掩码:填充掩码(padding mask)和序列掩码(sequencemask)。其中,填充掩码可以对每个批次输入的不同序列长度的样本音频特征进行对齐;具体来说,若样本音频特征的序列长度小于长度阈值(可以根据实际需求进行设置,本申请对此不做限定),则可以在样本音频特征后面填充零,这些填充零的位置可以加上一个非常大的负数(负无穷),这些填充零的位置最终识别的概率就会接近0;若样本音频特征的序列长度大于长度阈值,则可以截取该样本音频特征中的其实部分内容,并把多余的内容直接舍弃。序列掩码是为了让让注意力解码器不能看见未来的信息;例如,对于一个样本音频特征,在t时刻的任务识别过程中,注意力解码器的输出特征只能依赖于t时刻之前的输出特征,而不能依赖t时刻之后的输出特征,因此可以采用序列掩码把t时刻之后的信息隐藏起来。
其中,初始识别模型的编码组件(包括共享编码组件、第一分支编码组件以及第二分支编码组件)中的各个注意力增强子组件可以基于自注意力网络层(例如,如图6所示的多头自注意力结构40b)得到查询矩阵、键矩阵以及值矩阵;初始识别模型的注意力解码器中的注意力解码子组件所包含的多头注意力结构50c(注意力解码子组件中的自注意力网络层)中的第四查询矩阵可以来自于掩码多头注意力结构50a(自注意力掩码层)和组合+归一化层50b输出的第一归一化特征,第四键矩阵和第四值矩阵可以来自于第一分支编码组件中的第b个注意力增强子组件输出的第一任务编码特征与时序分类概率矩阵组合而成的联合输入特征。可以理解的是,注意力解码器所包含的注意力解码子组件中的掩码多头注意力结构50a可以获取之前已经预测输出的信息,注意力解码器所包含的注意力解码子组件中的多头注意力结构50c可以通过当前输入的信息得到下一时刻的信息,即标识当前的输入信息与经过编码组件提取过的特征向量之间的关系来预测输出。
如图7所示,对于注意力解码器中的第一个注意力解码子组件(即前述j=1的情形),输入至第一个注意力解码子组件中的掩码多头注意力结构50a的文本内容特征可以为音频起始符对应的文本特征;对于注意力解码器中的后续注意力解码子组件(如第二个注意力解码子组件、第三个注意力解码子组件、……、第b个注意力解码子组件,即前述j≠1的情形),输入至第j(j≠1)个注意力解码子组件中的掩码多头注意力结构50a的文本内容特征可以为第j-1个注意力解码子组件输出的文本识别结果对应的文本特征。需要说明的是,文本内容特征在输入掩码多头注意力结构50a之前,可以对文本内容特征进行位置编码处理,得到该文本内容特征对应的位置编码信息,进而可以将文本内容特征和位置编码信息相加后的特征输入至掩码多头注意力结构50a。其中,本申请实施例所涉及的位置编码方式可以包括但不限于:正余弦位置编码(2D sine position embedding)、可学习位置编码(learnable position embedding)等,通过为文本内容特征添加位置编码信息,可以提高初始识别模型的泛化性和鲁棒性。
步骤S209,将任务共享编码特征和第二任务编码特征拼接为任务联合编码特征,将任务联合编码特征输入至初始识别模型中的第二任务解码组件。
具体的,可以将共享编码组件输出的任务共享编码特征和第二分支编码组件输出的第二任务编码特征(b个注意力增强子组件分别对应的输出特征所拼接而成的联合特征)拼接为任务联合编码特征,进而可以将该任务联合编码特征输入至初始识别模型中的第二任务解码组件。其中,任务联合编码特征可以为任务共享编码特征与第二分支编码组件中的每一个注意力增强子组件的输出特征拼接而成的联合特征,或者可以为共享编码组件和第二分支编码组件中的每一个注意力增强子组件的输出特征拼接而成的联合特征等。
步骤S210,根据初始识别模型所包含的第二任务解码组件中的注意力统计池化层,对任务联合编码特征进行池化运算,得到注意力池化特征,将注意力池化特征进行归一化处理,得到第三归一化特征。
具体的,根据第二任务解码组件中的注意力统计池化层,可以对任务联合编码特征进行池化运算,得到注意力池化特征,此处的注意力统计池化层可以为平均池化层,或者可以为最大池化层,本申请对注意力统计池化层的类型不做限定。该注意力池化特征可以输入至第二任务解码器中的堆归一化层,根据该对归一化层对注意力池化特征进行归一化处理,得到第三归一化特征。
步骤S211,根据初始识别模型所包含的第二任务解码组件中的全连接网络层,对第三归一化特征进行全连接处理,得到目标解码特征,基于目标解码特征输出第二任务识别结果。
具体的,堆归一化层输出的第三归一化特征可以输入至第二任务解码组件中的全连接网络层,根据该全连接网络层可以对第三归一化特征进行全连接处理,得到目标解码特征。其中,第二任务解码组件所包含的全连接网络层的数量可以为一个或多个,如第二任务解码组件可以包括两个全连接网络层,不同的全连接网络层的输出特征可以对应不同的维度,如第二任务解码组件中的第一个全连接网络层的输出结果的维度可以为512,第二任务解码组件中的第二个全连接网络层的输出结果的维度可以为256等,本申请实施例可以根据实际需求确定第二任务解码组件所包含的全连接网络层的数量。进一步地,可以通过第二任务解码组件中的softmax分类层,将目标解码特征转换为第二任务识别结果;例如,第二任务为音频对象识别任务(或者可以称为说话识别任务)时,由softmax分类层输出的第二任务识别结果的维度可以为音频对象类别数。
步骤S212,根据第一任务识别结果和样本音频数据对应的第一任务标签,确定第一任务损失,根据第二任务识别结果和样本音频数据对应的第二任务标签,确定第二任务损失。
具体的,初始识别模型中的第一任务解码组件包括时序分类解码器和注意力解码器,那么第一任务识别结果可以包括时序分类概率矩阵和注意力识别结果。根据时序分类结果和样本音频数据对应的第一任务标签之间的误差,可以确定时序分类损失,该时序分类损失可以记为LCTC;进而可以根据注意力识别结果和样本音频数据对应的第一任务标签之间的误差,可以确定注意力损失,该注意力损失可以记为LATT。进一步地,可以获取时序分类权重(可以记为u)和注意力解码权重(可以记为1-u),通过对时序分类权重、时序分类损失、注意力解码权重以及注意力损失进行加权求和,得到第一任务损失,此时的第一任务损失可以表示为L1=u*LCTC+(1-u)*LATT;其中,u可以用于控制时序分类损失与注意力损失之间的平衡,u的取值可以根据初始识别模型的具体情况进行设定,本申请对此不做限定。
其中,第二任务解码组件中的softmax分类层可以采用AM-Softmax(一种损失函数类型)损失函数来训练初始识别模型中的第二任务子模型;可选地,还可以采用A-Softmax损失函数、L-Softmax损失函数等,本申请对第二任务解码组件所采用的损失函数类型不做限定。根据第二分支编码组件输出的第二任务识别结果以及样本音频数据对应的第二任务标签之间的误差,可以确定第二任务损失,该第二任务损失可以记为L2。
步骤S213,获取第一任务权重和第二任务权重,对第一任务权重、第一任务损失、第二任务权重以及第二任务损失进行加权求和,得到初始识别模型对应的模型损失。
具体的,由于初始识别模型是一个多任务联合网络模型,因此该初始识别模型的整体损失函数是由多个任务各自的损失函数加权求和得到的,如可以对第一任务损失和第二任务损失进行加权求和,以得到初始识别模型对应的模型损失。可以为第一任务损失设置第一任务权重(可以记为w),为第二任务损失设置第二任务权重(可以记为1-w),进而可以根据第一任务权重和第二任务权重,对第一任务损失和第二任务损失进行加权求和,得到初始识别模型对应的模型损失,该模型损失可以记为:L=w*L1+(1-w)*L2=w*[u*LCTC+(1-u)*LATT]+(1-w)*L2;其中,w可以用于控制第一任务损失与第二任务损失之间的平衡,如可以通过w的取值可以让初始识别模型的训练更偏向于第一任务和第二任务中的单一任务,w的取值可以根据初始识别模型的具体情况进行设定,本申请对此不做限定。
步骤S214,根据模型损失对初始识别模型的网络参数进行调整,将参数调整后的初始识别模型确定为目标识别模型。
具体的,通过对模型损失进行最小化优化处理,对初始识别模型进行反向传播,不断训练初始识别模型中的网络参数,当初始识别模型的训练次数达到预先设定的最大迭代次数时,可以保存此时的网络参数,并将包含当前的网络参数的初始识别模型确定为训练完成的目标识别模型。
举例来说,假设初始识别模型是利用样本音频数据对应的第一任务标签和第二任务标签创建的双任务联合模型,初始识别模型的训练过程可以充分利用样本音频数据的多个任务标签信息;若训练完成的目标识别模型是指用于语音识别和说话人识别的双任务联合模型,且将该目标识别模型应用在会议应用的多说话人的混杂场景中,则可以利用目标识别模型对单个说话人的音频数据进行识别,得到单个说话人的音频数据对应的文本内容(第一任务识别结果)和说话人标签(第二任务识别结果)。目标识别模型可以学习音频数据中的说话人信息,并结合说话人的特征来辅助提升语音识别的效果,对单个说话人语音识别的词错率指标相对语音识别任务单独训练的模型可以提升10%,提升了目标识别模型的鲁棒性。此外,从模型存储角度分析,语音识别任务单独模型以及说话人识别任务单独模型的存储大小分别在200兆(M)和250兆左右,目标识别模型(双任务联合模型)并不会增添过多参数量,只是在语音识别任务单独模型的基础上增加了第二任务解码组件(说话人解码器)部分的参数。目标识别模型的大小所占存储在250兆左右,因此使用双任务联合模型可以降低两个单独模型的训练储备成本。
本申请实施例中,可以利用样本音频数据对应的第一任务标签和第二标签信息,创建用于识别双任务联合学习的模型框架(目标识别模型),通过在第一分支编码组件和第二分支编码组件之间引入交叉注意力机制,可以加强第一任务和第二任务之间的信息交互,进而可以提高初始识别模型对第一任务和第二任务的识别准确率;在初始识别模型的训练阶段中,不同的任务可以设置不同的学习速率,进而可以提高初始识别模型的训练速度,通过训练初始识别模型就可以实现第一任务和第二任务的多任务联合优化,可以提高初始识别模型的训练效率,并节省资源占用。
请参见图8,图8是本申请实施例提供的一种音频数据处理方法的流程示意图三;可以理解地,该音频数据处理方法可以由计算机设备执行,该计算机设备可以为服务器,或者可以为终端设备,本申请对此不做限定。如图8所示,该音频数据处理方法可以包括以下步骤S301至步骤S303:
步骤S301,获取目标音频数据对应的目标音频特征,通过目标识别模型中的共享编码组件对目标音频特征进行编码,得到音频共享编码特征。
具体的,训练完成的初始识别模型可以称为目标识别模型,该目标识别模型可以在音频处理应用中进行上线,上线后的目标识别模型可以应用在视频/音频会议、音视频剪辑等场景中。为便于理解,本申请实施例以目标识别模型应用在视频/音频会议场景为例进行描述。可以采集视频/音频会议场景中的原始音频数据,该原始音频数据可以为包含多个说话人语音的音频数据,进而可以对原始音频数据进行分离处理,得到单个说话人的音频数据,并将单个说话人的音频数据确定为目标音频数据;可以对该目标音频数据进行特征提取,得到该目标音频数据对应的目标音频特征。其中,目标音频特征的提取过程可以参见前述图5所对应实施例的步骤S201和步骤S202中所描述的样本音频特征的提取过程,此处不再进行赘述。
进一步地,可以将目标音频特征输入至目标识别模型,根据目标识别模型中的共享编码组件对目标音频特征进行编码,得到音频共享编码特征,该音频共享编码特征的获取过程可以参见前述图5所对应实施例的步骤S203和步骤S204中所描述的任务共享编码特征的获取过程,此处不再进行赘述。
步骤S302,通过目标识别模型中的第一分支编码组件对音频共享编码特征进行编码,得到第一音频任务编码特征,通过目标识别模型中的第二分支编码组件对音频共享编码特征进行编码,得到第二音频任务编码特征。
具体的,目标识别模型中的共享编码组件输出的音频共享编码特征可以输入至目标识别模型中的第一分支编码组件和第二分支编码组件,通过目标识别模型中的第一分支编码组件对音频共享编码特征进行编码处理,得到第一音频任务编码特征;通过目标识别模型中的第二分支编码组件对音频共享编码特征进行编码处理,得到第二音频任务编码特征。其中,第一音频任务编码特征和第二音频任务编码特征的获取过程同样可以参见前述图5所对应实施例的步骤S203和步骤S204中所描述的任务共享编码特征的获取过程,此处不再进行赘述。
需要说明的是,在初始识别模型的训练阶段,初始识别模型的第一分支编码组件中的第一查询矩阵可以与初始识别模型的第二分支编码组件中的第二查询矩阵进行信息交互;而在目标识别模型的应用过程中,目标识别模型中的第一分支编码组件和第二分支编码组件之间无需进行信息交互,因此目标识别模型中的第一分支编码组件和第二分支编码组件的计算原理与目标识别模型中的共享编码组件的计算原理相同。
步骤S303,通过目标识别模型中的第一任务解码组件对第一音频任务编码特征进行解码,得到第一音频任务识别结果,通过目标识别模型中的第二任务解码组件对音频共享编码特征和第二音频任务编码特征进行解码,得到第二音频任务识别结果。
具体的,目标识别模型中的第一任务解码组件可以仅包括时序分类解码器,或者仅包括注意力解码器,或者包括时序分类解码器和注意力解码器,本申请对此不做限定。为便于理解,下面以第一任务解码组件包括时序分类解码器和注意力解码器为例进行描述。可以将第一音频任务编码特征输入至目标识别模型中的时序分类解码器,通过目标识别模型中的时序分类解码器输出第一音频任务编码特征对应的音频分类概率矩阵;根据音频分类概率矩阵确定目标音频数据对应的多个候选路径;候选路径用于表征目标音频数据对应的文本识别结果;将音频分类概率矩阵和第一音频任务编码特征输入至目标识别模型中的注意力解码器,通过目标识别模型中的注意力解码器,对音频分类概率矩阵和第一音频任务编码特征进行解码,得到多个候选路径分别对应的输出概率,将最大的输出概率所对应的候选路径关联的文本确定为第一音频任务识别结果。
其中,采用第一任务解码组件对第一音频任务编码特征进行解码,解码方式可以包括但不限于:CTC_greedy_search(CTC贪婪搜索算法)、CTC_beam_search(CTC波束搜索算法)、Attention(注意力)、Attention_rescoring(注意力重评分)等。其中,CTC贪婪搜索算法可以在时序分类解码器(如CTC解码器)中的每一步迭代时选择概率最大的输出值;CTC波束搜索算法可以在时序分类解码器中的每一步迭代时选择保有集束尺寸(beam_size)的多个候选路径,进而可以从多个候选路径中选择最优的路径;Attention可以在注意力解码器中应用标准自回归波束搜索,Attention_rescoring可以首先在CTC解码器中应用CTC波束搜索,生成多个候选路径,随后在注意力解码器中对多个候选路径进行重评分,从多个候选路径中选择最优的候选路径,将最优的候选路径所关联的文本确定为第壹饮品任务识别结果。
可以理解的是,可以将音频共享编码特征和第二音频任务编码特征拼接为音频联合编码特征,将音频联合编码特征输入至目标识别模型中的第二任务解码组件;通过目标识别模型中的第二任务解码组件对音频联合编码特征进行解码,输出目标音频数据对应的音频对象特征,获取音频对象特征与多个注册音频对象之间的相似度,将最大的相似度所对应的注册音频对象确定为目标音频数据对应的第二音频任务识别结果。
其中,可以使用注意力解码器中的一个全连接网络层(如倒数第二层全连接网络层)的输出作为代表目标音频数据说话人信息的嵌入(即音频对象特征),将该音频对象特征与已注册的说话人嵌入(注册音频对象对应的对象特征)一一计算相似度,若超过预先设定的相似度阈值则识别为相应说话人,此处的相似度阈值可以根据经验进行设置,本申请对此不做限定。可选地,也可以将最大的相似度所对应的注册音频对象确定为目标音频数据对应的第二音频任务识别结果。
本申请实施例中,训练完成的目标识别模型为第一任务和第二任务所关联的多任务联合网络模型,即通过训练初始识别模型就可以实现第一任务和第二任务的多任务联合优化,可以提高初始识别模型的训练效率,并节省训练资源;由于第一分支编码组件和第二分支编码组件之间可以进行信息交互,可以实现不同任务之间可以借助其他任务所学习到的信息来提升各自任务的识别性能,进而可以提高目标识别模型的识别准确性。
可以理解的是,在本申请的具体实施方式中,可能涉及到用户的音频数据(例如,语音内容、声纹信息等),当本申请以上实施例运用到具体产品或技术中时,需要获得用户等对象的许可或同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
请参见图9,图9是本申请实施例提供的一种音频数据处理装置的结构示意图。如图9所示,该音频数据处理装置1包括:音频共享编码模块11,共享特征变换模块12,任务交互编码模块13,任务解码模块14,模型训练模块15;
音频共享编码模块11,用于获取样本音频数据对应的样本音频特征,通过初始识别模型中的共享编码组件对样本音频特征进行编码,得到任务共享编码特征;
共享特征变换模块12,用于通过初始识别模型中的第一分支编码组件对任务共享编码特征进行变换处理,得到第一查询矩阵、第一键矩阵以及第一值矩阵,通过初始识别模型中的第二分支编码组件对任务共享编码特征进行变换处理,得到第二查询矩阵、第二键矩阵以及第二值矩阵;
任务交互编码模块13,用于通过初始识别网络中的第一分支编码组件对第二查询矩阵、第一键矩阵以及第一值矩阵进行编码,得到第一任务编码特征,通过初始识别网络中的第二分支编码组件对第一查询矩阵、第二键矩阵以及第二值矩阵进行编码,得到第二任务编码特征;
任务解码模块14,用于通过初始识别模型中的第一任务解码组件对第一任务编码特征进行解码,得到第一任务识别结果,通过初始识别模型中的第二任务解码组件对任务共享编码特征和第二任务编码特征进行解码,得到第二任务识别结果;
模型训练模块15,用于根据第一任务识别结果、第二任务识别结果,以及样本音频数据的第一任务标签和第二任务标签,对初始识别模型进行参数调整,将参数调整后的初始识别模型确定为目标识别模型;目标识别模型用于预测目标音频数据对应的第一任务识别结果和第二任务识别结果。
其中,音频共享编码模块11,共享特征变换模块12,任务交互编码模块13,任务解码模块14,模型训练模块15的具体功能实现方式可以参见图3所对应实施例中的步骤S101至步骤S105,此处不再进行赘述。
在一个或多个实施例中,音频共享编码模块11包括:音频分帧单元111,频域变换单元112,音频下采样单元113,第一线性变换单元114,正则化处理单元115,共享特征获取单元116;
音频分帧单元111,用于对样本音频数据进行预加重处理,得到样本音频数据对应的补偿音频数据,将补偿音频数据进行分帧处理,得到补偿音频数据对应的多个音频帧片段;
频域变换单元112,用于将多个音频帧片段进行频域变换,得到补偿音频数据对应的音频频率数据,通过三角形滤波器组对音频频率数据进行滤波处理,得到样本音频数据对应的样本音频特征。
音频下采样单元113,用于根据初始识别模型中的共享编码组件所包含的下采样层,对样本音频特征进行卷积下采样处理,得到音频采样特征;
第一线性变换单元114,用于根据共享编码组件中的线性网络层对音频采样特征进行变换处理,得到第一变换特征;
正则化处理单元115,用于根据共享编码组件中的正则网络层对第一转换特征进行正则化处理,得到音频正则化特征;
共享特征获取单元116,用于通过共享编码组件中的注意力增强子组件,输出音频正则化特征对应的任务共享编码特征。
其中,音频分帧单元111,频域变换单元112,音频下采样单元113,第一线性变换单元114,正则化处理单元115,共享特征获取单元116的具体功能实现方式可以参见图5所对应实施例中的步骤S201至步骤S204,此处不再进行赘述。
在一个或多个实施例中,共享编码组件所包含的注意力增强子组件的数量为a个,a为正整数;
共享特征获取单元116包括:输入特征获取子单元1161,第一特征变换子单元1162,自注意力处理子单元1163,卷积运算子单元1164,第二特征变换子单元1165,归一化处理子单元1166;
输入特征获取子单元1161,用于获取a个注意力增强子组件中的第i个注意力增强子组件的输入特征;i为1时,第i个注意力增强子组件的输入特征为音频正则化特征,i为小于或等于a的正整数;
第一特征变换子单元1162,用于根据第i个注意力增强子组件中的第一前馈网络层,对第i个注意力增强子组件的输入特征进行变换处理,得到第二变换特征,将第二变换特征和第i个注意力增强子组件的输入特征组合为第一融合特征;
自注意力处理子单元1163,用于根据第i个注意力增强子组件中的自注意力网络层,输出第一融合特征对应的注意力输出特征,将注意力输出特征和第一融合特征组合为第二融合特征;
卷积运算子单元1164,用于根据第i个注意力增强子组件中的卷积层,对第二融合特征进行卷积运算,得到音频卷积特征,将音频卷积特征和第二融合特征组合为第三融合特征;
第二特征变换子单元1165,用于根据第i个注意力增强子组件中的第二前馈网络层,对第三融合特征进行变换处理,得到第三变换特征,将第三变换特征和第三融合特征组合为第四融合特征;
归一化处理子单元1166,用于根据第i个注意力增强子组件中的归一化层,对第四融合特征进行归一化处理,得到第i个注意力增强子组件的输出特征,将第a个注意力增强子组件的输出特征确定为音频正则化特征对应的任务共享编码特征。
可选地,自注意力处理子单元1163根据第i个注意力增强子组件中的自注意力网络层,输出第一融合特征对应的注意力输出特征,包括:
获取第i个注意力增强子组件中的自注意力网络层对应的变换权重矩阵,基于变换权重矩阵,将第一融合特征变换为第三查询矩阵、第三键矩阵以及第三值矩阵;
对第三查询矩阵和第三键矩阵的转置矩阵进行点乘运算,得到候选权重矩阵,获取第三查询矩阵对应的列数量;
对候选权重矩阵与列数量的平方根之间的比值进行归一化处理,得到注意力权重矩阵,根据注意力权重矩阵与第三值矩阵之间的点乘,确定第一融合特征对应的注意力输出特征。
其中,输入特征获取子单元1161,第一特征变换子单元1162,自注意力处理子单元1163,卷积运算子单元1164,第二特征变换子单元1165,归一化处理子单元1166的具体功能实现方式可以参见图5所对应实施例中的步骤S204,此处不再进行赘述。
在一个或多个实施例中,初始识别模型中的第一分支编码组件包括b个链式连接的注意力增强子组件,第一任务编码特征是指初始识别模型所包含的第一分支编码组件中的第b个注意力增强子组件的输出特征,b为正整数;初始识别模型中的第一任务解码组件包括时序分类解码器和注意力解码器;
任务解码模块14通过初始识别模型中的第一任务解码组件对第一任务编码特征进行解码,得到第一任务识别结果,包括:
时序分类解码单元141,用于将第一任务编码特征输入至初始识别模型中的时序分类解码器,通过时序分类解码器对第一任务编码特征进行线性变换,输出时序分类概率矩阵;
注意力解码单元142,用于将时序分类概率矩阵和第一任务编码特征输入至初始识别模型中的注意力解码器,通过注意力解码器对时序分类概率矩阵和第一任务编码特征进行解码,输出注意力识别结果,将时序分类概率矩阵和注意力识别结果确定为第一任务识别结果。
可选地,注意力解码器包括N个注意力解码子组件,N为正整数;
注意力解码单元142将时序分类概率矩阵和第一任务编码特征输入至初始识别模型中的注意力解码器,通过注意力解码器对时序分类概率矩阵和第一任务编码特征进行解码,输出注意力识别结果,包括:
将时序分类概率矩阵和第一任务编码特征组合为联合输入特征,将联合输入特征输入至初始识别模型中的注意力解码器;
获取N个注意力解码子组件中的第j个注意力解码子组件的输入特征;j为1时,第j个注意力解码子组件的输入特征包括联合输入特征和音频起始符;j不为1时,第j个注意力解码子组件的输入特征包括联合输入特征和第j-1个注意力解码子组件的输出特征;j为小于或等于N的正整数;
根据第j个注意力解码子组件中的自注意力掩码层,输出第j-1个注意力解码子组件的输出特征所对应的注意力掩码特征,对注意力掩码特征和第j-1个注意力解码子组件的输出特征的组合特征进行归一化处理,得到第一归一化特征;
根据第j个注意力解码子组件中的自注意力网络层,将第一注意力掩码特征变换为第四查询矩阵,将联合输入特征变换为第四键矩阵和第四值矩阵,基于第四查询矩阵、第四键矩阵以及第四值矩阵,输出注意力解码特征,对注意力解码特征和第一归一化特征的组合特征进行归一化处理,得到第二归一化特征;
根据第j个注意力解码子组件中的第三前馈网络层,对第二归一化特征进行变换处理,得到第四变换特征,对第四变换特征和第二归一化特征的组合特征进行归一化处理,得到第j个注意力解码子组件的输出特征,对第N个注意力解码子组件的输出特征进行变换处理,得到输出注意力识别结果。
在一个或多个实施例中,初始识别模型中的第二分支编码组件包括b个链式连接的注意力增强子组件,第二任务编码特征是指由第二分支编码组件中的b个注意力增强子组件分别对应的输出特征所拼接而成的联合特征,b为正整数;
任务解码模块14通过初始识别模型中的第二任务解码组件对任务共享编码特征和第二任务编码特征进行解码,得到第二任务识别结果,包括:
特征拼接单元143,用于将任务共享编码特征和第二任务编码特征拼接为任务联合编码特征,将任务联合编码特征输入至初始识别模型中的第二任务解码组件;
注意力统计池化单元144,用于根据初始识别模型所包含的第二任务解码组件中的注意力统计池化层,对任务联合编码特征进行池化运算,得到注意力池化特征,将注意力池化特征进行归一化处理,得到第三归一化特征;
全连接处理单元145,用于根据初始识别模型所包含的第二任务解码组件中的全连接网络层,对第三归一化特征进行全连接处理,得到目标解码特征,基于目标解码特征输出第二任务识别结果。
其中,时序分类解码单元141,注意力解码单元142,特征拼接单元143,注意力统计池化单元144,全连接处理单元145的具体功能实现方式可以参见图5所对应实施例中的步骤S207至步骤S211,此处不再进行赘述。
在一个或多个实施例中,模型训练模块15包括:任务损失确定单元151,模型损失确定单元152,网络参数调整单元153;
任务损失确定单元151,用于根据第一任务识别结果和样本音频数据对应的第一任务标签,确定第一任务损失,根据第二任务识别结果和样本音频数据对应的第二任务标签,确定第二任务损失;
模型损失确定单元152,用于获取第一任务权重和第二任务权重,对第一任务权重、第一任务损失、第二任务权重以及第二任务损失进行加权求和,得到初始识别模型对应的模型损失;
网络参数调整单元153,用于根据模型损失对初始识别模型的网络参数进行调整,将参数调整后的初始识别模型确定为目标识别模型。
可选地,第一任务识别结果包括时序分类概率矩阵和注意力识别结果;
任务损失确定单元151根据第一任务识别结果和样本音频数据对应的第一任务标签,确定第一任务损失,包括:
根据时序分类结果和样本音频数据对应的第一任务标签,确定时序分类损失,根据注意力识别结果和样本音频数据对应的第一任务标签,确定注意力损失;
获取时序分类权重和注意力解码权重,对时序分类权重、时序分类损失、注意力解码权重以及注意力损失进行加权求和,得到第一任务损失。
其中,任务损失确定单元151,模型损失确定单元152,网络参数调整单元153的具体功能实现方式可以参见图5所对应实施例中的步骤S212至步骤S214,此处不再进行赘述。
在一个或多个实施例中,该音频数据处理1还包括:第一音频编码模块16,第二音频编码模块17,音频解码模块18;
第一音频编码模块16,用于获取目标音频数据对应的目标音频特征,通过目标识别模型中的共享编码组件对目标音频特征进行编码,得到音频共享编码特征;
第二音频编码模块17,用于通过目标识别模型中的第一分支编码组件对音频共享编码特征进行编码,得到第一音频任务编码特征,通过目标识别模型中的第二分支编码组件对音频共享编码特征进行编码,得到第二音频任务编码特征;
音频解码模块18,用于通过目标识别模型中的第一任务解码组件对第一音频任务编码特征进行解码,得到第一音频任务识别结果,通过目标识别模型中的第二任务解码组件对音频共享编码特征和第二音频任务编码特征进行解码,得到第二音频任务识别结果。
其中,第一音频编码模块16,第二音频编码模块17,音频解码模块18的具体功能实现方式可以参见图8所对应实施例中的步骤S301至步骤S303,此处不再进行赘述。
可选地,目标识别模型中的第一任务解码组件包括时序分类解码器和注意力解码器;
音频解码模块18包括:第一音频解码单元181,候选路径获取单元182,第二音频解码单元183,联合编码特征输入单元184,第三音频解码单元185;
第一音频解码单元181,用于将第一音频任务编码特征输入至目标识别模型中的时序分类解码器,通过目标识别模型中的时序分类解码器输出第一音频任务编码特征对应的音频分类概率矩阵;
候选路径获取单元182,用于根据音频分类概率矩阵确定目标音频数据对应的多个候选路径;候选路径用于表征目标音频数据对应的文本识别结果;
第二音频解码单元183,用于将音频分类概率矩阵和第一音频任务编码特征输入至目标识别模型中的注意力解码器,通过目标识别模型中的注意力解码器,对音频分类概率矩阵和第一音频任务编码特征进行解码,得到多个候选路径分别对应的输出概率,将最大的输出概率所对应的候选路径关联的文本确定为第一音频任务识别结果。
联合编码特征输入单元184,用于将音频共享编码特征和第二音频任务编码特征拼接为音频联合编码特征,将音频联合编码特征输入至目标识别模型中的第二任务解码组件;
第三音频解码单元185,用于通过目标识别模型中的第二任务解码组件对音频联合编码特征进行解码,输出目标音频数据对应的音频对象特征,获取音频对象特征与多个注册音频对象之间的相似度,将最大的相似度所对应的注册音频对象确定为目标音频数据对应的第二音频任务识别结果。
其中,第一音频解码单元181,候选路径获取单元182,第二音频解码单元183,联合编码特征输入单元184,第三音频解码单元185的具体功能实现方式可以参见图8所对应实施例中的步骤S303,此处不再进行赘述。
本申请实施例中,在初始识别的训练阶段中,在获取到样本音频数据对应的样本音频特征之后,可以通过共享编码组件输出任务共享编码特征;该任务共享编码特征可以同时输入第一分支编码组件和第二分支编码组件,第一分支编码组件和第二分支编码组件之间可以进行信息交互,即第一分支编码组件中的第一查询矩阵和第二分支编码组件中的第二查询矩阵进行交叉使用。经过共享编码组件和第一分支编码组件后的第一任务编码特征输入至第一任务解码组件,由第一任务解码组件输出第一任务识别结果;经过共享编码组件和第二分支编码组件的输出拼接成的第二任务识别结果输入至第二任务解码组件,由第二任务解码组件输出第二任务识别结果;进而可以基于第一任务识别结果、第二任务识别结果,所述样本音频数据的第一任务标签和第二任务标签,对初始识别模型进行参数调整。也就是说,初始识别模型为第一任务和第二任务所关联的多任务联合网络模型,即通过训练初始识别模型就可以实现第一任务和第二任务的多任务联合优化,可以提高初始识别模型的训练效率;通过在第一分支编码组件和第二分支编码组件之间可以进行信息交互,可以提升第一任务和第二任务之间的联动性,进而可以提高目标识别模型针对第一任务和第二任务的识别准确率;针对业务上对第一任务和第二任务均有需求的音频处理领域,可以将两个任务的独立网络模型融合为一个模型,可以避免存储两个网络模型,降低资源占用。
进一步地,请参见图10,图10是本申请实施例提供的一种计算机设备的结构示意图。如图10所示,该计算机设备1000可以为终端设备,例如,上述图1所对应实施例中的终端设备10a,还可以为服务器,例如,上述图1所对应实施例中的服务器10d,这里将不对其进行限制。为便于理解,本申请以计算机设备为终端设备为例,该计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,该计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图10所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
其中,该计算机设备1000中的网络接口1004还可以提供网络通讯功能,且可选用户接口1003还可以包括显示屏(Display)、键盘(Keyboard)。在图10所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
获取样本音频数据对应的样本音频特征,通过初始识别模型中的共享编码组件对样本音频特征进行编码,得到任务共享编码特征;
通过初始识别模型中的第一分支编码组件对任务共享编码特征进行变换处理,得到第一查询矩阵、第一键矩阵以及第一值矩阵,通过初始识别模型中的第二分支编码组件对任务共享编码特征进行变换处理,得到第二查询矩阵、第二键矩阵以及第二值矩阵;
通过初始识别网络中的第一分支编码组件对第二查询矩阵、第一键矩阵以及第一值矩阵进行编码,得到第一任务编码特征,通过初始识别网络中的第二分支编码组件对第一查询矩阵、第二键矩阵以及第二值矩阵进行编码,得到第二任务编码特征;
通过初始识别模型中的第一任务解码组件对第一任务编码特征进行解码,得到第一任务识别结果,通过初始识别模型中的第二任务解码组件对任务共享编码特征和第二任务编码特征进行解码,得到第二任务识别结果;
根据第一任务识别结果、第二任务识别结果,以及样本音频数据的第一任务标签和第二任务标签,对初始识别模型进行参数调整,将参数调整后的初始识别模型确定为目标识别模型;目标识别模型用于预测目标音频数据对应的第一任务识别结果和第二任务识别结果。
应当理解,本申请实施例中所描述的计算机设备1000可执行前文图3、图5以及图8中任一个实施例中对音频数据处理方法的描述,也可执行前文图9所对应实施例中对音频数据处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且计算机可读存储介质中存储有前文提及的音频数据处理装置1所执行的计算机程序,且计算机程序包括程序指令,当处理器执行程序指令时,能够执行前文图3、图5以及图8中任一个实施例中对音频数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。其中,存储介质可以为磁碟、光盘、只读存储器(Read-Only Memory,ROM)或随机存储器(Random Access Memory,RAM)等。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,程序指令可被部署在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行,分布在多个地点且通过通信网络互连的多个计算设备可以组成区块链系统。
此外,需要说明的是:本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或者计算机程序可以包括计算机指令,该计算机指令可以存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器可以执行该计算机指令,使得该计算机设备执行前文图3、图5以及图8中任一个实施例中对音频数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机程序产品或者计算机程序实施例中未披露的技术细节,请参照本申请方法实施例的描述。
本申请实施例的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同媒体内容,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、装置、产品或设备固有的其他步骤单元。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例提供的方法及相关装置是参照本申请实施例提供的方法流程图和/或结构示意图来描述的,具体可由计算机程序指令实现方法流程图和/或结构示意图的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可提供到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或结构示意一个方框或多个方框中指定的功能的步骤。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (17)
1.一种音频数据处理方法,其特征在于,包括:
获取样本音频数据对应的样本音频特征,通过初始识别模型中的共享编码组件对所述样本音频特征进行编码,得到任务共享编码特征;
通过所述初始识别模型中的第一分支编码组件对所述任务共享编码特征进行变换处理,得到第一查询矩阵、第一键矩阵以及第一值矩阵,通过所述初始识别模型中的第二分支编码组件对所述任务共享编码特征进行变换处理,得到第二查询矩阵、第二键矩阵以及第二值矩阵;
通过所述初始识别网络中的第一分支编码组件对所述第二查询矩阵、所述第一键矩阵以及所述第一值矩阵进行编码,得到第一任务编码特征,通过所述初始识别网络中的第二分支编码组件对所述第一查询矩阵、所述第二键矩阵以及所述第二值矩阵进行编码,得到第二任务编码特征;
通过所述初始识别模型中的第一任务解码组件对所述第一任务编码特征进行解码,得到第一任务识别结果,通过所述初始识别模型中的第二任务解码组件对所述任务共享编码特征和所述第二任务编码特征进行解码,得到第二任务识别结果;
根据所述第一任务识别结果、所述第二任务识别结果,以及所述样本音频数据的第一任务标签和第二任务标签,对所述初始识别模型进行参数调整,将参数调整后的初始识别模型确定为目标识别模型;所述目标识别模型用于预测目标音频数据对应的第一任务识别结果和第二任务识别结果。
2.根据权利要求1所述的方法,其特征在于,所述获取样本音频数据对应的样本音频特征,包括:
对所述样本音频数据进行预加重处理,得到所述样本音频数据对应的补偿音频数据,将所述补偿音频数据进行分帧处理,得到所述补偿音频数据对应的多个音频帧片段;
将所述多个音频帧片段进行频域变换,得到所述补偿音频数据对应的音频频率数据,通过三角形滤波器组对所述音频频率数据进行滤波处理,得到所述样本音频数据对应的样本音频特征。
3.根据权利要求1所述的方法,其特征在于,所述通过初始识别模型中的共享编码组件对所述样本音频特征进行编码,得到任务共享编码特征,包括:
根据所述初始识别模型中的共享编码组件所包含的下采样层,对所述样本音频特征进行卷积下采样处理,得到音频采样特征;
根据所述共享编码组件中的线性网络层对所述音频采样特征进行变换处理,得到第一变换特征;
根据所述共享编码组件中的正则网络层对所述第一转换特征进行正则化处理,得到音频正则化特征;
通过所述共享编码组件中的注意力增强子组件,输出所述音频正则化特征对应的任务共享编码特征。
4.根据权利要求3所述的方法,其特征在于,所述共享编码组件所包含的注意力增强子组件的数量为a个,a为正整数;
所述通过所述共享编码组件中的注意力增强子组件,输出所述音频正则化特征对应的任务共享编码特征,包括:
获取a个注意力增强子组件中的第i个注意力增强子组件的输入特征;i为1时,所述第i个注意力增强子组件的输入特征为所述音频正则化特征,i为小于或等于a的正整数;
根据所述第i个注意力增强子组件中的第一前馈网络层,对所述第i个注意力增强子组件的输入特征进行变换处理,得到第二变换特征,将所述第二变换特征和所述第i个注意力增强子组件的输入特征组合为第一融合特征;
根据所述第i个注意力增强子组件中的自注意力网络层,输出所述第一融合特征对应的注意力输出特征,将所述注意力输出特征和所述第一融合特征组合为第二融合特征;
根据所述第i个注意力增强子组件中的卷积层,对所述第二融合特征进行卷积运算,得到音频卷积特征,将所述音频卷积特征和所述第二融合特征组合为第三融合特征;
根据所述第i个注意力增强子组件中的第二前馈网络层,对所述第三融合特征进行变换处理,得到第三变换特征,将所述第三变换特征和所述第三融合特征组合为第四融合特征;
根据所述第i个注意力增强子组件中的归一化层,对所述第四融合特征进行归一化处理,得到所述第i个注意力增强子组件的输出特征,将第a个注意力增强子组件的输出特征确定为所述音频正则化特征对应的任务共享编码特征。
5.根据权利要求4所述的方法,其特征在于,所述根据所述第i个注意力增强子组件中的自注意力网络层,输出所述第一融合特征对应的注意力输出特征,包括:
获取所述第i个注意力增强子组件中的自注意力网络层对应的变换权重矩阵,基于所述变换权重矩阵,将所述第一融合特征变换为第三查询矩阵、第三键矩阵以及第三值矩阵;
对所述第三查询矩阵和所述第三键矩阵的转置矩阵进行点乘运算,得到候选权重矩阵,获取所述第三查询矩阵对应的列数量;
对所述候选权重矩阵与所述列数量的平方根之间的比值进行归一化处理,得到注意力权重矩阵,根据所述注意力权重矩阵与所述第三值矩阵之间的点乘,确定所述第一融合特征对应的注意力输出特征。
6.根据权利要求1所述的方法,其特征在于,所述初始识别模型中的第一分支编码组件包括b个链式连接的注意力增强子组件,所述第一任务编码特征是指所述初始识别模型所包含的第一分支编码组件中的第b个注意力增强子组件的输出特征,b为正整数;所述初始识别模型中的第一任务解码组件包括时序分类解码器和注意力解码器;
所述通过所述初始识别模型中的第一任务解码组件对所述第一任务编码特征进行解码,得到第一任务识别结果,包括:
将所述第一任务编码特征输入至所述初始识别模型中的时序分类解码器,通过所述时序分类解码器对所述第一任务编码特征进行线性变换,输出时序分类概率矩阵;
将所述时序分类概率矩阵和所述第一任务编码特征输入至所述初始识别模型中的注意力解码器,通过所述注意力解码器对所述时序分类概率矩阵和所述第一任务编码特征进行解码,输出注意力识别结果,将所述时序分类概率矩阵和所述注意力识别结果确定为所述第一任务识别结果。
7.根据权利要求6所述的方法,其特征在于,所述注意力解码器包括N个注意力解码子组件,N为正整数;
所述将所述时序分类概率矩阵和所述第一任务编码特征输入至所述初始识别模型中的注意力解码器,通过所述注意力解码器对所述时序分类概率矩阵和所述第一任务编码特征进行解码,输出注意力识别结果,包括:
将所述时序分类概率矩阵和所述第一任务编码特征组合为联合输入特征,将所述联合输入特征输入至所述初始识别模型中的注意力解码器;
获取所述N个注意力解码子组件中的第j个注意力解码子组件的输入特征;j为1时,第j个注意力解码子组件的输入特征包括所述联合输入特征和音频起始符;j不为1时,第j个注意力解码子组件的输入特征包括所述联合输入特征和第j-1个注意力解码子组件的输出特征;j为小于或等于N的正整数;
根据所述第j个注意力解码子组件中的自注意力掩码层,输出所述第j-1个注意力解码子组件的输出特征所对应的注意力掩码特征,对所述注意力掩码特征和所述第j-1个注意力解码子组件的输出特征的组合特征进行归一化处理,得到第一归一化特征;
根据所述第j个注意力解码子组件中的自注意力网络层,将所述第一注意力掩码特征变换为第四查询矩阵,将所述联合输入特征变换为第四键矩阵和第四值矩阵,基于所述第四查询矩阵、所述第四键矩阵以及所述第四值矩阵,输出注意力解码特征,对所述注意力解码特征和所述第一归一化特征的组合特征进行归一化处理,得到第二归一化特征;
根据所述第j个注意力解码子组件中的第三前馈网络层,对所述第二归一化特征进行变换处理,得到第四变换特征,对所述第四变换特征和所述第二归一化特征的组合特征进行归一化处理,得到所述第j个注意力解码子组件的输出特征,对第N个注意力解码子组件的输出特征进行变换处理,得到输出注意力识别结果。
8.根据权利要求1所述的方法,其特征在于,所述初始识别模型中的第二分支编码组件包括b个链式连接的注意力增强子组件,所述第二任务编码特征是指由所述第二分支编码组件中的b个注意力增强子组件分别对应的输出特征所拼接而成的联合特征,b为正整数;
所述通过所述初始识别模型中的第二任务解码组件对所述任务共享编码特征和所述第二任务编码特征进行解码,得到第二任务识别结果,包括:
将所述任务共享编码特征和所述第二任务编码特征拼接为任务联合编码特征,将所述任务联合编码特征输入至所述初始识别模型中的第二任务解码组件;
根据所述初始识别模型所包含的第二任务解码组件中的注意力统计池化层,对所述任务联合编码特征进行池化运算,得到注意力池化特征,将所述注意力池化特征进行归一化处理,得到第三归一化特征;
根据所述初始识别模型所包含的第二任务解码组件中的全连接网络层,对所述第三归一化特征进行全连接处理,得到目标解码特征,基于所述目标解码特征输出所述第二任务识别结果。
9.根据权利要求1所述的方法,其特征在于,所述根据所述第一任务识别结果、所述第二任务识别结果,以及所述样本音频数据的第一任务标签和第二任务标签,对所述初始识别模型进行参数调整,将参数调整后的初始识别模型确定为目标识别模型,包括:
根据所述第一任务识别结果和所述样本音频数据对应的第一任务标签,确定第一任务损失,根据所述第二任务识别结果和所述样本音频数据对应的第二任务标签,确定第二任务损失;
获取第一任务权重和第二任务权重,对所述第一任务权重、所述第一任务损失、所述第二任务权重以及所述第二任务损失进行加权求和,得到所述初始识别模型对应的模型损失;
根据所述模型损失对所述初始识别模型的网络参数进行调整,将参数调整后的初始识别模型确定为目标识别模型。
10.根据权利要求9所述的方法,其特征在于,所述第一任务识别结果包括时序分类概率矩阵和注意力识别结果;
所述根据所述第一任务识别结果和所述样本音频数据对应的第一任务标签,确定第一任务损失,包括:
根据所述时序分类结果和所述样本音频数据对应的第一任务标签,确定时序分类损失,根据所述注意力识别结果和所述样本音频数据对应的第一任务标签,确定注意力损失;
获取时序分类权重和注意力解码权重,对所述时序分类权重、所述时序分类损失、所述注意力解码权重以及所述注意力损失进行加权求和,得到所述第一任务损失。
11.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取目标音频数据对应的目标音频特征,通过所述目标识别模型中的共享编码组件对所述目标音频特征进行编码,得到音频共享编码特征;
通过所述目标识别模型中的第一分支编码组件对所述音频共享编码特征进行编码,得到第一音频任务编码特征,通过所述目标识别模型中的第二分支编码组件对所述音频共享编码特征进行编码,得到第二音频任务编码特征;
通过所述目标识别模型中的第一任务解码组件对所述第一音频任务编码特征进行解码,得到第一音频任务识别结果,通过所述目标识别模型中的第二任务解码组件对所述音频共享编码特征和所述第二音频任务编码特征进行解码,得到第二音频任务识别结果。
12.根据权利要求11所述的方法,其特征在于,所述目标识别模型中的第一任务解码组件包括时序分类解码器和注意力解码器;
所述通过所述目标识别模型中的第一任务解码组件对所述第一音频任务编码特征进行解码,得到第一音频任务识别结果,包括:
将所述第一音频任务编码特征输入至所述目标识别模型中的时序分类解码器,通过所述目标识别模型中的时序分类解码器输出所述第一音频任务编码特征对应的音频分类概率矩阵;
根据所述音频分类概率矩阵确定所述目标音频数据对应的多个候选路径;所述候选路径用于表征所述目标音频数据对应的文本识别结果;
将所述音频分类概率矩阵和第一音频任务编码特征输入至所述目标识别模型中的注意力解码器,通过所述目标识别模型中的注意力解码器,对所述音频分类概率矩阵和所述第一音频任务编码特征进行解码,得到所述多个候选路径分别对应的输出概率,将最大的输出概率所对应的候选路径关联的文本确定为第一音频任务识别结果。
13.根据权利要求11所述的方法,其特征在于,所述通过所述目标识别模型中的第二任务解码组件对所述音频共享编码特征和所述第二音频任务编码特征进行解码,得到第二音频任务识别结果,包括:
将所述音频共享编码特征和所述第二音频任务编码特征拼接为音频联合编码特征,将所述音频联合编码特征输入至所述目标识别模型中的第二任务解码组件;
通过所述目标识别模型中的第二任务解码组件对所述音频联合编码特征进行解码,输出所述目标音频数据对应的音频对象特征,获取所述音频对象特征与多个注册音频对象之间的相似度,将最大的相似度所对应的注册音频对象确定为所述目标音频数据对应的第二音频任务识别结果。
14.一种音频数据处理装置,其特征在于,包括:
音频共享编码模块,用于获取样本音频数据对应的样本音频特征,通过初始识别模型中的共享编码组件对所述样本音频特征进行编码,得到任务共享编码特征;
共享特征变换模块,用于通过所述初始识别模型中的第一分支编码组件对所述任务共享编码特征进行变换处理,得到第一查询矩阵、第一键矩阵以及第一值矩阵,通过所述初始识别模型中的第二分支编码组件对所述任务共享编码特征进行变换处理,得到第二查询矩阵、第二键矩阵以及第二值矩阵;
任务交互编码模块,用于通过所述初始识别网络中的第一分支编码组件对所述第二查询矩阵、所述第一键矩阵以及所述第一值矩阵进行编码,得到第一任务编码特征,通过所述初始识别网络中的第二分支编码组件对所述第一查询矩阵、所述第二键矩阵以及所述第二值矩阵进行编码,得到第二任务编码特征;
任务解码模块,用于通过所述初始识别模型中的第一任务解码组件对所述第一任务编码特征进行解码,得到第一任务识别结果,通过所述初始识别模型中的第二任务解码组件对所述任务共享编码特征和所述第二任务编码特征进行解码,得到第二任务识别结果;
模型训练模块,用于根据所述第一任务识别结果、所述第二任务识别结果,以及所述样本音频数据的第一任务标签和第二任务标签,对所述初始识别模型进行参数调整,将参数调整后的初始识别模型确定为目标识别模型;所述目标识别模型用于预测目标音频数据对应的第一任务识别结果和第二任务识别结果。
15.一种计算机设备,其特征在于,包括存储器和处理器;
所述存储器与所述处理器相连,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以使得所述计算机设备执行权利要求1至13任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序适于由处理器加载并执行,以使得具有所述处理器的计算机设备执行权利要求1至13任一项所述的方法。
17.一种计算机程序产品,其特征在于,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现权利要求1至13任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310227622.7A CN116978364A (zh) | 2023-02-27 | 2023-02-27 | 音频数据处理方法、装置、设备以及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310227622.7A CN116978364A (zh) | 2023-02-27 | 2023-02-27 | 音频数据处理方法、装置、设备以及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116978364A true CN116978364A (zh) | 2023-10-31 |
Family
ID=88473751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310227622.7A Pending CN116978364A (zh) | 2023-02-27 | 2023-02-27 | 音频数据处理方法、装置、设备以及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116978364A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117275461A (zh) * | 2023-11-23 | 2023-12-22 | 上海蜜度科技股份有限公司 | 多任务音频处理方法、系统、存储介质及电子设备 |
-
2023
- 2023-02-27 CN CN202310227622.7A patent/CN116978364A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117275461A (zh) * | 2023-11-23 | 2023-12-22 | 上海蜜度科技股份有限公司 | 多任务音频处理方法、系统、存储介质及电子设备 |
CN117275461B (zh) * | 2023-11-23 | 2024-03-15 | 上海蜜度科技股份有限公司 | 多任务音频处理方法、系统、存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111312245B (zh) | 一种语音应答方法、装置和存储介质 | |
CN111326157B (zh) | 文本生成方法、装置、电子设备和计算机可读介质 | |
Seo et al. | Wav2kws: Transfer learning from speech representations for keyword spotting | |
CN109036371A (zh) | 用于语音合成的音频数据生成方法及系统 | |
CN116364055B (zh) | 基于预训练语言模型的语音生成方法、装置、设备及介质 | |
CN111402891A (zh) | 语音识别方法、装置、设备和存储介质 | |
CN110706692A (zh) | 儿童语音识别模型的训练方法及系统 | |
CN113823262B (zh) | 一种语音识别方法、装置、电子设备和存储介质 | |
CN112837669B (zh) | 语音合成方法、装置及服务器 | |
CN113920977A (zh) | 一种语音合成模型、模型的训练方法以及语音合成方法 | |
WO2022252904A1 (zh) | 基于人工智能的音频处理方法、装置、设备、存储介质及计算机程序产品 | |
CN113539232B (zh) | 一种基于慕课语音数据集的语音合成方法 | |
CN113781995A (zh) | 语音合成方法、装置、电子设备及可读存储介质 | |
CN113450765A (zh) | 语音合成方法、装置、设备及存储介质 | |
CN114360493A (zh) | 语音合成方法、装置、介质、计算机设备和程序产品 | |
CN114678032B (zh) | 一种训练方法、语音转换方法及装置和电子设备 | |
CN116978364A (zh) | 音频数据处理方法、装置、设备以及介质 | |
CN115881164A (zh) | 一种语音情感识别方法及系统 | |
CN117373431A (zh) | 音频合成方法、训练方法、装置、设备及存储介质 | |
CN113782042B (zh) | 语音合成方法、声码器的训练方法、装置、设备及介质 | |
CN117219052A (zh) | 韵律预测方法、装置、设备、存储介质和程序产品 | |
CN115376486A (zh) | 一种语音合成方法、装置、计算机设备及存储介质 | |
CN117980915A (zh) | 用于端到端自监督预训练的对比学习和掩蔽建模 | |
CN114512121A (zh) | 语音合成方法、模型训练方法及装置 | |
CN114360491A (zh) | 语音合成方法、装置、电子设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |