语音识别方法、系统、电子设备和存储介质与流程

文档序号:22078485发布日期:2020-09-01 19:08阅读:244来源:国知局
语音识别方法、系统、电子设备和存储介质与流程

本发明涉及语音识别技术领域,尤其涉及一种语音识别方法、系统、电子设备和存储介质。



背景技术:

目前,随着各公司的业务发展需要,语音识别技术的应用场景越来越多,尤其是在呼叫中心领域,例如智能语音客服、客服录音质检、外呼失败原因分析等场景下,被广泛应用。而在不同应用场景下,相同发音的词,含义可能是不一样的。

传统的语音识别技术一般依赖各种复杂的模型设计,包括声学模型和隐马尔可夫模型(hmm)等。这些模型需由专门的公司为企业用户进行搭建,不仅搭建成本高,限制特殊的语音格式,而且最重要的是,仅能提供通用语音识别,无法针对用户的特定业务场景进行针对性识别,识别准确性不高。



技术实现要素:

针对上述现有技术的不足,本发明的目的在于提供一种改进的语音识别方法、系统、电子设备和存储介质,以解决无法针对用户的特定业务场景进行针对性语音识别,识别准确性不高的问题。

为了实现上述目的,本发明提供一种语音识别方法,包括:

获取不同场景的训练样本集,所述训练样本集包含若干训练语音以及与所述训练语音对应的文本标签;

根据不同场景的训练样本集分别对预设的机器学习模型进行训练,得到不同场景对应的语义模型;

获取待识别语音,所述待识别语音携带场景标签;

从所述不同场景对应的语义模型中,获取与所述场景标签对应的语义模型;

利用所述目标语义模型对所述待识别语音进行处理,得到所述待识别语音的初始识别结果;

利用预设的语言模型对所述初始识别结果进行校准处理,得到所述待识别语音的目标识别结果。

在本发明一个优选实施例中,所述根据不同场景的训练样本集分别对预设的机器学习模型进行训练,得到不同场景对应的语义模型的步骤包括分别针对每个所述场景执行以下步骤:

按预定比例将目标场景的训练样本集划分为训练集和测试集;

根据所述训练集,对所述机器学习模型进行训练;

根据所述测试集,对训练得到的机器学习模型进行测试,当测试通过时,将训练得到的机器学习模型作为目标场景对应的语义模型。

在本发明一个优选实施例中,所述根据所述训练集,对所述机器学习模型进行训练的步骤包括:

将所述训练集划分为多个批次;

利用各批次的训练集依次对所述机器学习模型进行训练,直至满足训练完成条件。

在本发明一个优选实施例中,所述将所述训练集划分为多个批次的步骤包括:

将频谱特征相同或相近的训练语音划分至同一批次。

在本发明一个优选实施例中,所述将所述训练集划分为多个批次的步骤包括:

获取时长相近的多段训练语音;

通过静默音填充方式将所述多段训练语音调整为时长一致;

将所述时长调整为一致的多段训练语音划分至同一批次。

在本发明一个优选实施例中,所述机器学习模型为循环神经网络模型;和/或所述语言模型为n-grams模型。

在本发明一个优选实施例中,所述根据不同场景对应的训练样本集对预设的机器学习模型进行训练,得到不同场景对应的语义模型的步骤之前,所述方法还包括对每个所述训练样本集分别进行预处理,所述预处理包括:

提取每个训练样本集中所述训练语音的频谱特征;

对每个训练样本集中所述文本标签进行分词处理。

为了实现上述目的,本发明提供一种语音识别系统,包括:

样本获取模块,用于获取不同场景的训练样本集,所述训练样本集包含若干训练语音以及与所述训练语音对应的文本标签;

模型训练模块,用于根据不同场景的训练样本集分别对预设的机器学习模型进行训练,得到不同场景对应的语义模型;

语音获取模块,用于获取待识别语音,所述待识别语音携带场景标签;

语义模型确定模块,用于从所述不同场景对应的语义模型中,获取与所述场景标签对应的语义模型;

模型处理模块,用于利用所述目标语义模型对所述待识别语音进行处理,得到所述待识别语音的初始识别结果;

校准模块,用于利用预设的语言模型对所述初始识别结果进行校准处理,得到所述待识别语音的目标识别结果。

在本发明一个优选实施例中,所述模型训练模块包括:

样本划分单元,用于按预定比例将目标场景的训练样本集划分为训练集和测试集;

训练单元,用于根据所述训练集,对所述机器学习模型进行训练;

测试单元,用于根据所述测试集,对训练得到的机器学习模型进行测试,当测试通过时,将训练得到的机器学习模型作为目标场景对应的语义模型。

在本发明一个优选实施例中,所述训练单元包括:

批次划分子单元,用于将所述训练集划分为多个批次;

分批训练子单元,用于利用各批次的训练集依次对所述机器学习模型进行训练,直至满足训练完成条件。

在本发明一个优选实施例中,所述批次划分子单元用于:

将频谱特征相同或相近的训练语音划分至同一批次。

在本发明一个优选实施例中,所述分批训练子单元用于:

获取时长相近的多段训练语音;

通过静默音填充方式将所述多段训练语音调整为时长一致;

将所述时长调整为一致的多段训练语音划分至同一批次。

在本发明一个优选实施例中,所述机器学习模型为循环神经网络模型;和/或所述语言模型为n-grams模型。

在本发明一个优选实施例中,所述系统还包括预处理模块,用于对每个所述训练样本集分别进行预处理,所述预处理模块包括:

频谱特征提取单元,用于提取每个训练样本集中所述训练语音的频谱特征;

分词单元,用于对每个训练样本集中所述文本标签进行分词处理。

为了实现上述目的,本发明还提供一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现前述方法的步骤。

为了实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现前述方法的步骤。

通过采用上述技术方案,本发明具有如下有益效果:

本发明首先利用不同场景的训练样本集分别训练得到不同场景对应的语义模型;而后根据待识别语音携带的场景标签选择对应的语义模型对待识别语音进行针对性识别处理,识别准确性高;最后,通过预设的语言模型对识别结果进行校准,进一步提高识别准确性。此外,本发明不限定语音格式,适用范围广,并且模型搭建成本低。

附图说明

图1为本发明实施例1中语音识别方法的流程图;

图2为本发明实施例2中语音识别系统的结构框图;

图3为本发明实施例3中电子设备的硬件架构图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

实施例1

本实施例提供一种语音识别方法,如图1所示,具体包括以下步骤:

s1,获取不同场景的训练样本集,每个训练样本集分别包含若干训练语音以及与各训练语音对应的文本标签。

在本实施例中,不同场景可以是机票预定、酒店预定、旅游预定、火车票预定等业务场景。其中,机票预定场景的训练语音可来自于历史机票预定语音记录,训练语音被预先标注有对应的文本标签。按照类似的方式,还可以得到酒店预定、旅游预定、火车票预定等场景的训练样本集。

s2,对每个训练样本集分别进行预处理,具体包括:提取每个训练样本集中各训练语音的频谱特征;以及对每个训练样本集中各文本标签进行分词处理。

具体地,本步骤可采用现有的任何一种频谱分析方法对各训练语音进行处理,以得到各训练语音的频谱特征。

本步骤可采用现有的任何一种分词方式或分词工具对各文本标签进行处理,得到对应文本标签中的每个词。值得注意的是,本发明中提及的词可以为单个字,也可以为包含多个字的词语。例如,采用本步骤对文本标签“我想预订明天从上海到北京的机票”进行分词的结果为“我/想/预订/明天/从/上海/到/北京/的/机票”。本实施例进行分词处理的目的是为了在后续模型训练时以词为基准进行训练,相比于以句子为基准进行训练,可以提高训练效率。

s3,根据不同场景的训练样本集分别对预设的机器学习模型进行训练,得到不同场景对应的语义模型。训练时,分别针对每个场景执行以下步骤:

s31,按预定比例将目标场景的训练样本集划分为训练集和测试集,例如,训练集和测试集的划分比例可为70%:30%。

s32,根据前述训练集,对预设的机器学习模型进行训练。具体地,首先,将训练集划分为多个批次;而后,利用各批次的训练集依次对前述机器学习模型进行训练,直至满足预设的训练完成条件。例如,可以采用随机梯度下降算法对机器学习模型进行迭代训练,直至模型的损失函数值最小化或小于预定阈值。

在本实施例中,为了加快训练速度,可以将频谱特征相同或相近的训练语音划分至同一批次,也可以将时长相近的训练语音划分至同一批次。当需要将时长相近的训练语音划分至同一批次时,具体通过如下步骤完成:首先,获取时长相近的多段训练语音;而后,通过静默音填充方式将时长相近的多段训练语音调整为时长一致;最后,将时长调整为一致的多段训练语音划分至同一批次。

s33,根据前述测试集,对步骤s32训练得到的机器学习模型进行测试,当测试通过时,确定训练得到的机器学习模型为目标场景对应的语义模型,训练结束;当测试未通过时,增加目标场景的训练样本集中的样本,并重新进行训练。优选地,本实施例可采用gpu(graphicsprocessingunit,图形处理器)加速模型训练。

在本实施例中,前述机器学习模型优选为rnn(recurrentneuralnetwork,循环神经网络)模型,其包括输入层、隐藏层和输出层,隐藏层可以有多层,本申请并不对隐藏层的层数进行限制,可根据需要而定。当然,本实施例并不局限于采用rnn模型,任意何适的机器学习模型均可采用,本实施例对此不做任何限定。

