CN117116264A - 一种语音识别方法、电子设备以及介质 - Google Patents

一种语音识别方法、电子设备以及介质 Download PDF

Info

Publication number
CN117116264A
CN117116264A CN202310192991.7A CN202310192991A CN117116264A CN 117116264 A CN117116264 A CN 117116264A CN 202310192991 A CN202310192991 A CN 202310192991A CN 117116264 A CN117116264 A CN 117116264A
Authority
CN
China
Prior art keywords
text
vector
hotword
hidden layer
word
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
Application number
CN202310192991.7A
Other languages
English (en)
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.)
Honor Device Co Ltd
Original Assignee
Honor Device 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 Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202310192991.7A priority Critical patent/CN117116264A/zh
Publication of CN117116264A publication Critical patent/CN117116264A/zh
Pending legal-status Critical Current

Links

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/26Speech to text systems
    • 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/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • 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/16Speech classification or search using artificial neural networks
    • 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/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
    • 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/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • G10L2015/0631Creating reference templates; Clustering
    • 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/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • G10L2015/0631Creating reference templates; Clustering
    • G10L2015/0633Creating reference templates; Clustering using lexical or orthographic knowledge sources

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)
  • Evolutionary Computation (AREA)
  • Signal Processing (AREA)
  • Machine Translation (AREA)

Abstract

本申请实施例提供一种语音识别方法、电子设备以及介质,可应用于语音识别的技术领域,包括:获取热词列表并确定每个音频对应的初始文本数据,对热词列表进行编码,获得热词隐层向量,对每个初始文本数据进行编码,获得多个文本向量,通过注意力机制,分别对热词隐层向量与每个文本向量进行融合,获得多个概率分布矩阵,根据所述概率分布矩阵中预测的每一个字的产生概率,确定输出的文字结果,这样通过引入注意力机制,无论输入的是哪种场景下的热词,都可以通过对热词隐层向量与每个文本向量进行融合,整个过程无需人工参与,也就可以解决现有技术中语音识别过程,在不同场景下每次都需要人工去赋值状态转移分数,增加了相关人员的工作量的问题。

Description

一种语音识别方法、电子设备以及介质
技术领域
本申请涉及语音识别技术领域,尤其涉及一种语音识别方法、电子设备以及介质。
背景技术
语音识别,是人工智能(Artificial Intelligence,AI)领域的一个重要研究方向。自动语音识别(Automatic Speech Recognition,ASR)系统,可部署于电子设备,实现对用户输入的语音信号、设备播放的语音信号等进行转换,得到文本数据。
现有技术中的语音识别系统在热词识别过程中会分别构建top级别的FST图和sub级别的FST图实现热词增强。其中,top级别的FST图一般会结合声学模型的输出、声学模型与语言模型建模单元间的映射词典、Ngram语言模型构建TLG图;sub级别的FST图一般会先使用构建语言模型的分词模型对用户的热词列表进行分词,之后指定分词后每个词的得分,构建热词FST图。在束搜索过程中,若匹配到热词FST图中的对应前缀,则该路径下会得到对应的分数奖励,也就是热词激励分数,从而通过热词激励分数和ASR模型输出的概率进行浅融合,预测下一字的概率。
但是,这种做法一般会通过手动赋值的方式指定热词FST中的状态转移分数,也就相当于热词的权重,而不同场景下的热词激励分数往往不同,每次都需要人工去赋值状态转移分数,增加了相关人员的工作量。
发明内容
本申请提供的一种语音识别方法、电子设备以及介质,以解决现有的语音识别过程中,不同场景下的热词激励分数往往不同,每次都需要人工去赋值状态转移分数,增加了相关人员的工作量的问题。
为达到上述目的,本申请采用如下技术方案:
第一方面,本申请提供了一种语音识别方法,包括:
获取热词列表并确定每个音频对应的初始文本数据,对热词列表进行编码,获得热词隐层向量,对每个初始文本数据进行编码,获得多个文本向量,通过注意力机制,分别对热词隐层向量与每个文本向量进行融合,获得多个概率分布矩阵,根据所述概率分布矩阵中预测的每一个字的产生概率,确定输出的文字结果,这样通过引入注意力机制,无论输入的是哪种场景下的热词,都可以通过对热词隐层向量与每个文本向量进行融合,整个过程无需人工参与,也就可以解决现有技术中语音识别过程,在不同场景下每次都需要人工去赋值状态转移分数,增加了相关人员的工作量的问题。
在某些可能实现的方式中,通过注意力机制,分别将所述热词隐层向量与每个文本向量进行融合,获得多个概率分布矩阵可以为:
将所述热词隐层向量与每个文本向量分别进行点击运算,获得运算矩阵,对每个运算矩阵进行归一化处理,获得多个第一概率分布矩阵;
具体的,将热词隐层向量与文本向量,去做点击运算,形成包括点击值的运算矩阵,例如,热词隐层向量是一个500×D的向量矩阵,其中,500为热词个数,D为每个热词的长度1,文本量是一个1×D的向量矩阵,1为文本个数,D为每个文本的长度,将500×D的热词隐层向量矩阵与1×D的文本向量,去做点击运算,得到1×500的运算矩阵,对运算矩阵进行softmax操作,得到包括热词隐层向量的权重K1和文本向量的权重K2的概率分布矩阵,这里也可以叫第一概率分布矩阵。
在某西可能实现的方式中,可以利用热词隐层向量的权重分别去与热词隐层向量中的每一个热词的向量相乘,利用文本向量的权重分别去与对应文本向量中每一个字的向量相乘,最后将获得的每个向量累加,输出最终的累加后的融合隐层向量,然后根据融合隐层向量,确定输出的文字结果。
在某些可能实现的方式中,为了增强特征表达能力,稳定模型训练。还可以在融合隐层向量输入至线性层之前进行前馈计算、残差连接、层归一化等操作。
先对融合隐层向量进行前馈计算,将进行前馈计算之后获得的融合隐层向量与进行前馈计算的融合隐层向量进行残差连接,对进行残差连接之后获得的隐层向量进行归一化处理,然后将经过归一化处理之后得到的隐层向量的维度转换至与热词列表的维度相同,将转换维度之后的隐层向量进行归一化处理,获得第二概率分布矩阵,根据第二概率分布矩阵,确定输出的文字结果。
具体的,将融合隐层向量输入至第一个线性层,以扩大融合隐层向量的维度,例如融合隐层向量为256维,输入至线性层可以将其维度扩大至1024维,然后将扩大维度之后的融合隐层向量经过激活函数进行非线性操作,然后将经过非线性操作之后的融合隐层向量再经过第二个线性层,将其维度缩小至原来的维度,并输出。然后将经过前馈计算之后得到的融合隐层向量与进行前馈计算之前的融合隐层向量相加,进行残差连接,然后将进行残差连接后得到的向量进行归一化处理,获得第二概率分布矩阵,然后将经过归一化处理之后得到的隐层向量的维度转换至与热词列表的维度相同,将转换维度之后的隐层向量进行归一化处理,获得第二概率分布矩阵,根据第二概率分布矩阵,确定输出的文字结果。
进一步的,将第二概率分布矩阵分别输入至两个线性层,一方面,输入至线性层,对隐层向量进行线性处理,以使隐层向量与输出的词表同维度,例如,隐层向量为256维,词表为1024维,词表中的每个维度代表词表里的一个字,通过对隐层向量进行线性处理,使得隐层向量变换为与输出的词表同维度,然后在经过softmax操作,形成概率分布,输出下一字的概率,维度为[B,L,N],B表示批次大小,L表示文本长度,N表示词表大小;
再将第二概率分布矩阵输入至另外一个线性层与上述原理类似,最后经过softmax操作得到下一字是否在热词列表中的概率,维度为[B,L,C],L表示文本长度,C为下一字的类别数量,对[B,L,C]取top1概率所对应的类别即可得出下一字类别。
在某些可能实现的方式中,可以利用历史文本的向量与当前文本向量,去做点击运算,得到运算矩阵,历史文本的向量为前一次识别出的初始文本数据对应的向量,然后对运算矩阵进行归一化处理,得到包括历史文本向量的权重和当前文本向量的权重概率分布矩阵。
利用历史文本向量的权重分别去与历史文本中的每一个字的向量相乘,利用当前文本向量的权重分别去与当前文本中每一个字的向量相乘,最后将获得的每个向量累加,输出最终的累加后的向量,将累加后的向量与所述当前文本的向量进行残差连接以及对经过残差连接之后得到的向量进行归一化处理,得到历史输入文本隐层向量。然后通过注意力机制,可以分别述热词隐层向量与每个历史输入文本隐层向量进行融合,获得多个概率分布矩阵。
在某些可能实现的方式中,将第二概率分布矩阵与声学模型输出的概率分布矩阵进行插值处理,将经过插值之后的到的概率分布矩阵进行束搜索。
具体的,对语言模型预测的下一字的概率和声学模型对下一字预测概率进行插值,并进行束搜索,输出预测字。
对语言模型预测的下一字的概率和声学模型对下一字预测概率进行插值,具体可以为声学模型对下一字预测概率加α倍语言模型预测的下一字的概率,其中,α为参数,可以根据需求预先设置,然后将经过插值之后的到的概率分布矩阵进行束搜索,需要说明的是,束搜索设置有束宽(beam size)超参数,假设为k,束搜索是指:对于输出序列任一时间步t′,选取当前时间步条件概率最大的k个字,分别组成k个候选输出序列的首字。具体的,在时间步1时,选取当前时间步条件概率最大的k个字,分别组成k个候选输出序列的首字。在之后的每个时间步,基于上个时间步的k个候选输出序列,从k|Y|个可能的输出序列中选取条件概率最大的k个,作为该时间步的候选输出序列。最终,从各个时间步的候选输出序列中筛选出包含特殊符号“<eos>”的序列,并将其中所有特殊符号“<eos>”后面的子序列舍弃,得到最终候选输出序列的集合,输出预测字的结果。
在某些可能实现的方式中,还可以预先对自动语音识别系统进行预训练。
具体的,获取预训练数据,其中,预训练数据可以从新闻、报纸、评论等开放域文本中提取,电子设备对同一训练批次中的每个样本,以一定概率选中,并从中随机选取连续的Ngram字段作为本批次内的相关热词,然后缓存之前批次中的相关热词,从中选取一定数量的热词作为本批次内的不相关热词。热词占位符,用以处理无热词激励的情况,将相关热词训练数据、不相关热词训练数据以及热词占位符组成热词列表,对每类数据打上对应序列标签,例如,相关热词打的序列标签为1,不相关热词打的序列标签为2。对每个训练批次,以一定概率将批次内相关以及不相关热词输入热词列表中参与训练。然后可以将预训练数据和打上对应序列标签的热词列表中的数据输入模型中进行预训练,这样在海量通用文本数据上采用动态热词注入,可以对模型进行预训练。
在某些可能实现的方式中,在对自动语音识别系统进行预训练之后。为了使模型更加稳定,还可以对模型进行微调,具体的:
获取垂域微调数据,其中,垂域微调数据可以为各个垂域场景下的人机对话文本、人人对话文本、各垂域场景的热词列表,其中,每条垂域文本中提前为其内置在该文本中的热词,没有则为空,垂域场景可以包括本机控制、打电话、听音乐、外卖、快递等。
然后对同一训练批次中的每个样本,以一定概率选中内置的热词作为本批次内的相关热词,然后从各垂域场景的热词列表中选取一定数量的热词作为本批次内的不相关热词。热词占位符,用以处理无热词激励的情况。然后将相关热词训练数据、不相关热词训练数据以及热词占位符组成热词列表,并对每类数据打上对应序列标签。将相关热词训练数据、不相关热词训练数据以及热词占位符组成热词列表,对每类数据打上对应序列标签,例如,相关热词打的序列标签为1,不相关热词打的序列标签为2。最后可以将垂域微调数据和打上对应序列标签的热词列表中的数据输入模型中进行模型微调,这样在各垂域场景的文本上,采用垂域特定热词的静态注入,可以对模型进行微调。
在某些可能的实施方式中,确定语音信号对应的初始文本数据,包括:获取自动语音识别系统前一次得到的语音信号对应的文本数据,作为语音信号对应的初始文本数据。
第二方面,本申请提供了一种电子设备,包括:摄像头处理器和存储器;
所述摄像头用于采集视频流;
在所述存储器中存储有一个或多个计算机程序,所述一个或多个计算机程序包括指令;当所述指令被所述处理器执行时,使得所述电子设备执如第一方面中任一项所述的方法。
第三方面,本申请提供了一种计算机存储介质,包括计算机指令,当所述计算机指令在移动终端上运行时,使得所述电子设备执如第一方面中任一项所述的方法。
第四方面,本申请提供了一种计算机程序产品,包括指令;当所述指令被电子设备运行时,使得所述电子设备执如第一方面中任一项所述的方法。
由上述技术方案可知,本申请具有如下有益效果:
本申请获取热词列表并确定每个音频对应的初始文本数据,对热词列表进行编码,获得热词隐层向量,对每个初始文本数据进行编码,获得多个文本向量,通过注意力机制,分别对热词隐层向量与每个文本向量进行融合,获得多个概率分布矩阵,根据所述概率分布矩阵中预测的每一个字的产生概率,确定输出的文字结果。这样通过引入注意力机制,可以将热词隐层向量与历史输入文本的隐层向量,去做点击运算,形成包括点击值的运算矩阵,然后进行softmax操作,得到热词隐层向量的权重K1和历史输入文本的隐层向量的权重K2的概率分布矩阵,也可以叫做注意力分,进而可以通过对概率分布矩阵进行处理,预测出下一字的概率,这样,无论输入的是哪种场景下的热词,都可以通过与历史输入文本的隐层向量,做点击运算,形成运算矩阵,整个过程无需人工参与,也就可以解决现有技术中语音识别过程,不同场景下的热词激励分数往往不同,每次都需要人工去赋值状态转移分数,增加了相关人员的工作量的问题。
附图说明
图1为本申请实施例提供的一种语音识别方法的应用场景图;
图2为本申请实施例提供的一种电子设备的硬件结构图;
图3为本申请实施例提供的一种电子设备的软件结构示例图;
图4为本申请实施例提供的一种自动语音识别系统的架构图;
图5为本申请实施例提供的一种语音识别方法的流程图;
图6为本申请实施例提供的一种自动语音识别系统的预训练方法的流程图;
图7为本申请实施例提供的一种自动语音识别系统的微调方法的流程图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请实施例中,“一个或多个”是指一个、两个或两个以上;“和/或”,描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请实施例涉及的多个,是指大于或等于两个。需要说明的是,在本申请实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
为了下述各实施例的描述清楚简洁,首先给出相关技术的简要介绍:
语音识别,是人工智能(Artificial Intelligence,AI)领域的一个重要研究方向。自动语音识别(Automatic Speech Recognition,ASR)系统,可部署于端侧设备,实现对用户输入的语音信号、设备播放的语音信号等进行转换,得到文本数据。
通常情况下,现有的自动语音识别系统的架构,可以包括:声学模型以及语言模型。
现有技术中的在热词识别过程中会分别构建top级别的FST图和sub级别的FST图实现热词增强。其中,top级别的FST图一般会结合声学模型的输出、声学模型与语言模型建模单元间的映射词典、Ngram语言模型构建TLG图;sub级别的FST图一般会先使用构建语言模型的分词模型对用户的热词列表进行分词,之后指定分词后每个词的得分,构建热词FST图。在束搜索过程中,若匹配到热词FST图中的对应前缀,则该路径下会得到对应的分数奖励,也就是热词激励分数,从而通过热词激励分数和ASR模型输出的概率进行浅融合,预测下一字的概率。
但是,这种做法一般会通过手动赋值的方式指定热词FST中的状态转移分数,也就相当于热词的权重,而不同场景下的热词激励分数往往不同,每次都需要人工去赋值状态转移分数,增加了相关人员的工作量。
在一些实施例中,电子设备可以是手机、平板电脑、桌面型、膝上型、笔记本电脑、超级移动个人计算机(Ultra-mobile Personal Computer,UMPC)、手持计算机、上网本、个人数字助理(Personal Digital Assistant,PDA)、可穿戴电子设备、智能手表等设备,本申请对上述电子设备的具体形式不做特殊限制。
以下以手机为例,对本申请实施例的电子设备的硬件结构进行介绍。
如图2所示,电子设备100可以包括处理器110,内部存储器120,摄像头130,显示屏140,天线1,天线2,移动通信模块150,无线通信模块160以及音频模块170等。
可以理解的是,本实施例示意的结构并不构成对电子设备100的具体限定。在另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,智能传感集线器(sensorhub)和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
内部存储器120可以用于存储计算机可执行程序代码,可执行程序代码包括指令。处理器110通过运行存储在内部存储器120的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器120可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器120的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备100的各种功能应用以及数据处理。
一些实施例中,内部存储器120存储的是用于语音识别方法的指令以及自动语音识别系统。处理器110可以通过执行存储在内部存储器120中的指令,实现对语音信号的识别。
电子设备100可以通过ISP,摄像头130,视频编解码器,GPU,显示屏140以及应用处理器等实现拍摄功能。
ISP用于处理摄像头130反馈的数据。例如,电子设备拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头130中。
摄像头130用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头130,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
电子设备通过GPU,显示屏140以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏140和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏140用于显示图像,视频等。显示屏140包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oled,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备可以包括1个或N个显示屏140,N为大于1的正整数。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
手机可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。手机可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当手机接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。手机可以设置至少一个麦克风170C。在另一些实施例中,手机可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,手机还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
图3是本申请实施例的电子设备的软件结构示例图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用层,框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用层可以包括一系列应用程序包。如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
框架层为应用层的应用程序提供应用编程接口(application programminginterface,API)和编程框架。框架层包括一些预先定义的函数。如图2所示,框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用层和框架层运行在虚拟机中。虚拟机将应用层和框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
需要说明的是,本申请实施例虽然以Android系统为例进行说明,但是其基本原理同样适用于基于iOS、Windows等操作系统的电子设备。
本申请提供的实施例中,电子设备配置有自动语音识别系统,图4展示了一种自动语音识别系统的架构图。
参见图4,该自动语音识别系统包括:声学模型和语言模型。
声学模型可以包括声学编码器encoder、语言预测模型prector以及联合网络模型Joint。
其中,声学编码器encoder用于对输入的语音信号进行编码,得到声学编码序列。声学编码序列可以理解成为多维向量,示例性的,128×1的向量。
声学编码器encoder可以包括两层二维卷积层和12层的Transformer模块。其中,卷积层的卷积核滤波器数量为64,步长为均为1,卷积核尺寸为(3,3)、(3,3),也就是两个卷积核的大小均为3×3,之后特征送入基于自注意力机制的Transformer模块做高层特征的提取,进行声学特征编码。
语言预测模型Predict通常采用有状态的循环神经网络或者无状态的卷积神经网络来建模,用于建模文本标记之间的时序依赖关系。具体的,针对嵌入层输出的文本编码序列,标记出其与上一次输入到该模型的文本编码序列的依赖关系,以得到文本编码序列。
语言预测模型Predict可以包括两个一维的卷积神经网络K1-CNN和K2-CNN,其中,卷积神经网络K1-CNN的卷积核的大小为1,模拟2gram语言模型;卷积神经网络K2-CNN的卷积核大小为2,模拟3gram语言模型。卷积神经网络K1-CNN和卷积神经网络K2-CNN可并行运行,二者在运行过程中并无关联关系。其中,卷积神经网络K1-CNN和卷积神经网络K2-CNN,可处理输入的向量,得到融合2gram和3gram语言模型信息的高维特征。
可以理解的是,卷积核的大小为1,指代卷积核为1×1;卷积核的大小为2,指代卷积核为2×1。
需要说明的是,因卷积神经网络K1-CNN的卷积核的大小为1,因此,长度为1的向量输入到卷积神经网络K1-CNN之后,卷积神经网络K1-CNN可得到长度为1的高维特征1。因卷积神经网络K2-CNN的卷积核的大小为2,因此,长度为2的向量输入到卷积神经网络K1-CNN之后,卷积神经网络K2-CNN也可得到长度为1的高维特征2。
进一步的,卷积神经网络K1-CNN得到的高维特征1和卷积神经网络K2-CNN得到的高维特征2,可进行组合得到文本编码序列,作为语言预测模型Predict的输出。一些实施例中,高维特征1和高维特征2的组合,可以理解成:高维特征1和高维特征2在对应维度的数值相加,得到文本编码序列,该文本编码序列为1×n的高维矩阵。
联合网络模型Joint用于处理文本编码序列和声学编码序列,得到Transducer概率分布矩阵。
具体地,联合网络模型Joint接收分别来自上一帧语音信号的声学编码序列和预测网络的语言编码序列,进行融合,得到下一字预测结果。
语言模型可以包括:热词编辑模块、历史文本嵌入层、参数共享模块、热词偏置模块、线性层以及Softmax。
热词编辑模块可以包括热词嵌入层以及热词编码器,其中,热词嵌入层可以将输入的热词文本转换成热词特征向量,也可以将长度不一的热词转化为长度相同的热词特征向量,例如,向热词嵌入层中输入100个长度不同的热词,其中长度最长的热词为50,则热词嵌入层可以进行补齐操作,将其与热词的长度补至与长度最长的热词相等,则可以生成个数为100个,长度为50,维度为128的向量矩阵。
热词编码器可以采用BiLSTM或者Transformer结构,将输入的向量矩阵中的每个热词,对每个热词进行隐层表示。
具体的,热词编码器可以利用BiLSTM或者Transformer结构的网络获取热词的上下文信息,例如,以热词为智慧助手为例,其中,慧字的上文信息可以为智字,下文信息可以为助手两个字,可以慧字的上文信息和下文信息,融合到慧字中,以增强慧字的语义的丰富度,这样就可以增强热词中每个字的表达能力,并根据字的隐层特征对每个热词进行表征,生成热词级别的隐层特征表示。
历史文本嵌入层embedding用于对输入的历史文本数据进行编码,得到文本编码序列,文本编码序列可以以向量的形式呈现,也可以叫做得到历史文本在特征空间的嵌入表征。文本编码序列通过掩码自我注意力层,以及残差连接、层归一化等操作获取历史文本对当前时间刻下一字输出的影响。
具体的,将文本编码序列输入掩码自我注意力层,以获取历史文本对当前时间刻下一字输出的影响,以输入的文本编码序列为打开智慧助手为例介绍,通过打开两个字判断对智字的影响,打开对智来说就是历史文本,目的也是为了学习更多历史文本的信息。
进一步的,将历史文本的向量与当前文本向量,也就是要判断的输出字的向量,去做点击运算,形成包括点击值的运算矩阵,对运算矩阵进行softmax操作,得到包括历史文本向量的权重T1和当前文本向量的权重T2的概率分布矩阵,其中,概率分布矩阵的行、列,由历史文本的向量与当前文本向量的长度确定,例如,历史文本为打开,对应历史文本向量的长度为2,当前文本为智对应向量的长度为1,通过两个向量得到的就是一个1×2的概率分布矩阵。
然后用历史文本向量的权重T1分别去与历史文本中的每一个字的向量相乘,用当前文本向量的权重T2分别去与当前文本中每一个字的向量相乘,最后将获得的每个向量累加,输出最终的累加后的向量。
然后将累加后的向量与输入的当前文本的向量相加,也就是残差连接,对经过残差连接之后得到的向量进行归一化处理,得到隐层向量,该隐层向量可以代表历史文本对当前时间刻下一字输出的影响。
热词偏置模块包括掩码交叉注意力层,将热词编码器生成的热词表征与历史输入文本的隐层表示自适应融合,牵引模型判断是否融合热词信息进行预测;
根据热词级别的特征,通过掩码交叉注意力层,以及残差连接、层归一化等操作引入场景化的热词信息,以牵引下一字预测的概率向热词列表中出现的热词偏移。
具体的,与上述掩码自我注意力层原理类似,将经过热词编码器获得的热词隐层向量,和经过历史文本嵌入层、掩码自我注意力层、残差连接、层归一化等操作获得的隐层向量,这里叫做历史输入文本的隐层向量,输入掩码交叉注意力层,以将热词隐层向量和历史输入文本的隐层向量自适应融合。
进一步的,将热词隐层向量与历史输入文本的隐层向量,去做点击运算,形成包括点击值的运算矩阵,例如,热词隐层向量是一个500×D的向量矩阵,其中,500为热词个数,D为每个热词的长度,历史输入文本的隐层向量是一个1×D的向量矩阵,1为历史文本个数,D为每个历史文本的长度,将500×D的热词隐层向量矩阵与1×D的历史输入文本的隐层向量,去做点击运算,得到1×500的运算矩阵,对运算矩阵进行softmax操作,得到包括热词隐层向量的权重K1和历史输入文本的隐层向量的权重K2的概率分布矩阵,其中,概率分布矩阵的行、列,由热词隐层向量和历史输入文本的隐层向量确定,例如,热词隐层向量的长度为2,历史输入文本的隐层向量的长度为1,通过两个向量得到的就是一个1×2的概率分布矩阵,这里也可以叫第一概率分布矩阵。
然后用热词隐层向量的权重K1分别去与热词隐层向量中的每一个热词的向量相乘,用历史输入文本的隐层向量的权重K2分别去与历史输入文本的隐层向量中每一个字的向量相乘,最后将获得的每个向量累加,输出最终的累加后的融合向量。以对热词隐层向量和历史输入文本的隐层向量自适应融合。
然后将累加后的向量与输入的历史输入文本的隐层向量相加,也就是残差连接,对经过残差连接之后得到的向量进行归一化处理,得到融合隐层向量。
这样通过引入注意力机制,可以将热词隐层向量与历史输入文本的隐层向量,去做点击运算,形成包括点击值的运算矩阵,然后进行softmax操作,得到热词隐层向量的权重K1和历史输入文本的隐层向量的权重K2的概率分布矩阵,也可以叫做注意力分,进而可以通过对概率分布矩阵进行处理,预测出下一字的概率,这样,无论输入的是哪种场景下的热词,都可以通过与历史输入文本的隐层向量,做点击运算,形成运算矩阵,整个过程无需人工参与,也就可以解决现有技术中语音识别过程,不同场景下的热词激励分数往往不同,每次都需要人工去赋值状态转移分数,增加了相关人员的工作量的问题。
之后,接入前馈计算、残差连接、层归一化等操作增强特征表达能力,稳定模型训练。堆叠上述模块L次,加深模型的深度,以增强特征表示能力。
具体的,将融合隐层向量输入至第一个线性层,以扩大融合隐层向量的维度,例如融合隐层向量为256维,输入至线性层可以将其维度扩大至1024维,然后将扩大维度之后的融合隐层向量经过激活函数进行非线性操作,然后将经过非线性操作之后的融合隐层向量再经过第二个线性层,将其维度缩小至原来的维度,并输出。然后将经过前馈计算之后得到的融合隐层向量与进行前馈计算之前的融合隐层向量相加,进行残差连接,然后将进行残差连接后得到的向量进行归一化处理,获得第二概率分布矩阵。
在模型的最后一个模块之后分别接入两个线性层加softmax操作,分别生成下一字预测的概率分布和下一字所属类别,即是否在场景化热词列表中的概率。
具体的,将进行前馈计算、归一化处理之后得到的隐层向量,也就是第二概率分布矩阵分别输入至两个线性层,输入至上侧线性层,对隐层向量进行线性处理,以使隐层向量与输出的词表同维度,例如,隐层向量为256维,词表为1024维,词表中的每个维度代表词表里的一个字,通过对隐层向量进行线性处理,使得隐层向量变换为与输出的词表同维度,然后在经过softmax操作,形成概率分布,输出下一字的概率,下一字的概率即上侧softmax后的输出结果,维度为[B,L,N],B表示批次大小,L表示文本长度,N表示词表大小;输入至右侧线性层与输入上侧线性层原理类似,最后经过右侧softmax操作得到下一字是否在热词列表中的概率,即右侧softmax后的输出结果,维度为[B,L,C],L表示文本长度,C为下一字的类别数量,对[B,L,C]取top1概率所对应的类别即可得出下一字类别。
参数共享模块,设置下一字预测中的线性层与热词嵌入层的参数共享,以增强热词的特征表示与预测的下一字间的关联关系,提升热词的识别率。
电子设备可以利用自动语音识别系统对语音信号进行识别,得到该语音信号对应的文本数据,以下结合图4展示的自动语音识别系统的架构,对语音识别的方法的流程进行介绍。
图5展示了本申请实施例提供的一种语音识别方法的流程图。该方法可以应用于图4架构的包括声学模型以及语言模型的自动语音识别系统,以解决现有的语音识别过程中,不同场景下的热词激励分数往往不同,每次都需要人工去赋值状态转移分数,增加了相关人员的工作量的问题。
其中,声学模型和与语言模型可以同时对下一字产生的概率进行预测,进而可以根据两个模型的预测结果,共同输出预测字,为了使得本申请的技术方案更加清楚、易于理解,下面以电子设备的角度,结合附图对本申请实施例提供的图像处理方法进行介绍。具体的,如图5所示,该语音识别方法,包括步骤:
S501a:获取热词列表以及语音信号对应的初始文本数据。
自动语音识别系统被开启之后,可获取输入到该自动语音识别系统的语音信号。示例性的,如图1所示的应用场景中,用户说出想要听周杰伦的枫,电子设备可以获取用户说出的语音信号,显示屏可以显示语音对应的文本数据。因此,电子设备需控制自动语音识别系统运行,自动语音识别系统被开启之后,可获取用户输入的语音信号。
当然,在其他AI应用场景,如打电话的场景、语音助手的场景等,电子设备也会开启自动语音识别系统,自动语音识别系统被启动之后,获取语音信号。
需要说明的是,语音信号对应的初始文本数据,有下述解释:
针对自动语音识别系统首次被调用执行语音识别方法,该自动语音识别系统首次获取的语音信号对应的初始文本数据为空白字符。从第二次获取到语音信号开始,该语音信号对应的初始文本数据为:自动语音识别系统的联合网络模型Joint前一次预测得到的语音信号对应的文本数据。
例如,以打开智慧助手为例介绍,自动语音识别系统首次获取的语音信号为“打”该语音词对应的初始文本数据为空白字符。待自动语音识别系统第二次获取的语音信号为“开”,该语音信号对应的初始文本数据则为第一次的预测结果,即文字“打”。自动语音识别系统第三次获取的语音信号为“语”,该语音信号对应的初始文本数据则为第二次的预测结果,即文字“开”。
自动语音识别系统还需要获取热词列表,热词列表可以包括互联网上的热词,例如移动网络、NFC、智慧助手等。
S502a:将热词列表输入至热词编码模块,获得热词隐层向量,将语音信号对应的初始文本数据输入至历史文本嵌入层,获得文本编码序列。
热词编辑模块可以包括热词嵌入层以及热词编码器,其中,热词嵌入层可以将输入的热词文本转换成热词特征向量,也可以将长度不一的热词转化为长度相同的热词特征向量,
热词编码器可以采用BiLSTM或者Transformer结构,将输入的向量矩阵中的每个热词,对每个热词进行隐层表示。
具体的,热词编码器可以利用BiLSTM或者Transformer结构的网络获取热词的上下文信息,例如,以热词为智慧助手为例,其中,慧字的上文信息可以为智字,下文信息可以为助手两个字,可以慧字的上文信息和下文信息,融合到慧字中,以增强慧字的语义的丰富度,这样就可以增强热词中每个字的表达能力,并根据字的隐层特征对每个热词进行表征,生成热词级别的隐层特征表示。
自动语音识别系统将语音信号对应的初始文本数据输入至历史文本嵌入层,使得历史文本嵌入层embedding对输入的历史文本数据进行编码,得到文本编码序列,也可以叫做得到历史文本在特征空间的嵌入表征。
S503a:将所述文本编码序列输入至掩码自我注意力层,并对得到的向量进行残差、归一化处理,得到历史文本的隐层向量。
自动语音识别系统将文本编码序列输入掩码自我注意力层,以获取历史文本对当前时间刻下一字输出的影响,以输入的文本编码序列为打开智慧助手为例介绍,通过打开两个字判断对智字的影响,打开对智来说就是历史文本,目的也是为了学习更多历史文本的信息。
进一步的,将历史文本的向量与当前文本向量,也就是要判断的输出字的向量,去做点击运算,形成包括点击值的运算矩阵,对运算矩阵进行softmax操作,得到包括历史文本向量的权重T1和当前文本向量的权重T2的概率分布矩阵,其中,概率分布矩阵的行、列,由历史文本的向量与当前文本向量的长度确定,例如,历史文本为打开,对应历史文本向量的长度为2,当前文本为智对应向量的长度为1,通过两个向量得到的就是一个1×2的概率分布矩阵。
然后用历史文本向量的权重T1分别去与历史文本中的每一个字的向量相乘,用当前文本向量的权重T2分别去与当前文本中每一个字的向量相乘,最后将获得的每个向量累加,输出最终的累加后的向量。
然后将累加后的向量与输入的当前文本的向量相加,也就是残差连接,对经过残差连接之后得到的向量进行归一化处理,得到隐层向量,该隐层向量可以代表历史文本对当前时间刻下一字输出的影响,这里的隐层向量也可以叫做历史文本的隐层向量。
S504a:将历史文本嵌入层和热词隐层向量输入至热词偏置模块,进行自适应融合。
热词偏置模块包括掩码交叉注意力层,将热词编码器生成的热词表征与历史输入文本的隐层表示自适应融合。
根据热词级别的特征,通过掩码交叉注意力层,以及残差连接、层归一化等操作引入场景化的热词信息,以牵引下一字预测的概率向热词列表中出现的热词偏移。
具体的,与上述掩码自我注意力层原理类似,将经过热词编码器获得的热词隐层向量,和经过历史文本嵌入层、掩码自我注意力层、残差连接、层归一化等操作获得的隐层向量,这里叫做历史输入文本的隐层向量,输入掩码交叉注意力层,以将热词隐层向量和历史输入文本的隐层向量自适应融合。
进一步的,将热词隐层向量与历史输入文本的隐层向量,去做点击运算,形成包括点击值的运算矩阵,对运算矩阵进行softmax操作,得到包括热词隐层向量的权重K1和历史输入文本的隐层向量的权重K2的概率分布矩阵,其中,概率分布矩阵的行、列,由热词隐层向量和历史输入文本的隐层向量确定,例如,热词隐层向量的长度为2,历史输入文本的隐层向量的长度为1,通过两个向量得到的就是一个1×2的概率分布矩阵。
然后用热词隐层向量的权重K1分别去与热词隐层向量中的每一个热词的向量相乘,用历史输入文本的隐层向量的权重K2分别去与历史输入文本的隐层向量中每一个字的向量相乘,最后将获得的每个向量累加,输出最终的累加后的融合向量。以对热词隐层向量和历史输入文本的隐层向量自适应融合。
然后将累加后的向量与输入的历史输入文本的隐层向量相加,也就是残差连接,对经过残差连接之后得到的向量进行归一化处理,得到融合隐层向量。
S505a:将经过自适应融合之后得到向量输入至线性层进行维度转换,并进行softmax处理,得到语言模型预测的下一字的概率。
自动语音识别系统可以将融合隐层向量输入至上侧线性层,对融合隐层向量进行线性处理,以使融合隐层向量与输出的词表同维度,例如,融合隐层向量为256维,词表为1024维,词表中的每个维度代表词表里的一个字,通过对融合隐层向量进行线性处理,使得融合隐层向量变换为与输出的词表同维度,然后在经过softmax操作,形成概率分布矩阵,输出预测的下一字的概率,下一字的概率即上侧softmax后的输出结果,维度为[B,L,N],B表示批次大小,L表示文本长度,N表示词表大小。将融合隐层向量输入至右侧线性层与输入上侧线性层原理类似,最后经过右侧softmax操作得到下一字是否在热词列表中的概率,即右侧softmax后的输出结果,维度为[B,L,C],L表示文本长度,C为下一字的类别数量,对[B,L,C]取top1概率所对应的类别即可得出下一字类别。
在某些可能实现的方式中,为了增强特征表达能力,稳定模型训练。还可以在融合隐层向量输入至线性层之前进行前馈计算、残差连接、层归一化等操作。
具体的,将融合隐层向量输入至第一个线性层,以扩大融合隐层向量的维度,例如融合隐层向量为256维,输入至线性层可以将其维度扩大至1024维,然后将扩大维度之后的融合隐层向量经过激活函数进行非线性操作,然后将经过非线性操作之后的融合隐层向量再经过第二个线性层,将其维度缩小至原来的维度,并输出。然后将经过前馈计算之后得到的融合隐层向量与进行前馈计算之前的融合隐层向量相加,进行残差连接,然后将进行残差连接后得到的向量进行归一化处理,将输出的隐层向量分别接入两个线性层加softmax操作,输出下一字预测的概率分布和下一字所属类别。
具体的,这里可以采用IO标签的方式表示预测的下一字是否在给定的热词列表中,1表示不在,2表示在,例如打开智慧助手可以表示112222。
更多地,此处还可采用BIO标签对下一字是否在给定的热词列表中进行表示,例如,112222可使用112333进行表示,1表示可以不在,2可以表示命中热词的第一个字,3可以表示在热词中除第一个字以外的其他字。
S501a-S505a为语言模型中预测的下一字的概率,下面通过步骤S501b-S505b介绍声学模型中预测下一字的概率。
S501b:将获得的语音信号输入至声学编码器encoder处理,得到声学编码序列。
其中,针对每一个语音信号,声学编码器encoder可对其进行编码,得到该语音信号的声学编码序列。
在某些可能实现的方式中,若一个语音信号包括多个文字的语音音频,可先将其拆分为多个语音音频。将拆分后的每个语音音频分别输入到声学编码器,由声学编码器得到每个语音音频的声学编码序列。例的,语音信号为:“打开智慧助手”,将其进行单个字拆分,分别得到“打”、“开”、“智”、“慧”、“助”以及“手”等语音音频。
S502b:对语音信号对应的初始文本数据进行拆分,得到长度为1的字符串。
针对每一个初始文本数据,将其拆分为长度为1。例如针对“打开”文本,将其拆分为长度为1的字符串为“打”“开”。
S503b:将长度为1的字符串输入至嵌入层embedding,进行编码,得到长度为1的embedding向量。
S504b:将长度为1的embedding向量输入至语言预测模型Predict处理,得到文本编码序列。
调用卷积神经网络处理长度为1的embedding向量,得到文本编码序列
S505b:调用联合网络模型joint处理声学编码序列和文本编码序列,预测得到声学模型对下一字预测概率。
S506:对语言模型预测的下一字的概率和声学模型对下一字预测概率进行插值,并进行束搜索,输出预测字。
对语言模型预测的下一字的概率和声学模型对下一字预测概率进行插值,具体可以为声学模型对下一字预测概率加α倍语言模型预测的下一字的概率,其中,α为参数,可以根据需求预先设置。
然后将经过插值之后的到的概率分布矩阵进行束搜索,需要说明的是,束搜索设置有束宽(beam size)超参数,假设为k,束搜索是指:对于输出序列任一时间步t′,选取当前时间步条件概率最大的k个字,分别组成k个候选输出序列的首字。具体的,在时间步1时,选取当前时间步条件概率最大的k个字,分别组成k个候选输出序列的首字。在之后的每个时间步,基于上个时间步的k个候选输出序列,从k|Y|个可能的输出序列中选取条件概率最大的k个,作为该时间步的候选输出序列。最终,从各个时间步的候选输出序列中筛选出包含特殊符号“<eos>”的序列,并将其中所有特殊符号“<eos>”后面的子序列舍弃,得到最终候选输出序列的集合,输出预测字的结果。
在某些可能实现的方式中,电子设备在利用自动语音识别系统进行语音信号识别并转换为对应的文字之前,可以先对自动语音识别系统进行预训练。以下结合图5,对图6展示的自动语音识别系统的预训练方法进行介绍。如图6所示,自动语音识别系统的预训练方法,包括如下步骤:
S601:获取预训练数据、相关热词训练数据、不相关热词训练数据以及热词占位符。
电子设备获取预训练数据,其中,预训练数据可以从新闻、报纸、评论等开放域文本中提取。
电子设备对同一训练批次中的每个样本,以一定概率选中,并从中随机选取连续的Ngram字段作为本批次内的相关热词,然后缓存之前批次中的相关热词,从中选取一定数量的热词作为本批次内的不相关热词。热词占位符,用以处理无热词激励的情况
S602:将相关热词训练数据、不相关热词训练数据以及热词占位符组成热词列表,并对每类数据打上对应序列标签。
将相关热词训练数据、不相关热词训练数据以及热词占位符组成热词列表,对每类数据打上对应序列标签,例如,相关热词打的序列标签为1,不相关热词打的序列标签为2。
对每个训练批次,以一定概率将批次内相关以及不相关热词输入热词列表中参与训练。
S603:将预训练数据和打上对应序列标签的热词列表中的数据输入模型中进行预训练。
电子设备可以将预训练数据和打上对应序列标签的热词列表中的数据输入模型中进行预训练,这样在海量通用文本数据上采用动态热词注入,可以对模型进行预训练。
在对自动语音识别系统进行预训练之后。为了使模型更加稳定,还可以对模型进行微调,对图7展示的自动语音识别系统的微调方法进行介绍。如图7所示,自动语音识别系统的微调方法,包括如下步骤:
S701:获取垂域微调数据、相关热词训练数据、不相关热词训练数据以及热词占位符。
电子设备获取垂域微调数据,其中,垂域微调数据可以为各个垂域场景下的人机对话文本、人人对话文本、各垂域场景的热词列表,其中,每条垂域文本中提前为其内置在该文本中的热词,没有则为空,垂域场景可以包括本机控制、打电话、听音乐、外卖、快递等。
电子设备对同一训练批次中的每个样本,以一定概率选中内置的热词作为本批次内的相关热词,然后从各垂域场景的热词列表中选取一定数量的热词作为本批次内的不相关热词。热词占位符,用以处理无热词激励的情况。
S702:将相关热词训练数据、不相关热词训练数据以及热词占位符组成热词列表,并对每类数据打上对应序列标签。
将相关热词训练数据、不相关热词训练数据以及热词占位符组成热词列表,对每类数据打上对应序列标签,例如,相关热词打的序列标签为1,不相关热词打的序列标签为2。
对每个训练批次,以一定概率将批次内相关以及不相关热词输入热词列表中参与训练。
S703:将垂域微调数据和打上对应序列标签的热词列表中的数据输入模型中进行模型微调。
电子设备可以将垂域微调数据和打上对应序列标签的热词列表中的数据输入模型中进行模型微调,这样在各垂域场景的文本上,采用垂域特定热词的静态注入,可以对模型进行微调。
本申请实施例还提供了一种计算机存储介质,包括计算机指令,当所述计算机指令在移动终端上运行时,使得所述电子设备执如上述实施例中任一项所述的方法。
本申请实施例还提供了一种计算机程序产品,包括指令;当所述指令被电子设备运行时,使得所述电子设备执如上述实施例中任一项所述的方法。
本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (12)

