电话语音识别模型、方法、系统、设备及介质

—— CN201911234303.9

摘要

本发明公开了一种电话语音识别模型、方法、系统、设备及介质,其中电话语音识别模型的多路由多层二维卷积层包括若干路多层二维卷积,若干路多层二维卷积相并行组成多路由多层二维卷积层;输入层用于接收声谱图特征并调整声谱图特征至预设维度的特征;多路由多层二维卷积层的每一路分别用于通过多层二维卷积对预设维度的特征进行逐层卷积计算并得到第一特征数据;GRU层用于处理第一特征数据并得到处理后的第二特征数据;输出层用于处理第二特征数据得到声谱图特征对应的语音文字的概率矩阵。本发明的电话语音识别模型可针对低采样率的电话语音设计的网络输入尺寸、多路由多层二维卷积和网络设计,可以极大克服低采样率环境下声学模型识别问题。

权利要求书

1.一种电话语音识别模型,其特征在于,所述电话语音识别模型包括输入层、多路由多层二维卷积层、GRU层和输出层;
所述多路由多层二维卷积层包括若干路多层二维卷积,若干路所述多层二维卷积相并行组成所述多路由多层二维卷积层;
所述输入层用于接收声谱图特征并调整所述声谱图特征至预设维度的特征;
所述多路由多层二维卷积层的每一路分别用于通过多层二维卷积对所述预设维度的特征进行逐层卷积计算并得到第一特征数据;
所述GRU层用于处理所述第一特征数据并得到处理后的第二特征数据;
所述输出层用于处理所述第二特征数据得到所述声谱图特征对应的语音文字的概率矩阵。

2.如权利要求1所述的电话语音识别模型,其特征在于,
所述输入层包括Reshape层,所述Reshape层用于接收所述声谱图特征并调整所述声谱图特征至所述预设维度的特征;
和/或,
所述多路由多层二维卷积层还包括特征运算层,所述特征运算层用于将每一路所述多层二维卷积处理后的预设维度的特征进行求和或者连接运算得到所述第一特征数据;
和/或,
所述多路由多层二维卷积层还包括第一Batch Normalization层,所述第一BatchNormalization层设置于所述多层二维卷积中的每层二维卷积前后;
和/或,
所述输出层包括第一TimeDistributed层,所述第一TimeDistributed层用于处理所述第二特征数据得到所述概率矩阵。

3.如权利要求1所述的电话语音识别模型,其特征在于,所述GRU层包括双向GRU层和/或单向GRU层。

4.如权利要求3所述的电话语音识别模型,其特征在于,所述GRU层还包括第二BatchNormalization层、第一Dropout层、第二Dropout层和第二TimeDistributed层的至少一种。

5.如权利要求4所述的电话语音识别模型,其特征在于,当所述GRU层包括双向GRU层和单向GRU层,并且当所述GRU层包括第二Batch Normalization层、第一Dropout层、第二Dropout层和第二TimeDistributed层时,所述第二Batch Normalization层设置于所述双向GRU层和所述单向GRU层之间,所述第一Dropout层设置于所述第二Batch Normalization层尾部,所述第二TimeDistributed层设置于所述第一Dropout层和所述第二Dropout层之间。

6.一种电话语音识别方法,其特征在于,所述电话语音识别方法应用如权利要求1-5中任意一项所述的电话语音识别模型实现,所述电话语音识别方法包括:
对输入电话语音进行静音切割得到音频片段;
对所述音频片段进行特征提取得到声谱图特征;
将所述声谱图特征输入至所述电话语音识别模型得到所述声谱图特征对应的语音文本的概率矩阵;
对所述概率矩阵进行解码得到所述声谱图特征对应的语音文本。

7.如权利要求6所述的电话语音识别方法,其特征在于,所述对所述概率矩阵进行解码得到所述声谱图特征对应的语音文本的步骤包括:
根据历史电话语音数据建立字库;
将所述字库进行同音同义合并,将合并后的字库进行标签标注得到字标签;
利用CTC解码算法根据所述字标签对所述概率矩阵解码得到所述语音文本;
和/或,
所述将所述声谱图特征输入至所述电话语音识别模型得到所述声谱图特征对应的语音文本的概率矩阵的步骤之前还包括对所述电话语音识别模型进行训练的步骤,所述对所述电话语音识别模型进行训练的步骤包括:
分别设置所述输入层、所述多路由多层二维卷积层、所述GRU层和所述输出层的参数;
设置损失函数和优化方法;
利用样本音频片段和所述样本音频片段对应的语音文本,并根据所述损失函数和所述优化方法对所述电话语音识别模型进行迭代训练。

8.如权利要求7所述的电话语音识别方法,其特征在于,当所述电话语音识别方法包括对所述电话语音识别模型进行训练的步骤时,
所述分别设置所述输入层、所述多路由多层二维卷积层、所述GRU层和所述输出层的参数的步骤包括:
根据语音数据的采样率设置所述输入层的网络尺寸调整参数;
根据所述网络尺寸调整参数分别设置每一路所述多路由多层二维卷积层的卷积参数,所述卷积参数包括滤波器的数量、步长、卷积核尺寸、填充和输出维度中的至少一种。

9.一种电话语音识别系统,其特征在于,所述语音识别系统应用如权利要求1-5中任意一项所述的电话语音识别模型实现,所述语音识别系统包括:切割模块、特征提取模块、预测模块和解码模块;
所述切割模块用于对输入电话语音进行静音切割得到音频片段;
所述特征提取模块用于对所述音频片段进行特征提取得到声谱图特征;
所述预测模块用于将所述声谱图特征输入至所述电话语音识别模型得到所述声谱图特征对应的语音文本的概率矩阵;
所述解码模块用于对所述概率矩阵进行解码得到所述声谱图特征对应的语音文本。

10.如权利要求9所述的电话语音识别系统,其特征在于,所述解码模块还用于根据历史电话语音数据建立字库,以及将所述字库进行同音同义合并,还用于将合并后的字库进行标签标注得到字标签;
所述解码模块还用于利用CTC解码算法根据所述字标签对所述概率矩阵解码得到所述语音文本;
和/或,
所述语音识别系统还包括训练模块,所述训练模块用于分别设置所述输入层、所述多路由多层二维卷积层、所述GRU层和所述输出层的参数;还用于设置损失函数和优化方法;以及利用样本音频片段和所述样本音频片段对应的语音文本,并根据所述损失函数和所述优化方法对所述电话语音识别模型进行迭代训练。

11.如权利要求10所述的电话语音识别系统,其特征在于,所述训练模块还用于根据语音数据的采样率设置所述输入层的网络尺寸调整参数;以及根据所述网络尺寸调整参数分别设置每一路所述多路由多层二维卷积层的卷积参数,所述卷积参数包括滤波器的数量、步长、卷积核尺寸、填充和输出维度中的至少一种。

12.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求7-9中任一项所述的电话语音识别方法。

13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求7-9中任一项所述的电话语音识别方法的步骤。


说明书

技术领域

本发明涉及语音识别领域,尤其涉及一种电话语音识别模型、方法、系统、设备及介质。

背景技术

语音识别技术就是让机器通过识别和理解过程把语音信号转变为相应的文本或命令的高技术。语音识别技术主要包括特征提取技术、模式匹配准则及模型训练技术三个方面。

根据语音设备和通道,可以分为桌面(PC)语音识别、电话语音识别和嵌入式设备(手机、PDA(掌上电脑)等)语音识别。不同的采集通道会使人的发音的声学特性发生变形,因此需要构造各自的识别系统。

在OTA(在线旅游)行业的电话语音传播中继系统中,当OTA向酒店或客人方电话语音时,需要识别出对方通过电话表达的语音信息,将语音信息通过声学模型方法准确识别为文字,客服再通过文字做进一步的后续处理操作。

电话语音所用采样率通常采用8k(千)赫兹(Hz)的低采样率,目前在低采样率8kHz场景中的声学模型建模技术,比较成熟的以GMM-HMM、DNN-HMM、DeepSpeech2为代表的声学模型建模技术:

1)GMM-HMM为代表的传统声学模型建模技术,能很好的拟合语音信息帧和音素状态之间的概率发射关系,但是需要满足严格的高斯分布假设,在智能电话场景,电话语音的采样率为8kHz,远低于正常手机录音的16kHz或44.1kHz,其包含的语音帧信息更加不丰富,对GMM要求更加严格,无法直接应用于该场景,投入使用。

