CN114299920A - 用于语音识别的语言模型的训练、语音识别方法及装置 - Google Patents
用于语音识别的语言模型的训练、语音识别方法及装置 Download PDFInfo
- Publication number
- CN114299920A CN114299920A CN202111021975.9A CN202111021975A CN114299920A CN 114299920 A CN114299920 A CN 114299920A CN 202111021975 A CN202111021975 A CN 202111021975A CN 114299920 A CN114299920 A CN 114299920A
- Authority
- CN
- China
- Prior art keywords
- statement
- sentence
- training
- language model
- weight
- 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
Images
Landscapes
- Machine Translation (AREA)
Abstract
本申请公开了一种用于语音识别的语言模型的训练、语音识别方法及装置,涉及人工智能及地图车联技术领域,该方法包括:对文本数据集中的语句进行领域分类处理,得到至少一个语句集;对每个语句集进行权重评估,以基于每个语句集的权重确定符合预定重要性条件的目标语句集;基于目标语句集对应的语句数目及权重进行计算处理,得到采样数目;根据采样数目及语句集的权重进行采样概率分配处理,得到每个语句集中语句的采样概率;从每个语句集中按照对应采样概率进行语句抽取,生成训练语句集;基于训练语句集对语言模型进行训练。本申请提升用于语音识别的语言模型对于数据稀疏领域的分析性能,且语言模型进行分析时不需要输入额外特征及领域信息。
Description
技术领域
本申请涉及人工智能技术领域,具体涉及一种用于语音识别的语言模型的训练、语音识别方法及装置。
背景技术
在语音识别等领域通常会采用语言模型对进行语句发生概率分析,即对一段文本的发生概率进行估计,目前,相关技术中存在基于特征的方法及基于模型的方法训练语言模型。
基于特征的方法需要训练额外的特征提取模型,语言模型的性能在很大程度上依赖特征提取模型的性能,且整体的计算复杂度较高;基于模型的方法在模型结构上增加领域模块通过对应领域的数据更新,进行分析时需要输入领域信息,但通常无法得到领域信息;而且相关技术中对于多个领域数据不均衡的问题均难以有效缓解,导致语言模型对于数据稀疏领域的分析性能较差。
发明内容
本申请实施例提供一种用于语音识别的语言模型的训练方案,可以有效缓解多个领域数据不均衡的问题,提升用于语音识别的语言模型对于数据稀疏领域的分析性能,且语言模型进行分析时不需要输入额外的特征及领域信息。
本申请实施例提供以下技术方案:
根据本申请的一个实施例,一种用于语音识别的语言模型的训练方法,该方法包括:对文本数据集中的语句进行领域分类处理,得到至少一个领域的语句集;对每个所述语句集进行权重评估,以基于每个所述语句集的权重确定符合预定重要性条件的目标语句集;基于所述目标语句集对应的语句数目及权重进行计算处理,得到用于训练语言模型的语句的采样数目;根据所述采样数目及每个所述语句集的权重进行采样概率分配处理,得到每个所述语句集中语句的采样概率;从每个所述语句集中按照对应采样概率进行语句抽取,生成训练语句集;基于所述训练语句集对所述语言模型进行训练,得到训练后语言模型。
根据本申请的一个实施例,一种用于语音识别的语言模型的训练装置,其包括:分类模块,用于对文本数据集中的语句进行领域分类处理,得到至少一个领域的语句集;评估模块,用于对每个所述语句集进行权重评估,以基于每个所述语句集的权重确定符合预定重要性条件的目标语句集;计算模块,用于基于所述目标语句集对应的语句数目及权重进行计算处理,得到用于训练语言模型的语句的采样数目;分配模块,用于根据所述采样数目及每个所述语句集的权重进行采样概率分配处理,得到每个所述语句集中语句的采样概率;抽取模块,用于从每个所述语句集中按照对应的采样概率进行语句抽取,生成训练语句集;训练模块,用于基于所述训练语句集对所述语言模型进行训练,得到训练后语言模型。
在本申请的一些实施例中,所述评估模块,包括:文法模型训练单元,用于基于每个领域的所述语句集对目标文法模型进行训练,得到每个领域对应的领域文法模型;关联分析单元,用于采用每个所述领域文法模型对验证数据集中的每个词进行关联出现概率分析,得到每个所述领域文法模型输出的关联出现概率;差值处理单元,用于基于每个所述领域文法模型输出的关联出现概率进行期望最大化权重插值处理,得到每个所述语句集的权重;目标确定单元,用于基于所述权重确定符合预定重要性条件的目标语句集。
在本申请的一些实施例中,所述目标确定单元,用于:确定权重最大的预定数目个所述语句集为候选语句集;从所述候选语句集中确定包含语句的个数最大的语句集,作为所述目标语句集。
在本申请的一些实施例中,所述目标确定单元,用于:确定权重大于预定阈值的至少一个所述语句集为候选语句集;从所述候选语句集中确定包含语句的个数最大的语句集,作为所述目标语句集。
在本申请的一些实施例中,所有所述语句集的权重之和等于一;所述计算模块,包括:整数比值计算单元,用于计算所述目标语句集对应的语句数目及权重的整数比值;采样数目确定单元,用于将所述整数比值确定为从所有所述语句集中采集用于训练语言模型的语句的采样数目。
在本申请的一些实施例中,所述分配模块,包括:权重比值计算单元,用于计算每个所述语句集的权重与所有所述语句集的权重之和的权重比值,得到每个语句集对应的权重比值;语句采样数计算单元,用于计算每个所述语句集对应的权重比值与所述采样数目的乘积,作为每个所述语句集对应的语句采样数;采样概率确定单元,用于基于每个所述语句集对应的语句采样数与语句数目进行比值计算,以确定每个所述语句集中语句的采样概率。
在本申请的一些实施例中,所述采样概率确定单元,用于:针对每个所述语句集,当所述语句集对应的语句采样数小于语句数目时,计算所述语句集对应的语句采样数与语句数目的个数比;当所述语句集对应的语句采样数大于或等于语句数目时,对所述语句集中进行语句复制扩充处理,并计算所述语句集对应的语句采样数与扩充后语句数目的个数比;将每个所述语句集对应的个数比,作为每个所述语句集中语句的采样概率。
在本申请的一些实施例中,所述抽取模块,包括:第一抽取单元,用于针对每个所述语句集,当所述语句集对应的语句采样数小于语句数目时,从所述语句集中按照对应的采样概率进行语句抽取;第二抽取单元,用于当所述语句集对应的语句采样数大于或等于语句数目时,从所述语句集对应的扩充后语句集中按照对应的采样概率进行语句抽取;集合单元,用于将从所有所述语句集中抽取到语句的集合,确定为所述训练语句集。
在本申请的一些实施例中,所述训练模块,包括:预测单元,用于采用所述语言模型对所述训练语句集中的语句进行语句发生概率分析,得到所述训练语句集中的语句对应的预测语句发生概率;交叉熵计算单元,用于基于所述预测语句发生概率计算所述语言模型在训练语句集上的交叉熵;更新单元,用于通过随机梯度下降更新所述语言模型中的参数,以使得所述交叉熵小于预定阈值,生成所述训练后语言模型,所述训练后语言模型用于进行语句发生概率分析。
根据本申请的一个实施例,一种语音识别方法,其包括:基于目标语音的语音数据进行语音识别,得到所述目标语音对应的至少一个候选识别文本;采用训练后语言模型,对所述至少一个候选识别文本进行语句发生概率分析,得到表征语句发生概率的文本评分,所述训练后语言模型根据前述的语言模型的训练方法训练得到;基于每个所述候选识别文本对应的文本评分确定所述目标语音的语音识别结果。
根据本申请的一个实施例,一种语音识别装置,其包括:一遍解码模块,用于基于目标语音的语音数据进行语音识别,得到所述目标语音对应的至少一个候选识别文本;二遍解码模块,用于采用训练后语言模型,对所述至少一个候选识别文本进行语句发生概率分析,得到表征语句发生概率的文本评分,所述训练后语言模型根据前述的语言模型的训练方法训练得到;识别模块,用于基于每个所述候选识别文本对应的文本评分确定所述目标语音的语音识别结果。
在本申请的一些实施例中,每个所述候选识别文本对应一个声学分数及语言分数,所述声学分数表征给定候选识别文本时所述目标语音的发生概率,所述语言分数表征候选识别文本对应的词序列的发生概率;所述识别模块730,用于:对每个所述候选识别文本对应的所述声学分数、所述语言分数及所述文本评分进行加权求和,得到每个所述候选识别文本对应的准确性分数;将准确性分数最大的候选识别文本,确定为所述目标语音的语音识别结果。
在本申请的一些实施例中,一遍解码模块710,用于:对所述目标语音的语音数据进行声学解码处理,得到所述目标语音对应的至少一个音素序列及所述音素序列对应的所述声学分数;对每个所述音素序列进行语言解码处理,得到每个所述音素序列对应的至少一个候选识别文本及所述候选识别文本对应的所述语言分数。
根据本申请的另一实施例,一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序被计算机的处理器执行时,使计算机执行本申请实施例所述的方法。
根据本申请的另一实施例,一种电子设备,包括:存储器,存储有计算机程序;处理器,读取存储器存储的计算机程序,以执行本申请实施例所述的方法。
根据本申请的另一实施例,一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例所述的各种可选实现方式中提供的方法。
本申请实施例中,对文本数据集中的语句进行领域分类处理,得到至少一个领域的语句集;对每个语句集进行权重评估,以基于每个语句集的权重确定符合预定重要性条件的目标语句集;基于目标语句集对应的语句数目及权重进行计算处理,得到用于训练语言模型的语句的采样数目;根据采样数目及每个语句集的权重进行采样概率分配处理,得到每个语句集中语句的采样概率;从每个语句集中按照对应采样概率进行语句抽取,生成训练语句集;基于训练语句集对语言模型进行训练,得到训练后语言模型。
以这种方式,通过对文本数据集中的语句进行领域分类处理,得到至少一个语句集,然后基于评估每个语句集的权重进行一系列实例采样,获得训练语句集对语言模型进行训练,可以有效缓解多个领域数据不均衡的问题,提升用于语音识别的语言模型对于数据稀疏领域的分析性能,且训练后语言模型进行分析时不需要输入额外的特征及领域信息。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了可以应用本申请实施例的系统的示意图。
图2示出了根据本申请的一个实施例的语言模型的训练方法的流程图。
图3示出了根据本申请的一个实施例的确定目标语句集方法的流程图。
图4示出了根据本申请的一个实施例的采样概率确定训练方法的流程图。
图5示出了根据本申请的一个实施例的语音识别方法的流程图。
图6示出一种场景下应用本申请的实施例的语音识别系统的结构图。
图7示出基于图6的语音识别系统进行语音识别的流程图。
图8示出了根据本申请的一个实施例的语言模型的训练装置的框图。
图9示出了根据本申请的一个实施例的语音识别装置的框图。
图10示出了根据本申请的一个实施例的电子设备的框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1示出了可以应用本申请实施例的系统100的示意图。如图1所示,系统100可以包括服务器101及终端102。服务器101及终端102可以通过无线通信方式进行直接或间接地连接,本申请在此不做特殊限制。
服务器101可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
终端102可以是任意的设备,终端102包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端、VR/AR设备、智能手表以及计算机等等。
其中,服务器101可以进行语言模型训练,终端102可以基于服务器101训练的语言模型进行语音识别。
本示例的一种实施方式中,服务器101可以对文本数据集中的语句进行领域分类处理,得到至少一个领域的语句集;对每个所述语句集进行权重评估,以基于每个所述语句集的权重确定符合预定重要性条件的目标语句集;基于所述目标语句集的语句数目及权重进行比值计算处理,得到用于训练语言模型的语句的采样数目;根据所述采样数目及每个所述语句集的权重进行采样概率分配处理,得到每个所述语句集中语句的采样概率;从每个所述语句集中按照对应的采样概率进行语句抽取,生成训练语句集;基于所述训练语句集对所述语言模型进行训练,得到训练后语言模型,所述训练后语言模型用于进行语句发生概率分析。
一种实施方式中,终端102可以基于目标语音的语音数据进行语音识别,得到所述目标语音对应的至少一个候选识别文本;采用训练后语言模型,对所述至少一个候选识别文本进行语句发生概率分析,得到表征每个所述候选识别文本的文本评分,所述训练后语言模型由服务器101根据前述实施例训练得到;基于每个所述候选识别文本对应的文本评分确定所述目标语音的语音识别结果。
图2示意性示出了根据本申请的一个实施例的语言模型的训练方法的流程图。该语言模型的训练方法的执行主体可以是任意的终端,例如图1所示的服务器101或者终端102等。
如图2所示,该用于语音识别的语言模型的训练方法可以包括步骤S210至步骤S260。
步骤S210,对文本数据集中的语句进行领域分类处理,得到至少一个领域的语句集;步骤S220,对每个语句集进行权重评估,以基于每个语句集的权重确定符合预定重要性条件的目标语句集;步骤S230,基于目标语句集对应的语句数目及权重进行计算处理,得到用于训练语言模型的语句的采样数目;步骤S240,根据采样数目及每个语句集的权重进行采样概率分配处理,得到每个语句集中语句的采样概率;步骤S250,从每个语句集中按照对应的采样概率进行语句抽取,生成训练语句集;步骤S260,基于训练语句集对语言模型进行训练,得到训练后语言模型。
下面描述进行语言模型训练时,所进行的各步骤的具体过程。
在步骤S210中,对文本数据集中的语句进行领域分类处理,得到至少一个领域的语句集。
本示例的实施方式中,文本数据集即预先收集的文本数据的集合,文本数据集中可以包括至少一个文本数据,每个文本数据中可以包括至少一个语句。
按照文本数据集中文本数据的收集来源,可以将文本数据按照领域进行分类处理,得到每个领域对应的子文本数据集合。例如,将文本数据集中的文本数据按照导航、音乐、视频、新闻、小说、闲聊6个收集来源进行领域分类,得到6个领域的子文本数据集合。
其中,每个子文本数据集合即一个语句集,也即子文本数据集合内所有文本数据中语句的集合形成语句集。
在步骤S220中,对每个语句集进行权重评估,以基于每个语句集的权重确定符合预定重要性条件的目标语句集。
本示例的实施方式中,对每个语句集进行权重评估可以确定每个语句集的权重,权重可以表征每个语句集的重要性,权重越高则语句集的重要性越高。预定重要性条件即预定的权重评价条件,预定重要性条件例如权重最大的预定数目中包含语句的个数最多的语句集等,根据预定重要性条件可以从所有语句集中筛选出目标语句集。
其中,对语句集进行权重评估的方式可以包括:基于训练目标文法模型进行评估的方式,或者基于计算语句集中词的出现频次的进行评估的方式等。
基于计算语句集中词的出现频次的进行评估的方式,例如计算语句集中每个词在语句集中出现的频次,例如某个词可以出现5次,然后,计算语句集中所有词的频次的平均频次,并对所有语句集对应的平均频次进行归一化,得到每个语句集对应的权重。
基于训练目标文法模型进行评估的方式如下述实施例中的步骤S221至步骤S224所描述。
一种实施例中,参阅图3,步骤S220,对每个语句集进行权重评估,以基于每个语句集的权重确定符合预定重要性条件的目标语句集,包括:
步骤S221,基于每个领域的语句集对目标文法模型进行训练,得到每个领域对应的领域文法模型;步骤S222,采用每个领域文法模型对验证数据集中的每个词进行关联出现概率分析,得到每个领域文法模型输出的关联出现概率;步骤S223,基于每个领域文法模型输出的关联出现概率进行期望最大化权重插值处理,得到每个语句集的权重;步骤S224,基于权重确定符合预定重要性条件的目标语句集。
目标文法模型即语法模型,例如N-Gram(N阶马尔科夫链)模型,文法模型针对文本数据中每个词根据上下文进行关联出现概率分析。关联出现概率即根据词在文本数据中的上下文计算得到的词的出现概率。
基于每个领域的语句集对目标文法模型进行训练,可以得到每个领域对应的领域文法模型,例如导航、音乐、视频、新闻、小说、闲聊6个领域对应的6个领域文法模型。其中,训练过程中,目标文法模型针对语句集内文本数据中每个词根据上下文进行关联出现概率分析,例如N元文法模型分析文本数据中第N个词的关联出现概率时,由文本中前N-1个词(即上下文)的概率来决定。本申请的一个示例中,目标文法模型为3元文法模型,即N等于3。
验证数据集即预设的验证文本数据的集合,验证文本数据集中可以包括至少一个领域的验证文本数据。
采用每个领域文法模型对验证数据集中的每个词进行关联出现概率分析,得到每个领域文法模型输出的关联出现概率。每个领域文法模型针对验证数据集内每个词输出一个关联出现概率,例如验证数据集内包括M个词,则每个领域文法模型输出M个关联出现概率。
基于每个领域文法模型输出的关联出现概率进行期望最大化权重插值处理,即通过期望最大算法对每个领域文法模型输出的关联出现概率进行权重插值处理。
具体地,首先,可以计算每个领域文法模型输出的M个关联出现概率的概率总和,例如存在D个领域文法模型时,可以计算得到D个概率总和P1至PD;然后,通过期望最大算法对每个领域文法模型对应的概率总和进行权重插值,例如计算得到D个概率总和P1至PD,通过期望最大算法对P1至PD进行权重插值可以是求解W1*P1+W2*P2+...+WD*PD最大时的W1至WD,W1至WD即每个语句集的权重,所有语句集的权重之和等于1,即W1+W2+...+WD=1。
以这种方式,计算出的权重可以极为准确表征语句集的重要性,准确确定符合预定重要性条件的语句集为目标语句集,可以提升本申请进行多领域数据不均衡缓解的有效性。
一种实施例中,步骤S224,基于权重确定符合预定重要性条件的目标语句集,包括:确定权重最大的预定数目个语句集为候选语句集;从候选语句集中确定包含语句的个数最大的语句集,作为目标语句集。
例如,权重包括0.2、0.3、0.15,预定数目可以根据需求设定,例如2个,则权重最大的预定数目个语句集即权重为0.2、0.3的语句集(也即权重排名为前2个的语句集),这样确定的候选语句集对应的邻域即为核心的邻域。然后,进一步从候选语句集中确定包含语句的个数最大的语句集,作为最核心的目标语句集,可以进一步提升本申请进行多领域数据不均衡缓解的有效性。
一种实施例中,步骤S224,基于权重确定符合预定重要性条件的目标语句集,包括:确定权重大于预定阈值的至少一个语句集为候选语句集;从候选语句集中确定包含语句的个数最大的语句集,作为目标语句集。
例如,权重包括0.2、0.3、0.15,预定阈值可以根据需求设定,例如0.2个,则权重大于预定阈值的至少一个语句集即权重为0.2、0.3的语句集,这样确定的候选语句集对应的邻域即为核心的邻域。然后,进一步从候选语句集中确定包含语句的个数最大的语句集,作为最核心的目标语句集,同样可以进一步提升本申请进行多领域数据不均衡缓解的有效性。
在步骤S230中,基于目标语句集对应的语句数目及权重进行计算处理,得到用于训练语言模型的语句的采样数目。
本示例的实施方式中,目标语句集的语句数目即目标语句集中包含的语句的数目,采样数目及从所有语句集中采集用于训练语言模型的语句的数目。
基于目标语句集的语句数目及权重进行比值计算处理,得到用于训练语言模型的语句的采样数目,一个示例中,可以是直接利用目标语句集的语句数目除以权重生成整数比值,然后,将整数比值确定为用于训练语言模型的语句的采样数目,以这种方式可以高效确定极有效地采样数目;另一个示例中,也可以是基于目标语句集中的语句数目与预定标准值的差值除以权重生成整数比值,然后,将整数比值确定为用于训练语言模型的语句的采样数目,以这种方式可以保守地确定采样数目。
一种实施例中,所有语句集的权重之和等于一;步骤S230,基于目标语句集的语句数目及权重进行计算处理,得到用于训练语言模型的语句的采样数目,包括:计算目标语句集对应的语句数目及权重的整数比值;将整数比值确定为从所有语句集中采集用于训练语言模型的语句的采样数目。
所有语句集的权重之和等于一,即目标语句集对应的权重小于一,利用目标语句集对应的语句数目除以权重得到整数比值,可以直接将目标语句集对应的语句数目进行比例放大为整数比值,高效地确定从所有语句集中采集用于训练语言模型的语句的有效采样数目。
在步骤S240中,根据采样数目及每个语句集的权重进行采样概率分配处理,得到每个语句集中语句的采样概率。
本示例的实施方式中,采样数目为需要从所有语句集中采集的语句的总数目,语句集的权重可以反映语句集的重要性,进而,可以根据每个语句集的权重对应分配语句采样数,继而根据每个语句集对应的语句采样数及语句集中语句数目之比可确定采样概率。
一种实施例中,参阅图4,步骤S240,根据采样数目及每个语句集的权重进行采样概率分配处理,得到每个语句集中语句的采样概率,包括:
步骤S241,计算每个语句集的权重与所有语句集的权重之和的权重比值,得到每个语句集对应的权重比值;步骤S242,计算每个语句集对应的权重比值与采样数目的乘积,作为每个语句集对应的语句采样数;步骤S243,基于每个语句集对应的语句采样数与语句数目进行比值计算,以确定每个语句集中语句的采样概率。
若共有D个语句集,D个语句集的权重包括W1至WD,所有语句集的权重之和即Y=W1+W2+...+WD。语句集D1的权重为W1,则语句集D1对应的权重比值为W1/Y,依次类推得到每个语句集对应的权重比值。一些示例中权重之和Y=1,此时语句集的权重比值即语句集的权重本身。
采样数目为需要从所有语句集中采集的语句的总数目,计算每个语句集对应的权重比值与采样数目的乘积,例如,采样数目为N,语句集D1(第1个语句集)对应的权重比值为W1/Y,此时,语句集D1对应的权重比值与采样数目的乘积d1=N*W1/Y,d1即需要从语句集D1中采集的语句的语句采样数,依次类推,语句集DD(第D个语句集)对应的权重比值与采样数目的乘积dD=N*WD/Y。以这种方式,W1:W2:...:WD=d1:d2:...:dD,且d1+d2+...+dD=N。
最后,语句集对应的语句数目即语句集中所有语句的数目总和。基于每个语句集对应的语句采样数与语句数目进行比值计算,可以是语句集对应的语句采样数除以语句数目得到数目比值,基于数目比值确定语句集中语句的采样概率。
一种实施例中,步骤S243,基于每个所述语句集对应的语句采样数与语句数目进行比值计算,以确定每个语句集中语句的采样概率,包括:
针对每个语句集,当语句集对应的语句采样数小于语句数目时,计算语句集对应的语句采样数与语句数目的个数比;当语句集对应的语句采样数大于或等于语句数目时,对语句集中进行语句复制扩充处理,并计算语句集对应的语句采样数与扩充后语句数目的个数比;将每个语句集对应的个数比,作为每个语句集中语句的采样概率。
当语句集对应的语句采样数小于语句数目时,直接将语句集对应的语句采样数除以语句数目的个数比作为采样概率,例如,语句集Di(i为第i个语句集)对应的语句数目为si,若语句采样数di小于si,则语句集Di对应的语句采样数di除以语句数目s1得到个数比di/s1,此时di/si作为语句集Di中语句的采样概率。
当语句集对应的语句采样数大于或等于语句数目时,对语句集中进行语句复制扩充处理,例如,语句集Di(i为第i个语句集)对应的语句数目为si,若语句采样数di大于或等于si,则对语句集Di中的语句进行复制以对语句集Di进行扩充得到扩充后语句集,扩充后语句集中扩充后语句数目为m*si,使得m*si大于di。
计算语句集对应的语句采样数与扩充后语句数目的个数比,即语句集Di对应的语句采样数di除以扩充后语句数目m*si得到个数比di/(m*si),此时di/(m*si)作为语句集Di中语句的采样概率。
一种实施例中,对语句集中进行语句复制扩充处理包括:对语句集的对应的语句采样数与语句数目的个数比进行向上取整处理,得到扩充倍数;对语句集中的语句按照扩充倍数进行复制扩充处理。
语句集Di中的语句数目为si,语句采样数为di,语句采样数与语句数目的个数比则为di/si,个数比di/si进行向上取整即为向上取整,得到扩充倍数m,然后,将语句集Di中的语句复制m倍得到扩充后语句集中扩充后语句数目为m*si,进而使得m*si大于di。
在步骤S250中,从每个语句集中按照对应的采样概率进行语句抽取,生成训练语句集。
本示例的实施方式中,对于语句集Di,一个示例中,语句集Di对应的采样概率可以是di/si,此时直接从语句集Di中按照采样概率di/si抽取语句,得到从语句集Di抽取到的语句集合ci。一个示例中,语句集Di对应的采样概率可以是di/(m*si),此时需要从对语句集Di进行扩充得到扩充后语句集中按照采样概率di/(m*si)抽取语句,得到从语句集Di抽取到的语句集合ci。
最终,从D个语句集中抽取到的所有语句集合c1、c2、...、ci、...、cD的总集合I即训练语句集。
一种实施例中,步骤S250,从每个语句集中按照对应的采样概率进行语句抽取,生成训练语句集,包括:
针对每个语句集,当语句集对应的语句采样数小于语句数目时,从语句集中按照对应的采样概率进行语句抽取;当语句集对应的语句采样数大于或等于语句数目时,从语句集对应的扩充后语句集中按照对应的采样概率进行语句抽取;将从所有语句集中抽取到语句的集合,确定为训练语句集。
对于语句集Di,当语句集Di对应的语句采样数小于语句数目时,语句集Di对应的采样概率是di/si,此时直接从语句集Di中按照采样概率di/si抽取语句,得到从语句集Di抽取到的语句集合ci。
对于语句集Di,当语句集Di对应的语句采样数大于或等于语句数目时,语句集Di对应的采样概率是di/(m*si),此时从对语句集Di进行扩充得到扩充后语句集中按照采样概率di/(m*si)抽取语句,得到从语句集Di抽取到的语句集合ci。
最终,从D个语句集中抽取到的所有语句集合c1、c2、...、ci、...、cD的总集合I即训练语句集。
在步骤S260中,基于训练语句集对语言模型进行训练,得到训练后语言模型。
本示例的实施方式中,语言模型即神经网络语言模型,语言模型可以采用循环神经网络(RNN(recurrent neural network))结构;也可以采用深度神经网络(DNN(deepneural network))、长短期记忆网络(LSTM(long short-term memory))、卷积神经网络(CNN(convolutional neural network))、注意力编解码(Transformer)模型的结构或其他神经网络结构。
语言模型可以用于进行语句发生概率分析,语句发生概率即一个语句按照语句中词的搭配方式(可以包括上下顺序文及词正确性等)成为一个语句而出现的概率。基于训练语句集对语言模型进行训练,即训练语言模型对训练语句集中的语句进行语句发生概率分析,根据分析结果对语言模型中的参数进行调整,直至语言模型的分析准确性等性能符合要求得的训练后语言模型,基于训练后语言模型即可对待分析的语句进行语句发生概率分析。
一种实施例中,步骤S260,基于所述训练语句集对所述语言模型进行训练,得到训练后语言模型,包括:
采用语言模型对训练语句集中的语句进行语句发生概率分析,得到训练语句集中的语句对应的预测语句发生概率;基于预测语句发生概率计算语言模型在训练语句集上的交叉熵;通过随机梯度下降更新语言模型中的参数,以使得交叉熵小于预定阈值,生成训练后语言模型,训练后语言模型用于进行语句发生概率分析。
采用语言模型对训练语句集中的语句进行语句发生概率分析,可以使得语言模型分析预测每个语句的预测语句发生概率,每个语句可以对应一个真实语句发生概率,通过交叉熵损失函数可以计算预测语句发生概率与真实语句发生概率的距离,该距离即语言模型在训练语句集上的交叉熵,交叉熵的可以反映语言模型对语句分析识别的难度。
利用随机梯度下降算法(SGD,stochastic gradient descent)可以对语言模型的参数进行优化,降低语言模型在训练数据集上的交叉熵,使得交叉熵小于预定阈值,此时反映语言模型对语句分析识别很容易且准确性高,进而得到训练后语言模型。一般的,可以使用随机梯度下降算法以及各种改进的随机梯度下降算法算法,例如Adagrad、Adadelta、Adam、RMSProp等梯度优化算法,对语言模型的参数进行更新优化。
以这种方式,基于步骤S210至步骤S260,通过对文本数据集中的语句进行领域分类处理,得到至少一个语句集,然后基于评估每个语句集的权重进行一系列实例采样,获得训练语句集对语言模型进行训练,可以有效缓解多个领域数据不均衡的问题,提升语言模型对于数据稀疏领域的分析性能,且训练后语言模型进行分析时不需要输入额外的特征及领域信息。
图5示意性示出了根据本申请的一个实施例的语音识别方法的流程图。该语音识别方法的执行主体可以是任意的终端,例如图1所示的服务器101或者终端102等。
如图5所示,该语音识别方法可以包括步骤S310至步骤S330。
步骤S310,基于目标语音的语音数据进行语音识别,得到目标语音对应的至少一个候选识别文本;步骤S320,采用训练后语言模型,对至少一个候选识别文本进行语句发生概率分析,得到表征每个候选识别文本的文本评分,训练后语言模型根据前述任一项实施例中语言模型的训练方法训练得到;步骤S330,基于每个候选识别文本对应的文本评分确定目标语音的语音识别结果。
下面描述进行语音识别时,所进行的各步骤的具体过程。
在步骤S310中,基于目标语音的语音数据进行语音识别,得到目标语音对应的至少一个候选识别文本。
本示例的实施方式中,目标语音可以是至少一个领域中任意领域的语音,例如车载智能语音识别系统中的音乐、兴趣点(POI)、天气、新闻、百科知识等领域的查询语音,目标语音的语音数据可以是语音波形数据。
语音识别即对语言数据进行声学特征提取得到声学特征,对声学特征进行解码得到音素序列,对音素序列进行解码得到目标语音至少一个可能的候选识别文本,候选识别文本即音素序列可能对应的词序列。进而对目标语音的语音数据通过语音识别完成一遍解码处理,得到至少一个可能的候选识别文本。
其中,语音识别是可以对每个候选识别文本评估一个声学分数及语言分数,声学分数可以表征给定候选识别文本时目标语音对应音频的发生概率,语言分数可以表征候选识别文本对应的词序列的发生概率。
其中,基于目标语音的语音数据进行语音识别时,可以采用声学模型(如隐马尔可夫模型(HMM))及语言模型(如深度神经网络模型(DNN))组成的混合语音识别模型,以及如RNN-T、Encoder-Decoder、LAS等端到端语音识别模型进行语音识别。
一种实施例中,步骤S310,基于目标语音的语音数据进行语音识别,得到目标语音对应的至少一个候选识别文本,包括:对目标语音的语音数据进行声学解码处理,得到目标语音对应的至少一个音素序列及音素序列对应的声学分数;对每个音素序列进行语言解码处理,得到每个音素序列对应的至少一个候选识别文本及候选识别文本对应的语言分数。
可以采用预先训练的语音识别模型对目标语音的语音数据进行语音识别,首先对语言数据进行声学特征提取得到声学特征;然后,语音模型中可以包括声学模型对声学特征(如隐马尔可夫模型(HMM))进行声学解码得到音素序列及音素序列对应的声学分数;同时,语音模型中还可以包括语言模型(如深度神经网络模型(DNN)),语言模型可以对音素序列进行语言解码得到音素序列可能对应的至少一个词序列以及词序列对应的语言分数,每个词序列即一个候选识别文本。
进而,每个候选识别文本可以对应一个声学分数及语言分数,声学分数可以表征给定候选识别文本时目标语音对应音频的发生概率,语言分数可以表征候选识别文本对应的词序列的发生概率。
在步骤S320中,采用训练后语言模型,对至少一个候选识别文本进行语句发生概率分析,得到表征语句发生概率的文本评分,训练后语言模型根据前述任一项实施例中用于语音识别的语言模型的训练方法训练得到。
本示例的实施方式中,训练后语言模型根据前述任一项实施例中语言模型的训练方法训练得到,具有多领域分析能力以及良好的数据稀疏领域的分析性能,可以进一步对每个候选识别文本进行准确地语句发生概率分析,对目标语音进行二遍解码,得到每个候选识别文本对应的表征语句发生概率的文本评分。
在步骤S330中,基于每个候选识别文本对应的文本评分确定目标语音的语音识别结果。
本示例的实施方式中,基于每个候选识别文本对应的文本评分可以将文本评分最高的一个候选识别文本确定为语音识别结果,或者结合语音识别得到候选识别文本的声学分数、语言分数及文本评分综合确定语音识别结果。
结合语音识别得到候选识别文本的声学分数、语言分数及文本评分综合确定语音识别结果,如下实施例描述。
一种实施例中,每个候选识别文本对应一个声学分数及语言分数,声学分数表征给定候选识别文本时所述目标语音的发生概率,语言分数表征候选识别文本对应的词序列的发生概率;步骤S330,基于每个候选识别文本对应的文本评分确定目标语音的语音识别结果,包括:
对每个候选识别文本对应的所述声学分数、语言分数及文本评分进行加权求和,得到每个候选识别文本对应的准确性分数;将准确性分数最大的候选识别文本,确定为目标语音的语音识别结果。
例如,通过语音识别得到目标语音对应的N个候选识别文本h1至hN。每个候选识别文本对应的声学分数及语言分数可以是(a1,l1)、(a2,l2)至(aN,lN),其中,ai可以是第i个候选识别文本hi的声学分数,li可以是第i个候选识别文本的语言分数。每个候选识别文本的文本评分可以是x1、x2、...、xN,xi可以是第i个候选识别文本hi的文本评分。
每个候选识别文本对应的所述声学分数、语言分数及文本评分进行加权求和,可以按照预定加权系数进行加权求和,例如候选识别文本hi对应的声学分数ai、语言分数li及文本评分hi的加权和为Qi=αai+βli+γxi,Qi即候选识别文本hi对应的准确性分数,其中,第一加权系数α,第二加权系数β及第三加权系数γ的大小关系可以是0<α,β,γ<1,且α+β+γ=1。一种实施方式中,α=0.5,β=0.25,γ=0.25。
最后,将准确性分数最大的候选识别文本,确定为目标语音的语音识别结果,可以进一步有效提升语音识别结果的准确性。
以这种方式,基于步骤S310至步骤S330,在一遍解码的基础上,通过训练后语言模型进行二遍解码,基于文本评分确定语音识别结果,可以有效提升语音识别结果的准确性,特别可以有效提升语音识别在数据稀疏领域的识别正确率。
根据上述实施例所描述的方法,以下将结合应用场景举例作进一步详细说明。该场景下应用本申请的实施例的用于语音识别的语言模型的训练方法的流程,该场景下名词的含义与前述实施例中相同,具体可以参考前述实施例中的说明。该流程具体可以包括步骤1至步骤6:
步骤1,对文本数据集中的语句进行领域分类处理,得到至少一个领域的语句集。具体按照文本数据集中的语句的收集来源进行分类,得到至少一个领域的语句集。
步骤2,对每个语句集进行权重评估,以基于每个语句集的权重确定符合预定重要性条件的目标语句集。步骤2包括步骤2.1至2.3:
步骤2.1,统计每个语句集中包含的语句的语句数目,得到每个语句集对应的语句数目。
步骤2.2,基于每个领域的语句集对目标文法模型进行训练,得到每个领域对应的领域文法模型;
步骤2.3,采用每个所述领域文法模型对验证数据集中的每个词进行关联出现概率分析,得到每个领域文法模型输出的关联出现概率;基于每个领域文法模型输出的关联出现概率进行期望最大化权重插值处理,得到每个语句集的权重,所有语句集的权重之和等于一;基于权重确定符合预定重要性条件的目标语句集。
其中,基于权重确定符合预定重要性条件的目标语句集,可以包括:确定权重最大的预定数目个语句集为候选语句集;从候选语句集中确定包含语句的个数最大的语句集,作为目标语句集。或者,确定权重大于预定阈值的至少一个语句集为候选语句集;从候选语句集中确定包含语句的个数最大的语句集,作为目标语句集。
例如,若有D个语句集,D个语句集对应的语句数目分别为s1、si、...、sD,确定权重最大的预定数目K个语句集或者权重大于预定阈值的K个语句集为候选语句集。包含语句的个数最大的语句集即max{s1,s2,...,sk}对应的语句集。
步骤3,基于目标语句集对应的语句数目及权重进行计算处理,得到用于训练语言模型的语句的采样数目。具体地:参考公式计算目标语句集对应的语句数目max{s1,s2,...,sk}及权重的整数比值;将整数比值确定为从所有语句集中采集用于训练语言模型的语句的采样数目N。
步骤4,根据采样数目及每个语句集的权重进行采样概率分配处理,得到每个语句集中语句的采样概率。具体地,参考公式计算每个语句集的权重与所有语句集的权重之和的权重比值,得到每个语句集对应的权重比值;计算每个语句集对应的权重比值与采样数目的乘积,作为每个语句集对应的语句采样数;针对每个语句集,当语句集Di对应的语句采样数di小于语句数目si时,计算语句集对应的语句采样数di与语句数目si的个数比ri=di/si;当语句集Di对应的语句采样数di大于或等于语句数目si时,对语句集Di中进行语句复制扩充处理,并计算语句集对应的语句采样数di与扩充后语句数目m*si的个数比ri=di/(m*si);将每个语句集对应的个数比ri,作为每个语句集中语句的采样概率。
其中,对对语句集Di中语句进行复制扩充处理包括:对语句集Di的对应的语句采样数与语句数目的个数比进行向上取整处理,得到扩充倍数;对语句集中的语句按照扩充倍数进行复制扩充处理。具体地,语句采样数与语句数目的个数比则为di/si,个数比di/si进行向上取整即为向上取整,得到扩充倍数m,然后,将语句集Di中的语句复制m倍得到扩充后语句集中扩充后语句数目为m*si,进而使得m*si大于di。
步骤5,从每个语句集中按照对应采样概率进行语句抽取,生成训练语句集。具体地,针对每个语句集,当语句集对应的语句采样数小于语句数目时,从语句集中按照对应的采样概率进行语句抽取;当语句集对应的语句采样数大于或等于语句数目时,从语句集对应的扩充后语句集中按照对应的采样概率进行语句抽取;将从所有语句集中抽取到语句的集合,确定为训练语句集。
步骤6,基于训练语句集对语言模型进行训练,得到训练后语言模型。具体地,构建语言模型;采用语言模型对训练语句集中的语句进行语句发生概率分析,得到所述训练语句集中的语句对应的预测语句发生概率;基于预测语句发生概率计算语言模型在训练语句集上的交叉熵;通过随机梯度下降更新语言模型中的参数,以使得交叉熵小于预定阈值,生成训练后语言模型。
其中,语言模型即神经网络语言模型,语言模型可以采用循环神经网络(RNN(recurrent neural network))结构;也可以采用深度神经网络(DNN(deep neuralnetwork))、长短期记忆网络(LSTM(long short-term memory))、卷积神经网络(CNN(convolutional neural network))、注意力编解码(Transformer)模型的结构或其他神经网络结构。
在训练生成训练后语言模型后,可以采用训练后语言模型进行语音识别,图6示出一种场景下应用本申请的实施例的语音识别系统的结构图,图7示出基于图6的语音识别系统进行语音识别的流程图,该场景下名词的含义与前述实施例中相同,具体可以参考前述实施例中的说明。
参阅图6,该场景下语音识别系统400可以包括语音数据获取模块410、一遍解码模块420、二遍解码模块430以及识别模块440。基于该语音识别系统进行语音识别语音识别流程具体可以包括步骤S510至步骤S540:
步骤S510,基于语音数据获取模块410,获取目标语音的语音数据。
语音识别系统例如车载智能语音识别系统,目标语音可以是输入语音识别系统中的至少一个领域中任意领域的语音,例如车载智能语音识别系统中的查询语音,目标语音的语音数据可以是语音波形数据。
步骤S520,基于一遍解码模块420,对语音数据进行第一解码处理,得到至少一个候选识别文本。具体包括:基于目标语音的语音数据进行语音识别,得到所述目标语音对应的至少一个候选识别文本,具体地:对目标语音的语音数据进行声学解码处理,得到目标语音对应的至少一个音素序列及音素序列对应的声学分数;对每个音素序列进行语言解码处理,得到每个音素序列对应的至少一个候选识别文本及候选识别文本对应的语言分数。每个候选识别文本对应一个声学分数及语言分数,声学分数表征给定候选识别文本时目标语音的发生概率,语言分数表征候选识别文本对应的词序列的发生概率。
步骤S530,基于二遍解码模块430,利用训练后语言模型对候选识别文本进行第二解码处理。具体包括:采用训练后语言模型,对至少一个候选识别文本进行语句发生概率分析,得到表征语句发生概率的文本评分,训练后语言模型根据前述语言模型的训练方法训练得到。
步骤S540,基于识别模块440,获取语音识别结果。具体包括:基于每个候选识别文本对应的文本评分确定目标语音的语音识别结果。具体地,对每个候选识别文本对应的声学分数、语言分数及文本评分进行加权求和,得到每个候选识别文本对应的准确性分数;将准确性分数最大的候选识别文本,确定为目标语音的语音识别结果。
具体地,若通过语音识别得到目标语音对应的N个候选识别文本h1至hN。每个候选识别文本对应的声学分数及语言分数可以是(a1,l1)、(a2,l2)至(aN,lN),其中,ai可以是第i个候选识别文本hi的声学分数,li可以是第i个候选识别文本的语言分数。每个候选识别文本的文本评分可以是x1、x2、...、xN,xi可以是第i个候选识别文本hi的文本评分。
每个候选识别文本对应的所述声学分数、语言分数及文本评分进行加权求和,可以按照预定加权系数进行加权求和,例如候选识别文本hi对应的声学分数ai、语言分数li及文本评分hi的加权和为Qi=αai+βli+γxi,Qi即候选识别文本hi对应的准确性分数,其中,第一加权系数α,第二加权系数β及第三加权系数γ的大小关系可以是0<α,β,γ<1,且α+β+γ=1。一种实施方式中,α=0.5,β=0.25,γ=0.25。
以这种方式,有效提升语音识别结果的准确性,特别可以有效提升语音识别在数据稀疏领域的识别正确率。
进一步的,参考下表给出了该场景下,采用本申请提出的语言模型的训练方法与常规语言模型训练方法后语言识别结果的识别字错误率的详细对比。其中,文本数据集中包含导航、音乐、新闻、闲聊4个领域,其中导航和音乐是核心领域,音乐领域的文本数据5GB,导航领域的文本数据40GB,音乐领域相对导航领域数据稀疏。测试集1和测试集2是从智能车载语音业务采集的用户数据,测试集1中仅包含导航领域的数据,测试集2中仅包含音乐领域的数据。识别字错误率越低表示语音识别结果的准确率越高。测试结果表明,应用本申请的实施例,在数据稀疏问题的音乐领域,语音识别性能有明显提升,识别字错误率有9%的相对下降。
常规方法 | 本申请的方法 | |
测试集1(导航领域) | 2.73% | 2.53% |
测试集2(音乐领域) | 6.53% | 5.95% |
为便于更好的实施本申请实施例提供的语言模型的训练方法,本申请实施例还提供一种基于上述语言模型的训练方法的语言模型的训练装置。其中名词的含义与上述语言模型的训练方法中相同,具体实现细节可以参考方法实施例中的说明。
图8示出了根据本申请的一个实施例的用于语音识别的语言模型的训练装置的框图。
如图8所示,用于语音识别的语言模型的训练装置600中可以包括分类模块610、评估模块620、计算模块630、分配模块640、抽取模块650及训练模块660。
分类模块610可以用于对文本数据集中的语句进行领域分类处理,得到至少一个领域的语句集;评估模块620可以用于对每个所述语句集进行权重评估,以基于每个所述语句集的权重确定符合预定重要性条件的目标语句集;计算模块630可以用于基于所述目标语句集对应的语句数目及权重进行计算处理,得到用于训练语言模型的语句的采样数目;分配模块640可以用于根据所述采样数目及每个所述语句集的权重进行采样概率分配处理,得到每个所述语句集中语句的采样概率;抽取模块650可以用于从每个所述语句集中按照对应的采样概率进行语句抽取,生成训练语句集;训练模块660可以用于基于所述训练语句集对所述语言模型进行训练,得到训练后语言模型。
在本申请的一些实施例中,所述评估模块620,包括:文法模型训练单元,用于基于每个领域的所述语句集对目标文法模型进行训练,得到每个领域对应的领域文法模型;关联分析单元,用于采用每个所述领域文法模型对验证数据集中的每个词进行关联出现概率分析,得到每个所述领域文法模型输出的关联出现概率;差值处理单元,用于基于每个所述领域文法模型输出的关联出现概率进行期望最大化权重插值处理,得到每个所述语句集的权重;目标确定单元,用于基于所述权重确定符合预定重要性条件的目标语句集。
在本申请的一些实施例中,所述目标确定单元,用于:确定权重最大的预定数目个所述语句集为候选语句集;从所述候选语句集中确定包含语句的个数最大的语句集,作为所述目标语句集。
在本申请的一些实施例中,所述目标确定单元,用于:确定权重大于预定阈值的至少一个所述语句集为候选语句集;从所述候选语句集中确定包含语句的个数最大的语句集,作为所述目标语句集。
在本申请的一些实施例中,所有所述语句集的权重之和等于一;所述计算模块630,包括:整数比值计算单元,用于计算所述目标语句集对应的语句数目及权重的整数比值;采样数目确定单元,用于将所述整数比值确定为从所有所述语句集中采集用于训练语言模型的语句的采样数目。
在本申请的一些实施例中,所述分配模块640,包括:权重比值计算单元,用于计算每个所述语句集的权重与所有所述语句集的权重之和的权重比值,得到每个语句集对应的权重比值;语句采样数计算单元,用于计算每个所述语句集对应的权重比值与所述采样数目的乘积,作为每个所述语句集对应的语句采样数;采样概率确定单元,用于基于每个所述语句集对应的语句采样数与语句数目进行比值计算,以确定每个所述语句集中语句的采样概率。
在本申请的一些实施例中,所述采样概率确定单元,用于:针对每个所述语句集,当所述语句集对应的语句采样数小于语句数目时,计算所述语句集对应的语句采样数与语句数目的个数比;当所述语句集对应的语句采样数大于或等于语句数目时,对所述语句集中进行语句复制扩充处理,并计算所述语句集对应的语句采样数与扩充后语句数目的个数比;将每个所述语句集对应的个数比,作为每个所述语句集中语句的采样概率。
在本申请的一些实施例中,所述抽取模块650,包括:第一抽取单元,用于针对每个所述语句集,当所述语句集对应的语句采样数小于语句数目时,从所述语句集中按照对应的采样概率进行语句抽取;第二抽取单元,用于当所述语句集对应的语句采样数大于或等于语句数目时,从所述语句集对应的扩充后语句集中按照对应的采样概率进行语句抽取;集合单元,用于将从所有所述语句集中抽取到语句的集合,确定为所述训练语句集。
在本申请的一些实施例中,所述训练模块660,包括:预测单元,用于采用所述语言模型对所述训练语句集中的语句进行语句发生概率分析,得到所述训练语句集中的语句对应的预测语句发生概率;交叉熵计算单元,用于基于所述预测语句发生概率计算所述语言模型在训练语句集上的交叉熵;更新单元,用于通过随机梯度下降更新所述语言模型中的参数,以使得所述交叉熵小于预定阈值,生成所述训练后语言模型,所述训练后语言模型用于进行语句发生概率分析。
以这种方式,基于用于语音识别的语言模型的训练装置600,可以通过对文本数据集中的语句进行领域分类处理,得到至少一个语句集,然后基于评估每个语句集的权重进行一系列实例采样,获得训练语句集对语言模型进行训练,可以有效缓解多个领域数据不均衡的问题,提升语言模型对于数据稀疏领域的分析性能,且训练后语言模型进行分析时不需要输入额外的特征及领域信息。
图9示出了根据本申请的一个实施例的语音识别装置的框图。
如图9所示,语音识别装置700中可以包括一遍解码模块710、二遍解码模块720、识别模块730。
一遍解码模块710可以用于基于目标语音的语音数据进行语音识别,得到所述目标语音对应的至少一个候选识别文本;二遍解码模块720可以用于采用训练后语言模型,对所述至少一个候选识别文本进行语句发生概率分析,得到表征语句发生概率的文本评分,所述训练后语言模型根据前述任一项所述的方法训练得到;识别模块730可以用于基于每个所述候选识别文本对应的文本评分确定所述目标语音的语音识别结果。
在本申请的一些实施例中,每个所述候选识别文本对应一个声学分数及语言分数,所述声学分数表征给定候选识别文本时所述目标语音的发生概率,所述语言分数表征候选识别文本对应的词序列的发生概率;所述识别模块730,用于:对每个所述候选识别文本对应的所述声学分数、所述语言分数及所述文本评分进行加权求和,得到每个所述候选识别文本对应的准确性分数;将准确性分数最大的候选识别文本,确定为所述目标语音的语音识别结果。
在本申请的一些实施例中,一遍解码模块710,用于:对所述目标语音的语音数据进行声学解码处理,得到所述目标语音对应的至少一个音素序列及所述音素序列对应的所述声学分数;对每个所述音素序列进行语言解码处理,得到每个所述音素序列对应的至少一个候选识别文本及所述候选识别文本对应的所述语言分数。
以这种方式,基于语音识别装置700,在一遍解码的基础上,通过训练后语言模型进行二遍解码,基于文本评分确定语音识别结果,可以有效提升语音识别结果的准确性,特别可以有效提升语音识别在数据稀疏领域的识别正确率。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,本申请实施例还提供一种电子设备,该电子设备可以为终端或者服务器,如图10所示,其示出了本申请实施例所涉及的电子设备的结构示意图,具体来讲:
该电子设备可以包括一个或者一个以上处理核心的处理器801、一个或一个以上计算机可读存储介质的存储器802、电源803和输入单元804等部件。本领域技术人员可以理解,图10中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器801是该电子设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器802内的软件程序和/或模块,以及调用存储在存储器802内的数据,执行计算机设备的各种功能和处理数据,从而对电子设备进行整体监控。可选的,处理器801可包括一个或多个处理核心;优选的,处理器801可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户页面和应用程序等,调制解调处理器主要处理无线通讯。可以理解的是,上述调制解调处理器也可以不集成到处理器801中。
存储器802可用于存储软件程序以及模块,处理器801通过运行存储在存储器802的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器802可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器802可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器802还可以包括存储器控制器,以提供处理器801对存储器802的访问。
电子设备还包括给各个部件供电的电源803,优选的,电源803可以通过电源管理系统与处理器801逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源803还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该电子设备还可包括输入单元804,该输入单元804可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,电子设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,电子设备中的处理器801会按照如下的指令,将一个或一个以上的计算机程序的进程对应的可执行文件加载到存储器802中,并由处理器801来运行存储在存储器802中的计算机程序,从而实现各种功能,如处理器801可以执行:
对文本数据集中的语句进行领域分类处理,得到至少一个领域的语句集;对每个所述语句集进行权重评估,以基于每个所述语句集的权重确定符合预定重要性条件的目标语句集;基于所述目标语句集对应的语句数目及权重进行计算处理,得到用于训练语言模型的语句的采样数目;根据所述采样数目及每个所述语句集的权重进行采样概率分配处理,得到每个所述语句集中语句的采样概率;从每个所述语句集中按照对应采样概率进行语句抽取,生成训练语句集;基于所述训练语句集对所述语言模型进行训练,得到训练后语言模型。
一些实施例中,处理器801可以执行:
基于目标语音的语音数据进行语音识别,得到所述目标语音对应的至少一个候选识别文本;采用训练后语言模型,对所述至少一个候选识别文本进行语句发生概率分析,得到表征语句发生概率的文本评分,所述训练后语言模型根据前述任一项所述的方法训练得到;基于每个所述候选识别文本对应的文本评分确定所述目标语音的语音识别结果。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过计算机程序来完成,或通过计算机程序控制相关的硬件来完成,该计算机程序可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例还提供一种计算机可读存储介质,其中存储有计算机程序,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种方法中的步骤。
其中,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该计算机可读存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种方法中的步骤,因此,可以实现本申请实施例所提供的方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请上述实施例中各种可选实现方式中提供的方法。
本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的实施例,而可以在不脱离其范围的情况下进行各种修改和改变。
Claims (15)
1.一种用于语音识别的语言模型的训练方法,其特征在于,包括:
对文本数据集中的语句进行领域分类处理,得到至少一个领域的语句集;
对每个所述语句集进行权重评估,以基于每个所述语句集的权重确定符合预定重要性条件的目标语句集;
基于所述目标语句集对应的语句数目及权重进行计算处理,得到用于训练语言模型的语句的采样数目;
根据所述采样数目及每个所述语句集的权重进行采样概率分配处理,得到每个所述语句集中语句的采样概率;
从每个所述语句集中按照对应采样概率进行语句抽取,生成训练语句集;
基于所述训练语句集对所述语言模型进行训练,得到训练后语言模型。
2.根据权利要求1所述的方法,其特征在于,所述对每个所述语句集进行权重评估,以基于每个所述语句集的权重确定符合预定重要性条件的目标语句集,包括:
基于每个领域的所述语句集对目标文法模型进行训练,得到每个领域对应的领域文法模型;
采用每个所述领域文法模型对验证数据集中的每个词进行关联出现概率分析,得到每个所述领域文法模型输出的关联出现概率;
基于每个所述领域文法模型输出的关联出现概率进行期望最大化权重插值处理,得到每个所述语句集的权重;
基于所述权重确定符合预定重要性条件的目标语句集。
3.根据权利要求2所述的方法,其特征在于,所述基于所述权重确定符合预定重要性条件的目标语句集,包括:
确定权重最大的预定数目个所述语句集为候选语句集,或确定权重大于预定阈值的至少一个所述语句集为候选语句集;
从所述候选语句集中确定包含语句的个数最大的语句集,作为所述目标语句集。
4.根据权利要求1所述的方法,其特征在于,所有所述语句集的权重之和等于一;
所述基于所述目标语句集对应的语句数目及权重进行计算处理,得到用于训练语言模型的语句的采样数目,包括:
计算所述目标语句集对应的语句数目及权重的整数比值;
将所述整数比值确定为从所有所述语句集中采集用于训练语言模型的语句的采样数目。
5.根据权利要求1所述的方法,其特征在于,所述根据所述采样数目及每个所述语句集的权重进行采样概率分配处理,得到每个所述语句集中语句的采样概率,包括:
计算每个所述语句集的权重与所有所述语句集的权重之和的权重比值,得到每个语句集对应的权重比值;
计算每个所述语句集对应的权重比值与所述采样数目的乘积,作为每个所述语句集对应的语句采样数;
基于每个所述语句集对应的语句采样数与语句数目进行比值计算,以确定每个所述语句集中语句的采样概率。
6.根据权利要求5所述的方法,其特征在于,所述基于每个所述语句集对应的语句采样数与语句数目进行比值计算,以确定每个所述语句集中语句的采样概率,包括:
针对每个所述语句集,当所述语句集对应的语句采样数小于语句数目时,计算所述语句集对应的语句采样数与语句数目的个数比;
当所述语句集对应的语句采样数大于或等于语句数目时,对所述语句集中进行语句复制扩充处理,并计算所述语句集对应的语句采样数与扩充后语句数目的个数比;
将每个所述语句集对应的个数比,作为每个所述语句集中语句的采样概率。
7.根据权利要求6所述的方法,其特征在于,所述从每个所述语句集中按照对应采样概率进行语句抽取,生成训练语句集,包括:
针对每个所述语句集,当所述语句集对应的语句采样数小于语句数目时,从所述语句集中按照对应的采样概率进行语句抽取;
当所述语句集对应的语句采样数大于或等于语句数目时,从所述语句集对应的扩充后语句集中按照对应的采样概率进行语句抽取;
将从所有所述语句集中抽取到语句的集合,确定为所述训练语句集。
8.根据权利要求1所述的方法,其特征在于,所述基于所述训练语句集对所述语言模型进行训练,得到训练后语言模型,包括:
采用所述语言模型对所述训练语句集中的语句进行语句发生概率分析,得到所述训练语句集中的语句对应的预测语句发生概率;
基于所述预测语句发生概率计算所述语言模型在训练语句集上的交叉熵;
通过随机梯度下降更新所述语言模型中的参数,以使得所述交叉熵小于预定阈值,生成所述训练后语言模型,所述训练后语言模型用于进行语句发生概率分析。
9.一种语音识别方法,其特征在于,包括:
基于目标语音的语音数据进行语音识别,得到所述目标语音对应的至少一个候选识别文本;
采用训练后语言模型,对所述至少一个候选识别文本进行语句发生概率分析,得到表征语句发生概率的文本评分,所述训练后语言模型根据权利要求1至8任一项所述的方法训练得到;
基于每个所述候选识别文本对应的文本评分确定所述目标语音的语音识别结果。
10.根据权利要求9所述的方法,其特征在于,每个所述候选识别文本对应一个声学分数及语言分数,所述声学分数表征给定候选识别文本时所述目标语音的发生概率,所述语言分数表征候选识别文本对应的词序列的发生概率;
所述基于每个所述候选识别文本对应的文本评分确定所述目标语音的语音识别结果,包括:
对每个所述候选识别文本对应的所述声学分数、所述语言分数及所述文本评分进行加权求和,得到每个所述候选识别文本对应的准确性分数;
将准确性分数最大的候选识别文本,确定为所述目标语音的语音识别结果。
11.根据权利要求10所述的方法,其特征在于,基于目标语音的语音数据进行语音识别,得到所述目标语音对应的至少一个候选识别文本,包括:
对所述目标语音的语音数据进行声学解码处理,得到所述目标语音对应的至少一个音素序列及所述音素序列对应的所述声学分数;
对每个所述音素序列进行语言解码处理,得到每个所述音素序列对应的至少一个候选识别文本及所述候选识别文本对应的所述语言分数。
12.一种用于语音识别的语言模型的训练装置,其特征在于,包括:
分类模块,用于对文本数据集中的语句进行领域分类处理,得到至少一个领域的语句集;
评估模块,用于对每个所述语句集进行权重评估,以基于每个所述语句集的权重确定符合预定重要性条件的目标语句集;
计算模块,用于基于所述目标语句集对应的语句数目及权重进行计算处理,得到用于训练语言模型的语句的采样数目;
分配模块,用于根据所述采样数目及每个所述语句集的权重进行采样概率分配处理,得到每个所述语句集中语句的采样概率;
抽取模块,用于从每个所述语句集中按照对应的采样概率进行语句抽取,生成训练语句集;
训练模块,用于基于所述训练语句集对所述语言模型进行训练,得到训练后语言模型。
13.一种语音识别装置,其特征在于,包括:
一遍解码模块,用于基于目标语音的语音数据进行语音识别,得到所述目标语音对应的至少一个候选识别文本;
二遍解码模块,用于采用训练后语言模型,对所述至少一个候选识别文本进行语句发生概率分析,得到表征语句发生概率的文本评分,所述训练后语言模型根据权利要求1至8任一项所述的方法训练得到;
识别模块,用于基于每个所述候选识别文本对应的文本评分确定所述目标语音的语音识别结果。
14.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,当所述计算机程序被计算机的处理器执行时,使计算机执行权利要求1至12任一项所述的方法。
15.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现权利要求1至12任一项的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111021975.9A CN114299920A (zh) | 2021-09-01 | 2021-09-01 | 用于语音识别的语言模型的训练、语音识别方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111021975.9A CN114299920A (zh) | 2021-09-01 | 2021-09-01 | 用于语音识别的语言模型的训练、语音识别方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114299920A true CN114299920A (zh) | 2022-04-08 |
Family
ID=80964457
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111021975.9A Pending CN114299920A (zh) | 2021-09-01 | 2021-09-01 | 用于语音识别的语言模型的训练、语音识别方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114299920A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115188381A (zh) * | 2022-05-17 | 2022-10-14 | 贝壳找房(北京)科技有限公司 | 基于点击排序的语音识别结果优化方法及装置 |
CN116312488A (zh) * | 2023-02-13 | 2023-06-23 | 镁佳(北京)科技有限公司 | 语音识别系统、方法、电子设备及存储介质 |
-
2021
- 2021-09-01 CN CN202111021975.9A patent/CN114299920A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115188381A (zh) * | 2022-05-17 | 2022-10-14 | 贝壳找房(北京)科技有限公司 | 基于点击排序的语音识别结果优化方法及装置 |
CN115188381B (zh) * | 2022-05-17 | 2023-10-24 | 贝壳找房(北京)科技有限公司 | 基于点击排序的语音识别结果优化方法及装置 |
CN116312488A (zh) * | 2023-02-13 | 2023-06-23 | 镁佳(北京)科技有限公司 | 语音识别系统、方法、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108255934B (zh) | 一种语音控制方法及装置 | |
US9336771B2 (en) | Speech recognition using non-parametric models | |
EP2727103B1 (en) | Speech recognition using variable-length context | |
CN106297800B (zh) | 一种自适应的语音识别的方法和设备 | |
CN102142253B (zh) | 语音情感识别设备及方法 | |
EP4018437B1 (en) | Optimizing a keyword spotting system | |
CN110379416A (zh) | 一种神经网络语言模型训练方法、装置、设备及存储介质 | |
CN109036471B (zh) | 语音端点检测方法及设备 | |
CN114627863A (zh) | 一种基于人工智能的语音识别方法和装置 | |
CN114299920A (zh) | 用于语音识别的语言模型的训练、语音识别方法及装置 | |
CN110349597A (zh) | 一种语音检测方法及装置 | |
CN116560513B (zh) | 基于情绪识别的ai数字人交互方法、装置及系统 | |
Altınçay et al. | An information theoretic framework for weight estimation in the combination of probabilistic classifiers for speaker identification | |
CN112349289A (zh) | 一种语音识别方法、装置、设备以及存储介质 | |
Thomson et al. | Parameter learning for POMDP spoken dialogue models | |
CN108053826B (zh) | 用于人机交互的方法、装置、电子设备及存储介质 | |
CN113450771A (zh) | 唤醒方法、模型训练方法和装置 | |
CN114067786A (zh) | 语音识别方法、装置、电子设备及存储介质 | |
CN106710588B (zh) | 语音数据句类识别方法和装置及系统 | |
CN113609264B (zh) | 电力系统节点的数据查询方法、装置 | |
Song et al. | Exploiting different word clusterings for class-based RNN language modeling in speech recognition | |
CN116189671B (zh) | 一种用于语言教学的数据挖掘方法及系统 | |
JP3920749B2 (ja) | 音声認識用音響モデル作成方法、その装置、そのプログラムおよびその記録媒体、上記音響モデルを用いる音声認識装置 | |
KR20160000218A (ko) | 언어모델 군집화 기반 음성인식 장치 및 방법 | |
Thomson et al. | User study of the Bayesian update of dialogue state approach to dialogue management. |
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 |