1.一种语音识别方法,其特征在于,应用于电子设备,所述电子设备配置有自动语音识别系统;所述语音识别方法包括:
获取热词列表以及语音信号;所述语音信号包括多个音频;
确定每个音频对应的初始文本数据;
对所述热词列表进行编码,获得热词隐层向量;对每个所述初始文本数据进行编码,获得多个文本向量;
通过注意力机制,分别将所述热词隐层向量与每个文本向量进行融合,获得多个概率分布矩阵;
根据所述概率分布矩阵中预测的每一个字的产生概率,确定输出的文字结果。
2.根据权利要求1所述的方法,其特征在于,所述通过注意力机制,分别将所述热词隐层向量与每个文本向量进行融合,获得多个概率分布矩阵,包括:
将所述热词隐层向量与每个文本向量分别进行点击运算,获得运算矩阵;
对所述每个运算矩阵进行归一化处理,获得多个第一概率分布矩阵。
3.根据权利要求2所述的方法,其特征在于,每个所述概率分布矩阵包括:热词隐层向量的权重和对应文本向量的权重,在所述根据所述概率分布矩阵中预测的每一个字的产生概率,确定输出的文字结果之前,所述方法还包括:
利用所述热词隐层向量的权重分别去与热词隐层向量中的每一个热词的向量相乘,利用所述文本向量的权重分别去与对应文本向量中每一个字的向量相乘,最后将获得的每个向量累加,输出最终的累加后的融合隐层向量;
所述根据所述概率分布矩阵中预测的每一个字的产生概率,确定输出的文字结果,包括:
根据所述融合隐层向量,确定输出的文字结果。
4.根据权利要求3所述的方法,其特征在于,在所述根据所述融合隐层向量,确定输出的文字结果之前,所述方法还包括:
对所述融合隐层向量进行前馈计算;
将进行前馈计算之后获得的融合隐层向量与进行前馈计算的融合隐层向量进行残差连接;
对进行残差连接之后获得的隐层向量进行归一化处理;
所述根据所述融合隐层向量,确定输出的文字结果,包括:
将经过归一化处理之后得到的隐层向量的维度转换至与所述热词列表的维度相同;
将转换维度之后的隐层向量进行归一化处理,获得第二概率分布矩阵;
根据所述第二概率分布矩阵,确定输出的文字结果。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
对所述经过归一化处理之后得到的隐层向量进行维度转换以及归一化处理,确定历史文本的类别。
6.根据权利要求4任一项所述的方法,其特征在于,在通过注意力机制,分别将所述热词隐层向量与每个文本向量进行融合,获得多个概率分布矩阵之前,所述方法还包括:
利用历史文本的向量与当前文本向量,去做点击运算,得到运算矩阵,所述历史文本的向量为前一次识别出的初始文本数据对应的向量;
对运算矩阵进行归一化处理,得到包括历史文本向量的权重和当前文本向量的权重概率分布矩阵。
利用所述历史文本向量的权重分别去与历史文本中的每一个字的向量相乘,利用当前文本向量的权重分别去与当前文本中每一个字的向量相乘,最后将获得的每个向量累加,输出最终的累加后的向量;
将所述累加后的向量与所述当前文本的向量进行残差连接以及对经过残差连接之后得到的向量进行归一化处理,得到历史输入文本隐层向量;
所述通过注意力机制,分别将所述热词隐层向量与每个文本向量进行融合,获得多个概率分布矩阵,包括:
通过注意力机制,分别将所述热词隐层向量与每个历史输入文本隐层向量进行融合,获得多个概率分布矩阵。
7.根据权利要求6所述的方法,其特征在于,所述自动语音识别系统包括:声学模型和语言模型,根据所述第二概率分布矩阵,确定输出的文字结果,包括:
将所述第二概率分布矩阵与所述声学模型输出的概率分布矩阵进行插值处理;
将经过插值之后的到的概率分布矩阵进行束搜索,选取概率最大的k个字符,得到输出序列的集合,将所述输出序列的集合作为预测字的结果输出。
8.根据权利要求1-7任一项所述的方法,其特征在于,在所述获取热词列表以及语音信号之前,所述方法还包括:
获取预训练数据、相关热词训练数据、不相关热词训练数据以及热词占位符;
将所述相关热词训练数据、所述不相关热词训练数据以及所述热词占位符组成热词列表,并对每类数据打上对应序列标签;
将所述预训练数据和打上对应序列标签的热词列表中的数据输入模型中进行预训练。
9.根据权利要求1-7任一项所述的方法,在所述获取热词列表以及语音信号之前,所述方法还包括:
获取垂域微调数据、相关热词训练数据、不相关热词训练数据以及热词占位符;
将所述相关热词训练数据、所述不相关热词训练数据以及所述热词占位符组成热词列表,并对每类数据打上对应序列标签;
将所述垂域微调数据和打上对应序列标签的热词列表中的数据输入模型中进行模型微调。
10.根据权利要求1-9任一项所述的方法,其特征在于,所述确定每个音频对应的初始文本数据,包括:
获取所述自动语音识别系统前一次得到的语音信号对应的文本数据,作为所述语音信号对应的初始文本数据。
11.一种电子设备,其特征在于,包括:处理器和存储器;
其中,在所述存储器中存储有一个或多个计算机程序,所述一个或多个计算机程序包括指令;当所述指令被所述处理器执行时,使得所述电子设备执如权利要求1-10任一项所述的方法。
12.一种计算机存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,所述电子设备执行如权利要求1-10任一项所述的方法。
CN202310192991.7A 2023-02-20 2023-02-20 一种语音识别方法、电子设备以及介质 Pending CN117116264A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310192991.7A CN117116264A (zh) 2023-02-20 2023-02-20 一种语音识别方法、电子设备以及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310192991.7A CN117116264A (zh) 2023-02-20 2023-02-20 一种语音识别方法、电子设备以及介质