2)DNN-HMM为代表的深度学习的声学模型建模技术,其为第一代深度学习应用于声学模型的建模,相比GMM无法充分表达语音信息帧和音素状态之间的概率发射关系,由于DNN是判别式模型,所以天然的可以对语音信息帧进行特征表达,对低采样率数据,也能保持很稳健。但是建模DNN-HMM模型的训练阶段,需要先以GMM-HMM帧级别的模型标注,同时很依赖发音词典。

3)DeepSpeech2为代表的深度学习的声学模型建模技术,其为第二代深度学习应用于声学模型的建模,相比第一代,该模型完全基于端到端,不需要帧级别的语音标注,只需要语音和对应的转写文字,但是该模型是基于高采样率的16kHz语音数据,对8kHz的语音抽取特征能力有限,常见汉字有越近1万导致有限模型负载能力和沉重的权重。

对于现有的在OTA行业中的语音传播信息中继系统场景下的低采样率的电话语音声学模型识别主要存在的问题在于:

1)在OTA行业缺乏足够的已经标注的语音数据标注样本;

2)OTA行业的语音信息传播中继系统中的语音传播环境非常嘈杂,如回响、旁边人说话、噪声等,给识别造成了极大的困难;

3)OTA行业的电话录音数据本身基于低采样率的8kHz,原始输入信息相比正常录音数据的信息丰富度少。

所以,现有的声学模型,在OTA行业下的低采样率8kHz电话语音信息传播中继系统环境下,其容易被呼叫方的恶劣环境如回响、旁边人说话、噪声影响,给声学模型的识别造成了极大的困难,以致声学模型的识别准确率不高。

发明内容

本发明要解决的技术问题是为了克服现有技术中声学模型的识别准确率不高的缺陷,提供一种电话语音识别模型、方法、系统、设备及介质。

本发明是通过下述技术方案来解决上述技术问题:

一种电话语音识别模型,所述电话语音识别模型包括输入层、多路由多层二维卷积层、GRU层和输出层;

所述多路由多层二维卷积层包括若干路多层二维卷积,若干路所述多层二维卷积相并行组成所述多路由多层二维卷积层;

所述输入层用于接收声谱图特征并调整所述声谱图特征至预设维度的特征;

所述多路由多层二维卷积层的每一路分别用于通过多层二维卷积对所述预设维度的特征进行逐层卷积计算并得到第一特征数据;

所述GRU层用于处理所述第一特征数据并得到处理后的第二特征数据;

所述输出层用于处理所述第二特征数据得到所述声谱图特征对应的语音文字的概率矩阵。

优选地,

所述输入层包括Reshape层,所述Reshape层用于接收所述声谱图特征并调整所述声谱图特征至所述预设维度的特征;

和/或,

所述多路由多层二维卷积层还包括特征运算层,所述特征运算层用于将每一路所述多层二维卷积处理后的预设维度的特征进行求和或者连接运算得到所述第一特征数据;

和/或,

所述多路由多层二维卷积层还包括第一Batch Normalization层,所述第一BatchNormalization层设置于所述多层二维卷积中的每层二维卷积前后;

和/或,

所述输出层包括第一TimeDistributed层,所述第一TimeDistributed层用于处理所述第二特征数据得到所述概率矩阵。

优选地,所述GRU层包括双向GRU层和/或单向GRU层。

优选地,所述GRU层还包括第二Batch Normalization层、第一Dropout层、第二Dropout层和第二TimeDistributed层的至少一种。

优选地,当所述GRU层包括双向GRU层和单向GRU层,并且当所述GRU层包括第二Batch Normalization层、第一Dropout层、第二Dropout层和第二TimeDistributed层时,所述第二Batch Normalization层设置于所述双向GRU层和所述单向GRU层之间,所述第一Dropout层设置于所述第二Batch Normalization层尾部,所述第二TimeDistributed层设置于所述第一Dropout层和所述第二Dropout层之间。

一种电话语音识别方法,所述电话语音识别方法应用如上所述的电话语音识别模型实现,所述电话语音识别方法包括:

对输入电话语音进行静音切割得到音频片段;

对所述音频片段进行特征提取得到声谱图特征;

将所述声谱图特征输入至所述电话语音识别模型得到所述声谱图特征对应的语音文本的概率矩阵;

对所述概率矩阵进行解码得到所述声谱图特征对应的语音文本。

优选地,所述对所述概率矩阵进行解码得到所述声谱图特征对应的语音文本的步骤包括:

根据历史电话语音数据建立字库;

将所述字库进行同音同义合并,将合并后的字库进行标签标注得到字标签;

利用CTC解码算法根据所述字标签对所述概率矩阵解码得到所述语音文本;

和/或,

所述将所述声谱图特征输入至所述电话语音识别模型得到所述声谱图特征对应的语音文本的概率矩阵的步骤之前还包括对所述电话语音识别模型进行训练的步骤,所述对所述电话语音识别模型进行训练的步骤包括:

分别设置所述输入层、所述多路由多层二维卷积层、所述GRU层和所述输出层的参数;

设置损失函数和优化方法;

利用样本音频片段和所述样本音频片段对应的语音文本,并根据所述损失函数和所述优化方法对所述电话语音识别模型进行迭代训练。

优选地,当所述电话语音识别方法包括对所述电话语音识别模型进行训练的步骤时,

所述分别设置所述输入层、所述多路由多层二维卷积层、所述GRU层和所述输出层的参数的步骤包括:

根据语音数据的采样率设置所述输入层的网络尺寸调整参数;

根据所述网络尺寸调整参数分别设置每一路所述多路由多层二维卷积层的卷积参数,所述卷积参数包括滤波器的数量、步长、卷积核尺寸、填充和输出维度中的至少一种。

一种电话语音识别系统,所述语音识别系统应用如上所述的电话语音识别模型实现,所述语音识别系统包括:切割模块、特征提取模块、预测模块和解码模块;

所述切割模块用于对输入电话语音进行静音切割得到音频片段;

所述特征提取模块用于对所述音频片段进行特征提取得到声谱图特征;

所述预测模块用于将所述声谱图特征输入至所述电话语音识别模型得到所述声谱图特征对应的语音文本的概率矩阵;

所述解码模块用于对所述概率矩阵进行解码得到所述声谱图特征对应的语音文本。

优选地,所述解码模块还用于根据历史电话语音数据建立字库,以及将所述字库进行同音同义合并,还用于将合并后的字库进行标签标注得到字标签;

所述解码模块还用于利用CTC解码算法根据所述字标签对所述概率矩阵解码得到所述语音文本;

和/或,

所述语音识别系统还包括训练模块,所述训练模块用于分别设置所述输入层、所述多路由多层二维卷积层、所述GRU层和所述输出层的参数;还用于设置损失函数和优化方法;以及利用样本音频片段和所述样本音频片段对应的语音文本,并根据所述损失函数和所述优化方法对所述电话语音识别模型进行迭代训练。

优选地,所述训练模块还用于根据语音数据的采样率设置所述输入层的网络尺寸调整参数;以及根据所述网络尺寸调整参数分别设置每一路所述多路由多层二维卷积层的卷积参数,所述卷积参数包括滤波器的数量、步长、卷积核尺寸、填充和输出维度中的至少一种。

一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的电话语音识别方法。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的电话语音识别方法的步骤。

本发明的积极进步效果在于:

本发明的电话语音识别模型可针对低采样率的电话语音设计的网络输入尺寸、多路由多层二维卷积和网络设计,可以极大克服低采样率环境下声学模型识别问题。本发明针对目前OTA的低采样率8kHz环境下打电话时的电话语音信息识别为文字问题,基于电话语音信息传播系统中建立的电话语音识别模型,当客服在和对方对话时,可准确实时的识别出对方表达的文本信息。电话语音识别模型针对低采样率设计的网络输入尺寸、多路由多层二维卷积和网络设计,可以极大克服低采样率环境下声学模型识别问题。语音识别方法及系统中应用的同音同义方法,极大的提高了网络模型的训练速度,加快了网络模型的数据迭代和优化。该电话语音识别方法及系统提高了该场景下的电话语音识别的训练效率,同时不降低电话语音识别的评估性能,可以极大的提高客服处理电话操作的准确率,节省了OTA客服操作流程的同时,并减少OTA客服人员处理电话的失误错误,为后续离线客服质检提供了帮助,提升OTA平台客服的速度响应。

附图说明

图1为本发明的实施例1的电话语音识别模型的模块示意图。

图2为本发明的实施例1的电话语音识别模型的另一模块示意图。

图3为本发明的实施例2的电话语音识别方法的流程示意图。

图4为本发明的实施例2的电话语音识别方法的步骤104的流程示意图。

图5为本发明的实施例2的电话语音识别方法的步骤103'的流程示意图。

