CN113823272A - 语音处理方法、装置、电子设备以及存储介质 - Google Patents
语音处理方法、装置、电子设备以及存储介质 Download PDFInfo
- Publication number
- CN113823272A CN113823272A CN202110615155.6A CN202110615155A CN113823272A CN 113823272 A CN113823272 A CN 113823272A CN 202110615155 A CN202110615155 A CN 202110615155A CN 113823272 A CN113823272 A CN 113823272A
- Authority
- CN
- China
- Prior art keywords
- voice
- streaming
- model
- processing model
- sample
- 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 claims abstract description 22
- 238000012545 processing Methods 0.000 claims abstract description 397
- 238000012549 training Methods 0.000 claims abstract description 120
- 238000000034 method Methods 0.000 claims abstract description 57
- 230000008569 process Effects 0.000 claims abstract description 19
- 238000002372 labelling Methods 0.000 claims abstract description 16
- 238000007635 classification algorithm Methods 0.000 claims description 24
- 238000004821 distillation Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims 3
- 238000005516 engineering process Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 20
- 238000013473 artificial intelligence Methods 0.000 description 11
- 230000003993 interaction Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000003058 natural language processing Methods 0.000 description 6
- 239000013598 vector Substances 0.000 description 6
- 230000004913 activation Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000011160 research Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000001364 causal effect Effects 0.000 description 1
- 210000005266 circulating tumour cell Anatomy 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000013519 translation Methods 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
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Machine Translation (AREA)
Abstract
本申请公开了一种语音处理方法、装置、电子设备以及存储介质,包括:获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型;根据第一语音样本对流式语音处理模型进行调整,得到调整后流式语音处理模型;基于第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,得到训练后流式语音处理模型;根据第一语音样本、基础语音模型以及语言模型对第二语音样本进行标注,得到标注后第二语音样本;基于第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,以通过目标语音处理模型对待处理语音进行处理。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种语音处理方法、装置、电子设备以及存储介质。
背景技术
随着通信技术的发展,智能终端的普及,各种网络通讯工具成为大众沟通的主要工具之一。其中由于语音信息的操作和传输的便捷性,成为各种网络通讯工具的主要传输信息。而在使用各种网络通讯工具时,还涉及到将语音信息进行文本转换的过程,该过程就是语音识别技术。
目前,是通过语音识别模型来将语音信息转换为文本信息,然而,在实时语音识别的场景中,由于目前的语音识别模型需要利用全部的语音信息才能进行语音识别,并且,用户语句较为复杂,故,目前的语音识别效果较差,且交互成功率较低。
发明内容
本申请提供一种语音处理方法、装置、电子设备以及存储介质,可以提高在实时识别场景下的语音识别效果,从而提高交互成功率。
本申请提供了一种语音处理方法,包括:
获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型,所述基础语音模型包括非流式变换器,所述流式语音处理模型为将所述基础语音模型中的非流式变换器替换为流式变换器得到的;
根据所述第一语音样本对所述流式语音处理模型进行调整,得到调整后流式语音处理模型;
基于所述第一语音样本、第二语音样本以及所述流式语音处理模型对应的教师模型,对所述所述流式语音处理模型进行训练,得到训练后流式语音处理模型;
根据所述第一语音样本、基础语音模型以及语言模型对所述第二语音样本进行标注,得到标注后第二语音样本;
基于所述第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,以通过所述目标语音处理模型对待处理语音进行处理。
相应的,本申请还提供了一种语音处理装置,包括:
获取模块,用于获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型,所述基础语音模型包括非流式变换器,所述流式语音处理模型为将所述基础语音模型中的非流式变换器替换为流式变换器得到的;
调整模块,用于根据所述第一语音样本对所述流式语音处理模型进行调整,得到调整后流式语音处理模型;
第一训练模块,用于基于所述第一语音样本、第二语音样本以及所述流式语音处理模型对应的教师模型,对所述所述流式语音处理模型进行训练,得到训练后流式语音处理模型;
标注模块,用于根据所述第一语音样本、基础语音模型以及语言模型对所述第二语音样本进行标注,得到标注后第二语音样本;
第二训练模块,用于基于所述第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,以通过所述目标语音处理模型对待处理语音进行处理。
可选的,在本发明的一些实施例中,所述第一训练模块包括:
第一获取单元,用于获取所述流式语音处理模型对应的教师模型;
第一确定单元,用于确定所述教师模型中网络层与所述流式语音处理模型中网络层之间的对应关系;
训练单元,用于基于所述对应关系、第一语音样本以及第二语音样本对所述流式语音处理模型进行训练,得到训练后流式语音处理模型。
可选的,在本申请的一些实施例中,所述训练单元包括:
初始子单元,用于根据所述对应关系以及所述教师模型中网络层的网络参数,对所述流式语音处理模型进行初始化;
训练子单元,用于基于所述第一语音样本以及第二语音样本对初始化的流式语音处理模型进行训练,得到训练后流式语音处理模型。
可选的,在本申请的一些实施例中,所述训练子单元具体用于:
将所述第一语音样本以及第二语音样本输入至教师模型中,以及;
将所述第一语音样本以及第二语音样本输入至初始化的流式语音处理模型中;
基于所述教师模型的输出以及初始化的流式语音处理模型的输出,计算所述教师模型与初始化的流式语音处理模型之间的蒸馏损失、以及所述初始化的流式语音处理模型的模型损失;
根据所述蒸馏损失与模型损失对初始化的流式语音处理模型进行训练,得到训练后流式语音处理模型。
可选的,在本申请的一些实施例中,所述第一确定单元具体用于:
提取所述教师模型中网络层对应的权重信息,得到第一权重信息,以及;
提取所述流式语音处理模型中网络层对应的权重信息,得到第二权重信息;
基于所述第一权重信息与第二权重信息之间的相似度,确定所述教师模型中网络层与所述流式语音处理模型中网络层之间的对应关系。
可选的,在本申请的一些实施例中,还包括第二确定单元,所述第二确定单元具体用于:
将所述流式流式语音处理模型确定为所述基础语音模型的指导模型,并利用所述第一语音样本对所述基础语音模型进行调整,得到参考语音模型;
将所述参考语音模型确定为所述流式语音处理模型对应的教师模型。
可选的,在本申请的一些实施例中,所述调整模块包括:
第二获取单元,用于获取预设时序分类算法;
调整单元,用于基于所述时序分类算法以及第一语音样本的标签对所述流式语音处理模型进行调整,得到调整后流式语音处理模型。
可选的,在本申请的一些实施例中,所述调整单元具体用于:
在所述第一语音样本中相邻第一语音元素之间插入间隔标识,得到处理后第一语音样本;
利用所述时序分类算法预测所述处理后第一语音样本对应的标签;
基于所述第一语音样本对应的标签和所述处理后第一语音样本对应的标签,构建所述时序分类算法对应的时序分类损失;
根据所述时序分类损失对所述流式语音处理模型进行调整,得到调整后流式语音处理模型。
本申请实施例获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型后,所述基础语音模型包括非流式变换器,所述流式语音处理模型为将所述基础语音模型中的非流式变换器替换为流式变换器得到的,根据所述第一语音样本对所述流式语音处理模型进行调整,得到调整后流式语音处理模型,然后,基于所述第一语音样本、第二语音样本以及所述流式语音处理模型对应的教师模型,对所述流式语音处理模型进行训练,得到训练后流式语音处理模型,接着,根据所述第一语音样本、基础语音模型以及语言模型对所述第二语音样本进行标注,得到标注后第二语音样本,最后,基于所述第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,以通过所述目标语音处理模型对待处理语音进行处理。本申请提供的语音处理方法,将基础语音模型中的非流式变换器替换为流式变换器,得到流式语音处理模型,然后,利用第一语音样本对流式语音处理模型进行调整,并利用第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,使得最终的目标语音处理模型不仅可以在用户说话时进行同步识别,并且还具有教师模型的识别能力,在提高实时识别场景下语音识别效果,从而提高交互成功率的同时,减少模型训练的耗时,从而提供模型训练的效率。
附图说明
为了更清楚地说明本申请中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本申请提供的语音处理方法的场景示意图;
图1b是本申请提供的语音处理方法的流程示意图;
图1c为流式变换器的结构示意图;
图2是本申请提供的语音处理方法的另一流程示意图;
图3是本申请提供的语音处理装置的结构示意图;
图4是本申请提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
自然语言处理(Nature Language processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
其中,语音技术(SpeechTechnology)的关键技术有自动语音识别技术(ASR)和语音合成技术(TTS)以及声纹识别技术。让计算机能听、能看、能说、能感觉,是未来人机交互的发展方向,其中语音成为未来最被看好的人机交互方式之一。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例提供的方案涉及人工智能的自然语言处理和深度学习等技术,现通过如下实施例进行说明。
本申请提供一种语音处理方法、装置、电子设备和存储介质。
其中,该语音处理装置具体可以集成在服务器或终端中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
例如,请参阅图1a,该语音处理装置集成在终端上,终端可以获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型,其中,该基础语音模型包括非流式变换器,流式语音处理模型为将基础语音模型中的非流式变换器替换为流式变换器得到的,然后,终端可以根据第一语音样本对流式语音处理模型进行调整,得到调整后流式语音处理模型,接着,终端可以基于第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,得到训练后流式语音处理模型,再然后,终端可以根据第一语音样本、基础语音模型以及语言模型对第二语音样本进行标注,得到标注后第二语音样本,最后,终端可以基于第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,在实时语音识别场下,终端当接受待识别语音时,可以通过该目标语音处理模型对待识别语音进行语音识别,比如,该终端为车载电脑,车载电脑当接收用户发出的用户语音时,车载电脑通过该目标语音处理模型对用户语音进行语音识别,并基于识别结果执行相应的操作。
本申请提供的语音处理方法,将基础语音模型中的非流式变换器替换为流式变换器,得到流式语音处理模型,然后,利用第一语音样本对流式语音处理模型进行调整,并利用第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,使得最终的目标语音处理模型不仅可以用户进行说话时进行同步识别,并且还具有教师模型的识别能力,在提高实时识别场景下语音识别效果,从而提高交互成功率的同时,减少模型训练的耗时,从而提供模型训练的效率。
以下分别进行详细说明。需说明的是,以下实施例的描述顺序不作为对实施例优先顺序的限定。
一种语音处理方法,包括:获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型,根据第一语音样本对流式语音处理模型进行调整,得到调整后流式语音处理模型,基于第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,得到训练后流式语音处理模型,根据第一语音样本、基础语音模型以及语言模型对第二语音样本进行标注,得到标注后第二语音样本,基于第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,以通过目标语音处理模型对待处理语音进行处理。
请参阅图1b,图1b为本申请提供的语音处理方法的流程示意图。该语音处理方法的具体流程可以如下:
101、获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型。
首先,对流式语音和非流式语音的概念进行解释,从场景上,语音识别可以分为流式语音识别和非流式语音识别。非流式语音识别(离线识别)是指模型在用户说完一句话或一段话之后再进行识别,而流式语音识别则是指模型在用户还在说话的时候便同步进行语音识别。
在本申请中,语音识别模型又称声学模型,声学模型是语音识别系统中最为重要的部分之一,主流系统多采用隐马尔科夫模型进行建模。声学模型的输入是由特征提取模块提取的特征。一般来说,这些特征是多维的向量,并且其取值可以是离散或连续的。早期的声学模型常常采用矢量聚类(Vector Quantification)的方法,将信号直接映射到某个码本k,而后再计算某个模型j输出该码本的概率bj(k)。
语言模型本质上是在回答一个问题:出现的语句是否合理。目前常用的语言模型包括统计语言模型和神经网络语言模型,统计语言模型就是计算一个句子的概率大小的这种模型。形式化讲,统计语言模型的作用是为一个长度为m的字符串确定一个概率分布P(w1,w2,...,wm),表示其存在的可能性,其中w1到wm依次表示这段文本中的各个词。神经网络语言模型(neural network language model,NNLM)的思想是提出词向量的概念,代替ngram使用离散变量(高维),采用连续变量(具有一定维度的实数向量)来进行单词的分布式表示,解决了维度爆炸的问题,同时通过词向量可获取词之间的相似性。在本申请中,对语言模型的类型不做限制。
计算机借助于统计语言模型的概率参数,可以估计出自然语言中每个句子出现的可能性,而不是简单的判断该句子是否符合文法。常用统计语言模型,包括了N元文法模型(N-gramModel)统计语言模型把语言(词的序列)看作一个随机事件,并赋予相应的概率来描述其属于某种语言集合的可能性。给定一个词汇集合V,对于一个由V中的词构成的序列S=[w1,...,wt]∈Vn,统计语言模型赋予这个序列一个概率P(S),来衡量S符合自然语言的语法和语义规则的置信度。
其中,第一语音样本为标注了语音中音素以及语音文本的语音样本,其可以通过网络下载获得,基础语音模型包括非流式变换器,流式语音处理模型为将所述基础语音模型中的非流式变换器替换为流式变换器得到的,变换器又称作transformer,Transformer模型在自然语言领域被提出后,目前已经扩展到了计算机视觉、语音等诸多领域。然而,虽然Transformer模型在语音识别领域有着更好的准确率。
目前,非流式transformer虽然在离线场景下可以进行准确的语音识别,但在流式语音识别中却遭遇了两个致命的问题,1)由于非流式Transformer使用自注意力模型时会将所有的历史信息进行考虑,因此导致了存储和计算的复杂度会随着语音时长线性增加。而流式语音识别往往本身就有很长的语音输入,所以非流式transformer很难应用于流式语音识别之中;2)非流式transformer由于层数过多会导致未来窗口大小(lookaheadwindow)传递,即时延大,不适合在实时语音识别的场景下工作。
为了解决上述非流式transformer的问题,可以采用如下流式transformer,分别为:Time-restricted Transformer、Chunk Transformer和Block Transformer,具体的,请参阅图1c,在本申请中,没有对transformer的左上下文信息进行限制,即,当前语音帧可以利用所有历史语音帧的信息,在图1c中,最上面的是Time-restricted Transformer,其对应的右上下文大小为1,即,在Time-restricted Transformer中,当前语音帧可以利用未来1帧语音帧的信息;中间的是Chunk Transformer,Chunk Transformer由多个chunk(块)组成,其中,每个chunk的大小为2,对于任一chunk中的语音帧而言,其可以利用自身chunk中所有语音帧的信息和所有历史语音帧的信息,但是,其并不能利用未来语音帧的信息;最下面的的是Block Transformer,它和Chunk Transformer类似,也是使用chunk来处理数据,Block Transformer中chunk的大小为2,即,两帧连续的语音帧作为一个集合,与ChunkTransformer不同的是,在Block Transformer中,当前语音帧不仅可以利用当前语音帧对应chunk中语音帧的信息,还可以利用所有历史语音帧的信息和未来的至少部分语音帧的信息,其中,未来的至少部分语音帧可以根据实际需求进行设置,比如,在本申请中,可以利用未来1帧语音帧的信息。
102、根据第一语音样本对流式语音处理模型进行调整,得到调整后流式语音处理模型。
其中,由于流式语音处理模型为将预训练的基础语音模型中的非流式变换器替换为流式变换器得到的,因此,该流式语音处理模型除流式变换器外的网络参数均是预训练的,故,可以根据第一语音样本对流式语音处理模型进行调整,而不需要重新训练该流式语音处理模型。
具体的,可以采用微调(Fine-tune)的方式,利用第一语音样本对流式语音处理模型进行调整,得到调整后流式语音处理模型。需要说明的是,在本申请中,可以采用较少的第一语音样本对流式语音处理模型进行调整,其主要原因是:1)可以提高训练速度,降低训练成本;2)避免出现过拟合的情况,对于数据集本身很小(几千张图片)的情况,从头开始训练具有几千万参数的大型神经网络是不现实的,因为越大的模型对数据量的要求越大,过拟合无法避免。
另外,还需要说明的是,在训练时,理想状态下音频中的音素和翻译后的字符可以一一对应,但是,在实际训练时,音频中的音素和翻译后的字符往往不能一一对应,原因是有人说话快,有人说话慢,每个人说话快慢不同,不可能手动地对音素和字符对齐,故,在本申请中,采用时序分类算法对齐训练时的输入和输出,即,可选的,在一些实施例中,步骤“根据第一语音样本对流式语音处理模型进行调整,得到调整后流式语音处理模型”,具体可以包括:
(11)获取预设时序分类算法;
(12)基于时序分类算法以及第一语音样本的标签对流式语音处理模型进行调整,得到调整后流式语音处理模型。
其中,该时序分类算法可以是由运维人员、终端或服务器预先设置,在一些实施例中,时序分类算法可以是连接时序分类算法(ConnectionistTemporal Classification,CTC),传统序列标注算法需要每一时刻输入与输出符号完全对齐。而CTC扩展了标签集合,添加空元素。前向过程计算从1-t时刻,预测出正确的前缀的概率;后向过程计算从t-T时刻,预测出正确的后缀的概率,故,前缀概率*后缀概率/t时刻预测s的概率=t时刻时所有正确的预测序列的概率。
CTC引入了blank(该帧没有预测值),每个预测的分类对应的一整段语音中的一个spike(尖峰),其他不是尖峰的位置认为是blank。对于一段语音,CTC最后的输出是spike(尖峰)的序列,并不关心每一个音素持续了多长时间,即,可选的,在一些实施例中,步骤“基于时序分类算法以及第一语音样本的标签对流式语音处理模型进行调整,得到调整后流式语音处理模型”,具体可以包括:
(21)在第一语音样本中相邻第一语音元素之间插入间隔标识,得到处理后第一语音样本;
(22)利用时序分类算法预测处理后第一语音样本对应的标签;
(23)基于第一语音样本对应的标签和处理后第一语音样本对应的标签,构建时序分类算法对应的时序分类损失;
(24)根据时序分类损失对流式语音处理模型进行调整,得到调整后流式语音处理模型。
以“你好”为例,假设将每个字母作为一个发音音素,第1至4帧对应n的发音,第5至7帧对应i的音素,第8帧和第9帧对应h的音素,第10帧和第11帧对应a的音素,第12帧对应o的音素,采用CTC算法后,第4帧对应n的发音,第7帧对应i的音素,第9帧对应h的音素,第11帧对应a的音素,第12帧对应o的音素,即,经过CTC预测的序列结果在时间上可能会稍微延迟于真实发音对应的时间点,其他时间点都会被标记会blank。然后,基于“你好”中每个音素的真实发音对应的时间点、以及预测的时间点构建时序分类算法对应的时序分类损失,最后,根据时序分类损失对流式语音处理模型进行调整,得到调整后流式语音处理模型。
103、基于第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,得到训练后流式语音处理模型。
其中,教师模型为教师-学生网络架构下的模型,对于教师--学生网络架构,教师模型往往是一个更加复杂的模型,具有非常好的性能和泛化能力,可以用这个网络来作为一个软目标来指导另外一个更加简单的学生网络来学习,使得更加简单、参数运算量更少的学生模型也能够具有和教师网络相近的性能,也算是一种模型压缩的方式。
学生模型的训练含有两个目标:一个是原始的目标函数,为小模型的类别概率输出与标注值的交叉熵;另一个为软目标,为小模型的类别概率输出与大模型的类别概率输出的交叉熵,由于软目标具有更高的熵,它能比学生模型的目标函数提供更加多的信息,因此可以使用较少的数据以及较大的学习率。
为了进一步提高模型训练的效率,本申请采用对教师模型剪枝的方式,确定教师模型中网络层与流式语音处理模型中网络层之间的对应关系,基于此训练流式语音处理模型,即,可选的,在一些实施例中,步骤“基于第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,得到训练后流式语音处理模型”,具体可以包括:
(31)获取流式语音处理模型对应的教师模型;
(32)确定教师模型中网络层与流式语音处理模型中网络层之间的对应关系;
(33)基于对应关系、第一语音样本以及第二语音样本对流式语音处理模型进行训练,得到训练后流式语音处理模型。
其中,流式语音模型对应的教师模型可以是预先训练得到的,具体的,可以将流式语音处理模型确定为基础语音模型的指导模型,并利用第一语音样本对基础语音模型进行调整,得到参考语音模型,然后,将参考语音模型确定为流式语音处理模型对应的教师模型。
需要说明的是,流式语音处理模型除了包含流式transformer,还可以包括卷积层、池化层以及全连接层等等。
卷积层:主要用于对语音样本进行特征提取,其中,卷积核大小可以根据实际应用而定,比如,从第一层卷积层至第四层卷积层的卷积核大小依次可以为(7,7),(5,5),(3,3),(3,3);可选的,为了降低计算的复杂度,提高计算效率,在本实施例中,这四层卷积层的卷积核大小可以都设置为(3,3),激活函数均采用“relu(线性整流函数,RectifiedLinearUnit)”,而padding(padding,指属性定义元素边框与元素内容之间的空间)方式均设置为“same”,“same”填充方式可以简单理解为以0填充边缘,左边(上边)补0的个数和右边(下边)补0的个数一样或少一个。可选的,卷积层与卷积层之间可以通过直连的方式连接,从而加快网络收敛速度,为了进一步减少计算量,还可以在第二至第四层卷积层中的所有层或任意1~2层进行下采样(pooling)操作,该下采样操作与卷积的操作基本相同,只不过下采样的卷积核为只取对应位置的最大值(max pooling)或平均值(averagepooling)等,为了描述方便,在本发明实施例中,将均以在第二层卷积层和第三次卷积层中进行下采样操作,且该下采样操作具体为max pooling为例进行说明。
需说明的是,为了描述方便,在本发明实施例中,将激活函数所在层和下采样层(也称为池化层)均归入卷积层中,应当理解的是,也可以认为该结构包括卷积层、激活函数所在层、下采样层(即池化层)和全连接层,当然,还可以包括用于输入数据的输入层和用于输出数据的输出层,在此不再赘述。
全连接层:可以将学到的特征映射到样本标记空间,其在整个卷积神经网络中主要起到“分类器”的作用,全连接层的每一个结点都与上一层(如卷积层中的下采样层)输出的所有结点相连,其中,全连接层的一个结点即称为全连接层中的一个神经元,全连接层中神经元的数量可以根据实际应用的需求而定,可选的,在全连接层中,也可以通过加入激活函数来加入非线性因素,比如,可以加入激活函数sigmoid(S型函数)。
对于卷积层而言,权重参数是一个非常重要的概念,卷积层一般会用到多个不同的卷积核,每个卷积核都有对应的权重参数,因此,可以基于权重参数之间的相似程度来确定教师模型中网络层与流式语音处理模型中网络层之间的对应关系。
比如,教师模型包括卷积核a1、卷积核a2、卷积核a3、卷积核a4以及卷积核a5,流式语音处理模型也包括卷积核b1、卷积核b2、卷积核b3、卷积核b4以及卷积核b5,其中,卷积核a1与流式语音处理模型中各卷积核的相似度分别为:60%、10%、20%、13%以及16%,那么可以确定该卷积核a1为卷积核b1对应的卷积核,即,卷积核a1所在的网络层与卷积核b1所在的网络层对应。随后,可以利用卷积核a1所在的网络层的网络参数对卷积核b1所在的网络层的网络参数进行更新,即,将卷积核b1所在的网络层的网络参数更新为卷积核a1所在的网络层的网络参数,然后,基于第一语音样本以及第二语音样本对更新后的流式语音处理模型进行训练,也即,可选的,在一些实施例中,步骤“基于对应关系、第一语音样本以及第二语音样本对流式语音处理模型进行训练,得到训练后流式语音处理模型”,具体可以包括:
(41)根据对应关系以及教师模型中网络层的网络参数,对流式语音处理模型进行初始化;
(42)基于第一语音样本以及第二语音样本对初始化的流式语音处理模型进行训练,得到训练后流式语音处理模型。
由于第二语音样本为未标注的语音样本,故,可以理解的是,在本申请中,采用半监督学习的方法训练初始化的流式语音处理模型,从而得到训练后流式语音处理模型,比如,可以采用自监督(self-training)算法基于第一语音样本以及第二语音样本对初始化的流式语音处理模型进行训练,得到训练后流式语音处理模型,具体的,利用第一语音样本训练初始化的流式语音处理模型,得到初次训练的流式语音处理模型,以下记为H,然后,利用H对第二语音样本进行分类,并将最接近第一语音样本的分类后的第二语音样本加入至第一语音样本集中,比如,可以计算第一语音样本与分类后的第二语音样本之间的欧式距离,然后,选择欧式距离最小的第二语音样本加入至第一语音样本集中,接着,再用更新后的第一语音样本集训练H,直至所有第二语音样本均训练完毕为止。
需要说明的是,在本实施例中,为了提高模型识别的准确性,可以通过教师模型指导初始化的流式语音处理模型的训练,即,可选的,在一些实施例中,步骤“基于第一语音样本以及第二语音样本对初始化的流式语音处理模型进行训练,得到训练后流式语音处理模型”,具体可以包括:
(51)将第一语音样本以及第二语音样本输入至教师模型中,以及将第一语音样本以及第二语音样本输入至初始化的流式语音处理模型中;
(52)基于教师模型的输出以及初始化的流式语音处理模型的输出,计算教师模型与初始化的流式语音处理模型之间的蒸馏损失、以及初始化的流式语音处理模型的模型损失;
(53)根据蒸馏损失与模型损失对初始化的流式语音处理模型进行训练,得到训练后流式语音处理模型。
例如,具体的,利用第一语音样本对教师模型进行调整,然后,利用调整后教师模型对第二语音样本进行分类,并将最接近第一语音样本的分类后的第二语音样本加入至第一语音样本集中,由此教师模型完成对第二语音样本的分类,即,教师模型输出每个第二语音样本的预测值;同时,利用第一语音样本训练初始化的流式语音处理模型,得到初次训练的流式语音处理模型,并利用初次训练的流式语音处理模型对第二语音样本进行分类,然后,将最接近第一语音样本的分类后的第二语音样本加入至第一语音样本集中,由此流式语音处理模型完成对第二语音样本的分类,随后,基于两者的输出构建教师模型与初始化的流式语音处理模型之间的蒸馏损失(即soft target),最后,利用蒸馏损失以及流式语音模型在自训练时产生的模型损失,对初始化的流式语音处理模型进行训练,得到训练后流式语音处理模型。
104、根据第一语音样本、基础语音模型以及语言模型对第二语音样本进行标注,得到标注后第二语音样本。
需要说明的是,语音识别系统的目的,是把语音转换成文字。具体来说,是输入一段语音信号,要找一个文字序列(由词或字组成),使得它与语音信号的匹配程度最高,也就是说,可以利用第一语音样本对基础语音模型进行训练,然后,利用训练后的基础语音模型预测第二语音样本对应的音素串,最后,利用语言模型确定与该音素串匹配程度最高的语音文本,并利用该音素串以及语音文本对第二语音样本进行标注,得到标注后第二语音样本。
105、基于第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,以通过目标语音处理模型对待处理语音进行处理。
在得到训练后流式语音处理模型后,再利用第一语音样本和时序分类算法对训练后流式语音处理模型进行微调,得到微调后流式语音处理模型KD,随后,采用标注后第二语音样本对模型KD进行训练,得到目标语音处理模型。
在实际场景时,如用户利用手机的应用程序中“文字转语音”功能时,手机对用户语音进行识别后,手机可以通过目标语音处理模型对用户语音进行识别,然后,手机基于识别结果以及语言模型确定该用户语音对应的语音文本,在一些实施例中,可以在应用程序的界面中展示该语音文本,由此,完成对用户语音的处理。
本申请在获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型后,根据第一语音样本对流式语音处理模型进行调整,得到调整后流式语音处理模型,然后,基于第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,得到训练后流式语音处理模型,接着,根据第一语音样本、基础语音模型以及语言模型对第二语音样本进行标注,得到标注后第二语音样本,最后,基于第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,以通过目标语音处理模型对待处理语音进行处理。本申请提供的语音处理方法,将基础语音模型中的非流式变换器替换为流式变换器,得到流式语音处理模型,然后,利用第一语音样本对流式语音处理模型进行调整,并利用第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,使得最终的目标语音处理模型不仅可以用户进行说话时进行同步识别,并且还具有教师模型的识别能力,在提高实时识别场景下语音识别效果,从而提高交互成功率的同时,减少模型训练的耗时,从而提供模型训练的效率。
根据实施例所述的方法,以下将举例进一步详细说明。
在本实施例中将以该语音处理装置具体集成在终端中为例进行说明。
请参阅图2,一种语音处理方法,具体流程可以如下:
201、终端获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型。
其中,基础语音模型包括非流式变换器,流式语音处理模型为将基础语音模型中的非流式变换器替换为流式变换器得到的。
202、终端根据第一语音样本对流式语音处理模型进行调整,得到调整后流式语音处理模型。
其中,由于流式语音处理模型为将基础语音模型中的非流式变换器替换为流式变换器得到的,因此,该流式语音处理模型除流式变换器外的网络参数均是预训练的,故,终端可以根据第一语音样本对流式语音处理模型进行调整,而不需要重新训练该流式语音处理模型。
203、终端基于第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,得到训练后流式语音处理模型。
其中,教师模型为教师-学生网络架构下的模型,对于教师--学生网络架构,教师模型往往是一个更加复杂的模型,具有非常好的性能和泛化能力,可以用这个网络来作为一个软目标来指导另外一个更加简单的学生网络来学习,使得更加简单、参数运算量更少的学生模型也能够具有和教师网络相近的性能,也算是一种模型压缩的方式。
具体的,终端可以将第一语音样本以及第二语音样本输入至教师模型中,以及将第一语音样本以及第二语音样本输入至初始化的流式语音处理模型中,然后,终端基于教师模型的输出以及初始化的流式语音处理模型的输出,计算教师模型与初始化的流式语音处理模型之间的蒸馏损失、以及初始化的流式语音处理模型的模型损失,最后,终端根据蒸馏损失与模型损失对初始化的流式语音处理模型进行训练,得到训练后流式语音处理模型。
204、终端根据第一语音样本、基础语音模型以及语言模型对第二语音样本进行标注,得到标注后第二语音样本。
终端可以利用第一语音样本对基础语音模型进行训练,然后,终端利用训练后的基础语音模型预测第二语音样本对应的音素串,最后,终端利用语言模型确定与该音素串匹配程度最高的语音文本,并利用该音素串以及语音文本对第二语音样本进行标注,得到标注后第二语音样本。
205、终端基于第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,以通过目标语音处理模型对待处理语音进行处理。
终端在得到目标语音处理模型,终端当检测到针对待处理语音触发的语音处理操作时,终端根据目标语音处理模型对待处理语音进行识别,然后,终端基于识别结果以及语言模型确定该对待处理语音对应的语音文本。
本申请提供一种新型的模型训练方法,并将该训练的模型应用至语音识别领域中,以下进一步具体说明本申请的模型训练方法,如前面实施例提到,本申请采用CTC算法对齐输入序列与输出序列,对于采用CTC算法做知识迁移训练的时候,会存在尖峰时刻不匹配的问题,所以,本申请的教师模型N’是通过CTC损失训练得到的,训练期间采用调整后流式语音处理模型S作为指导模型,知识迁移训练的损失函数定义如下:
其中,i表示模型中Transformer的层数,MSE表示最小均方差,H表示teacher模型或者student模型的第i个transformer层的输出。
假设预训练好的非流式模型为P,带标注的数据集(第一语音样本)为L,无标注的数据集(第二语音样本)为U,语言模型为LM,本申请的模型训练流程描述如下:
1.将P的非流式Transformer替换为流式Transformer,在L数据集上面对上述模型使用CTC loss进行微调,得到流式模型S。
2.在L数据集上面对模型P使用guided CTC loss进行fine-tune,训练过程中使用S作为指导模型,得到非流式模型N’。
3.将P的非流式Transformer替换为流式Transformer,在L和U数据集上面对上述模型进行知识迁移训练,训练中使用N’作为老师模型,得到流式模型KD。
4.在L数据集上面对模型P使用CTC loss进行微调,得到非流式模型N。
5.使用N和LM对于U数据集解码,使用解码结果作为数据的伪标注,得到伪标注数据集U’。
6.在L和U’数据集上面,对KD模型使用CTC loss进行fine-tune,得到最终的流式模型ST。
实验使用的训练数据为960小时的librispeech数据,其中100小时的数据带有标注,另外860小时数据没有标注。预训练模型P使用960小时数据训练得到,语言模型LM使用标注的librispeech的4gram语言模型。测试集使用librispeech的标准测试集dev-clean/dev-other/test-clean/test-other。
(一)、baseline模型
考虑到原始wav2vec2.0预训练模型使用了group norm层以及卷积核为128的CNN网络层,这两种网络结构不适合用于流式模型,所以这里首先将这两部分网络替换为batchnorm层和卷积核为24的causal CNN层。改造后模型的效果如上表所示,后面的网络结构都是基于改造后的网络。
(二)、流式transformer模型的结果
模型 | dev-clean | dev-other | test-clean | test-other |
N1 | 2.9 | 8.1 | 3.3 | 8.1 |
S1 | 3.9 | 13.0 | 4.4 | 13.0 |
S2 | 3.5 | 11.4 | 3.9 | 11.4 |
S3 | 3.5 | 10.3 | 3.9 | 10.4 |
在fine-tune阶段的训练中,尝试将非流式的transformer替换为流式transformer,结果如上表。其中N1表示非流式transformer模型,S1表示Time-restrictedTransformer模型,每一层的right context为2帧,网络总共有12层transformer,所以整体的延时为12*2=24帧;S2表示Chunk Transformer模型,chunk的大小为48帧,所以平均延时为48/2=24帧;S3表示Block Transformer模型,chunk的大小为12帧,future part的大小为18帧,整体平均延时为12/2+18=24帧。从结果来看Block Transformer模型的结果最优。
(三)、半监督训练的结果
为了进一步利用860小时的无标注数据提升S3模型的效果,这里尝试了knowledgedistillation和self-training,在test-other测试集上面,分别取得了5.8%和11.2%的相对字错误率下降,整体上获得了16.3%的相对字错误率下降。
本申请的终端在获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型后,终端根据第一语音样本对流式语音处理模型进行调整,得到调整后流式语音处理模型,然后,终端基于第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,得到训练后流式语音处理模型,接着,终端根据第一语音样本、基础语音模型以及语言模型对第二语音样本进行标注,得到标注后第二语音样本,最后,终端基于第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,以通过目标语音处理模型对待处理语音进行处理。本申请提供的语音处理方法,将基础语音模型中的非流式变换器替换为流式变换器,得到流式语音处理模型,然后,利用第一语音样本对流式语音处理模型进行调整,并利用第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,使得最终的目标语音处理模型不仅可以用户进行说话时进行同步识别,并且还具有教师模型的识别能力,在提高实时识别场景下语音识别效果,从而提高交互成功率的同时,减少模型训练的耗时,从而提供模型训练的效率。
为便于更好的实施本申请的语音处理方法,本申请还提供一种基于上述语音处理装置(简称处理装置)。其中名词的含义与上述语音处理方法中相同,具体实现细节可以参考方法实施例中的说明。
请参阅图3,图3为本申请提供的语音处理装置的结构示意图,其中该处理装置可以包括获取模块301、调整模块302、第一训练模块303、标注模块304、第二训练模块305以及处理模块306,具体可以如下:
获取模块301,用于获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型。
其中,基础语音模型包括非流式变换器,流式语音处理模型为将基础语音模型中的非流式变换器替换为流式变换器得到的。
调整模块302,用于根据第一语音样本对流式语音处理模型进行调整,得到调整后流式语音处理模型。
其中,由于流式语音处理模型为将基础语音模型中的非流式变换器替换为流式变换器得到的,因此,该流式语音处理模型除流式变换器外的网络参数均是预训练的,故,调整模块302可以根据第一语音样本对流式语音处理模型进行调整,而不需要重新训练该流式语音处理模型。
可选的,在一些实施例中,调整模块302具体可以包括:
第二获取单元,用于获取预设时序分类算法;
调整单元,用于基于时序分类算法以及第一语音样本的标签对所述流式语音处理模型进行调整,得到调整后流式语音处理模型。
可选的,在一些实施例中,调整单元具体可以用于:在第一语音样本中相邻第一语音元素之间插入间隔标识,得到处理后第一语音样本;利用时序分类算法预测处理后第一语音样本对应的标签;基于第一语音样本对应的标签和处理后第一语音样本对应的标签,构建时序分类算法对应的时序分类损失;根据时序分类损失对所述流式语音处理模型进行调整,得到调整后流式语音处理模型。
第一训练模块303,用于基于所述第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对所述所述流式语音处理模型进行训练,得到训练后流式语音处理模型;
具体的,第一训练模块303可以将第一语音样本以及第二语音样本输入至教师模型中,以及将第一语音样本以及第二语音样本输入至初始化的流式语音处理模型中,然后,第一训练模块303基于教师模型的输出以及初始化的流式语音处理模型的输出,计算教师模型与初始化的流式语音处理模型之间的蒸馏损失、以及初始化的流式语音处理模型的模型损失,最后,第一训练模块303根据蒸馏损失与模型损失对初始化的流式语音处理模型进行训练,得到训练后流式语音处理模型
可选的,在一些实施例中,第一训练模块303具体可以包括:
第一获取单元,用于获取流式语音处理模型对应的教师模型;
第一确定单元,用于确定教师模型中网络层与流式语音处理模型中网络层之间的对应关系;
训练单元,用于基于对应关系、第一语音样本以及第二语音样本对所述流式语音处理模型进行训练,得到训练后流式语音处理模型。
可选的,在一些实施例中,训练单元具体可以包括:
初始子单元,用于根据对应关系以及教师模型中网络层的网络参数,对流式语音处理模型进行初始化;
训练子单元,用于基于第一语音样本以及第二语音样本对初始化的流式语音处理模型进行训练,得到训练后流式语音处理模型。
可选的,在一些实施例中,训练子单元具体可以用于:将第一语音样本以及第二语音样本输入至教师模型中,以及将第一语音样本以及第二语音样本输入至初始化的流式语音处理模型中;基于教师模型的输出以及初始化的流式语音处理模型的输出,计算教师模型与初始化的流式语音处理模型之间的蒸馏损失、以及初始化的流式语音处理模型的模型损失;根据蒸馏损失与模型损失对初始化的流式语音处理模型进行训练,得到训练后流式语音处理模型。
可选的,在一些实施例中,第一确定单元具体可以用于:提取教师模型中网络层对应的权重信息,得到第一权重信息,以及提取流式语音处理模型中网络层对应的权重信息,得到第二权重信息;基于第一权重信息与第二权重信息之间的相似度,确定教师模型中网络层与流式语音处理模型中网络层之间的对应关系。
可选的,在一些实施例中,还包括第二确定单元,第二确定单元具体可以用于:将调整后流式语音处理模型确定为基础语音模型的指导模型,并利用第一语音样本对所述基础语音模型进行调整,得到参考语音模型;将参考语音模型确定为流式语音处理模型对应的教师模型。
标注模块304,用于根据第一语音样本、基础语音模型以及语言模型对所述第二语音样本进行标注,得到标注后第二语音样本;
标注模块304可以利用第一语音样本对基础语音模型进行训练,然后,标注模块304利用训练后的基础语音模型预测第二语音样本对应的音素串,最后,标注模块304利用语言模型确定与该音素串匹配程度最高的语音文本,并利用该音素串以及语音文本对第二语音样本进行标注,得到标注后第二语音样本。
第二训练模块305,用于基于第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型。
第二训练模块305在得到训练后流式语音处理模型后,再利用第一语音样本和时序分类算法对训练后流式语音处理模型进行微调,得到微调后流式语音处理模型KD,随后,第二训练模块305采用标注后第二语音样本对模型KD进行训练,得到目标语音处理模型。
处理模块306,用于通过目标语音处理模型对待处理语音进行处理。
处理模块306在得到目标语音处理模型,处理模块306当检测到针对待处理语音触发的语音处理操作时,处理模块306根据目标语音处理模型对待处理语音进行识别,然后,处理模块306基于识别结果以及语言模型确定该对待处理语音对应的语音文本。
本申请的获取模块301在获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型后,调整模块032根据第一语音样本对流式语音处理模型进行调整,得到调整后流式语音处理模型,然后,第一训练模块303基于第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,得到训练后流式语音处理模型,接着,标注模块304根据第一语音样本、基础语音模型以及语言模型对第二语音样本进行标注,得到标注后第二语音样本,最后,第二训练模块305基于第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,处理模块306通过目标语音处理模型对待处理语音进行处理。本申请提供的语音处理方法,将基础语音模型中的非流式变换器替换为流式变换器,得到流式语音处理模型,然后,利用第一语音样本对流式语音处理模型进行调整,并利用第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,使得最终的目标语音处理模型不仅可以用户进行说话时进行同步识别,并且还具有教师模型的识别能力,在提高实时识别场景下语音识别效果,从而提高交互成功率的同时,减少模型训练的耗时,从而提供模型训练的效率。
此外,本申请还提供一种电子设备,如图4所示,其示出了本申请所涉及的电子设备的结构示意图,具体来讲:
该电子设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图4中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器401是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。
电子设备还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该电子设备还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,电子设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,电子设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:
获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型,根据第一语音样本对流式语音处理模型进行调整,得到调整后流式语音处理模型,基于第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,得到训练后流式语音处理模型,根据第一语音样本、基础语音模型以及语言模型对第二语音样本进行标注,得到标注后第二语音样本,基于第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,以通过目标语音处理模型对待处理语音进行处理。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
本申请在获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型后,根据第一语音样本对流式语音处理模型进行调整,得到调整后流式语音处理模型,然后,基于第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,得到训练后流式语音处理模型,接着,根据第一语音样本、基础语音模型以及语言模型对第二语音样本进行标注,得到标注后第二语音样本,最后,基于第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,以通过目标语音处理模型对待处理语音进行处理。本申请提供的语音处理方法,将基础语音模型中的非流式变换器替换为流式变换器,得到流式语音处理模型,然后,利用第一语音样本对流式语音处理模型进行调整,并利用第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,使得最终的目标语音处理模型不仅可以用户进行说话时进行同步识别,并且还具有教师模型的识别能力,在提高实时识别场景下语音识别效果,从而提高交互成功率的同时,减少模型训练的耗时,从而提供模型训练的效率。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请提供一种存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请所提供的任一种语音处理方法中的步骤。例如,该指令可以执行如下步骤:
获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型,根据第一语音样本对流式语音处理模型进行调整,得到调整后流式语音处理模型,基于第一语音样本、第二语音样本以及流式语音处理模型对应的教师模型,对流式语音处理模型进行训练,得到训练后流式语音处理模型,根据第一语音样本、基础语音模型以及语言模型对第二语音样本进行标注,得到标注后第二语音样本,基于第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,以通过目标语音处理模型对待处理语音进行处理。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的指令,可以执行本申请所提供的任一种语音处理中的步骤,因此,可以实现本申请所提供的任一种语音处理方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请所提供的一种语音处理方法、装置、电子设备以及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种语音处理方法,其特征在于,包括:
获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型,所述基础语音模型包括非流式变换器,所述流式语音处理模型为将所述基础语音模型中的非流式变换器替换为流式变换器得到的;
根据所述第一语音样本对所述流式语音处理模型进行调整,得到调整后流式语音处理模型;
基于所述第一语音样本、第二语音样本以及所述流式语音处理模型对应的教师模型,对所述流式语音处理模型进行训练,得到训练后流式语音处理模型;
根据所述第一语音样本、基础语音模型以及语言模型对所述第二语音样本进行标注,得到标注后第二语音样本;
基于所述第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,以通过所述目标语音处理模型对待处理语音进行处理。
2.根据权利要求1所述的方法,其特征在于,所述基于所述第一语音样本、第二语音样本以及所述流式语音处理模型对应的教师模型,对所述流式语音处理模型进行训练,得到训练后流式语音处理模型,包括:
获取所述流式语音处理模型对应的教师模型;
确定所述教师模型中网络层与所述流式语音处理模型中网络层之间的对应关系;
基于所述对应关系、第一语音样本以及第二语音样本对所述流式语音处理模型进行训练,得到训练后流式语音处理模型。
3.根据权利要求2所述的方法,其特征在于,所述基于所述对应关系、第一语音样本以及第二语音样本对所述流式语音处理模型进行训练,得到训练后流式语音处理模型,包括:
根据所述对应关系以及所述教师模型中网络层的网络参数,对所述流式语音处理模型进行初始化;
基于所述第一语音样本以及第二语音样本对初始化的流式语音处理模型进行训练,得到训练后流式语音处理模型。
4.根据权利要求3所述的方法,其特征在于,所述基于所述第一语音样本以及第二语音样本对初始化的流式语音处理模型进行训练,得到训练后流式语音处理模型,包括:
将所述第一语音样本以及第二语音样本输入至教师模型中,以及;
将所述第一语音样本以及第二语音样本输入至初始化的流式语音处理模型中;
基于所述教师模型的输出以及初始化的流式语音处理模型的输出,计算所述教师模型与初始化的流式语音处理模型之间的蒸馏损失、以及所述初始化的流式语音处理模型的模型损失;
根据所述蒸馏损失与模型损失对初始化的流式语音处理模型进行训练,得到训练后流式语音处理模型。
5.根据权利要求2所述的方法,其特征在于,所述确定所述教师模型中网络层与所述流式语音处理模型中网络层之间的对应关系,包括:
提取所述教师模型中网络层对应的权重信息,得到第一权重信息,以及;
提取所述流式语音处理模型中网络层对应的权重信息,得到第二权重信息;
基于所述第一权重信息与第二权重信息之间的相似度,确定所述教师模型中网络层与所述流式语音处理模型中网络层之间的对应关系。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述根据所述第一语音样本对所述流式语音处理模型进行调整,得到调整后流式语音处理模型,包括:
获取预设时序分类算法;
基于所述时序分类算法以及第一语音样本的标签对所述流式语音处理模型进行调整,得到调整后流式语音处理模型。
7.根据权利要求6所述的方法,其特征在于,所述基于所述时序分类算法以及第一语音样本的标签对所述流式语音处理模型进行调整,得到调整后流式语音处理模型,包括:
在所述第一语音样本中相邻第一语音元素之间插入间隔标识,得到处理后第一语音样本;
利用所述时序分类算法预测所述处理后第一语音样本对应的标签;
基于所述第一语音样本对应的标签和所述处理后第一语音样本对应的标签,构建所述时序分类算法对应的时序分类损失;
根据所述时序分类损失对所述流式语音处理模型进行调整,得到调整后流式语音处理模型。
8.一种语音处理装置,其特征在于,包括:
获取模块,用于获取已标注的第一语音样本、未标注的第二语音样本、预训练的基础语音模型、流式语音处理模型和语言模型,所述基础语音模型包括非流式变换器,所述流式语音处理模型为将所述基础语音模型中的非流式变换器替换为流式变换器得到的;
调整模块,用于根据所述第一语音样本对所述流式语音处理模型进行调整,得到调整后流式语音处理模型;
第一训练模块,用于基于所述第一语音样本、第二语音样本以及所述流式语音处理模型对应的教师模型,对所述所述流式语音处理模型进行训练,得到训练后流式语音处理模型;
标注模块,用于根据所述第一语音样本、基础语音模型以及语言模型对所述第二语音样本进行标注,得到标注后第二语音样本;
第二训练模块,用于基于所述第一语音样本和标注后第二语音样本对训练后流式语音处理模型进行训练,得到目标语音处理模型,以通过所述目标语音处理模型对待处理语音进行处理。
9.一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现如权利要求1-7任一项所述语音处理方法的步骤。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述语音处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110615155.6A CN113823272A (zh) | 2021-06-02 | 2021-06-02 | 语音处理方法、装置、电子设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110615155.6A CN113823272A (zh) | 2021-06-02 | 2021-06-02 | 语音处理方法、装置、电子设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113823272A true CN113823272A (zh) | 2021-12-21 |
Family
ID=78923794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110615155.6A Pending CN113823272A (zh) | 2021-06-02 | 2021-06-02 | 语音处理方法、装置、电子设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113823272A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113987090A (zh) * | 2021-12-28 | 2022-01-28 | 北京泷汇信息技术有限公司 | 句中实体关系模型训练方法及句中实体关系识别方法 |
CN116052674A (zh) * | 2022-12-19 | 2023-05-02 | 北京数美时代科技有限公司 | 基于预测未来帧的流式语音识别方法、系统和存储介质 |
CN117275484A (zh) * | 2023-11-17 | 2023-12-22 | 深圳市友杰智新科技有限公司 | 命令词识别方法、装置、设备和介质 |
WO2024037348A1 (zh) * | 2022-08-17 | 2024-02-22 | 广州市百果园信息技术有限公司 | 音频处理方法、模型训练方法、装置、设备、介质及产品 |
-
2021
- 2021-06-02 CN CN202110615155.6A patent/CN113823272A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113987090A (zh) * | 2021-12-28 | 2022-01-28 | 北京泷汇信息技术有限公司 | 句中实体关系模型训练方法及句中实体关系识别方法 |
CN113987090B (zh) * | 2021-12-28 | 2022-03-25 | 北京泷汇信息技术有限公司 | 句中实体关系模型训练方法及句中实体关系识别方法 |
WO2024037348A1 (zh) * | 2022-08-17 | 2024-02-22 | 广州市百果园信息技术有限公司 | 音频处理方法、模型训练方法、装置、设备、介质及产品 |
CN116052674A (zh) * | 2022-12-19 | 2023-05-02 | 北京数美时代科技有限公司 | 基于预测未来帧的流式语音识别方法、系统和存储介质 |
CN116052674B (zh) * | 2022-12-19 | 2023-06-09 | 北京数美时代科技有限公司 | 基于预测未来帧的流式语音识别方法、系统和存储介质 |
CN117275484A (zh) * | 2023-11-17 | 2023-12-22 | 深圳市友杰智新科技有限公司 | 命令词识别方法、装置、设备和介质 |
CN117275484B (zh) * | 2023-11-17 | 2024-02-20 | 深圳市友杰智新科技有限公司 | 命令词识别方法、装置、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021047286A1 (zh) | 文本处理模型的训练方法、文本处理方法及装置 | |
CN113823272A (zh) | 语音处理方法、装置、电子设备以及存储介质 | |
CN111554268A (zh) | 基于语言模型的语言识别方法、文本分类方法和装置 | |
CN112331183B (zh) | 基于自回归网络的非平行语料语音转换方法及系统 | |
WO2023160472A1 (zh) | 一种模型训练方法及相关设备 | |
CN110321418A (zh) | 一种基于深度学习的领域、意图识别和槽填充方法 | |
CN114596844B (zh) | 声学模型的训练方法、语音识别方法及相关设备 | |
CN101187990A (zh) | 一种会话机器人系统 | |
CN112101044B (zh) | 一种意图识别方法、装置及电子设备 | |
CN112037773B (zh) | 一种n最优口语语义识别方法、装置及电子设备 | |
CN111859954A (zh) | 目标对象识别方法、装置、设备及计算机可读存储介质 | |
CN115329779A (zh) | 一种多人对话情感识别方法 | |
US11961515B2 (en) | Contrastive Siamese network for semi-supervised speech recognition | |
CN112749556B (zh) | 多语言模型的训练方法和装置、存储介质和电子设备 | |
CN107452374B (zh) | 基于单向自标注辅助信息的多视角语言识别方法 | |
US11557283B2 (en) | Artificial intelligence system for capturing context by dilated self-attention | |
CN113792177A (zh) | 基于知识引导深度注意力网络的场景文字视觉问答方法 | |
CN113392265A (zh) | 多媒体处理方法、装置及设备 | |
CN114091452B (zh) | 一种基于适配器的迁移学习方法、装置、设备及存储介质 | |
CN115393933A (zh) | 一种基于帧注意力机制的视频人脸情绪识别方法 | |
KR20230158613A (ko) | 자기-적응형 증류 | |
Shi et al. | Multitask training with unlabeled data for end-to-end sign language fingerspelling recognition | |
Wu et al. | AI for online customer service: Intent recognition and slot filling based on deep learning technology | |
CN114169408A (zh) | 一种基于多模态注意力机制的情感分类方法 | |
WO2024129789A1 (en) | Semi-supervised training scheme for speech recognition |
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 |