Publications (1)

Publication Number Publication Date
CN117116264A true CN117116264A (zh) 2023-11-24

Family

ID=88811646

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310192991.7A Pending CN117116264A (zh) 2023-02-20 2023-02-20 一种语音识别方法、电子设备以及介质

Country Status (1)

Country Link
CN (1) CN117116264A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117437909A (zh) * 2023-12-20 2024-01-23 慧言科技(天津)有限公司 基于热词特征向量自注意力机制的语音识别模型构建方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180182376A1 (en) * 2016-12-22 2018-06-28 Apple Inc. Rank-reduced token representation for automatic speech recognition
US20200043483A1 (en) * 2018-08-01 2020-02-06 Google Llc Minimum word error rate training for attention-based sequence-to-sequence models
CN112489635A (zh) * 2020-12-03 2021-03-12 杭州电子科技大学 一种基于增强注意力机制的多模态情感识别方法
CN113362813A (zh) * 2021-06-30 2021-09-07 北京搜狗科技发展有限公司 一种语音识别方法、装置和电子设备
CN113470619A (zh) * 2021-06-30 2021-10-01 北京有竹居网络技术有限公司 语音识别方法、装置、介质及设备
JP2021189429A (ja) * 2020-05-28 2021-12-13 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド 音声認識方法及び装置、電子機器並びに記憶媒体
CN113838468A (zh) * 2021-09-24 2021-12-24 中移(杭州)信息技术有限公司 流式语音识别方法、终端设备及介质
CN114097026A (zh) * 2019-05-06 2022-02-25 谷歌有限责任公司 语音识别的上下文偏置
WO2022141706A1 (zh) * 2020-12-31 2022-07-07 科大讯飞股份有限公司 语音识别方法、装置及存储介质
EP4064277A1 (en) * 2021-03-23 2022-09-28 Beijing Baidu Netcom Science And Technology Co. Ltd. Method and apparatus for training speech recognition model, device and storage medium
CN115440197A (zh) * 2022-08-31 2022-12-06 中国人民解放军战略支援部队信息工程大学 基于领域分类和热词前缀树集束搜索的语音识别方法及系统

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180182376A1 (en) * 2016-12-22 2018-06-28 Apple Inc. Rank-reduced token representation for automatic speech recognition
US20200043483A1 (en) * 2018-08-01 2020-02-06 Google Llc Minimum word error rate training for attention-based sequence-to-sequence models
CN114097026A (zh) * 2019-05-06 2022-02-25 谷歌有限责任公司 语音识别的上下文偏置
JP2021189429A (ja) * 2020-05-28 2021-12-13 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド 音声認識方法及び装置、電子機器並びに記憶媒体
CN112489635A (zh) * 2020-12-03 2021-03-12 杭州电子科技大学 一种基于增强注意力机制的多模态情感识别方法
WO2022141706A1 (zh) * 2020-12-31 2022-07-07 科大讯飞股份有限公司 语音识别方法、装置及存储介质
EP4064277A1 (en) * 2021-03-23 2022-09-28 Beijing Baidu Netcom Science And Technology Co. Ltd. Method and apparatus for training speech recognition model, device and storage medium
CN113362813A (zh) * 2021-06-30 2021-09-07 北京搜狗科技发展有限公司 一种语音识别方法、装置和电子设备
CN113470619A (zh) * 2021-06-30 2021-10-01 北京有竹居网络技术有限公司 语音识别方法、装置、介质及设备
CN113838468A (zh) * 2021-09-24 2021-12-24 中移(杭州)信息技术有限公司 流式语音识别方法、终端设备及介质
CN115440197A (zh) * 2022-08-31 2022-12-06 中国人民解放军战略支援部队信息工程大学 基于领域分类和热词前缀树集束搜索的语音识别方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ZHANG, LIN LIN: "Design and implementation of word and speech libraries and nhmm algorithm in chinese speech-to-text conversion", 《SOUTHWEST JIAOTONG UNIVERSITY 》, 31 December 2011 (2011-12-31) *
潘嘉: "深度学习语音识别系统中的自适应方法研究", 《中国博士学位论文全文数据库》, 15 January 2021 (2021-01-15) *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117437909A (zh) * 2023-12-20 2024-01-23 慧言科技(天津)有限公司 基于热词特征向量自注意力机制的语音识别模型构建方法
CN117437909B (zh) * 2023-12-20 2024-03-05 慧言科技(天津)有限公司 基于热词特征向量自注意力机制的语音识别模型构建方法