图6为本发明的实施例2的电话语音识别方法的步骤31'的流程示意图。

图7为本发明的实施例3的电话语音识别系统的模块示意图。

图8为本发明的实施例4提供的一种电子设备的结构示意图。

具体实施方式

下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。

实施例1

本实施例提供一种电话语音识别模型,如图1所示,电话语音识别模型包括输入层1、多路由多层二维卷积层2、GRU层3和输出层4。

输入层1用于接收声谱图特征并调整声谱图特征至预设维度的特征。

如图2所示,本实施例中输入层包括Reshape层11,Reshape层11用于接收声谱图特征并调整声谱图特征至预设维度的特征。

Reshape层11前还可以设置第三Batch Normalization层12。

第三Batch Normalization层12用于对网络权重归一化操作,加速网络训练

本实施例的输入特征为语音信号的原始语谱图特征,可根据原始语谱图特征以及语音信号的采样率设计输入层的输入网络尺寸,然后设计一层Reshape层11将网络尺寸重新调整,后面接多路由多层二维卷积层2以实现特征抽取。

多路由多层二维卷积层2包括若干路多层二维卷积21,若干路多层二维卷积21相并行组成多路由多层二维卷积层2。

如图2所示,多路由多层二维卷积层2包括二维卷积211、第一BatchNormalization层212、特征运算层213。第一Batch Normalization层212设置于多层二维卷积中的每层二维卷211前后。

多路由多层二维卷积层2的每一路多层二维卷积21分别用于通过多层二维卷积211对预设维度的特征进行逐层卷积计算并得到第一特征数据。

特征运算层213用于将每一路多层二维卷积21处理后的预设维度的特征进行求和或者连接运算得到第一特征数据。

多路由多层二维卷积层2可以实现充分通过二维卷积212抽取和表征语音信息的频域特征。多路由多层二维卷积2极大了弥补了单路二维卷积抽取语音信号的频域特征能力的不足。

GRU层3用于处理第一特征数据并得到处理后的第二特征数据。

GRU层3包括双向GRU层31和/或单向GRU层32。GRU层还包括第二BatchNormalization层33、第一Dropout层34、第二Dropout层35和第二TimeDistributed层36的至少一种。

本实施例中GRU层3包括双向GRU层31和单向GRU层32,以及第二BatchNormalization层33、第一Dropout层34、第二Dropout层35和第二TimeDistributed层36,单向GRU层32设置于双向GRU层31的尾部,第二Batch Normalization层33设置于双向GRU层31、单向GRU层32以及第一Dropout层34之间,第一Dropout层34设置于第二BatchNormalization层33尾部,第二TimeDistributed层36设置于第一Dropout层34和第二Dropout层35之间。

GRU层3通过设置双向GRU层31,然后再接单向GRU层32,后面接第二TimeDistributed层36,可以进一步弥补多路由多层二维卷积层2中卷积的时域信息不足,以丰富时域信息。

输出层4用于处理第二特征数据得到声谱图特征对应的语音文字的概率矩阵。

输出层4包括第一TimeDistributed层41,第一TimeDistributed层41用于处理第二特征数据得到概率矩阵。

本实施例的电话语音识别模型可针对低采样率的电话语音设计的网络输入尺寸、多路由多层二维卷积和网络设计,可以极大克服低采样率环境下声学模型识别问题。

实施例2

本实施例提供一种电话语音识别方法,电话语音识别方法应用实施例1中的电话语音识别模型实现,如图3所示,电话语音识别方法包括:

步骤101、对输入电话语音进行静音切割得到音频片段。

步骤102、对音频片段进行特征提取得到声谱图特征。

步骤103、将声谱图特征输入至电话语音识别模型得到声谱图特征对应的语音文本的概率矩阵。

步骤104、对概率矩阵进行解码得到声谱图特征对应的语音文本。

如图4所示,步骤104包括:

步骤1041、根据历史电话语音数据建立字库。

步骤1042、将字库进行同音同义合并,将合并后的字库进行标签标注得到字标签。

步骤1043、利用CTC解码算法根据字标签对概率矩阵解码得到语音文本。

步骤103之前还包括对电话语音识别模型进行训练的步骤103’。

如图5所示,步骤103'包括:

步骤31'、分别设置输入层、多路由多层二维卷积层、GRU层和输出层的参数。

如图6所示,步骤31'具体包括:

步骤311'、根据语音数据的采样率设置输入层的网络尺寸调整参数。

电话录音数据的采样率为8kHz,本实施例中设计网络输入的最大长度为1600,即语音帧长度最大可为1600,帧移为10ms(毫秒),帧长为25ms,则网络输入最大音频时长为16.015秒,输入特征为语音信号的原始语谱图特征,设计输入网络尺寸为(1600,200),然后设计一层Reshape层将网络尺寸重新调整为(1600,200,1),后面连接多路由多层二维卷积层2以实现特征抽取。

步骤312'、根据网络尺寸调整参数分别设置每一路多路由多层二维卷积层的卷积参数,卷积参数包括滤波器的数量、步长、卷积核尺寸、填充和输出维度中的至少一种。

本实施例以三路三层二维卷积为例,包括A路、B路、C路三路的三层二维卷积,在进行特征抽取阶段,设置三路三层二维卷积的参数,通过三个路由的三层二维卷积对其抽取,在设计上,A、B、C三路的卷积核尺寸不同,通常设计为奇数。

A路由的三层二维卷积大小为:设置卷积滤波器数量和步长分别为32和(2,2),核尺寸分别为(11,41)、(11,21)、(11,21),填充均设置为same,然后进行Reshape(200,-1)的操作,输出维度为(200,800)。

B路由的三层二维卷积大小为:设置卷积滤波器数量和步长分别32和(2,2),核尺寸分别为(11,21)、(11,11)、(11,11),填充均设置为same,然后进行Reshape(200,-1)的操作,输出维度为(200,800)。

C路由的三层二维卷积大小为:设置卷积滤波器数量和步长分别为32和(2,2),核尺寸分别为(11,11)、(11,7)、(11,7),填充均设置为same,然后进行Reshape(200,-1)的操作,输出维度为(200,800)。

然后将A、B、C三路由进行维度上链接操作,这里网络有连接选项,执行求和操作,得到的矩阵维度依然为(200,800),若执行concat操作,则输出维度为(200,2400)。

步骤32'、设置损失函数和优化方法。

在训练阶段,由于需要深度学习的反馈学习,损失函数使用CTC(ConnectionistTemporal Classification)损失函数,学习优化方法采用Adam(一种优化算法),每层的二维卷积和GRU层上的Batch Normalization层,可以让模型加速训练和更为稳定,设置第一Dropout层为Dropout(0.25),在第二层TimeDistributed设置TimeDistributed(512),尾部的第一Dropout层设置为Dropout(0.25)。

在输出层,设计的是一个基于字的CTC端到端的网络模型,利用CTC解码算法,在OTA行业的电话语音传播中继系统环境下,在已有语音电话录音标注数据中,统计所有转写文本的字频,由于是标签设计,将部分可以同音同义的字标签进行同音同义如您、你同音同义设计为你,嗯、嗯合并为嗯,哦、喔合并为哦等,最后经过这样的同音同义处理,将原有的12000个汉字维度减小到3881个维度,所以可设置标签为3881个电话语音信息传播中集系统下的字,另外再加一个blank(空标识)。极大的减小了模型标签层的计算复杂度,将第一TimeDistributed层设置为TimeDistributed

(3882)。

步骤33'、利用样本音频片段和样本音频片段对应的语音文本,并根据损失函数和优化方法对电话语音识别模型进行迭代训练。

考虑到语音标注的工作量较大,为减小语音标注工作量,可利用历史的电话录音数据作为样本音频数据,对样本音频数据进行通道分离,通过静音切割将其拆分为多个样本音频片段,然后利用公开的现有的声学模型对样本音频片段进行预测,得到其对应的语音文本,将样本音频片段作为输入,将其对应的语音文本作为输出,根据损失函数和优化方法,训练电话语音识别模型。

在该模型训练过程中,有部分参数对模型迭代比较过敏,迭代batch时的size设置为64,学习率初始不宜过大,可将学习率初始化为0.0001,学习衰减系数设计为0.000001。通过该初始化步骤,以训练的CTC损失函数和测试集上的转写正确率作为模型收敛标准。OTA下语音信息传播中继系统下的低采样率特性,在将A、B、C三路的输出做维度处理时,执行求和操作将极大的减小权重大小,和单路相比,权重大小基本相同,但是多路由多层二维卷积极大了弥补了单路二维卷积抽取语音信号的频域特征能力的不足。

