CN110797018B - 语音识别方法及装置、介质和设备 - Google Patents

语音识别方法及装置、介质和设备 Download PDF

Info

Publication number
CN110797018B
CN110797018B CN201910802833.2A CN201910802833A CN110797018B CN 110797018 B CN110797018 B CN 110797018B CN 201910802833 A CN201910802833 A CN 201910802833A CN 110797018 B CN110797018 B CN 110797018B
Authority
CN
China
Prior art keywords
hidden state
time step
speech recognition
target
determining
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.)
Active
Application number
CN201910802833.2A
Other languages
English (en)
Other versions
CN110797018A (zh
Inventor
刘柏基
曹松军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910802833.2A priority Critical patent/CN110797018B/zh
Publication of CN110797018A publication Critical patent/CN110797018A/zh
Application granted granted Critical
Publication of CN110797018B publication Critical patent/CN110797018B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems

Landscapes

  • Engineering & Computer Science (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)
  • Artificial Intelligence (AREA)
  • Machine Translation (AREA)

Abstract

本公开涉及语音识别技术领域,提供了一种语音识别方法及装置,以及计算机存储介质和电子设备。其中,该方法包括:将待识别语音输入至语音识别模型,获取语音识别模型的编码器的编码隐状态序列,和获取语音识别模型的解码器的解码隐状态序列;对于解码器在第t时间步的输出特征,在编码隐状态序列中确定至少一个目标编码隐状态;根据第t‑1时间步的解码隐状态和目标编码隐状态计算注意力分配概率,其中,t为大于1的整数;根据注意力分配概率确定第t时间步的输出特征,以根据输出特征得到待识别语音对应的目标语音。本技术方案够使得语音识别模型实现在线解码。

Description

语音识别方法及装置、介质和设备
技术领域
本公开涉及人工智能技术领域,具体而言,涉及一种语音识别方法及装置,以及实现上述语音识别方法的计算机存储介质和电子设备。
背景技术
随着人工智能技术的迅速发展,基于人工智能的语音识别技术也不断成熟起来。语音识别技术有利于提升人们的生活品质,例如,语音识别技术使得人机交互界面更加人性化,语音识别技术提供智能问答机器人等。
相关技术中,采用基于隐马尔科夫模型(Hidden Markov Model,简称:HMM)的语音识别模型进行语音识别,HHM用于语素时序建模。其中,HMM自身存在一个强假设,即当前时刻的状态只取决于前一时刻的状态。在语音识别过程中。因此,基于HHM的语音识别模型中,当前时刻的语素状态只取决于前一时刻的语素状态。
从而,基于相关技术提供的语音识别模型进行长句识别时,其识别效率有待提升。
需要说明的是,上述背景技术部分公开的信息仅用于加强对本公开的背景的理解。
发明内容
本公开的目的在于提供一种语音识别方法及装置,以及实现上述语音识别方法的计算机存储介质和电子设备,进而至少在一定程度上提升语言识别模型识别的识别效率。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一个方面,提供一种语音识别方法,包括:
将待识别语音输入至语音识别模型,获取上述语音识别模型的编码器的编码隐状态序列,和获取上述语音识别模型的解码器的解码隐状态序列;对于上述解码器在第t时间步的输出特征,在上述编码隐状态序列中确定至少一个目标编码隐状态;根据第t-1时间步的解码隐状态和上述目标编码隐状态计算注意力分配概率,其中,t为大于1的整数;以及,根据上述注意力分配概率确定上述第t时间步的输出特征,以根据上述输出特征得到上述待识别语音对应的目标语音。
在本公开的一些实施例中,基于前述方案,上述对于上述解码器在第t时间步的输出特征,在上述编码隐状态序列中确定至少一个目标编码隐状态,包括:
对于上述解码器在第t-1时间步的输出特征,在上述编码隐状态序列中确定第i个编码隐状态为第一源隐状态;基于上述第一源隐状态确定第一窗口,将上述第一窗口内的编码隐状态作为上述第t-1时间步的输出特征对应的目标编码隐状态;对于上述解码器在上述第t时间步的输出特征,在上述编码隐状态序列中确定第j个编码隐状态为第二源隐状态;以及,基于上述第二源隐状态确定第二窗口,将上述第二窗口内的编码隐状态作为上述第t时间步的输出特征对应的目标编码隐状态,其中,j大于等于i。
在本公开的一些实施例中,基于前述方案,上述根据第t-1时间步的解码隐状态和上述目标编码隐状态计算注意力分配概率,包括:
将n1维的上述第t-1时间步的解码隐状态分为k份,以及将n2维的上述目标编码隐状态分为k份,得到k组向量集,每组向量集包含:n1/k份第t-1时间步的解码隐状态和n2/k份目标编码隐状态;并行计算上述k组向量集的关联度,得到k个关联度值;以及,根据上述k个关联度值确定上述第t时间步的输出特征对应的注意力分配概率,其中,n1、n2为正整数,k为大于1的整数。
在本公开的一些实施例中,基于前述方案,上述并行计算上述k组向量集的关联度,包括:基于相同的模型参数计算每组向量集的关联度。
在本公开的一些实施例中,基于前述方案,上述根据上述k个关联度值确定上述第t时间步的输出特征对应的注意力分配概率,包括:计算上述k个关联度值的平均值,并通过激活函数将上述平均值映射为上述注意力分配概率。
在本公开的一些实施例中,基于前述方案,上述根据上述注意力分配概率确定上述第t时间步的输出特征,包括:
根据上述目标编码隐状态和上述注意力分配概率计算目标语义特征;以及,根据上述目标语义特征和上述第t-1时间步的解码隐状态确定上述第t时间步的输出特征。
在本公开的一些实施例中,基于前述方案,上述一种语音识别方法还包括:
通过数据增强算法处理上述语音识别模型的训练样本的频谱图;以及,根据处理后的频谱图训练上述语音识别模型。
根据本公开的一个方面,提供一种语音识别装置,包括:隐状态序列获取模块、目标编码隐状态确定模块、注意力分配概率计算模块,以及目标语音确定模块。
上述隐状态序列获取模块,被配置为:将待识别语音输入至语音识别模型,获取上述语音识别模型的编码器的编码隐状态序列,和获取上述语音识别模型的解码器的解码隐状态序列;上述目标编码隐状态确定模块,被配置为:对于上述解码器在第t时间步的输出特征,在上述编码隐状态序列中确定至少一个目标编码隐状态;上述注意力分配概率计算模块,被配置为:根据第t-1时间步的解码隐状态和上述目标编码隐状态计算注意力分配概率,其中,t为大于1的整数;以及,上述目标语音确定模块,被配置为:根据上述注意力分配概率确定上述第t时间步的输出特征,以根据上述输出特征得到上述待识别语音对应的目标语音。
在本公开的一些实施例中,基于前述方案,上述目标编码隐状态确定模块,包括:第一原状态确定子模块、窗口确定子模块,以及第二原状态确定子模块。其中:
上述第一原状态确定子模块,被配置为:对于上述解码器在第t-1时间步的输出特征,在上述编码隐状态序列中确定第i个编码隐状态为第一源隐状态;上述窗口确定子模块,被配置为:基于上述第一源隐状态确定第一窗口,将上述第一窗口内的编码隐状态作为上述第t-1时间步的输出特征对应的目标编码隐状态;上述第二原状态确定子模块,被配置为:对于上述解码器在上述第t时间步的输出特征,在上述编码隐状态序列中确定第j个编码隐状态为第二源隐状态;以及,上述窗口确定子模块,还被配置为:基于上述第二源隐状态确定第二窗口,将上述第二窗口内的编码隐状态作为上述第t时间步的输出特征对应的目标编码隐状态,其中,j大于等于i。
在本公开的一些实施例中,基于前述方案,上述注意力分配概率计算模块,包括:向量集确定子模块、并行计算子模块,以及注意力分配概率确定子模块。其中:
上述向量集确定子模块,被配置为:将n1维的上述第t-1时间步的解码隐状态分为k份,以及将n2维的上述目标编码隐状态分为k份,得到k组向量集,每组向量集包含:n1/k份第t-1时间步的解码隐状态和n2/k份目标编码隐状态;上述并行计算子模块,被配置为:并行计算上述k组向量集的关联度,得到k个关联度值;以及,上述注意力分配概率确定子模块,被配置为:根据上述k个关联度值确定上述第t时间步的输出特征对应的注意力分配概率,其中,n1、n2为正整数,k为大于1的整数。
在本公开的一些实施例中,基于前述方案,上述并行计算子模块,被具体配置为:基于相同的模型参数计算每组向量集的关联度。
在本公开的一些实施例中,基于前述方案,上述注意力分配概率确定子模块,被具体配置为:计算上述k个关联度值的平均值,并通过激活函数将上述平均值映射为上述注意力分配概率。
在本公开的一些实施例中,基于前述方案,上述目标语音确定模块,包括:语义向量计算子模块和输出特征确定子模块。其中:
上述语义向量计算子模块,被配置为:根据上述目标编码隐状态和上述注意力分配概率计算目标语义特征;以及,上述输出特征确定子模块,被配置为:根据上述目标语义特征和上述第t-1时间步的解码隐状态确定上述第t时间步的输出特征。
在本公开的一些实施例中,基于前述方案,上述语音识别装置1000还包括:数据增强模块。其中:
上述数据增强模块,被配置为:通过数据增强算法处理上述语音识别模型的训练样本的频谱图;以及,根据处理后的频谱图训练上述语音识别模型。
根据本公开的一个方面,提供了一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的语音识别方法。
根据本公开的一个方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述第一方面所述的语音识别方法。
由上述技术方案可知,本公开示例性实施例中的语音识别方法及装置,以及实现上述语音识别方法的计算机存储介质和电子设备至少具备以下优点和积极效果:
在本公开的一些实施例所提供的技术方案中,在将待识别语音输入至语音识别模型之后,可获取编码器的编码隐状态序列以及解码器的解码隐状态序列。进一步的,本技术方案确定解码器在第t时间步的输出特征时,不是考虑所有编码隐状态,而是在上述编码隐状态序列中确定至少一个目标编码隐状态;然后,根据第t-1时间步的解码隐状态和上述目标编码隐状态计算注意力分配概率。更进一步地,根据该注意力分配概率确定第t时间步的输出特征,最终根据所有时间步的输出特征得到目标语音。
一方面,本技术方案中不同于普通的注意力机制中将注意力的概率分布会贯穿整个输入序列的隐状态(即上述编码隐状态),而是在编码隐状态序列中确定出一组/一个目标编码隐状态用于注意力分配概率的计算,从而能够使得语音识别模型实现在线解码(或流式解码)。
另一方面,本技术方案中在编码隐状态序列中确定出至少一个目标编码隐状态用于注意力分配概率的计算,从不是硬注意力机制中在确定每一时间步的输出特征时,只能通过一个编码隐状态计算注意力分配概率。从而,本技术方案有利于提升语音识别模型的识别准确度。
本公开应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了可以应用本公开实施例的一种语音识别方法及装置的示例性应用环境的系统架构的示意图;
图2示意性示出了根据本公开的一实施例的语音识别方法的流程图;
图3示意性示出了一实施例的语音识别模型的结构图;
图4示意性示出了根据本公开的一实施例的目标编码隐状态的确定方法的流程图;
图5示意性示出了根据本公开的一实施例的目标隐状态的结构图;
图6示意性示出了根据本公开的一实施例的注意力分配概率的计算方法的流程图;
图7示意性示出了根据本公开的一实施例的注意力分配概率的计算模块的结构图;
图8示意性示出了根据本公开的一实施例的注意力分配概率的计算过程中的对齐示意图;
图9示意性示出了根据本公开的一实施例的目标编码隐状态的确定方法的流程图;
图10示意性示出了根据本公开的一实施例的解码后输出特征序列与输入序列之间的关系图;
图11示意性示出了根据本公开的一实施例的用户进行语音识别的场景图;
图12示意性示出本公开示例性实施例中语音识别装置的结构图;以及,
图13示出本公开示例性实施例中电子设备的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
人工智能(Artificial Intelligence,简称:AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
机器学习(Machine Learning,简称:ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
语音技术(Speech Technology)的关键技术有自动语音识别技术(ASR)和语音合成技术(TTS)以及声纹识别技术。让计算机能听、能看、能说、能感觉,是未来人机交互的发展方向,其中语音成为未来最被看好的人机交互方式之一。
自然语言处理(Nature Language processing,简称:NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本公开实施例提供的方案涉及人工智能的机器学习、语音计算以及自然语言处理等技术,具体通过如下实施例进行说明:
图1示出了可以应用本公开实施例的一种语音识别方法及装置的示例性应用环境的系统架构的示意图。
如图1所示,系统架构100可以包括终端设备101、102、103中的一个或多个,网络104和服务端105。网络104用以在终端设备101、102、103和服务端105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。终端设备101、102、103可以是具有显示屏的各种电子设备,包括但不限于台式计算机、便携式计算机、智能手机和平板电脑等等。应该理解,图1中的终端设备、网络和服务端的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务端。比如服务端105可以是多个服务端组成的服务端集群等。
本公开实施例所提供的语音识别方法一般由服务端105执行,相应地,语音识别装置一般设置于服务端105中。但本领域技术人员容易理解的是,本公开实施例所提供的语音识别方法也可以由终端设备101、102、103执行,相应的,语音识别装置也可以设置于终端设备101、102、103中,本示例性实施例中对此不做特殊限定。
举例而言,在一种示例性实施例中,可以是终端设备101、102、103获取待识别语音并发送至服务端105。从而,服务端105将待识别语音输入至语音识别模型,获取所述语音识别模型的编码器的编码隐状态序列,和获取所述语音识别模型的解码器的解码隐状态序列;然后,服务端105对于所述解码器在第t时间步的输出特征,在所述编码隐状态序列中确定至少一个目标编码隐状态。进一步地,服务端105根据第t-1时间步的解码隐状态和所述目标编码隐状态计算注意力分配概率,其中,t为大于1的整数;最终,服务端105根据所述注意力分配概率确定所述第t时间步的输出特征,以根据所述输出特征得到所述待识别语音对应的目标语音。
示例性的,服务端105还可以将目标语音发送至终端设备101、102、103,从而,用户可以通过终端设备101、102、103收听目标语音。
注意力机制(Attention),从字面意思看,其与人类的注意力机制类似。人类能够通过快速扫描全局文本,获得需要重点关注的区域,也就是所谓的注意力焦点,而后对注意力焦点投入更多注意力资源,以快速地获取更多所需要关注目标的细节信息,而抑制对其他无用信息的注意。由于这一机制的存在,极大提升了从大量的信息中筛选出高价值信息的手段,是人类在长期进化中形成的一种生存机制。
其中,深度学习中的注意力机制从本质上讲和人类的选择性机制类似,核心目标也是从众多信息中选择出对当前任务目标更关键的信息。目前注意力机制已经被广泛使用在自然语言处理、语音识别及图像识别等各种不同类型的深度学习任务中,是深度学习技术中最值得关注与深入了解的核心技术之一。
需注意的是,注意力机制确定的每个权重可用于衡量输入序列中每个词对输入序列的重要程度,不需要考虑输入序列与输出序列中,词与词之间的距离关系。
另一种相关技术中,为了提升基于HMM的语音识别模型的识别能力,提出了端到端(end to end)语音识别模型。其中,端到端语音识别模型不受传统模型所用的隐马尔科夫假设制约,而是利用神经网络进行预测语音识别。同时,相比于基于HMM的语音识别模型,端到端语音识别模型具有模型体积更小、计算消耗更小的特点。
然而,该相关技术提供的端到端语音识别模型中,一般采用的注意力机制需将注意力权重的概率分布贯穿分布至整个输入序列。因此,识别模型就需要输入完整的输入序列之后,才能进行解码计算。例如,对于较长句子的待识别语音,将无法进行实时解码。而端到端模型由于不能支持在线解码,或在线解码效果不佳,将影响用户使用体验。
本技术方案在相关技术中端到端语音识别模型的基础上,通过改进的注意力机制,能够至少在一定程度上解决上述相关技术中存在的一个或多个问题。以下先对本公开提供语音识别方法实施例的进行详细阐述:
图2示意性示出了根据本公开的一实施例的语音识别方法的流程图。具体的,参考图2,该图所示实施例包括:
步骤S210,将待识别语音输入至语音识别模型,获取所述语音识别模型的编码器的编码隐状态序列,和获取所述语音识别模型的解码器的解码隐状态序列;
步骤S220,对于所述解码器在第t时间步的输出特征,在所述编码隐状态序列中确定至少一个目标编码隐状态;
步骤S230,根据第t-1时间步的解码隐状态和所述目标编码隐状态计算注意力分配概率,其中,t为大于1的整数;以及,
步骤S240,根据所述注意力分配概率确定所述第t时间步的输出特征,以根据所述输出特征得到所述待识别语音对应的目标语音。
在图2所示实施例提供的技术方案中:一方面,本技术方案中不同于普通的注意力机制中将注意力的概率分布会贯穿整个输入序列的隐状态(即上述编码隐状态),而是在编码隐状态序列中确定出一组/一个目标编码隐状态用于注意力分配概率的计算,从而能够使得语音识别模型实现在线解码(或流式解码)。另一方面,本技术方案中在编码隐状态序列中确定出至少一个目标编码隐状态用于注意力分配概率的计算,从不是硬注意力机制中在确定每一时间步的输出特征时,只能通过一个编码隐状态计算注意力分配概率。从而,本技术方案有利于提升语音识别模型的识别准确度。
以下对图2所示实施例各个步骤的具体实施方式进行详细阐述:
在示例性的实施例中,图3示意性示出了一实施例的语音识别模型的结构图。需要说明的是,图3示意性说明语音识别模型的结构图,其中的注意力机制并不代表本公开的注意力机制。
具体的,参考图3,该语音识别模型300整体上为一带有注意力机制的序列到序列(sqe2sqe)模型,是经过预训练后的机器学习模型。具体包括:编码器310和解码器320,在语音识别模型中分别可以称作:“Listener”和“Speller”。其中,编码器310/解码器320可以是循环神经网络(Recurrent Neural Network,简称:RNN)、长短期记忆(Long Short-TermMemory,简称:LSTM)神经网络、或LSTM的变体门控循环单元(Gated Recurrent Unit,简称:GRU)神经网络,或双向长短期记忆(Bi-directional LSTM,简称:Bi LSTM)网络。本实施例中,以编码器310和解码器320络均为GRU网络为例进行说明。
在步骤S210中,将待识别语音输入至语音识别模型,获取语音识别模型的编码器的编码隐状态序列,和获取语音识别模型的解码器的解码隐状态序列。
示例性的,结合图3,预训练后的语音识别模型300中训练后的编码函数和解码函数,将待识别语音X=[x1,x2,x3,……,xa]输入预训练后的语音识别模型300,可以通过编码器310的编码函数获取隐状态序列(即上述编码隐状态序列)为:H’=[h1,h2,h3,……,ha],以及还可以通过解码器320的解码函数获取隐状态序列(即上述解码隐状态序列)为:[s1,s2,……,sb]。其中,<SOS(Start Of Sentence)>表示一句话的解码开始,<EOS(End OfSentence)>表示该句话的解码结束。
继续参考图2,在步骤S220中,对于所述解码器在第t时间步的输出特征,在所述编码隐状态序列中确定至少一个目标编码隐状态,其中,t为大于1的整数。
在示例性的实施例中,解码器320在确定不同时间步的输出特征(参考图3中的Y=[y2,y3,……,yb],例如,其中的y2和y3)时,需先确定输出特征y2与输入特征序列之间的关联度。其中,由于上述隐状态序列是根据输入特征序列确定的,因此,上述关联度可以体现在输出特征y2与编码隐状态上。
本实施例提供的技术方案中,为了实现语音识别模型的在线解码,或为了提升语音识别模型输出语音的流畅度,模型的输出特征(如,y2)并非与整个编码隐状态序列中所有编码隐状态相关,而是从编码隐状态序列中确定出目标编码隐状态,并通过目标编码隐状态计算输出特征对应的注意力分配概率。
在示例性的实施例中,图4示意性示出了根据本公开的一实施例的目标编码隐状态的确定方法的流程图,可以作为步骤S220的一种具体实施方式。具体的,参考图4,该图所示实施例包括:
步骤S410,对于所述解码器在第t-1时间步的输出特征,在所述编码隐状态序列中确定第i个编码隐状态为第一源隐状态;
步骤S420,基于所述第一源隐状态确定第一窗口,将所述第一窗口内的编码隐状态作为所述第t-1时间步的输出特征对应的目标编码隐状态;
步骤S430,对于所述解码器在所述第t时间步的输出特征,在所述编码隐状态序列中确定第j个编码隐状态为第二源隐状态;以及,
步骤S440,基于所述第二源隐状态确定第二窗口,将所述第二窗口内的编码隐状态作为所述第t时间步的输出特征对应的目标编码隐状态,其中,j大于等于i。
在示例性的实施例中,图5示意性示出了根据本公开的一实施例的目标隐状态的结构图,以下结合图5对图4的各步骤的具体实施方式继续详细阐述。
示例性的,本实施例提供的技术方案中,随着模型的输出时间步的增加,输出特征对应的编码隐状态的确定方式还包括:确定该时间步输出特定对应的源编码隐状态之后,通过确定窗口的方式。具体可以通过步骤S410和步骤S430进行说明:
示例性的,本实施例提供的技术方案中,随着模型的输出时间步的增加,输出特征对应的编码隐状态的确定方式为:对编码隐状态序列由左向右进行处理。具体可以通过步骤S410和步骤S430进行说明:
参考图5,对于解码器320在第t-1时间步的输出特征(例如为y2),在编码隐状态序列[h1,h2,h3,h4,h5,……]中确定第i个编码隐状态为第一源隐状态(示意性的,图5中第二行中带阴影的h3)。对于解码器320在第t时间步的输出特征(例如为y3),在编码隐状态序列[h1,h2,h3,h4,h5,……]中确定第j个编码隐状态为第二源隐状态(示意性的,图5中第二行中带阴影的h4)。对于解码器320在第t+1时间步的输出特征(例如为y4),在编码隐状态序列[h1,h2,h3,h4,h5,……]中确定第k’个编码隐状态为第三源隐状态示意性的,图5中第二行中带阴影的h4。
相比于相关技术采用的普通的注意力机制,其注意力的概率分布会贯穿整个编码隐状态序列。而通过上述步骤S410和步骤S430提供的技术方案中,注意力的概率分布是单调的(即,上述i大于等于j),即当前时间步的输出特征对应的注意力计算,不会注意到之前时间步输出特征对应的编码隐状态,从而有效提升语音识别效率,例如,对于长句语音识别,大大缩减了用户的等待时间,提升用户的语音识别体验。
示例性的,本实施例提供的技术方案中,随着模型的输出时间步的增加,输出特征对应的编码隐状态的确定方式还包括:确定该时间步输出特定对应的源编码隐状态之后,通过确定窗口的方式确定该时间步输出特征的至少一个目标编码隐状态。示例性的,以上述源编码隐状态为窗口的一端向前框选编码隐状态,以确定目标编码隐状态。具体可以通过步骤S420和步骤S440进行说明:
参考图5,在步骤S410中,对于解码器320在第t-1时间步的输出特征(例如为y2),在编码隐状态序列[h1,h2,h3,h4,h5,……]中确定第i个编码隐状态(即图5中的“h3”)为第一源隐状态。然后,在步骤S420中,将上述第一源隐状态“h3”确定第一窗口51的一端,向前框选编码隐状态以确定目标编码隐状态。从而,将第一窗口51内的编码隐状态(即图5中的[h2,h3])作为第t-1时间步的输出特征对应的目标编码隐状态。
示例性的,在步骤S430中,对于解码器320在第t时间步的输出特征(例如为y3),在编码隐状态序列[h1,h2,h3,h4,h5,……]中确定第j个编码隐状态(即图5中的“h4”)为第二源隐状态。然后,在步骤S440中,将上述第二源隐状态“h4”确定第二窗口52的一端,向前框选编码隐状态以确定目标编码隐状态。从而,将第二窗口52内的编码隐状态(即图5中的[h2,h3,h4])作为第t时间步的输出特征对应的目标编码隐状态。
同理,对于解码器320在第t+1时间步的输出特征(例如为y4),在编码隐状态序列[h1,h2,h3,h4,h5,……]中确定第k’个编码隐状态(即图5中的“h4”)为第三源隐状态。然后,将上述第三源隐状态“h4”确定第三窗口53的一端,向前框选编码隐状态以确定目标编码隐状态(此处第三窗口53中只包含“h4”)。从而,将第三窗口53内的编码隐状态(即图5中的[h4])作为第t+1时间步的输出特征对应的目标编码隐状态。
相比于相关技术采用的硬注意力机制,其确定每一时间步的输出特征时,限定只通过一个编码隐状态计算注意力分配概率。而通过上述步骤S420或步骤S440提供的技术方案中,基于源编码隐状态确定窗口,并通过窗口框选编码隐状态的方式确定出至少一个目标编码隐状态。相比之下,本技术方案有利于提升语音识别模型的识别准确度。
继续参考图2,对于上述解码器在第t时间步的输出特征,在步骤S230中,根据第t-1时间步的解码隐状态和所述目标编码隐状态计算注意力分配概率。例如,参考图3,对于上述解码器在输出特征y3,需要根据解码隐状态s2和输出特征y3对应的目标编码隐状态计算注意力分配概率(参考上述实施例,输出特征y3对应的目标编码隐状态为:图5中的[h2,h3,h4])。
本实施例提供的技术方案中,为了提升训练后的语音识别模型的稳定性,采用将计算注意力分配概率相关的特征分为k份,然后对k份特征并计算相关度值,最终根据k个相关度值确定该特征的注意力分配概率。也就是说,本技术方案采用多头注意力机制。其中,通过多头注意力机制中对k份特征并行计算的方式,语音训练模型能够使用不同序列位置的不同子控件的表征信息进行序列出具处理。而单头注意力机制,上述表征信息容易丢失。
在示例性的实施例中,图6示意性示出了根据本公开的一实施例的注意力分配概率的计算方法的流程图,可以作为步骤S230的一种具体实施方式。具体的,参考图6,该图所示实施例包括:
在步骤S610中,将n1维的所述第t-1时间步的解码隐状态分为k份,以及将n2维的所述目标编码隐状态分为k份,得到k组向量集,每组向量集包含:
Figure GDA0003481616450000151
份第t-1时间步的解码隐状态和
Figure GDA0003481616450000152
份目标编码隐状态。其中,n1、n2为正整数,k为大于1的整数
在示例性的实施例中,图7示意性示出了根据本公开的一实施例的注意力分配概率的计算模块的结构图。参考图7,注意力分配概率的计算模块700包括:线性层linear710、单调块注意力计算层(MonotonicChunkwise Attention)720(包括k层)以及平均值计算层Average730。
示例性的,参考图7,对于上述解码器在第t时间步的输出特征对应的注意力分配概率的计算过程:可以通过线性层linear 710将n1维的第t-1时间步的解码隐状态St-1分为k份,以及通过线性层linear 710将n2维的目标编码隐状态(Hj)分为k份,其中j的取值根据目标编码隐状态的数量确定。其中,
Figure GDA0003481616450000153
Figure GDA0003481616450000154
进而,得到k组向量集,其中,每组向量集包含:
Figure GDA0003481616450000155
份第t-1时间步的解码隐状态和
Figure GDA0003481616450000156
在示例性的实施例中,在执行上述步骤S610之前,还可以对目标编码隐状态hj/解码隐状态si-1进行预处理(如以下公式)得到Hj、Si-1,以根据实际需要改变输入输出特征的维度。
Hj=Wprehhj;St-1=Wpresst-1
在步骤S620中,并行计算所述k组向量集的关联度,得到k个关联度值。
示例性的,参考图7,将上述k组向量集分别输入至k层单调块注意力计算层(MonotonicChunkwise Attention)720中,在每一MonotonicChunkwise Attention 720层中进行关联度计算,得到k个关联度值,示例性的,在每层中可以根据以下公式计算关联度值eij
Figure GDA0003481616450000161
其中,L的取值范围为小于等于k的正整数,Wh、Ws、b和v均为可学习参数,且
Figure GDA0003481616450000162
b∈Rd,v∈Rd,其中,d为能量函数MonotonicEnergy的隐藏维数。
示例性的,k个MonotonicChunkwise Attention 720层可以参数共享。也就是说,基于相同的模型参数计算每组向量集的关联度。相比于相关技术提供的多头注意力机制中,不同注意力计算层之间的参数是各自独立的。本实施例中采用参数共享的方式,能够有效减少参数量,有利于提升计算效率节省计算资源。
在步骤S630中,根据所述k个关联度值确定所述第t时间步的输出特征对应的注意力分配概率。
示例性的,鉴于k个MonotonicChunkwise Attention 720层可以参数共享,可以通过Average 730层计算上述k个关联度值的平均值(参考以下公式)。
Figure GDA0003481616450000163
本实施例中,多头注意力机制内部各个头之间共享参数,可以不引入额外的计算消耗和参数量(甚至参数量更少),进一步,采用平均值的方式计算注意力分配概率,有利于模型训练稳定性。
在示例性的实施例中,通过激活函数(如以下公式才用的softmax函数)将所述平均值映射为所述注意力分配概率Multi-head monotonic chunkwise attention。
Figure GDA0003481616450000171
示例性的,图8示意性示出了根据本公开的一实施例的注意力分配概率的计算过程中的对齐示意图。参考图8,对于每个头(head1、head2、head3、head4),模型输出(frames)与模型输入(words)的对齐方式均能体现单调对齐。其中,“no prob”表示对齐概率为0,“low prob”表示有较低的对齐概率,“high prob”表示有较高的对齐概率。
继续参考图2,在步骤S240中,根据所述注意力分配概率确定所述第t时间步的输出特征,以根据所述输出特征得到所述待识别语音对应的目标语音。
示例性的,参考图3,在解码器320中,根据目标编码隐状态以及注意力分配概率确定模型输出。
在示例性的实施例中,图9示意性示出了根据本公开的一实施例的目标编码隐状态的确定方法的流程图,可以作为步骤S240的一种具体实施方式。具体的,参考图9,该图所示实施例包括:
步骤S910,根据所述目标编码隐状态和所述注意力分配概率计算目标语义特征;以及,
步骤S920,根据所述目标语义特征和所述第t-1时间步的解码隐状态确定所述第t时间步的输出特征。
在示例性的实施例中,对于第t时间步的输出特征yt的确定方法,一般包括:根据目标编码隐状态对应的输入特征序列,例如,参考图3,目标yt对应的目标编码隐状态为[h2、h3]。
还根据图6或图7所示实施例确定的注意力分配概率为[at2、at3]。
从而,上述目标语义特征可以表示为:
ct=h2×at2+h3×at3
进一步地,在解码器320中,根据上述目标语义特征ct和上述第t-1时间步的解码隐状态St-1确定上述第t时间步的输出特征yt
可见,根据图9所示实施例,可以确定任意时刻的输出特征,例如,可以表示为:[y2、y3、……yb],其中,t的取值为小于b的正整数。进而,根据上述输出特征得到所述待识别语音对应的目标语音,完成一次语音识别任务。
示例性的,参考图10,图10示意性示出了根据本公开的一实施例的解码后输出特征序列与输入序列之间的关系图。可以看出,解码后输出特征序列Frames与输入序列WordIndexs之间的关系为单调对应关系,也就是说,确定在后的输出特征时,不再关注已经注意过的输入特征。也就是说,本技术方案尤其适用于序列到序列单调映射的任务。例如,语音识别任务,该任务的特征具体表现在输出序列较短,输入序列较长,同时输出序列和输入序列基本是单调映射的。从而,本技术方案可以应用在所有需要语音识别的产品中。并且,本技术方案提供的端到端的语音识别模型通过实现在先解码或流式解码,使得用户的语音识别的使用体验得到大大提升。
上述各个实施例提供的技术方案提供的语音识别方法的优势在于,相对于相关技术中基于HMM的传统语音识别方法,本方案的端到端语音识别模型具有模型体积更小、且计算效率更高的优势。另外,相关技术中单调注意力机制的改进版,即单调块注意力机制。单调块注意力机制应用于语音识别模型中存在训练稳定性能不够理想的问题。而本技术方案对上述单调块注意力机制进行改进:采用多头并行计算注意力的方式,进而可以结合数据增强算法SpecAugment的数据处理方式,以提升语音识别模型的训练稳定性。具体的:
数据加强算法SpecAugment是一种强力的数据增强算法,该算法解决了端到端语音识别模型的严重过拟合问题,可以提升了端到端离线模型的性能。
而单调块注意力机制可能导致模型训练过程中的数据增强算法SpecAugment无法正常应用,但是本发明所述方法可以提高训练稳定性,使得SpecAugment可以成功应用。
本技术方案通过多头并行进行注意力计算的机制使得数据增强算法SpecAugment能够正常应用,更为具体的:
本实施例提供的技术方案还包括以下步骤:通过数据增强算法处理所述语音识别模型的训练样本的频谱图;以及,根据处理后的频谱图训练所述语音识别模型。
示例性的,在语音识别中,数据增强方法SpecAugment通常指以某种方式对训练的音频波形进行变形(例如加速或减速),或添加背景噪声以显著提高深度神经网络的性能。例如,在现有的样本的基础上,通过数据增强算法SpecAugment进一步提升训练样本数目。或者,当缺乏足够数量的训练数据时,可以通过数据增强算法SpecAugment来增加数据的有效数量。
本实施例中,由于多头注意力计算模块间共享参数的机制,模型训练时梯度取平均值,因此提出的机制训练更加稳定,这使得可以应用数据增强算法SpecAugment。相比于相关技术中采用单调块注意力机制,而不采用多头并行计算时,若应用上述数据加强算法SpecAugment,由于单调块注意力机制的训练不稳定,对上述数据增强算法SpecAugment的时域增强十分敏感。从而,数据加强算法SpecAugment的时域增强将很有可能会影响单调块注意力机制计算模块的训练,从而导致训练后的语音识别模型的识别准确率变差。
在示例性的实施例中,图11示意性示出了根据本公开的一实施例的用户进行语音识别的场景1100。
示例性的,本技术方案提供的语音识别方法应用于语音识别的产品“叮当语音助手”。以下结合图1和图11对语音识别场景进行描述:
示例性的,终端设备101中预先安装有语音识别应用如“叮当语音助手”。其中,语音识别应用如“叮当语音助手”是根据本技术方案设计而成的终端应用。
进一步地,用户111向上述终端设备端101发送语音,如:“叮当叮当,今天天气怎么样?”上述终端设备端101接收到用户111的语音之后,通过网络104连接服务端105,并将接收到的待识别语音发送至上述服务端105。
示例性的,服务端105中部署有端到端在线语音识别系统115对应的算法。进一步地,可以通过其他平台116对于接收到的待识别语音进行处理,得到对应的的特征序列。以作为端到端在线语音识别系统115对应的算法的输入序列。然后,经过本技术方案提供的语音识别方法,确定输出特征。
示例性的,上述端到端在线语音识别系统115的输出特征值叮当助手应用113之后。可以通过相关产品114对应的程序获取相关信息,例如,天气信息等。进而通过终端设备向用户提出的疑问进行应答,例如:“哎!今天天气很好!”。
示例性的,上述应答可以是语音的方式向用户传达,也可以是文字的形式显示至移动终端101的显示屏中。
对于目前制约语音识别产品大规模应用的问题主要是计算消耗过大、模型体积过大,在云平台上计算资源成本不可忽视,在手机上挤占性能等问题。然而,相对于基于HMM的传统语音识别系统,上述各个实施例提供的语音识别方法具有性能更好、计算消耗更小、模型体积更小的优势。通过使用本技术方案,有望推动语音识别产品的大规模应用,例如在各种移动终端内的应用。
另外,本公开提出的一种新型的多头单调块注意力机制,相对于既有单调注意力机制,有利于语言识别模型的识别准确度的提升;相对于既有单调块注意力机制,有利于语言识别模型的模型训练稳定性的增强。同时,采用本公开提供的注意力机制,在语音识别模型的训练阶段,可以应用数据增强方法SpecAugment,进一步提升训练后的语音识别准确度。
本领域技术人员可以理解实现上述实施方式的全部或部分步骤被实现为由处理器(包含CPU和GPU)执行的计算机程序。例如,通过GPU实现对上述语音识别模型的模型训练,或者基于训练后的语音识别模型,使用CPU或GPU实现对待测对象的语音识别处理等。在该计算机程序被CPU执行时,执行本公开提供的上述方法所限定的上述功能。所述的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。
此外,需要注意的是,上述附图仅是根据本公开示例性实施方式的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
以下介绍本公开的语音识别装置实施例,可以用于执行本公开上述的语音识别方法。
图12示意性示出本公开示例性实施例中语音识别装置的结构图。如图12所示,上述语音识别装置1200包括:隐状态序列获取模块1201、目标编码隐状态确定模块1002、注意力分配概率计算模块1203,以及目标语音确定模块1204。其中:
上述隐状态序列获取模块1201,被配置为:将待识别语音输入至语音识别模型,获取上述语音识别模型的编码器的编码隐状态序列,和获取上述语音识别模型的解码器的解码隐状态序列;上述目标编码隐状态确定模块1202,被配置为:对于上述解码器在第t时间步的输出特征,在上述编码隐状态序列中确定至少一个目标编码隐状态;上述注意力分配概率计算模块1203,被配置为:根据第t-1时间步的解码隐状态和上述目标编码隐状态计算注意力分配概率,其中,t为大于1的整数;以及,上述目标语音确定模块1204,被配置为:根据上述注意力分配概率确定上述第t时间步的输出特征,以根据上述输出特征得到上述待识别语音对应的目标语音。
在本公开的一些实施例中,基于前述方案,上述目标编码隐状态确定模块1202,包括:第一原状态确定子模块12021、窗口确定子模块12022,以及第二原状态确定子模块12023。其中:
上述第一原状态确定子模块12021,被配置为:对于上述解码器在第t-1时间步的输出特征,在上述编码隐状态序列中确定第i个编码隐状态为第一源隐状态;上述窗口确定子模块12022,被配置为:基于上述第一源隐状态确定第一窗口,将上述第一窗口内的编码隐状态作为上述第t-1时间步的输出特征对应的目标编码隐状态;上述第二原状态确定子模块12023,被配置为:对于上述解码器在上述第t时间步的输出特征,在上述编码隐状态序列中确定第j个编码隐状态为第二源隐状态;以及,上述窗口确定子模块12022,还被配置为:基于上述第二源隐状态确定第二窗口,将上述第二窗口内的编码隐状态作为上述第t时间步的输出特征对应的目标编码隐状态,其中,j大于等于i。
在本公开的一些实施例中,基于前述方案,上述注意力分配概率计算模块1203,包括:向量集确定子模块12031、并行计算子模块12032,以及注意力分配概率确定子模块12033。其中:
上述向量集确定子模块12031,被配置为:将n1维的上述第t-1时间步的解码隐状态分为k份,以及将n2维的上述目标编码隐状态分为k份,得到k组向量集,每组向量集包含:n1/k份第t-1时间步的解码隐状态和n2/k份目标编码隐状态;上述并行计算子模块12032,被配置为:并行计算上述k组向量集的关联度,得到k个关联度值;以及,上述注意力分配概率确定子模块12033,被配置为:根据上述k个关联度值确定上述第t时间步的输出特征对应的注意力分配概率,其中,n1、n2为正整数,k为大于1的整数。
在本公开的一些实施例中,基于前述方案,上述并行计算子模块12032,被具体配置为:基于相同的模型参数计算每组向量集的关联度。
在本公开的一些实施例中,基于前述方案,上述注意力分配概率确定子模块12033,被具体配置为:计算上述k个关联度值的平均值,并通过激活函数将上述平均值映射为上述注意力分配概率。
在本公开的一些实施例中,基于前述方案,上述目标语音确定模块1204,包括:语义向量计算子模块12041和输出特征确定子模块12042。
其中:
上述语义向量计算子模块12041,被配置为:根据上述目标编码隐状态和上述注意力分配概率计算目标语义特征;以及,上述输出特征确定子模块12042,被配置为:根据上述目标语义特征和上述第t-1时间步的解码隐状态确定上述第t时间步的输出特征。
在本公开的一些实施例中,基于前述方案,上述语音识别装置1200还包括:数据增强模块1205。其中:
上述数据增强模块1205,被配置为:通过数据增强算法处理上述语音识别模型的训练样本的频谱图;以及,根据处理后的频谱图训练上述语音识别模型。
上述语音识别装置中各单元的具体细节已经在说明书附图2至图9对应的语音识别方法中进行了详细的描述,因此此处不再赘述。
图13示出了适于用来实现本公开实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图13示出的电子设备的计算机系统1300仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图13所示,计算机系统1300包括处理器1301(包括:图形处理单元(GraphicsProcessing Unit,简称:GPU)、中央处理单元(Central Processing Unit,简称:CPU)),其可以根据存储在只读存储器(Read-Only Memory,简称:ROM)1302中的程序或者从存储部分1308加载到随机访问存储器(Random Access Memory,RAM)1303中的程序而执行各种适当的动作和处理。在RAM 1303中,还存储有系统操作所需的各种程序和数据。处理器(CPU或GPU)1301、ROM 1302以及RAM 1303通过总线1304彼此相连。输入/输出(Input/Output,简称:I/O)接口1305也连接至总线1304。
以下部件连接至I/O接口1305:包括键盘、鼠标等的输入部分1306;包括诸如阴极射线管(Cathode Ray Tube,简称:CRT)、液晶显示器(Liquid Crystal Display,简称:LCD)等以及扬声器等的输出部分1307;包括硬盘等的存储部分1308;以及包括诸如局域网(Local Area Network,简称:LAN)卡、调制解调器等的网络接口卡的通信部分1309。通信部分1309经由诸如因特网的网络执行通信处理。驱动器1310也根据需要连接至I/O接口1305。可拆卸介质1311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1310上,以便于从其上读出的计算机程序根据需要被安装入存储部分1308。
特别地,根据本公开的实施例,下文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1309从网络上被下载和安装,和/或从可拆卸介质1311被安装。在该计算机程序被处理器(CPU或GPU)1301执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本公开实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。
计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,简称:EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,简称:CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。
计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。
例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
例如,所述的电子设备可以实现如图2中所示的:步骤S210,将待识别语音输入至语音识别模型,获取所述语音识别模型的编码器的编码隐状态序列,和获取所述语音识别模型的解码器的解码隐状态序列;步骤S220,对于所述解码器在第t时间步的输出特征,在所述编码隐状态序列中确定至少一个目标编码隐状态;步骤S230,根据第t-1时间步的解码隐状态和所述目标编码隐状态计算注意力分配概率,其中,t为大于1的整数;以及,步骤S240,根据所述注意力分配概率确定所述第t时间步的输出特征,以根据所述输出特征得到所述待识别语音对应的目标语音。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务端、触控终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (10)

1.一种语音识别方法,其特征在于,所述方法包括:
将待识别语音输入至语音识别模型,获取所述语音识别模型的编码器的编码隐状态序列,和获取所述语音识别模型的解码器的解码隐状态序列;
对于所述解码器在第t时间步的输出特征,在所述编码隐状态序列中确定至少一个目标编码隐状态;
根据第t-1时间步的解码隐状态和所述目标编码隐状态计算注意力分配概率,其中,t为大于1的整数;
根据所述注意力分配概率确定所述第t时间步的输出特征,以根据所述输出特征得到所述待识别语音对应的目标语音。
2.根据权利要求1所述的语音识别方法,其特征在于,所述对于所述解码器在第t时间步的输出特征,在所述编码隐状态序列中确定至少一个目标编码隐状态,包括:
对于所述解码器在第t-1时间步的输出特征,在所述编码隐状态序列中确定第i个编码隐状态为第一源隐状态;
基于所述第一源隐状态确定第一窗口,将所述第一窗口内的编码隐状态作为所述第t-1时间步的输出特征对应的目标编码隐状态;
对于所述解码器在所述第t时间步的输出特征,在所述编码隐状态序列中确定第j个编码隐状态为第二源隐状态;
基于所述第二源隐状态确定第二窗口,将所述第二窗口内的编码隐状态作为所述第t时间步的输出特征对应的目标编码隐状态,其中,j大于等于i。
3.根据权利要求1或2所述的语音识别方法,其特征在于,所述根据第t-1时间步的解码隐状态和所述目标编码隐状态计算注意力分配概率,包括:
将n1维的所述第t-1时间步的解码隐状态分为k份,以及将n2维的所述目标编码隐状态分为k份,得到k组向量集,每组向量集包含:
Figure FDA0003481616440000011
份第t-1时间步的解码隐状态和
Figure FDA0003481616440000012
份目标编码隐状态;
并行计算所述k组向量集的关联度,得到k个关联度值;
根据所述k个关联度值确定所述第t时间步的输出特征对应的注意力分配概率,其中,n1、n2为正整数,k为大于1的整数。
4.根据权利要求3所述的语音识别方法,其特征在于,所述并行计算所述k组向量集的关联度,包括:
基于相同的模型参数计算每组向量集的关联度。
5.根据权利要求3所述的语音识别方法,其特征在于,所述根据所述k个关联度值确定所述第t时间步的输出特征对应的注意力分配概率,包括:
计算所述k个关联度值的平均值,并通过激活函数将所述平均值映射为所述注意力分配概率。
6.根据权利要求3所述的语音识别方法,其特征在于,所述根据所述注意力分配概率确定所述第t时间步的输出特征,包括:
根据所述目标编码隐状态和所述注意力分配概率计算目标语义特征;
根据所述目标语义特征和所述第t-1时间步的解码隐状态确定所述第t时间步的输出特征。
7.根据权利要求3所述的语音识别方法,其特征在于,所述方法还包括:
通过数据增强算法处理所述语音识别模型的训练样本的频谱图;
根据处理后的频谱图训练所述语音识别模型。
8.一种语音识别装置,其特征在于,所述装置包括:
隐状态序列获取模块,被配置为:将待识别语音输入至语音识别模型,获取所述语音识别模型的编码器的编码隐状态序列,和获取所述语音识别模型的解码器的解码隐状态序列;
目标编码隐状态确定模块,被配置为:对于所述解码器在第t时间步的输出特征,在所述编码隐状态序列中确定至少一个目标编码隐状态;
注意力分配概率计算模块,被配置为:根据第t-1时间步的解码隐状态和所述目标编码隐状态计算注意力分配概率,其中,t为大于1的整数;
目标语音确定模块,被配置为:根据所述注意力分配概率确定所述第t时间步的输出特征,以根据所述输出特征得到所述待识别语音对应的目标语音。
9.一种计算机存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任意一项所述的语音识别方法。
10.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至7中任意一项所述的语音识别方法。
CN201910802833.2A 2019-08-28 2019-08-28 语音识别方法及装置、介质和设备 Active CN110797018B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910802833.2A CN110797018B (zh) 2019-08-28 2019-08-28 语音识别方法及装置、介质和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910802833.2A CN110797018B (zh) 2019-08-28 2019-08-28 语音识别方法及装置、介质和设备

Publications (2)

Publication Number Publication Date
CN110797018A CN110797018A (zh) 2020-02-14
CN110797018B true CN110797018B (zh) 2022-03-25

Family

ID=69427060

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910802833.2A Active CN110797018B (zh) 2019-08-28 2019-08-28 语音识别方法及装置、介质和设备

Country Status (1)

Country Link
CN (1) CN110797018B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112017638A (zh) * 2020-09-08 2020-12-01 北京奇艺世纪科技有限公司 语音语义识别模型构建方法、语义识别方法、装置及设备
CN112397059B (zh) * 2020-11-10 2024-02-06 武汉天有科技有限公司 一种语音流畅度检测方法及装置
CN112487937B (zh) * 2020-11-26 2022-12-06 北京有竹居网络技术有限公司 视频识别方法、装置、存储介质及电子设备
CN112397048B (zh) * 2020-12-10 2023-07-14 标贝(北京)科技有限公司 语音合成的发音稳定性评价方法、装置和系统及存储介质
CN117558265B (zh) * 2024-01-12 2024-04-19 联通(广东)产业互联网有限公司 方言流式语音识别方法、装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9799327B1 (en) * 2016-02-26 2017-10-24 Google Inc. Speech recognition with attention-based recurrent neural networks
CN107293296A (zh) * 2017-06-28 2017-10-24 百度在线网络技术(北京)有限公司 语音识别结果纠正方法、装置、设备及存储介质
CN108630199A (zh) * 2018-06-30 2018-10-09 中国人民解放军战略支援部队信息工程大学 一种声学模型的数据处理方法
CN109215662A (zh) * 2018-09-18 2019-01-15 平安科技(深圳)有限公司 端对端语音识别方法、电子装置及计算机可读存储介质
CN109952580A (zh) * 2016-11-04 2019-06-28 易享信息技术有限公司 基于准循环神经网络的编码器-解码器模型

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10839790B2 (en) * 2017-02-06 2020-11-17 Facebook, Inc. Sequence-to-sequence convolutional architecture

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9799327B1 (en) * 2016-02-26 2017-10-24 Google Inc. Speech recognition with attention-based recurrent neural networks
CN109952580A (zh) * 2016-11-04 2019-06-28 易享信息技术有限公司 基于准循环神经网络的编码器-解码器模型
CN107293296A (zh) * 2017-06-28 2017-10-24 百度在线网络技术(北京)有限公司 语音识别结果纠正方法、装置、设备及存储介质
CN108630199A (zh) * 2018-06-30 2018-10-09 中国人民解放军战略支援部队信息工程大学 一种声学模型的数据处理方法
CN109215662A (zh) * 2018-09-18 2019-01-15 平安科技(深圳)有限公司 端对端语音识别方法、电子装置及计算机可读存储介质

Also Published As

Publication number Publication date
CN110797018A (zh) 2020-02-14

Similar Documents

Publication Publication Date Title
CN110797018B (zh) 语音识别方法及装置、介质和设备
CN110188182B (zh) 模型训练方法、对话生成方法、装置、设备及介质
CN109859736B (zh) 语音合成方法及系统
CN111897941B (zh) 对话生成方法、网络训练方法、装置、存储介质及设备
CA3036067C (en) Generating audio using neural networks
CN110349572B (zh) 一种语音关键词识别方法、装置、终端及服务器
CN110275939B (zh) 对话生成模型的确定方法及装置、存储介质、电子设备
CN111966800B (zh) 情感对话生成方法、装置及情感对话模型训练方法、装置
CN112988979B (zh) 实体识别方法、装置、计算机可读介质及电子设备
Merdivan et al. Dialogue systems for intelligent human computer interactions
CN112214591B (zh) 一种对话预测的方法及装置
CN110413743B (zh) 一种关键信息抽取方法、装置、设备及存储介质
CN112037773B (zh) 一种n最优口语语义识别方法、装置及电子设备
CN112767910A (zh) 音频信息合成方法、装置、计算机可读介质及电子设备
JP2022517971A (ja) 言語シーケンスラベリング方法、装置、プログラム及びコンピューティング機器
CN112329435B (zh) 文本处理方法、装置、计算机设备以及存储介质
CN111699497A (zh) 使用离散潜变量的序列模型的快速解码
CN110825849A (zh) 文本信息情感分析方法、装置、介质及电子设备
CN112115246A (zh) 基于对话的内容推荐方法、装置、计算机设备及存储介质
CN113065344A (zh) 一种基于迁移学习和注意力机制的跨语料库情感识别方法
CN114356540A (zh) 一种参数更新方法、装置、电子设备和存储介质
CN110297894B (zh) 一种基于辅助网络的智能对话生成方法
CN113850012A (zh) 数据处理模型生成方法、装置、介质及电子设备
CN112785667A (zh) 视频生成方法、装置、介质及电子设备
EP4287182A1 (en) Method and apparatus for training a speech recognition model, electronic device and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40021511

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant