一种音频数据处理方法及装置
文献发布时间:2023-06-19 09:58:59
技术领域
本申请涉及语音识别技术领域,尤其涉及一种音频数据处理方法及装置。
背景技术
随着人工智能的发展,语音识别作为实现人机之间交流的关键技术也得到广泛应用。通过语音识别模型将人声转换为文本,以使机器根据文本指令执行任务。
目前,在对语音识别模型进行训练时,通常需要预先采集包含人声的音频数据作为训练样本,并人工识别各音频数据的文本内容,作为各训练样本的标注,以根据各训练样本及其标注对语音识别模型进行训练。
由于各音频数据的采集环境复杂,采集到的各音频数据中还可能包含环境噪声、背景杂音等非人声音频,因此为提高语音识别模型的训练精度,在进行模型训练之前,还需对采集到的各音频数据进一步进行处理。具体的,针对作为训练样本的每个音频数据,根据该音频数据的频谱信息(包含声音的响度以及频率)、标准的人声频率范围以及响度范围,从该音频数据中确定人声音频的起止时间,以截取得到仅包含人声的音频数据,作为训练样本,用于训练语音识别模型。
发明内容
本说明书实施例提供一种音频数据处理方法及装置,用于部分解决现有技术获取到的作为训练样本的音频数据的准确度低,导致模型训练精度较低的问题。
本说明书实施例采用下述技术方案:
本说明书提供的一种音频数据处理方法,包括:
获取历史上采集的若干音频数据;
针对每个音频数据,确定该音频数据中的人声数据;
从所述人声数据中确定若干预设时长的音频数据,作为滑窗数据,其中,一个滑窗数据中包含若干帧音频数据;
针对该人声数据中的每个滑窗数据,对该滑窗数据进行音频特征提取,并将提取到的音频特征输入预先训练的语音分类模型中,确定该滑窗数据属于正常人声的概率;
根据该人声数据中各滑窗数据属于正常人声的概率,确定该人声数据中的正常人声数据,并根据确定出的各正常人声数据,确定训练样本,所述训练样本用于训练识别正常人声的语音识别模型。
可选地,根据该人声数据中各滑窗数据属于正常人声的概率,确定该人声数据中的正常人声数据,具体包括:
根据该人声数据中各滑窗数据属于正常人声的概率,确定该人声数据属于正常人声的概率;
当该人声数据属于正常人声的概率度大于第二预设阈值时,确定该人声数据属于正常人声,并将该人声数据作为正常人声数据。
可选地,根据该人声数据中各滑窗数据属于正常人声的概率,确定该人声数据中的正常人声数据,具体包括:
针对该人声数据中的每个滑窗数据,判断该滑窗数据属于正常人声的概率是否大于第三预设阈值;
若是,确定该滑窗数据属于正常人声;
若否,确定该滑窗数据属于非正常人声;
根据确定出的该人声数据中的各帧属于正常人声的各滑窗数据,确定该人声数据中的正常人声数据。
可选地,语音类型至少包含正常人声以及电子人声;
根据该人声数据中各滑窗数据属于正常人声的概率,确定该人声数据中的正常人声数据,具体包括:
针对该人声数据中的每个滑窗数据,确定该滑窗数据属于电子人声的概率;
根据各滑窗数据属于正常人声的概率以及属于电子人声的概率,确定该人声数据的概率矩阵;
根据确定出的该人声数据的概率矩阵,通过解码确定该人声数据中正常人声的起止时间;
根据该人声数据中正常人声的起止时间,确定该人声数据中的正常人声数据。
可选地,语音类型至少包含正常人声以及电子人声;
根据该人声数据中各滑窗数据属于正常人声的概率,确定该人声数据中的正常人声数据,具体包括:
针对该人声数据中的每个滑窗数据,确定该滑窗数据属于电子人声的概率;
根据该滑窗数据属于正常人声的概率以及属于电子人声的概率,确定该滑窗数据的概率矩阵;
将该滑窗数据的概率矩阵作为输入,输入预先训练的概率分类模型,输出该滑窗数据所属语音类型;
根据该人声数据中属于正常人声的各滑窗数据,确定该人声数据中的正常人声数据。
可选地,训练语音分类模型,具体包括:
获取历史上采集的若干已标注的音频数据,所述标注为音频数据所属的语音类型,所述语音类型至少包含正常人声以及电子人声;
针对获取到的每个音频数据,按照预设时长确定该音频数据中包含的各滑窗数据,并提取各滑窗数据的音频特征;
根据各音频数据的标注,对各音频数据中各滑窗数据的音频特征进行标注,并将确定出的各滑窗数据的音频特征及其标注,作为训练样本,其中,音频特征的标注为所述音频特征对应的滑窗数据属于各语音类型的概率矩阵;
针对每个训练样本,将该训练样本包含的音频特征输入待训练的语音分类模型,得到所述音频特征对应的滑窗数据分别属于各语音类型的概率矩阵;
以最小化所述模型输出的概率矩阵与该训练样本中的标注之间的差异为目标,调整所述待训练的语音分类模型中的参数。
可选地,训练概率分类模型,具体包括:
获取历史上采集的若干种不同语音类型的音频数据,并确定各音频数据属于各语音类型的概率矩阵,所述语音类型至少包含正常人声以及电子人声;
根据各音频数据的语音类型,对各概率矩阵进行标注,所述标注为概率矩阵对应的音频数据的语音类型;
根据各概率矩阵及其标注,确定训练样本;
针对每个训练样本,将该训练样本中包含的概率矩阵作为输入,输入待训练的概率分类模型,确定所述概率矩阵对应的音频数据的预测类型;
以最小化所述模型输出的预测类型与该训练样本中标注的语音类型之间的差异为目标,调整所述待训练的概率分类模型中的参数。
可选地,所述方法还包括:
针对确定出的每个正常人声数据,通过语音识别算法,确定该正常人声数据对应的文本内容;
当确定出的文本内容不符合预设内容条件时,删除该正常人声数据。
可选地,当确定出的文本内容不符合预设内容条件时,删除该正常人声数据,具体包括:
当确定出的文本内容中的字数小于预设字数阈值时,删除该正常人声数据。
可选地,当确定出的文本内容不符合预设内容条件时,删除该正常人声数据,具体包括:
当确定出的文本内容中不包含预设的关键词时,删除该正常人声数据。
本说明书提供一种音频数据处理装置,包括:
获取模块,获取历史上采集的若干音频数据;
第一确定模块,针对每个音频数据,确定该音频数据中的人声数据;
第二确定模块,从所述人声数据中确定若干预设时长的音频数据,作为滑窗数据,其中,一个滑窗数据中包含若干帧音频数据;
特征提取模块,针对该人声数据中的每个滑窗数据,对该滑窗数据进行音频特征提取,并将提取到的音频特征输入预先训练的语音分类模型中,确定该滑窗数据属于正常人声的概率;
第三确定模块,根据该人声数据中各滑窗数据属于正常人声的概率,确定该人声数据中的正常人声数据,并根据确定出的正常人声数据,确定训练样本,所述训练样本用于训练识别正常人声的语音识别模型。
本说明书提供的一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述音频数据处理方法。
本说明书提供的一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述音频数据处理方法。
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
在本说明书中对音频数据进行处理时,可先获取历史上采集的若干音频数据,并针对每个音频数据,确定该音频数据中的人声数据。之后,确定该人声数据包含的各滑窗数据,并针对该人声数据中的每个滑窗数据,对该滑窗数据进行音频特征提取,将提取到的音频特征输入预先训练的语音分类模型中,确定该滑窗数据属于正常人声的概率。最后,基于该人声数据中各滑窗数据属于正常人声的概率,确定该人声数据中的正常人声数据,以根据确定出的各正常人声数据,确定训练样本,其中,确定出的训练样本用于训练识别正常人声的语音识别模型。通过对音频数据进行音频特征提取,并将提取到的音频特征输入语音分类模型中进行语音分类的方式,从各音频数据中的人声数据中确定出正常人声数据,并将确定出的正常人声数据作为训练语音识别模型的训练样本,提高了训练样本的准确率,进一步提高语音识别模型的训练精度。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本说明书实施例提供的一种音频数据处理方法的流程示意图;
图2为本说明书实施例提供的一种滑窗处理方法的示意图;
图3为本说明书实施例提供的一种音频数据处理过程的示意图;
图4为本说明书实施例提供的一种音频数据处理装置的结构示意图;
图5为本说明书实施例提供的实现音频数据处理方法的电子设备示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,基于语音识别技术训练出的语音识别模型,常应用于人工智能领域中的人机交互之间,当用户发出指令时,可通过语音识别模型将用户发出声音的音频数据,转化为文本指令,以控制机器人根据文本指令执行任务。
其中,在训练语音识别模型时,所采用的训练样本通常是包含人声的音频数据。由于在实际录制音频的过程中,所处环境复杂多样,因此录制的音频数据可能存在环境噪声、背景杂声等,为获取高质量的人声音频数据作为训练样本,以提高语音识别模型的训练精度,现有技术基于人声音频与环境噪声以及背景杂声的频谱(响度以及频率)范围的差异,从已采集到的音频数据中截取人声数据(仅包含人声的音频数据),以获取高质量的训练样本进行模型训练。
但由于获取到的作为训练样本的音频数据中还可能包含导航人声、音乐人声以及广播人声等电子人声,而电子人声与正常人声的频谱信息的差异较小,难以直接进行区分。因此本说明书提供了一种音频数据处理方法,先确定出音频数据中的人声数据,之后再通过提取该人声数据的音频特征,并基于提取到的音频特征,以及预先训练的语音分类模型,从该人声数据中确定出正常人声数据。需要说明的是,在本说明书中将录制的由其它设备发出的人声,作为电子人声,将直接录制的由人类发出的声音作为正常人声。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1为本说明书实施例提供的一种音频数据处理方法的流程示意图,具体可包括以下步骤:
S100:获取历史上采集的若干音频数据。
本说明书提供的音频数据处理方法,是对用于训练语音识别模型的音频数据进行处理,因此在本说明书中,可先获取历史上采集的若干音频数据,以通过后续步骤对音频数据进行处理。
其中,由于语音识别模型用于识别人的声音,因此作为训练样本的音频数据中至少包含人声音频。本说明书对于作为训练样本的音频数据的采集方式,以及所采集的场景不做限制,具体可根据需要设置。
需要说明的是,本说明书提供的音频数据处理方法,是对作为训练样本的音频数据进行处理,从中确定出属于正常人声的音频数据,该音频数据处理方法具体可由服务器执行,该服务器可以是单个的服务器,也可以是多个服务器组成的系统,如,分布式服务器等,本说明书对此不做限制,可根据需要设置。
S102:针对每个音频数据,确定该音频数据中的人声数据。
在本说明书一种或多种实施例中,当获取到作为训练样本的若干音频数据后,由于音频采集环境中可能存在噪声以及杂音等非人声音频,因此可先初步对各音频数据进行处理,从各音频数据中截取出属于人声的人声数据。
具体的,针对获取到的每个音频数据,该服务器可先对该音频数据进行分帧处理,确定该音频数据中包含的每帧音频数据。之后,针对确定出的每帧音频数据,对该帧音频数据进行音频特征提取,并将提取到的音频特征输入预先训练的语音检测模型中,输出该帧音频数据属于人声的概率。最后,根据该音频数据中每帧音频数据属于人声的概率,确定该音频数据中的人声数据。
其中,对音频数据进行分帧处理时,对分割出的每帧音频数据的时间长度不做限制,以及对帧与帧之间所重叠的时间长度也不做限制,具体可根据需要设置。
进一步的,通常语音识别的音频特征主要有滤波器网络(Filter Banks,FBANK)以及梅尔频率倒谱系数(Mel-frequency cepstral coefficients,MFCC),其中,FBANK特征更符合声音信号的本质,拟合人耳的接收特性,MFCC特征是在FBANK特征的基础上进一步进行离散余弦变化得到的,因此FBank包含的特征信息量更多,特征相关性更高,MFCC包含的特征信息量较少,判别度更高。
而在本说明书步骤S102中对音频数据进行音频特征提取,其目的是区分出音频数据中的人声与环境噪声,以得到音频数据中的人声数据,因此可对该音频数据进行FBANK特征提取,以通过该FBANK特征更准确的识别出人声。其中,对音频数据进行FBANK特征提取已经是较为成熟的现有技术,本说明书对此不再赘述。
更进一步的,在本说明书中根据每帧音频数据属于人声的概率,确定该音频数据中的人声数据时。具体的,该服务器可针对每帧音频数据,判断该帧音频数据属于人声的概率是否大于第一预设阈值,当该帧音频数据属于人声的概率大于第一预设阈值时,可确定该帧音频数据为人声数据,否则,则确定该帧音频数据为非人声数据。并根据确定出的各帧人声数据,拼接得到完整的音频数据段,并将拼接得到的音频数据段,作为该音频数据中的人声数据。其中,该第一预设阈值可根据需要设置,本说明书对此不做限制。
在本说明书中,该语音检测模型的训练过程具体如下:
首先,可获取历史上采集的已标注的若干音频数据,标注类型包含人声数据以及非人声数据(包含环境噪声等)。其次,针对每个音频数据,对该音频数据进行分帧处理,确定该音频数据中包含的每帧音频数据,并通过特征提取算法对确定出的各帧音频数据进行音频特征提取,确定出各帧音频数据的音频特征。之后,根据对各音频数据的标注,确定对各帧音频数据的音频特征的标注,并将各帧音频数据的音频特征及其标注,作为训练样本。然后,针对每个训练样本,将该训练样本中的音频特征输入待训练的语音检测模型中,得到该待训练的语音检测模型输出的预测类型。最后,以最小化该模型输出的预测类型与该训练样本的标注类型为目标,调整该待训练的语音检测模型中的模型参数。
其中,需要说明的是,当某音频数据中同时存在人声以及环境噪声或背景杂声时,可将该音频数据单独标注为人声噪声混叠的类型,也可将该音频数据标注为人声数据的类型,具体可根据需要设置,本说明书对此不做限制。
S104:从所述人声数据中确定若干预设时长的音频数据,作为滑窗数据。
在本说明书一种或多种实施例中,当通过步骤S102确定出该音频数据中的人声数据后,可进一步对该人声数据进行处理,以区分出该人声数据中属于正常人声的音频。
由于单帧音频数据中包含的音频特征信息有限,因此为提取更加丰富的语速、音调等音频特征信息,以区分正常人声以及电子人声,该服务器可从该人声数据中确定出若干帧的音频数据,即,一段时长内的音频数据,后续可对该一段时长内的音频数据进行特征提取,以根据提取到的音频特征进行语音分类。
具体的,该服务器可按照预设的窗口时长,对该人声数据进行加窗处理,并按照预设的窗移时长,从左到右进行窗口滑动,确定该人声数据中包含的若干个滑窗对应的音频数据,作为滑窗数据。其中,预设的窗口时长以及预设的窗移时长具体可根据需要设置,本说明书对此不做限制。
如图2所示,图2中的波形图示例性的表示获取到的人声数据的频谱图,横轴对应该人声数据的时间,纵轴对应该人声数据的响度信息。假设预设的窗口时长为1s,预设的窗移时长为0.3s,则在对该人声数据进行滑窗处理时,可确定0~1s内的音频数据作为一个滑窗数据,之后从左到右按照0.3s的时长进行窗口的滑动,可确定0.3~1.3s内的音频数据作为下一个滑窗数据,继续从左到右按照0.3s的时长进行窗口的滑动,直至确定出该人声数据中包含的各滑窗数据为止。
S106:针对该人声数据中的每个滑窗数据,对该滑窗数据进行音频特征提取,并将提取到的音频特征输入预先训练的语音分类模型中,确定该滑窗数据属于正常人声的概率。
在本说明书一种或多种实施例中,当通过步骤S104确定出该音频数据中包含的各滑窗数据后,便可基于各滑窗数据的音频特征,进行语音分类,确定出该人声数据中属于正常人声的音频。
具体的,该服务器可针对该人声数据中的每个滑窗数据,对该滑窗数据进行音频特征提取。之后,将提取到的音频特征输入预先训练的语音分类模型中,确定该滑窗数据属于正常人声的概率。其中,音频数据所属的语音类型至少包含正常人声以及电子人声,电子人声中至少包含导航人声、音乐人声以及广播人声中的一种或多种。
进一步的,在对滑窗数据进行音频特征提取时,该服务器可针对每个滑窗数据,确定该滑窗数据中包含的各帧音频数据,之后,对该滑窗数据包含的每帧音频数据进行特征提取,并将提取到的各帧音频数据的音频特征,作为该滑窗数据的音频特征。其中,本说明书对于一个滑窗数据中包含的音频数据的帧数不做限制,具体可根据窗口时长以及帧长确定。
更进一步的,由于MFCC特征更具识别性,因此在对音频数据进行音频特征提取,以基于提取的音频特征进行正常人声与电子人声的语音分类时,可对该人声数据进行MFCC特征提取,以根据提取到的音频数据的MFCC特征进行语音分类。其中,对音频数据进行MFCC特征提取已经是较为成熟的现有技术,本说明书对此不再赘述。
在本说明书中,该语音分类模型的具体训练过程如下:
在对语音分类模型进行模型训练时,首先需要获取历史上采集的若干已标注的音频数据,标注内容为音频数据所属的语音类型,语音类型至少包含正常人声以及电子人声。针对获取到的每个音频数据,按照预设时长确定该音频数据中包含的各滑窗数据,并提取各滑窗数据的音频特征。之后,根据各音频数据的标注,对各音频数据中各滑窗数据的音频特征进行标注,并将确定出的各滑窗数据的音频特征及其标注,作为训练样本,其中,音频特征的标注为音频特征对应的滑窗数据属于各语音类型的概率矩阵。然后,针对每个训练样本,将该训练样本包含的滑窗数据的音频特征输入待训练的语音分类模型,得到该滑窗数据分别属于各语音类型的概率矩阵。最后,以最小化模型输出的概率矩阵与该训练样本中的标注之间的差异为目标,调整待训练的语音分类模型中的参数。
其中,当某音频数据中同时存在正常人声以及电子人声时,可将该音频数据单独标注为正常人声与电子人声混叠的类型,也可将该音频数据标注为正常人声,具体可根据需要设置,本说明书对此不做限制。
需要说明的是,在训练语音分类模型时,为进一步提高语音分类模型分类的准确度,可进一步标注电子人声包含各种类型。即,将语音类型设置为正常人声、导航人声、音乐人声以及广播人声,则可按照该语音类型对作为训练样本的各音频数据进行标注,以进行模型训练。
S108:根据该人声数据中各滑窗数据属于正常人声的概率,确定该人声数据中的正常人声数据,并根据确定出的各正常人声数据,确定训练样本。
在本说明书中,当确定出该人声数据中各滑窗数据属于正常人声的概率后,可基于该属于正常人声的概率,确定出该人声数据中属于正常人声音频的正常人声数据,以确定训练样本。
具体的,该服务器可先根据该人声数据中每个滑窗数据属于正常人声的概率,确定每个滑窗数据属于正常人声的概率的平均值,作为该人声数据属于正常人声的概率。当该人声数据属于正常人声的概率大于第二预设阈值时,确定该人声数据属于正常人声,并将该人声数据作为正常人声数据。
进一步的,在本说明书步骤S106中,该语音分类模型除了输出该滑窗数据属于正常人声的概率外,还可输出该滑窗数据属于电子人声的概率。则在步骤S108中,该服务器还可根据该人声数据中每个滑窗数据属于电子人声的概率的平均值,作为该人声数据属于电子人声的概率。当该人声数据属于正常人声的概率大于第二预设阈值,且该人声数据属于电子人声的概率低于第四预设阈值时,可确定该人声数据为正常人声数据。其中,该第二预设阈值以及第四预设阈值可根据需要设置,本说明书对此不做限制。
或者,在本说明书另一种实施例中,该服务器也可针对该人声数据中的每个滑窗数据,判断该滑窗数据属于正常人声的概率是否大于第三预设阈值,若该滑窗数据属于正常人声的概率大于第三预设阈值,则确定该滑窗数据属于正常人声,否则,确定该滑窗数据属于非正常人声。最后,根据确定出的该人声数据中属于正常人声的各滑窗数据,确定该人声数据中的正常人声数据。
或者,在本说明书又一种实施例中,当步骤S106中语音分类模型输出该滑窗数据分别属于正常人声、导航人声、音乐人声以及广播人声的概率后,该服务器可根据该人声数据中各滑窗数据属于各语音类型的概率,确定该人声数据的概率矩阵。之后,根据该人声数据的概率矩阵,通过解码算法(如,维特比算法等),确定出该人声数据中正常人声的起止时间。最后,根据该人声数据中正常人声的起止时间,确定该人声数据中的正常人声数据。
需要说明的是,上述三种实施例均是基于设置的评判规则,对人声数据进行处理,得到正常人声数据的。当然,在本说明书中也可设置其它的评判规则,具体可根据需要设置。
基于图1所示的音频数据处理方法,可先获取历史上采集的若干音频数据,并针对每个音频数据,确定该音频数据中的人声数据。之后,确定该人声数据中包含的各滑窗数据,并针对该人声数据中的每个滑窗数据,对该滑窗数据进行音频特征提取,将提取到的音频特征输入预先训练的语音分类模型中,确定该滑窗数据属于正常人声的概率。最后,基于该人声数据中各滑窗数据属于正常人声的概率,确定该人声数据中的正常人声数据,以根据确定出的各正常人声数据,确定训练样本,其中,确定出的训练样本用于训练识别正常人声的语音识别模型。通过对音频数据进行音频特征提取,并将提取到的音频特征输入语音分类模型中进行语音分类的方式,从各音频数据中的人声数据中确定出正常人声数据,并将确定出的正常人声数据作为训练语音识别模型的训练样本,提高了训练样本的准确率,进一步提高语音识别模型的训练精度。
在本说明书步骤S102中确定音频数据中的人声数据时,也可基于人声与环境噪声之间的频谱差异进行区分。具体的,该服务器可先确定各音频数据的频谱信息,该频谱信息包含声音的响度以及频率等信息。之后,针对每个音频数据,根据该音频数据的频谱信息以及预设的标准的人声频率范围以及人声响度范围,从该音频数据中确定包含人声的音频数据的起止时间,以确定出该音频数据中的人声数据。
在本说明书步骤S106中通过语音分类模型确定各滑窗数据的语音类型时,为了进一步提取出高质量的正常人声,该语音类型中也可包含噪声,以进一步筛选出人声数据中残留的噪声音频数据。
在本说明书中步骤S108中,除设置评判规则的方式外,该服务器还可针对该人声数据中的每个滑窗数据,将该滑窗数据分别属于各语音类型的概率矩阵输入预先训练的概率分类模型中,确定该概率分类模型输出的语音分类结果。其中,语音类型至少包含正常人声以及电子人声,电子人声中至少包含导航人声、音乐人声以及广播人声中的一种或多种。
上述概率分类模型的具体训练过程如下:
首先需要获取历史上采集的若干种不同语音类型的音频数据,并确定各音频数据属于各语音类型的概率矩阵,其中,语音类型至少包含正常人声以及电子人声。之后,根据各音频数据的语音类型,对各概率矩阵进行标注,标注内容为概率矩阵对应的音频数据的语音类型,并根据各概率矩阵及其标注,确定训练样本。然后,针对每个训练样本,将该训练样本中包含的概率矩阵作为输入,输入待训练的概率分类模型,确定该概率矩阵对应的音频数据的预测类型。最后,以最小化该模型输出的预测类型与该训练样本中标注的语音类型之间的差异为目标,调整该待训练的概率分类模型中的参数。
其中,在确定该训练样本时,也可针对历史上采集的每个音频数据,对该音频数据进行滑窗处理,确定该音频数据中包含的各滑窗数据。之后,针对每个滑窗数据,提取该滑窗数据的音频特征,并将提取出的音频特征输入训练完成的语音分类模型中,确定该语音分类模型输出的概率矩阵。后续可对各滑窗数据对应的概率矩阵进行语音类型的标注,并将各滑窗数据对应的概率矩阵及其标注作为训练样本。
在本说明书中,当从音频数据中获取到高质量的正常人声数据作为训练样本后,还可对作为训练样本的音频数据包含的音频内容进一步限定,以提高语音识别模型的识别效果以及识别关键词的准确度和敏感度。
具体的,针对上述步骤S108确定出的每个正常人声数据,该服务器可通过语音识别算法,确定出该正常人声数据对应的文本内容。之后,根据各正常人声数据对应的文本内容以及预设内容条件,确定作为训练样本的正常人声数据。其中,当确定出的文本内容不符合预设内容条件时,删除该正常人声数据,不再将该正常人声数据作为训练样本。
进一步的,当需要增强语音识别模型对于长句的识别时,该预设内容条件可以是对文本内容中的字数进行限制,则该预设内容条件中包含预设字数阈值。当确定出的文本内容中的字数小于预设字数阈值时,删除该正常人声数据,不再将该正常人声数据作为训练样本。其中,预设字数阈值可根据需要设置,本说明书对此不做限制。
或者,当需要增强语音识别模型对于关键词的敏感度时,该预设内容条件也可以是对文本内容中关键词信息的限制,则该预设内容条件中包含预设的关键词。当确定出的文本内容中不包含预设的关键词时,则删除该正常人声数据,不再将该正常人声数据作为训练样本。其中,预设的关键词可根据需要设置,本说明书对此不做限制。
例如:为了降低事故发生风险,关键词可设置为“绑架”、“报警”等风险程度较高的词,并基于包含关键词的正常人声数据训练得到语音识别模型。后续可通过该语音识别模型识别监控录音等场景中的人声音频,当识别出关键词信息时,可由工作人员复核,并采取进一步措施,以避免风险的发生。
综上,在本说明书一种实施例中,如图3所示,在对训练样本进行处理时,该服务器可先针对采集的音频数据中的每帧音频数据,对该帧音频数据进行FBANK特征提取,并将提取到的FBANK特征输入预先训练的语音检测模型中,得到该帧音频数据属于人声的概率,以基于该音频数据中各帧音频数据属于人声的概率,确定该音频数据中包含的人声数据。之后,针对该人声数据中的每个滑窗数据,对该滑窗数据进行MFCC特征提取,并将提取到的MFCC特征输入预先训练的语音分类模型中,得到该滑窗数据属于正常人声的概率,并基于该人声数据中各滑窗数据属于正常人声的概率,确定该人声数据中的正常人声数据。
基于图1所示的音频数据处理方法,本说明书实施例还对应提供一种音频数据处理装置的结构示意图,如图4所示。
图4为本说明书实施例提供的一种音频数据处理装置的结构示意图,所述装置包括:
获取模块200,获取历史上采集的若干音频数据;
第一确定模块202,针对每个音频数据,确定该音频数据中的人声数据;
第二确定模块204,从所述人声数据中确定若干预设时长的音频数据,作为滑窗数据,其中,一个滑窗数据中包含若干帧音频数据;
特征提取模块206,针对该人声数据中的每个滑窗数据,对该滑窗数据进行音频特征提取,并将提取到的音频特征输入预先训练的语音分类模型中,确定该滑窗数据属于正常人声的概率;
第三确定模块208,根据该人声数据中各滑窗数据属于正常人声的概率,确定该人声数据中的正常人声数据,并根据确定出的正常人声数据,确定训练样本,所述训练样本用于训练识别正常人声的语音识别模型。
可选地,所述第三确定模块208具体用于,根据该人声数据中各滑窗数据属于正常人声的概率,确定该人声数据属于正常人声的概率,当该人声数据属于正常人声的概率度大于第二预设阈值时,确定该人声数据属于正常人声,并将该人声数据作为正常人声数据。
可选地,所述第三确定模块208具体用于,针对该人声数据中的每个滑窗数据,判断该滑窗数据属于正常人声的概率是否大于第三预设阈值,若是,确定该滑窗数据属于正常人声,若否,确定该滑窗数据属于非正常人声,根据确定出的该人声数据中的属于正常人声的各滑窗数据,确定该人声数据中的正常人声数据。
可选地,语音类型至少包含正常人声以及电子人声,所述第三确定模块208具体用于,针对该人声数据中的每个滑窗数据,确定该滑窗数据属于电子人声的概率,根据各滑窗数据属于正常人声的概率以及属于电子人声的概率,确定该人声数据的概率矩阵,根据确定出的该人声数据的概率矩阵,通过解码确定该人声数据中正常人声的起止时间,根据该人声数据中正常人声的起止时间,确定该人声数据中的正常人声数据。
可选地,语音类型至少包含正常人声以及电子人声,所述第三确定模块208具体用于,针对该人声数据中的每个滑窗数据,确定该滑窗数据属于电子人声的概率,根据该滑窗数据属于正常人声的概率以及属于电子人声的概率,确定该滑窗数据的概率矩阵,将该滑窗数据的概率矩阵作为输入,输入预先训练的概率分类模型,输出该滑窗数据所属语音类型,根据该人声数据中属于正常人声的各滑窗数据,确定该人声数据中的正常人声数据。
可选地,所述特征提取模块204具体用于,获取历史上采集的若干已标注的音频数据,所述标注为音频数据所属的语音类型,所述语音类型至少包含正常人声以及电子人声,针对获取到的每个音频数据,按照预设时长确定该音频数据中包含的各滑窗数据,并提取各滑窗数据的音频特征,根据各音频数据的标注,对各音频数据中各滑窗数据的音频特征进行标注,并将确定出的各滑窗数据的音频特征及其标注,作为训练样本,其中,音频特征的标注为所述音频特征对应的滑窗数据属于各语音类型的概率矩阵,针对每个训练样本,将该训练样本包含的音频特征输入待训练的语音分类模型,得到所述音频特征对应的滑窗数据分别属于各语音类型的概率矩阵,以最小化所述模型输出的概率矩阵与该训练样本中的标注之间的差异为目标,调整所述待训练的语音分类模型中的参数。
可选地,所述第三确定模块208具体用于,获取历史上采集的若干种不同语音类型的音频数据,并确定各音频数据属于各语音类型的概率矩阵,所述语音类型至少包含正常人声以及电子人声,根据各音频数据的语音类型,对各概率矩阵进行标注,所述标注为概率矩阵对应的音频数据的语音类型,根据各概率矩阵及其标注,确定训练样本,针对每个训练样本,将该训练样本中包含的概率矩阵作为输入,输入待训练的概率分类模型,确定所述概率矩阵对应的音频数据的预测类型,以最小化所述模型输出的预测类型与该训练样本中标注的语音类型之间的差异为目标,调整所述待训练的概率分类模型中的参数。
可选地,所述第三确定模块208还用于,针对确定出的每个正常人声数据,通过语音识别算法,确定该正常人声数据对应的文本内容,当确定出的文本内容不符合预设内容条件时,删除该正常人声数据。
可选地,所述第三确定模块208还用于,当确定出的文本内容中的字数小于预设字数阈值时,删除该正常人声数据。
可选地,所述第三确定模块208还用于,当确定出的文本内容中不包含预设的关键词时,删除该正常人声数据。
基于图1所示的音频数据处理方法,本说明书实施例还提出了图5所示的电子设备的示意结构图。如图5,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图1所示的音频数据处理方法。
当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。
- 音频数据处理方法和装置及音频数据播放方法和装置
- 音频数据处理装置、音频装置、音频数据处理方法、程序及记录介质