由于训练模型的数据是基于已有公开模型预测,因此为了让电话语音识别模型的准确率更好,通过数据迭代的方式进行训练,数据迭代的做法是:在训练一个较好的模型之后,利用该模型对已有的训练测试数据预测出文字,然后计算转写,然后计算转写正确率:

将转写正确率在低于预设数值比如30%以下的进行人工修正,修正之后,再重新加入到训练集中训练模型。

每次迭代,逐步转写正确率的下限设计更为严格。如这次迭代之后,将转写正确率在20%以下的进行人工修正。同时,修正过的语音数据次数大于预设次数的可以不进入人工修正。

对于生产线上MRCP(媒体资源控制协议)方经过VAD(语音端点控制)静音切割技术发送过来一段音频字节流,核对该字节流信息和送入的字节流长度是否一致,若一致则根据采样率关系计算出时长,由于音频采样率为8kHz,因此,如果时长超过电话语音识别模型的网络输入长度16.015秒,则将采用VAD静音切割技术将其划分为多个在16.015秒内的音频片段,对每个音频片段分别做提取每帧的声谱图特征维度为200的矩阵。

其次,根据训练阶段产生的电话语音识别模型,将第一步中的200维度的声谱图特征矩阵,如果不够(1600,200),则在行方向上进行以0填充的操作,让其满足电话语音识别模型的输入维度要求,送入模型后,输出维度为(200,3882)的概率矩阵。

第三步,使用基于集束搜索的CTC解码算法,对输出的(200,3882)的概率矩阵进行集束搜索解码操作,输出每个切割音频片段对应的文字。

最后,由于预测的结果是对切割音频片段做的操作,所有音频片段的合并即为完整音频,因此将多个切割音频片段转写的文字信息,按照顺序,将其以逗号合并,最后得到完整音频的转写内容。

本实施例是针对目前OTA的低采样率8kHz环境下打电话时的电话语音信息识别为文字问题,提出的一种电话语音识别方法,基于电话语音信息传播系统中建立的电话语音识别模型,当客服在和对方对话时,可准确实时的识别出对方表达的文本信息。电话语音识别模型针对低采样率设计的网络输入尺寸、多路由多层二维卷积和网络设计,可以极大克服低采样率环境下声学模型识别问题;同时利用的同音同义方法,极大的提高了网络模型的训练速度,加快了网络模型的数据迭代和优化。该电话语音识别方法提高了该场景下的电话语音识别的训练效率,同时不降低电话语音识别的评估性能,可以极大的提高客服处理操作的准确率,在节省了OTA客服操作人力的同时,也减少了OTA客服处理的失误错误,为后续离线客服质检提供了帮助,提升OTA平台客服的速度响应。

实施例3

本实施例提供一种电话语音识别系统,语音识别系统应用如实施例1中的电话语音识别模型实现,如图7所示,语音识别系统包括:切割模块201、特征提取模块202、预测模块203、解码模块204、训练模块205;

切割模块201用于对输入电话语音进行静音切割得到音频片段;

特征提取模块202用于对音频片段进行特征提取得到声谱图特征;

预测模块203用于将声谱图特征输入至电话语音识别模型得到声谱图特征对应的语音文本的概率矩阵;

解码模块204用于对概率矩阵进行解码得到声谱图特征对应的语音文本。

解码模块204还用于根据历史电话语音数据建立字库,以及将字库进行同音同义合并,还用于将合并后的字库进行标签标注得到字标签;

解码模块204还用于利用CTC解码算法根据字标签对概率矩阵解码得到语音文本;

训练模块205用于分别设置输入层、多路由多层二维卷积层、GRU层和输出层的参数;还用于设置损失函数和优化方法;以及利用样本音频片段和样本音频片段对应的语音文本,并根据损失函数和优化方法对电话语音识别模型进行迭代训练。

训练模块205还用于根据语音数据的采样率设置输入层的网络尺寸调整参数;以及根据网络尺寸调整参数分别设置每一路多路由多层二维卷积层的卷积参数,卷积参数包括滤波器的数量、步长、卷积核尺寸、填充和输出维度中的至少一种。

电话录音数据的采样率为8kHz,本实施例中设计网络输入的最大长度为1600,即语音帧长度最大可为1600,帧移为10ms(毫秒),帧长为25ms,则网络输入最大音频时长为16.015秒,输入特征为语音信号的原始语谱图特征,设计输入网络尺寸为(1600,200),然后利用Reshape层将网络尺寸重新调整为(1600,200,1),后面连接的多路由多层二维卷积层2以实现特征抽取。

本实施例以三路三层二维卷积为例,包括A路、B路、C路三路的三层二维卷积,在进行特征抽取阶段,设置三路三层二维卷积的参数,通过三个路由的三层二维卷积对其抽取,在设计上,A、B、C三路的卷积核尺寸不同,通常设计为奇数。

A路由的三层二维卷积大小为:设置卷积滤波器数量和步长分别为32和(2,2),核尺寸分别为(11,41)、(11,21)、(11,21),填充均设置为same,然后进行Reshape(200,-1)的操作,输出维度为(200,800)。

B路由的三层二维卷积大小为:设置卷积滤波器数量和步长分别32和(2,2),核尺寸分别为(11,21)、(11,11)、(11,11),填充均设置为same,然后进行Reshape(200,-1)的操作,输出维度为(200,800)。

C路由的三层二维卷积大小为:设置卷积滤波器数量和步长分别为32和(2,2),核尺寸分别为(11,11)、(11,7)、(11,7),填充均设置为same,然后进行Reshape(200,-1)的操作,输出维度为(200,800)。

然后将A、B、C三路由进行维度上链接操作,这里网络有连接选项,执行求和操作,得到的矩阵维度依然为(200,800),若执行concat操作,则输出维度为(200,2400)。

在训练阶段,需要深度学习的反馈学习,损失函数使用CTC(ConnectionistTemporal Classification)损失函数,学习优化方法采用Adam(一种优化算法),在每层的二维卷积和GRU层上的Batch Normalization层,可以让模型加速训练和更为稳定,经过双向GRU和单向GRU之后,设置第一Dropout层为Dropout(0.25),在第二层TimeDistributed设置TimeDistributed(512),尾部的第一Dropout层设置为Dropout(0.25)。

在输出层,设计的是一个基于字的CTC端到端的网络模型,利用CTC解码算法,在OTA行业的电话语音传播中继系统环境下,在已有语音电话录音标注数据中,统计所有转写文本的字频,由于是标签设计,将部分可以同音同义的字标签进行同音同义如您、你同音同义设计为你,嗯、嗯合并为嗯,哦、喔合并为哦等,最后经过这样的同音同义处理,将原有的12000个汉字维度减小到3881个维度,所以可设置标签为3881个电话语音信息传播中集系统下的字,另外再加一个blank。极大的减小了模型标签层的计算复杂度,将第一TimeDistributed层设置为TimeDistributed(3882)。

考虑到语音标注的工作量较大,为减小语音标注工作量,可利用历史的电话录音数据作为样本音频数据,对样本音频数据进行通道分离,通过静音切割将其拆分为多个样本音频片段,然后利用公开的现有的声学模型对样本音频片段进行预测,得到其对应的语音文本,将样本音频片段作为输入,将其对应的语音文本作为输出,根据损失函数和优化方法,训练电话语音识别模型。

在该模型训练过程中,有部分参数对模型迭代比较过敏,迭代时的batch size设置为64,学习率初始不宜过大,学习率初始化为0.0001,学习衰减系数设计为0.000001。通过该初始化步骤,以训练的CTC损失函数和测试集上的转写正确率作为模型收敛标准。OTA下语音信息传播中继系统下的低采样率特性,将A、B、C三路的输出做进行维度处理,执行求和操作将极大的减小权重大小,和单路相比,权重大小基本相同,但是多路由多层二维卷积极大了弥补了单路二维卷积抽取语音信号的频域特征能力的不足。

由于训练模型的数据是基于已有公开模型预测,因此为了让电话语音识别模型的准确率更好,通过数据迭代的方式进行训练,数据迭代的做法是:在训练一个较好的模型之后,利用该模型对已有的训练测试数据预测出文字,然后计算转写,然后计算转写正确率:

将转写正确率在低于预设数值比如30%以下的进行人工修正,修正之后,再重新加入到训练集中训练模型。

每次迭代,逐步转写正确率的下限设计更为严格。如这次迭代之后,将转写正确率在20%以下的进行人工修正。同时,修正过的语音数据次数大于预设次数的可以不进入人工修正。