Similar Documents

Publication Publication Date Title
CN115145529B (zh) 语音控制设备的方法及电子设备
CN113191143B (zh) 多音字消歧和韵律控制联合方法、系统以及电子设备
CN113806473A (zh) 意图识别方法和电子设备
CN117153181B (zh) 语音降噪方法、设备及存储介质
CN111460231A (zh) 电子设备以及电子设备的搜索方法、介质
CN114691839A (zh) 一种意图槽位识别方法
CN117116264A (zh) 一种语音识别方法、电子设备以及介质
CN116682432B (zh) 语音识别方法、电子设备及可读介质
US20220270604A1 (en) Electronic device and operation method thereof
CN112802485B (zh) 语音数据处理方法、装置、计算机设备及存储介质
KR20220138669A (ko) 개인화 오디오 정보를 제공하기 위한 전자 장치 및 방법
WO2023078221A1 (zh) 语言翻译方法及电子设备
CN116682420B (zh) 语音识别方法、电子设备及可读介质
CN116030817B (zh) 语音唤醒方法、设备及存储介质
CN116993619B (zh) 图像处理方法及相关设备
CN117076702B (zh) 图像查找方法及电子设备
CN117133281B (zh) 语音识别方法和电子设备
CN117097793B (zh) 一种消息推送方法、终端及服务器
US20220189463A1 (en) Electronic device and operation method thereof
CN114495988B (zh) 一种输入信息的情感处理方法及电子设备
WO2024051729A1 (zh) 一种音译方法及电子设备
WO2024087202A1 (zh) 一种搜索方法、模型训练方法、装置及存储介质
KR20220137437A (ko) 전자 장치 및 전자 장치의 동작 방법
CN114783398A (zh) 音乐生成方法、装置、设备及存储介质
CN117079653A (zh) 语音识别方法、语音识别模型的训练方法、设备及介质

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