s4,获取待识别语音,该待识别语音携带场景标签。例如,用户在拨打预定电话时,可以通过按下不同的按键进入相应的预订场景,如按“1”进入机票预定场景,按“2”进入酒店预定场景,则可以预先将按“1”后进行的通话语音标注机票预定场景标签,预先将按“2”后进行的通话语音标注机票预定场景标签。

s5,从不同场景对应的语义模型中,获取与前述场景标签对应的语义模型。例如,假设待识别语音携带的场景标签为机票预定场景标签,则从步骤s3训练得到的多个语义模型中获取与机票预定场景标签匹配的语义模型为目标语义模型。

s6,利用前述目标语义模型对待识别语音进行处理,得到待识别语音的初始识别结果。具体地,将待识别语音输入目标语义模型,目标语义模型便会输出对应的识别结果,此处记为初始识别结果。

s7,利用预设的语言模型对前述初始识别结果进行校准处理,得到待识别语音的目标识别结果。

在本实施例中,目标语义模型输出的初始识别结果中可能存在错别字或者表达不符合语法规则等情况,因而采用语言模型对其进行校准处理,以进一步提高识别准确性。优选地,语言模型采用开源的n-grams模型实现。

可见,本发明首先利用不同场景的训练样本集分别训练得到不同场景对应的语义模型;而后根据待识别语音携带的场景标签选择对应的语义模型对待识别语音进行针对性识别处理,识别准确性高;最后,通过预设的语言模型对识别结果进行校准,进一步提高识别准确性。此外,本发明不限定语音格式、采集频率和采集时长,适用范围广,并且模型搭建成本低。

需要说明的是,对于本实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明所必须的。

实施例2

本实施例提供一种语音识别系统10,如图2所示,该系统10包括:

样本获取模块11,用于获取不同场景的训练样本集,所述训练样本集包含若干训练语音以及与所述训练语音对应的文本标签;

预处理模块12,用于对每个所述训练样本集分别进行预处理

模型训练模块13,用于根据不同场景的训练样本集分别对预设的机器学习模型进行训练,得到不同场景对应的语义模型;

语音获取模块14,用于获取待识别语音,所述待识别语音携带场景标签;

语义模型确定模块15,用于从所述不同场景对应的语义模型中,获取与所述场景标签对应的语义模型;

模型处理模块16,用于利用所述目标语义模型对所述待识别语音进行处理,得到所述待识别语音的初始识别结果;

校准模块17,用于利用预设的语言模型对所述初始识别结果进行校准处理,得到所述待识别语音的目标识别结果。

在本实施例中,所述模型训练模块13可以包括:

样本划分单元,用于按预定比例将目标场景的训练样本集划分为训练集和测试集;

训练单元,用于根据所述训练集,对所述机器学习模型进行训练;

测试单元,用于根据所述测试集,对训练得到的机器学习模型进行测试,当测试通过时,将训练得到的机器学习模型作为目标场景对应的语义模型。

在本实施例中,所述训练单元可以包括:

批次划分子单元,用于将所述训练集划分为多个批次;

分批训练子单元,用于利用各批次的训练集依次对所述机器学习模型进行训练,直至满足训练完成条件。

在本实施例中,所述批次划分子单元可用于:

将频谱特征相同或相近的训练语音划分至同一批次。

在本实施例中,所述分批训练子单元可用于:

获取时长相近的多段训练语音;

通过静默音填充方式将所述多段训练语音调整为时长一致;

将所述时长调整为一致的多段训练语音划分至同一批次。

在本实施例中,所述机器学习模型为循环神经网络模型;和/或

所述语言模型为n-grams模型。

在本实施例中,所述预处理模块12包括:

频谱特征提取单元,用于提取每个训练样本集中所述训练语音的频谱特征;

分词单元,用于对每个训练样本集中所述文本标签进行分词处理。

对于本系统实施例而言,由于其与前述方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的模块作并不一定是本发明所必须的。

实施例3

本实施例提供一种电子设备,电子设备可以通过计算设备的形式表现(例如可以为服务器设备),包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中处理器执行计算机程序时可以实现实施例1提供的语音识别方法。

图3示出了本实施例的硬件结构示意图,如图3所示,电子设备9具体包括:

至少一个处理器91、至少一个存储器92以及用于连接不同系统组件(包括处理器91和存储器92)的总线93,其中:

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

存储器92包括易失性存储器,例如随机存取存储器(ram)921和/或高速缓存存储器922,还可以进一步包括只读存储器(rom)923。

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

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

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

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

实施例4

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

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

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

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

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1