对于生产线上MRCP方经过VAD静音切割技术发送过来一段音频字节流,核对该字节流信息和送入的字节流长度是否一致,若一致则根据采样率关系计算出时长,由于音频采样率为8kHz,因此,如果时长超过电话语音识别模型的网络输入长度16.015秒,则将采用VAD静音切割技术将其划分为多个在16.015秒内的音频片段,对每个音频片段分别做提取每帧的声谱图特征维度为200的矩阵。

其次,根据训练阶段产生的电话语音识别模型,将第一步中的200维度的声谱图特征矩阵,如果不够(1600,200),则在行方向上进行以0填充的操作,让其满足电话语音识别模型的输入维度要求,送入模型后,输出维度为(200,3882)的概率矩阵。

第三步,使用基于集束搜索的CTC解码算法,对输出的(200,3882)的概率矩阵进行集束搜索解码操作,输出每个切割音频片段对应的文字。

最后,由于预测的结果是对切割音频片段做的操作,所有音频片段的合并即为完整音频,因此将多个切割音频片段转写的文字信息,按照顺序,将其以逗号合并,最后得到完整音频的转写内容。

本实施例是针对目前OTA的低采样率8kHz环境下打电话时的电话语音信息识别为文字问题,提出的一种电话语音识别系统,基于电话语音信息传播系统中建立的电话语音识别模型,当客服在和对方对话时,可准确实时的识别出对方表达的文本信息。电话语音识别模型针对低采样率设计的网络输入尺寸、多路由多层二维卷积和网络设计,可以极大克服低采样率环境下电话语音识别模型识别问题;同时利用同音同义方法,极大的提高了网络模型的训练速度,加快了网络模型的数据迭代和优化。该电话语音识别系统提高了该场景下的电话语音识别的训练效率,同时不降低电话语音识别的评估性能,可以极大的提高客服处理操作准确率,节省了OTA客服操作时间的同时,也减少OTA客服处理的失误错误,为后续离线客服质检提供了帮助,提升OTA平台客服的速度响应。

实施例4

图8为本发明实施例4提供的一种电子设备的结构示意图。电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现实施例2的电话语音识别方法。图8显示的电子设备50仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图8所示,电子设备50可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备50的组件可以包括但不限于:上述至少一个处理器51、上述至少一个存储器52、连接不同系统组件(包括存储器52和处理器51)的总线53。

总线53包括数据总线、地址总线和控制总线。

存储器52可以包括易失性存储器,例如随机存取存储器(RAM)521和/或高速缓存存储器522,还可以进一步包括只读存储器(ROM)523。

存储器52还可以包括具有一组(至少一个)程序模块524的程序/实用工具525,这样的程序模块524包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

处理器51通过运行存储在存储器52中的计算机程序,从而执行各种功能应用以及数据处理,例如本发明实施例1所提供的电话语音识别方法。

电子设备50也可以与一个或多个外部设备54(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口55进行。并且,模型生成的设备50还可以通过网络适配器56与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器56通过总线53与模型生成的设备50的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的设备50使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。

应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。

实施例5

本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,程序被处理器执行时实现实施例2所提供的电话语音识别方法的步骤。

其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。

在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行实现实施例2的电话语音识别方法中的步骤。

其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。

虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。

"},"instr":"

技术领域

本发明涉及语音识别领域,尤其涉及一种电话语音识别模型、方法、系统、设备及介质。

背景技术

语音识别技术就是让机器通过识别和理解过程把语音信号转变为相应的文本或命令的高技术。语音识别技术主要包括特征提取技术、模式匹配准则及模型训练技术三个方面。

根据语音设备和通道,可以分为桌面(PC)语音识别、电话语音识别和嵌入式设备(手机、PDA(掌上电脑)等)语音识别。不同的采集通道会使人的发音的声学特性发生变形,因此需要构造各自的识别系统。

在OTA(在线旅游)行业的电话语音传播中继系统中,当OTA向酒店或客人方电话语音时,需要识别出对方通过电话表达的语音信息,将语音信息通过声学模型方法准确识别为文字,客服再通过文字做进一步的后续处理操作。

电话语音所用采样率通常采用8k(千)赫兹(Hz)的低采样率,目前在低采样率8kHz场景中的声学模型建模技术,比较成熟的以GMM-HMM、DNN-HMM、DeepSpeech2为代表的声学模型建模技术:

1)GMM-HMM为代表的传统声学模型建模技术,能很好的拟合语音信息帧和音素状态之间的概率发射关系,但是需要满足严格的高斯分布假设,在智能电话场景,电话语音的采样率为8kHz,远低于正常手机录音的16kHz或44.1kHz,其包含的语音帧信息更加不丰富,对GMM要求更加严格,无法直接应用于该场景,投入使用。

2)DNN-HMM为代表的深度学习的声学模型建模技术,其为第一代深度学习应用于声学模型的建模,相比GMM无法充分表达语音信息帧和音素状态之间的概率发射关系,由于DNN是判别式模型,所以天然的可以对语音信息帧进行特征表达,对低采样率数据,也能保持很稳健。但是建模DNN-HMM模型的训练阶段,需要先以GMM-HMM帧级别的模型标注,同时很依赖发音词典。

3)DeepSpeech2为代表的深度学习的声学模型建模技术,其为第二代深度学习应用于声学模型的建模,相比第一代,该模型完全基于端到端,不需要帧级别的语音标注,只需要语音和对应的转写文字,但是该模型是基于高采样率的16kHz语音数据,对8kHz的语音抽取特征能力有限,常见汉字有越近1万导致有限模型负载能力和沉重的权重。

对于现有的在OTA行业中的语音传播信息中继系统场景下的低采样率的电话语音声学模型识别主要存在的问题在于:

1)在OTA行业缺乏足够的已经标注的语音数据标注样本;

2)OTA行业的语音信息传播中继系统中的语音传播环境非常嘈杂,如回响、旁边人说话、噪声等,给识别造成了极大的困难;

3)OTA行业的电话录音数据本身基于低采样率的8kHz,原始输入信息相比正常录音数据的信息丰富度少。

所以,现有的声学模型,在OTA行业下的低采样率8kHz电话语音信息传播中继系统环境下,其容易被呼叫方的恶劣环境如回响、旁边人说话、噪声影响,给声学模型的识别造成了极大的困难,以致声学模型的识别准确率不高。

发明内容

本发明要解决的技术问题是为了克服现有技术中声学模型的识别准确率不高的缺陷,提供一种电话语音识别模型、方法、系统、设备及介质。

本发明是通过下述技术方案来解决上述技术问题:

一种电话语音识别模型,所述电话语音识别模型包括输入层、多路由多层二维卷积层、GRU层和输出层;

所述多路由多层二维卷积层包括若干路多层二维卷积,若干路所述多层二维卷积相并行组成所述多路由多层二维卷积层;

所述输入层用于接收声谱图特征并调整所述声谱图特征至预设维度的特征;

所述多路由多层二维卷积层的每一路分别用于通过多层二维卷积对所述预设维度的特征进行逐层卷积计算并得到第一特征数据;

所述GRU层用于处理所述第一特征数据并得到处理后的第二特征数据;

所述输出层用于处理所述第二特征数据得到所述声谱图特征对应的语音文字的概率矩阵。

优选地,

所述输入层包括Reshape层,所述Reshape层用于接收所述声谱图特征并调整所述声谱图特征至所述预设维度的特征;

和/或,

所述多路由多层二维卷积层还包括特征运算层,所述特征运算层用于将每一路所述多层二维卷积处理后的预设维度的特征进行求和或者连接运算得到所述第一特征数据;

和/或,

所述多路由多层二维卷积层还包括第一Batch Normalization层,所述第一BatchNormalization层设置于所述多层二维卷积中的每层二维卷积前后;

和/或,

所述输出层包括第一TimeDistributed层,所述第一TimeDistributed层用于处理所述第二特征数据得到所述概率矩阵。

优选地,所述GRU层包括双向GRU层和/或单向GRU层。

优选地,所述GRU层还包括第二Batch Normalization层、第一Dropout层、第二Dropout层和第二TimeDistributed层的至少一种。

优选地,当所述GRU层包括双向GRU层和单向GRU层,并且当所述GRU层包括第二Batch Normalization层、第一Dropout层、第二Dropout层和第二TimeDistributed层时,所述第二Batch Normalization层设置于所述双向GRU层和所述单向GRU层之间,所述第一Dropout层设置于所述第二Batch Normalization层尾部,所述第二TimeDistributed层设置于所述第一Dropout层和所述第二Dropout层之间。

一种电话语音识别方法,所述电话语音识别方法应用如上所述的电话语音识别模型实现,所述电话语音识别方法包括:

对输入电话语音进行静音切割得到音频片段;

对所述音频片段进行特征提取得到声谱图特征;

将所述声谱图特征输入至所述电话语音识别模型得到所述声谱图特征对应的语音文本的概率矩阵;

对所述概率矩阵进行解码得到所述声谱图特征对应的语音文本。

优选地,所述对所述概率矩阵进行解码得到所述声谱图特征对应的语音文本的步骤包括:

根据历史电话语音数据建立字库;

将所述字库进行同音同义合并,将合并后的字库进行标签标注得到字标签;

利用CTC解码算法根据所述字标签对所述概率矩阵解码得到所述语音文本;

和/或,

所述将所述声谱图特征输入至所述电话语音识别模型得到所述声谱图特征对应的语音文本的概率矩阵的步骤之前还包括对所述电话语音识别模型进行训练的步骤,所述对所述电话语音识别模型进行训练的步骤包括:

分别设置所述输入层、所述多路由多层二维卷积层、所述GRU层和所述输出层的参数;

设置损失函数和优化方法;

利用样本音频片段和所述样本音频片段对应的语音文本,并根据所述损失函数和所述优化方法对所述电话语音识别模型进行迭代训练。

优选地,当所述电话语音识别方法包括对所述电话语音识别模型进行训练的步骤时,

所述分别设置所述输入层、所述多路由多层二维卷积层、所述GRU层和所述输出层的参数的步骤包括:

根据语音数据的采样率设置所述输入层的网络尺寸调整参数;

根据所述网络尺寸调整参数分别设置每一路所述多路由多层二维卷积层的卷积参数,所述卷积参数包括滤波器的数量、步长、卷积核尺寸、填充和输出维度中的至少一种。

一种电话语音识别系统,所述语音识别系统应用如上所述的电话语音识别模型实现,所述语音识别系统包括:切割模块、特征提取模块、预测模块和解码模块;

所述切割模块用于对输入电话语音进行静音切割得到音频片段;

所述特征提取模块用于对所述音频片段进行特征提取得到声谱图特征;

所述预测模块用于将所述声谱图特征输入至所述电话语音识别模型得到所述声谱图特征对应的语音文本的概率矩阵;

所述解码模块用于对所述概率矩阵进行解码得到所述声谱图特征对应的语音文本。

优选地,所述解码模块还用于根据历史电话语音数据建立字库,以及将所述字库进行同音同义合并,还用于将合并后的字库进行标签标注得到字标签;

所述解码模块还用于利用CTC解码算法根据所述字标签对所述概率矩阵解码得到所述语音文本;

和/或,

所述语音识别系统还包括训练模块,所述训练模块用于分别设置所述输入层、所述多路由多层二维卷积层、所述GRU层和所述输出层的参数;还用于设置损失函数和优化方法;以及利用样本音频片段和所述样本音频片段对应的语音文本,并根据所述损失函数和所述优化方法对所述电话语音识别模型进行迭代训练。

优选地,所述训练模块还用于根据语音数据的采样率设置所述输入层的网络尺寸调整参数;以及根据所述网络尺寸调整参数分别设置每一路所述多路由多层二维卷积层的卷积参数,所述卷积参数包括滤波器的数量、步长、卷积核尺寸、填充和输出维度中的至少一种。

一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的电话语音识别方法。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的电话语音识别方法的步骤。

本发明的积极进步效果在于:

本发明的电话语音识别模型可针对低采样率的电话语音设计的网络输入尺寸、多路由多层二维卷积和网络设计,可以极大克服低采样率环境下声学模型识别问题。本发明针对目前OTA的低采样率8kHz环境下打电话时的电话语音信息识别为文字问题,基于电话语音信息传播系统中建立的电话语音识别模型,当客服在和对方对话时,可准确实时的识别出对方表达的文本信息。电话语音识别模型针对低采样率设计的网络输入尺寸、多路由多层二维卷积和网络设计,可以极大克服低采样率环境下声学模型识别问题。语音识别方法及系统中应用的同音同义方法,极大的提高了网络模型的训练速度,加快了网络模型的数据迭代和优化。该电话语音识别方法及系统提高了该场景下的电话语音识别的训练效率,同时不降低电话语音识别的评估性能,可以极大的提高客服处理电话操作的准确率,节省了OTA客服操作流程的同时,并减少OTA客服人员处理电话的失误错误,为后续离线客服质检提供了帮助,提升OTA平台客服的速度响应。

附图说明

图1为本发明的实施例1的电话语音识别模型的模块示意图。

图2为本发明的实施例1的电话语音识别模型的另一模块示意图。

图3为本发明的实施例2的电话语音识别方法的流程示意图。

图4为本发明的实施例2的电话语音识别方法的步骤104的流程示意图。

图5为本发明的实施例2的电话语音识别方法的步骤103'的流程示意图。

图6为本发明的实施例2的电话语音识别方法的步骤31'的流程示意图。

图7为本发明的实施例3的电话语音识别系统的模块示意图。

图8为本发明的实施例4提供的一种电子设备的结构示意图。

具体实施方式

下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。

实施例1

本实施例提供一种电话语音识别模型,如图1所示,电话语音识别模型包括输入层1、多路由多层二维卷积层2、GRU层3和输出层4。

输入层1用于接收声谱图特征并调整声谱图特征至预设维度的特征。

如图2所示,本实施例中输入层包括Reshape层11,Reshape层11用于接收声谱图特征并调整声谱图特征至预设维度的特征。

Reshape层11前还可以设置第三Batch Normalization层12。

第三Batch Normalization层12用于对网络权重归一化操作,加速网络训练

本实施例的输入特征为语音信号的原始语谱图特征,可根据原始语谱图特征以及语音信号的采样率设计输入层的输入网络尺寸,然后设计一层Reshape层11将网络尺寸重新调整,后面接多路由多层二维卷积层2以实现特征抽取。

多路由多层二维卷积层2包括若干路多层二维卷积21,若干路多层二维卷积21相并行组成多路由多层二维卷积层2。

如图2所示,多路由多层二维卷积层2包括二维卷积211、第一BatchNormalization层212、特征运算层213。第一Batch Normalization层212设置于多层二维卷积中的每层二维卷211前后。

多路由多层二维卷积层2的每一路多层二维卷积21分别用于通过多层二维卷积211对预设维度的特征进行逐层卷积计算并得到第一特征数据。

特征运算层213用于将每一路多层二维卷积21处理后的预设维度的特征进行求和或者连接运算得到第一特征数据。

多路由多层二维卷积层2可以实现充分通过二维卷积212抽取和表征语音信息的频域特征。多路由多层二维卷积2极大了弥补了单路二维卷积抽取语音信号的频域特征能力的不足。

GRU层3用于处理第一特征数据并得到处理后的第二特征数据。

GRU层3包括双向GRU层31和/或单向GRU层32。GRU层还包括第二BatchNormalization层33、第一Dropout层34、第二Dropout层35和第二TimeDistributed层36的至少一种。

本实施例中GRU层3包括双向GRU层31和单向GRU层32,以及第二BatchNormalization层33、第一Dropout层34、第二Dropout层35和第二TimeDistributed层36,单向GRU层32设置于双向GRU层31的尾部,第二Batch Normalization层33设置于双向GRU层31、单向GRU层32以及第一Dropout层34之间,第一Dropout层34设置于第二BatchNormalization层33尾部,第二TimeDistributed层36设置于第一Dropout层34和第二Dropout层35之间。

GRU层3通过设置双向GRU层31,然后再接单向GRU层32,后面接第二TimeDistributed层36,可以进一步弥补多路由多层二维卷积层2中卷积的时域信息不足,以丰富时域信息。

输出层4用于处理第二特征数据得到声谱图特征对应的语音文字的概率矩阵。

输出层4包括第一TimeDistributed层41,第一TimeDistributed层41用于处理第二特征数据得到概率矩阵。

本实施例的电话语音识别模型可针对低采样率的电话语音设计的网络输入尺寸、多路由多层二维卷积和网络设计,可以极大克服低采样率环境下声学模型识别问题。

实施例2

本实施例提供一种电话语音识别方法,电话语音识别方法应用实施例1中的电话语音识别模型实现,如图3所示,电话语音识别方法包括:

步骤101、对输入电话语音进行静音切割得到音频片段。

步骤102、对音频片段进行特征提取得到声谱图特征。

步骤103、将声谱图特征输入至电话语音识别模型得到声谱图特征对应的语音文本的概率矩阵。

步骤104、对概率矩阵进行解码得到声谱图特征对应的语音文本。

如图4所示,步骤104包括:

步骤1041、根据历史电话语音数据建立字库。

步骤1042、将字库进行同音同义合并,将合并后的字库进行标签标注得到字标签。

步骤1043、利用CTC解码算法根据字标签对概率矩阵解码得到语音文本。

步骤103之前还包括对电话语音识别模型进行训练的步骤103’。

如图5所示,步骤103'包括:

步骤31'、分别设置输入层、多路由多层二维卷积层、GRU层和输出层的参数。

如图6所示,步骤31'具体包括:

步骤311'、根据语音数据的采样率设置输入层的网络尺寸调整参数。

电话录音数据的采样率为8kHz,本实施例中设计网络输入的最大长度为1600,即语音帧长度最大可为1600,帧移为10ms(毫秒),帧长为25ms,则网络输入最大音频时长为16.015秒,输入特征为语音信号的原始语谱图特征,设计输入网络尺寸为(1600,200),然后设计一层Reshape层将网络尺寸重新调整为(1600,200,1),后面连接多路由多层二维卷积层2以实现特征抽取。

步骤312'、根据网络尺寸调整参数分别设置每一路多路由多层二维卷积层的卷积参数,卷积参数包括滤波器的数量、步长、卷积核尺寸、填充和输出维度中的至少一种。

本实施例以三路三层二维卷积为例,包括A路、B路、C路三路的三层二维卷积,在进行特征抽取阶段,设置三路三层二维卷积的参数,通过三个路由的三层二维卷积对其抽取,在设计上,A、B、C三路的卷积核尺寸不同,通常设计为奇数。

A路由的三层二维卷积大小为:设置卷积滤波器数量和步长分别为32和(2,2),核尺寸分别为(11,41)、(11,21)、(11,21),填充均设置为same,然后进行Reshape(200,-1)的操作,输出维度为(200,800)。

B路由的三层二维卷积大小为:设置卷积滤波器数量和步长分别32和(2,2),核尺寸分别为(11,21)、(11,11)、(11,11),填充均设置为same,然后进行Reshape(200,-1)的操作,输出维度为(200,800)。

C路由的三层二维卷积大小为:设置卷积滤波器数量和步长分别为32和(2,2),核尺寸分别为(11,11)、(11,7)、(11,7),填充均设置为same,然后进行Reshape(200,-1)的操作,输出维度为(200,800)。

然后将A、B、C三路由进行维度上链接操作,这里网络有连接选项,执行求和操作,得到的矩阵维度依然为(200,800),若执行concat操作,则输出维度为(200,2400)。

步骤32'、设置损失函数和优化方法。

在训练阶段,由于需要深度学习的反馈学习,损失函数使用CTC(ConnectionistTemporal Classification)损失函数,学习优化方法采用Adam(一种优化算法),每层的二维卷积和GRU层上的Batch Normalization层,可以让模型加速训练和更为稳定,设置第一Dropout层为Dropout(0.25),在第二层TimeDistributed设置TimeDistributed(512),尾部的第一Dropout层设置为Dropout(0.25)。

在输出层,设计的是一个基于字的CTC端到端的网络模型,利用CTC解码算法,在OTA行业的电话语音传播中继系统环境下,在已有语音电话录音标注数据中,统计所有转写文本的字频,由于是标签设计,将部分可以同音同义的字标签进行同音同义如您、你同音同义设计为你,嗯、嗯合并为嗯,哦、喔合并为哦等,最后经过这样的同音同义处理,将原有的12000个汉字维度减小到3881个维度,所以可设置标签为3881个电话语音信息传播中集系统下的字,另外再加一个blank(空标识)。极大的减小了模型标签层的计算复杂度,将第一TimeDistributed层设置为TimeDistributed

(3882)。

步骤33'、利用样本音频片段和样本音频片段对应的语音文本,并根据损失函数和优化方法对电话语音识别模型进行迭代训练。

考虑到语音标注的工作量较大,为减小语音标注工作量,可利用历史的电话录音数据作为样本音频数据,对样本音频数据进行通道分离,通过静音切割将其拆分为多个样本音频片段,然后利用公开的现有的声学模型对样本音频片段进行预测,得到其对应的语音文本,将样本音频片段作为输入,将其对应的语音文本作为输出,根据损失函数和优化方法,训练电话语音识别模型。

在该模型训练过程中,有部分参数对模型迭代比较过敏,迭代batch时的size设置为64,学习率初始不宜过大,可将学习率初始化为0.0001,学习衰减系数设计为0.000001。通过该初始化步骤,以训练的CTC损失函数和测试集上的转写正确率作为模型收敛标准。OTA下语音信息传播中继系统下的低采样率特性,在将A、B、C三路的输出做维度处理时,执行求和操作将极大的减小权重大小,和单路相比,权重大小基本相同,但是多路由多层二维卷积极大了弥补了单路二维卷积抽取语音信号的频域特征能力的不足。

由于训练模型的数据是基于已有公开模型预测,因此为了让电话语音识别模型的准确率更好,通过数据迭代的方式进行训练,数据迭代的做法是:在训练一个较好的模型之后,利用该模型对已有的训练测试数据预测出文字,然后计算转写,然后计算转写正确率:

将转写正确率在低于预设数值比如30%以下的进行人工修正,修正之后,再重新加入到训练集中训练模型。

每次迭代,逐步转写正确率的下限设计更为严格。如这次迭代之后,将转写正确率在20%以下的进行人工修正。同时,修正过的语音数据次数大于预设次数的可以不进入人工修正。

对于生产线上MRCP(媒体资源控制协议)方经过VAD(语音端点控制)静音切割技术发送过来一段音频字节流,核对该字节流信息和送入的字节流长度是否一致,若一致则根据采样率关系计算出时长,由于音频采样率为8kHz,因此,如果时长超过电话语音识别模型的网络输入长度16.015秒,则将采用VAD静音切割技术将其划分为多个在16.015秒内的音频片段,对每个音频片段分别做提取每帧的声谱图特征维度为200的矩阵。

其次,根据训练阶段产生的电话语音识别模型,将第一步中的200维度的声谱图特征矩阵,如果不够(1600,200),则在行方向上进行以0填充的操作,让其满足电话语音识别模型的输入维度要求,送入模型后,输出维度为(200,3882)的概率矩阵。

第三步,使用基于集束搜索的CTC解码算法,对输出的(200,3882)的概率矩阵进行集束搜索解码操作,输出每个切割音频片段对应的文字。

最后,由于预测的结果是对切割音频片段做的操作,所有音频片段的合并即为完整音频,因此将多个切割音频片段转写的文字信息,按照顺序,将其以逗号合并,最后得到完整音频的转写内容。

本实施例是针对目前OTA的低采样率8kHz环境下打电话时的电话语音信息识别为文字问题,提出的一种电话语音识别方法,基于电话语音信息传播系统中建立的电话语音识别模型,当客服在和对方对话时,可准确实时的识别出对方表达的文本信息。电话语音识别模型针对低采样率设计的网络输入尺寸、多路由多层二维卷积和网络设计,可以极大克服低采样率环境下声学模型识别问题;同时利用的同音同义方法,极大的提高了网络模型的训练速度,加快了网络模型的数据迭代和优化。该电话语音识别方法提高了该场景下的电话语音识别的训练效率,同时不降低电话语音识别的评估性能,可以极大的提高客服处理操作的准确率,在节省了OTA客服操作人力的同时,也减少了OTA客服处理的失误错误,为后续离线客服质检提供了帮助,提升OTA平台客服的速度响应。

实施例3

本实施例提供一种电话语音识别系统,语音识别系统应用如实施例1中的电话语音识别模型实现,如图7所示,语音识别系统包括:切割模块201、特征提取模块202、预测模块203、解码模块204、训练模块205;

切割模块201用于对输入电话语音进行静音切割得到音频片段;

特征提取模块202用于对音频片段进行特征提取得到声谱图特征;

预测模块203用于将声谱图特征输入至电话语音识别模型得到声谱图特征对应的语音文本的概率矩阵;

解码模块204用于对概率矩阵进行解码得到声谱图特征对应的语音文本。

解码模块204还用于根据历史电话语音数据建立字库,以及将字库进行同音同义合并,还用于将合并后的字库进行标签标注得到字标签;

解码模块204还用于利用CTC解码算法根据字标签对概率矩阵解码得到语音文本;

训练模块205用于分别设置输入层、多路由多层二维卷积层、GRU层和输出层的参数;还用于设置损失函数和优化方法;以及利用样本音频片段和样本音频片段对应的语音文本,并根据损失函数和优化方法对电话语音识别模型进行迭代训练。

训练模块205还用于根据语音数据的采样率设置输入层的网络尺寸调整参数;以及根据网络尺寸调整参数分别设置每一路多路由多层二维卷积层的卷积参数,卷积参数包括滤波器的数量、步长、卷积核尺寸、填充和输出维度中的至少一种。

电话录音数据的采样率为8kHz,本实施例中设计网络输入的最大长度为1600,即语音帧长度最大可为1600,帧移为10ms(毫秒),帧长为25ms,则网络输入最大音频时长为16.015秒,输入特征为语音信号的原始语谱图特征,设计输入网络尺寸为(1600,200),然后利用Reshape层将网络尺寸重新调整为(1600,200,1),后面连接的多路由多层二维卷积层2以实现特征抽取。

本实施例以三路三层二维卷积为例,包括A路、B路、C路三路的三层二维卷积,在进行特征抽取阶段,设置三路三层二维卷积的参数,通过三个路由的三层二维卷积对其抽取,在设计上,A、B、C三路的卷积核尺寸不同,通常设计为奇数。

A路由的三层二维卷积大小为:设置卷积滤波器数量和步长分别为32和(2,2),核尺寸分别为(11,41)、(11,21)、(11,21),填充均设置为same,然后进行Reshape(200,-1)的操作,输出维度为(200,800)。

B路由的三层二维卷积大小为:设置卷积滤波器数量和步长分别32和(2,2),核尺寸分别为(11,21)、(11,11)、(11,11),填充均设置为same,然后进行Reshape(200,-1)的操作,输出维度为(200,800)。

C路由的三层二维卷积大小为:设置卷积滤波器数量和步长分别为32和(2,2),核尺寸分别为(11,11)、(11,7)、(11,7),填充均设置为same,然后进行Reshape(200,-1)的操作,输出维度为(200,800)。

然后将A、B、C三路由进行维度上链接操作,这里网络有连接选项,执行求和操作,得到的矩阵维度依然为(200,800),若执行concat操作,则输出维度为(200,2400)。

在训练阶段,需要深度学习的反馈学习,损失函数使用CTC(ConnectionistTemporal Classification)损失函数,学习优化方法采用Adam(一种优化算法),在每层的二维卷积和GRU层上的Batch Normalization层,可以让模型加速训练和更为稳定,经过双向GRU和单向GRU之后,设置第一Dropout层为Dropout(0.25),在第二层TimeDistributed设置TimeDistributed(512),尾部的第一Dropout层设置为Dropout(0.25)。

在输出层,设计的是一个基于字的CTC端到端的网络模型,利用CTC解码算法,在OTA行业的电话语音传播中继系统环境下,在已有语音电话录音标注数据中,统计所有转写文本的字频,由于是标签设计,将部分可以同音同义的字标签进行同音同义如您、你同音同义设计为你,嗯、嗯合并为嗯,哦、喔合并为哦等,最后经过这样的同音同义处理,将原有的12000个汉字维度减小到3881个维度,所以可设置标签为3881个电话语音信息传播中集系统下的字,另外再加一个blank。极大的减小了模型标签层的计算复杂度,将第一TimeDistributed层设置为TimeDistributed(3882)。

考虑到语音标注的工作量较大,为减小语音标注工作量,可利用历史的电话录音数据作为样本音频数据,对样本音频数据进行通道分离,通过静音切割将其拆分为多个样本音频片段,然后利用公开的现有的声学模型对样本音频片段进行预测,得到其对应的语音文本,将样本音频片段作为输入,将其对应的语音文本作为输出,根据损失函数和优化方法,训练电话语音识别模型。

在该模型训练过程中,有部分参数对模型迭代比较过敏,迭代时的batch size设置为64,学习率初始不宜过大,学习率初始化为0.0001,学习衰减系数设计为0.000001。通过该初始化步骤,以训练的CTC损失函数和测试集上的转写正确率作为模型收敛标准。OTA下语音信息传播中继系统下的低采样率特性,将A、B、C三路的输出做进行维度处理,执行求和操作将极大的减小权重大小,和单路相比,权重大小基本相同,但是多路由多层二维卷积极大了弥补了单路二维卷积抽取语音信号的频域特征能力的不足。

由于训练模型的数据是基于已有公开模型预测,因此为了让电话语音识别模型的准确率更好,通过数据迭代的方式进行训练,数据迭代的做法是:在训练一个较好的模型之后,利用该模型对已有的训练测试数据预测出文字,然后计算转写,然后计算转写正确率:

将转写正确率在低于预设数值比如30%以下的进行人工修正,修正之后,再重新加入到训练集中训练模型。

每次迭代,逐步转写正确率的下限设计更为严格。如这次迭代之后,将转写正确率在20%以下的进行人工修正。同时,修正过的语音数据次数大于预设次数的可以不进入人工修正。

对于生产线上MRCP方经过VAD静音切割技术发送过来一段音频字节流,核对该字节流信息和送入的字节流长度是否一致,若一致则根据采样率关系计算出时长,由于音频采样率为8kHz,因此,如果时长超过电话语音识别模型的网络输入长度16.015秒,则将采用VAD静音切割技术将其划分为多个在16.015秒内的音频片段,对每个音频片段分别做提取每帧的声谱图特征维度为200的矩阵。

其次,根据训练阶段产生的电话语音识别模型,将第一步中的200维度的声谱图特征矩阵,如果不够(1600,200),则在行方向上进行以0填充的操作,让其满足电话语音识别模型的输入维度要求,送入模型后,输出维度为(200,3882)的概率矩阵。

第三步,使用基于集束搜索的CTC解码算法,对输出的(200,3882)的概率矩阵进行集束搜索解码操作,输出每个切割音频片段对应的文字。

最后,由于预测的结果是对切割音频片段做的操作,所有音频片段的合并即为完整音频,因此将多个切割音频片段转写的文字信息,按照顺序,将其以逗号合并,最后得到完整音频的转写内容。

本实施例是针对目前OTA的低采样率8kHz环境下打电话时的电话语音信息识别为文字问题,提出的一种电话语音识别系统,基于电话语音信息传播系统中建立的电话语音识别模型,当客服在和对方对话时,可准确实时的识别出对方表达的文本信息。电话语音识别模型针对低采样率设计的网络输入尺寸、多路由多层二维卷积和网络设计,可以极大克服低采样率环境下电话语音识别模型识别问题;同时利用同音同义方法,极大的提高了网络模型的训练速度,加快了网络模型的数据迭代和优化。该电话语音识别系统提高了该场景下的电话语音识别的训练效率,同时不降低电话语音识别的评估性能,可以极大的提高客服处理操作准确率,节省了OTA客服操作时间的同时,也减少OTA客服处理的失误错误,为后续离线客服质检提供了帮助,提升OTA平台客服的速度响应。

实施例4

图8为本发明实施例4提供的一种电子设备的结构示意图。电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现实施例2的电话语音识别方法。图8显示的电子设备50仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图8所示,电子设备50可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备50的组件可以包括但不限于:上述至少一个处理器51、上述至少一个存储器52、连接不同系统组件(包括存储器52和处理器51)的总线53。

总线53包括数据总线、地址总线和控制总线。

存储器52可以包括易失性存储器,例如随机存取存储器(RAM)521和/或高速缓存存储器522,还可以进一步包括只读存储器(ROM)523。

存储器52还可以包括具有一组(至少一个)程序模块524的程序/实用工具525,这样的程序模块524包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

处理器51通过运行存储在存储器52中的计算机程序,从而执行各种功能应用以及数据处理,例如本发明实施例1所提供的电话语音识别方法。

电子设备50也可以与一个或多个外部设备54(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口55进行。并且,模型生成的设备50还可以通过网络适配器56与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器56通过总线53与模型生成的设备50的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的设备50使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。

应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。

实施例5

本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,程序被处理器执行时实现实施例2所提供的电话语音识别方法的步骤。

其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。

在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行实现实施例2的电话语音识别方法中的步骤。

其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。

虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。

  • 标题:电话语音识别模型、方法、系统、设备及介质
  • 申请人:携程计算机技术(上海)有限公司
  • 发明人:郝竹林, 罗超, 胡泓, 王俊彬, 任君
  • 申请号:CN201911234303.9
  • 申请日:2019-12-05
  • 公开号:CN110930985A
  • 公开日:2020-03-27
  • 优先权号:
  • 代理人:薛琦, 张冉
  • 代理机构:31283上海弼兴律师事务所
  • 申请人地址:上海市长宁区福泉路99号携程网络技术大楼
  • 是否有效:审中
  • 标签:介质,语音,模型,电话,方法