CN111243604B - 支持多唤醒词的说话人识别神经网络模型的训练方法、说话人识别方法及系统 - Google Patents
支持多唤醒词的说话人识别神经网络模型的训练方法、说话人识别方法及系统 Download PDFInfo
- Publication number
- CN111243604B CN111243604B CN202010032282.9A CN202010032282A CN111243604B CN 111243604 B CN111243604 B CN 111243604B CN 202010032282 A CN202010032282 A CN 202010032282A CN 111243604 B CN111243604 B CN 111243604B
- Authority
- CN
- China
- Prior art keywords
- intermediate representation
- neural network
- network model
- audio
- data
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification
- G10L17/04—Training, enrolment or model building
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification
- G10L17/06—Decision making techniques; Pattern matching strategies
- G10L17/08—Use of distortion metrics or a particular distance between probe pattern and reference templates
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification
- G10L17/18—Artificial neural networks; Connectionist approaches
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
- G10L2015/0638—Interactive procedures
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
Abstract
本发明公开一种支持多唤醒词的说话人识别方法,其包括构建用于说话人识别的神经网络模型,并对构建的神经网络模型进行训练;对注册音频,利用训练好的神经网络模型的主干部分提取出其对应的中间表示存储;在获取到实时音频数据时,通过训练好的神经网络模型提取出实时音频数据的中间表示,并将其与注册音频的中间表示进行对比,以确定实时音频的说话人与注册音频是否相同。根据本发明公开的方案不但能够实现支持多唤醒词的说话人识别,而且能够避免针对不同的唤醒词均收集很多训练数据的限制,同时也避免了训练和存储多个模型的弊端,实现多个唤醒词共用一个神经网络模型进行准确的说话人识别,降低了多个特定唤醒词说话人识别系统的实现成本。
Description
技术领域
本发明涉及智能语音技术领域,特别是一种支持多唤醒词的说话人识别神经网络模型的训练方法,以及应用该神经网络模型进行说话人识别的方法及系统。
背景技术
近年来,随着智能语音技术的发展,基于智能语音的产品层出不穷。这些语音产品一般都是基于唤醒词进行短语音身份认证的。市面上已有的语音产品如智能手机或者智能音箱的语音唤醒及说话人识别模块,一般针对单个唤醒词训练出一个神经网络说话人模型,即使用包含单个唤醒词的音频所构成的训练集,训练一个神经网络,目标是确认两段文本对应固定唤醒词的音频是否来自同一说话人,因而这些已有语音产品一般只允许使用单个唤醒词进行唤醒,缺少了灵活性和个性,如苹果手机的“Hey,Siri”这一单唤醒词,在机主注册之后,只响应机主针对该唤醒词的音频,对其他人说的“Hey,Siri”这一音频则不响应。如果需要支持多个唤醒词,采用现有的实现方案就需要训练多个单唤醒词模型,根据不同的唤醒词调用不同的模型进行说话人识别。而使用多个单唤醒词模型去支持多个唤醒词的身份认证,会使训练数据收集难度和模型资源大小成倍增加,增加部署的困难。并且如果针对某个唤醒词模型的训练数据不够多,就会导致该唤醒词下系统准确度不高。
发明内容
为了克服现有方案的上述缺陷,发明人想到构建一个既能够实现对多个唤醒词的训练数据进行共享,又能够实现基于唤醒词的不同进行分类识别的神经网络说话人模型,从而在避免增加训练数据收集难度和模型资源负担的基础上,实现对多个唤醒词的说话人的准确识别。
根据本发明的第一个方面,提供了一种支持多唤醒词的说话人神经网络模型的训练方法,其包括
对设置的多个不同唤醒词分别收集来自多个说话人的音频数据进行数据处理,生成训练数据集;
构建用于说话人识别的神经网络模型,利用所述训练数据集对构建的神经网络模型进行训练,其实现为包括
构建一个具有一个主干部分和与设置的多个唤醒词分别一一对应的多个分类层的神经网络模型;
从训练数据集中获取训练数据进行以下训练过程,直至神经网络模型的参数收敛至预设范围:
将训练数据输入所述主干部分,并获取主干部分输出的中间表示;
将中间表示按唤醒词进行分类汇集,形成各唤醒词的中间表示集;
将各唤醒词的中间表示集的数据分别输入到与唤醒词对应的分类层,并在各分类层分别使用损失函数进行反向传播;
采用梯度下降法对神经网络模型的参数进行更新。
根据本发明的第二个方面,提供了一种支持多唤醒词的说话人识别方法,其包括
构建用于说话人识别的神经网络模型,并对构建的神经网络模型进行训练,其中,所述神经网络模型包括一个主干部分和与设置的多个唤醒词分别一一对应的多个分类层;
对注册音频,使用训练好的所述神经网络模型的主干部分提取出其对应的中间表示;
在获取到实时音频数据时,使用训练好的所述神经网络模型的主干部分对所述实时音频数据提取中间表示;
获取注册音频的中间表示,将提取出的实时音频数据的中间表示与注册音频的中间表示进行比较,根据两者的相似度,确定是否为同一说话人。
根据本发明的第三个方面,提供了一种支持多唤醒词的说话人识别系统,其包括神经网络模型,其中,所述神经网络模型通过上述的训练方法训练生成;
音频注册模块,用于对注册音频,使用所述神经网络模型的主干部分提取出其对应的中间表示;
说话人识别模块,用于在获取到实时音频数据时,基于所述神经网络模型确定所述音频数据与注册音频是否为同一说话人,其实现为包括
中间表示提取单元,用于使用所述神经网络模型的主干部分对所述实时音频数据提取中间表示;和
识别单元,用于获取注册音频的中间表示,将提取出的实时音频数据的中间表示与注册音频的中间表示分别进行比较,根据二者的相似度,确定是否为同一说话人。
根据本发明的第四个方面,提供了一种电子设备,其包括:至少一个处理器,以及与至少一个处理器通信连接的存储器,其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述方法的步骤。
根据本发明的第五个方面,提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
本发明实施例的方案,不但能够实现多唤醒词的唤醒识别,满足用户需求,而且还能够避免针对不同的唤醒词均收集很多训练数据的难度,同时也避免了训练和存储多个模型的弊端,实现多个唤醒词共用一个神经网络模型进行准确的说话人识别,降低了多唤醒词下对说话人进行准确识别的实现成本。而且,对于某些唤醒词,如果收集到的训练数据不够,那么单独训练一个单唤醒词说话人识别模型的准确度会比较差,而采用本发明实施例使用的模型结构,其他唤醒词的数据共同训练了模型的主干部分,对于该唤醒词的训练相当于一种数据增强,这种训练数据欠缺的唤醒词的说话人识别准确度依然可以得到提高。
附图说明
图1为本发明一实施方式的支持多唤醒词的说话人识别方法的方法流程图;
图2为图1所示实施方式中的模型训练过程的方法流程示意图;
图3为本发明一实施方式的支持多唤醒词的说话人识别系统的框架结构图;
图4为本发明一实施方式的电子设备结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
在本发明中,“模块”、“装置”、“系统”等指应用于计算机的相关实体,如硬件、硬件和软件的组合、软件或执行中的软件等。详细地说,例如,组件可以、但不限于是运行于处理器的过程、处理器、对象、可执行组件、执行线程、程序和/或计算机。还有,运行于服务器上的应用程序或脚本程序、服务器都可以是组件。一个或多个组件可在执行的过程和/或线程中,并且组件可以在一台计算机上本地化和/或分布在两台或多台计算机之间,并可以由各种计算机可读介质运行。组件还可以根据具有一个或多个数据包的信号,例如,来自一个与本地系统、分布式系统中另一组件交互的,和/或在因特网的网络通过信号与其它系统交互的数据的信号通过本地和/或远程过程来进行通信。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”,不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
由于本发明实施例涉及的说话人识别方案可以应用于任何具有智能语音交互功能的智能设备上,使得智能设备上承载的语音产品具有支持说话人利用多个唤醒词进行语音唤醒的功能,例如手机、手表、耳机、个人PC电脑等,但是本发明的适用范围并不局限于此。通过本发明实施例提供的方案,能够实现在多个特定唤醒词条件下,对说话人进行识别,并且能够在避免增加训练数据收集难度和模型资源负担的基础上,实现对多个唤醒词的说话人的准确识别。且能进一步方便开发者根据用户需求来进行多个唤醒词设置,满足用户的不同需求,提高交互时的用户体验。
下面结合附图对本发明作进一步详细的说明。
图1示意性地显示了根据本发明的一种实施方式的支持多唤醒词的说话人识别方法的方法流程,如图1所示,本实施例的方法包括如下步骤:
步骤S101:构建用于说话人识别的神经网络模型,并对构建的神经网络模型进行训练。其中,构建的神经网络模型包括一个主干部分和与设置的多个唤醒词分别一一对应的多个分类层,通过该设计方案能够实现基于一个神经网络模型来支持对多个注册唤醒词的说话人识别。并且本设计方案能够使得在主干部分共享训练数据,这样在主干部分,采用其他唤醒词的数据共同训练了模型的主干部分,对于该唤醒词的训练相当于一种数据增强,这样,使得训练数据欠缺的唤醒词的说话人识别的准确度也可以得到提高。而同时,本设计方案在分类层则基于不同的唤醒词分别进行训练和反向传播,相当于对多个唤醒词的一种正则化,使最终训练好的模型泛化性能更好,更加鲁棒。图2示意性地显示了本发明一种实施方式的对该神经网络模型的训练方法,其实现为包括
步骤S201:对多个不同的唤醒词分别采集多个说话人的音频数据进行数据处理,生成训练数据集。本发明实施例利用需要注册的多个唤醒词的音频数据来进行训练,其中,对每个唤醒词首先要获取对应的音频数据集,这些音频数据分别来自不同的说话人,可以通过录制或线上资源等方式获取。之后,需要对每个唤醒词的音频数据集进行预处理。本发明实施例选用神经网络模型作为说话人识别的模型,因为为了简化训练过程,会先对音频数据进行预处理,具体为包括:对各个音频数据分别进行音频特征提取,形成音频特征数据集;然后,对提取出的各个音频特征设置其对应的说话人标签,形成训练数据集。也就是说,形成的训练数据集是音频特征与说话人标签的数据对集合。其中,优选地,为了方便下文进行中间表示的汇集,在进行数据处理时,还可以为训练数据集设置唤醒词标签,即标记各个训练数据所属的唤醒词。
步骤S202:从训练数据集中获取训练数据反复进行步骤S203至步骤S206的训练过程,直至神经网络模型的参数收敛至预设范围。为了减少内存占用和训练数据量,从训练数据集中获取训练数据是采用mini-batch的方式随机获取批量的训练数据,即每次从训练数据集随机取出小批量的训练数据进行训练。神经网络模型的参数的收敛程度决定了识别准确率,而收敛程度取决于迭代次数,因此可以通过反复迭代训练将模型参数收敛到所需的精度,例如随着训练的继续,模型参数的更新已经非常小时(如参数的更新为0.001时)则认为达到所需的精度,之后就以满足收敛程度的参数作为训练出的神经网络模型的参数,并可以使用该训练出的模型进行说话人识别。
步骤S203:将训练数据输入主干部分,并获取主干部分输出的中间表示。神经网络模型一般包括主干部分和分类层,主干部分位于分类层的前面,用于提取出embedding(中间表示)。因而神经网络模型的训练一般包括前向传播、反向传播和参数更新三个部分。在前向传播中,将训练数据输入主干部分就可以提取到对应的embedding。在本发明实施例中,设计的神经模型包括一个主干部分和多个分类层,在主干部分对所有的唤醒词训练数据,是实现了数据共享的。也就是说,在本发明实施例中,在前向传播的训练中,是将所有的唤醒词对应的音频特征都输入主干部分进行训练,即在所有训练数据集中进行随机提取训练数据,将随机抽取到的训练数据的音频特征统一输入主干部分,由此就可以获取到所有输入的训练数据对应输出的中间表示即embeddings。
步骤S204:将中间表示按唤醒词进行分类汇集,形成各唤醒词的中间表示集。在进行了步骤S203提取出了所有训练数据的中间表示后,再对中间表示按唤醒词进行分类,以形成于各个唤醒词对应的中间表示集。具体可以实现为,由于在训练数据中对音频特征设置了用于标记的唤醒词标签,因而在输入音频特征时,可以根据其对应的唤醒词标签来区分得到的中间表示是属于哪个唤醒词的,即将中间表示按输入的音频特征对应的唤醒词标签进行分类,并将同一类的中间表示汇集在一起,形成中间表示集合。
步骤S205:将各唤醒词的中间表示集的数据分别输入到与唤醒词对应的分类层,并在各分类层分别选用损失函数进行反向传播。本发明实施例设计的神经网络模型虽然在主干部分是共享的,在分类层则巧妙地实现为与唤醒词的数量对应设计,即一个分类层对应一个唤醒词,有几个唤醒词就对应设计几个分类层。这样,在得到了各个唤醒词的中间表示集后,会将中间表示按唤醒词分类分别输入到不同的分类层,例如唤醒词A对应的中间表示会输入到分类层A、唤醒词B对应的中间表示则会输入到分类层B,依此类推。这样,就可以通过各唤醒词对应的分类层来计算出每个唤醒词自己的预测概率。并在反向传播过程中,对针对每个分类层选用适合这个分类层的损失函数来进行对预测概率和说话人标签计算损失,之后使用反向传播算法计算出损失函数对于神经网络模型的参数的梯度值。
步骤S206:采用梯度下降法对神经网络模型的参数进行更新。在参数更新过程中,使用随机梯度下降方法,用计算出的神经网络模型的参数的梯度值对神经网络模型的参数进行更新。
步骤S102:对于注册音频,使用训练好的神经网络模型的主干部分提取出其中间表示存储。在对多个唤醒词进行了上述模型训练之后,就可以对已经注册的音频提取中间表示存储,具体是利用训练好的神经网络模型,将注册的说话人音频的音频特征输入到模型的主干部分,从而得到注册音频的中间表示存储,以用于进行说话人识别。
步骤S103:在获取到实时音频数据时,基于训练好的神经网络模型对音频数据进行说话人识别,以确定是否与注册音频为同一说话人。在具体应用中,通过利用上述训练好的神经网络模型就可以进行说话人识别,而且上述神经网络模型既可以用于单唤醒词也可以用于多唤醒词。其可以实现为包括:首先,使用神经网络模型的主干部分对实时音频数据提取中间表示,之后,获取注册音频的中间表示,并将提取出的实时音频数据的中间表示与注册音频的中间表示分别进行比较,根据两者的相似度,确定是否为来自同一说话人。示例性地,可以通过通用打分方式如cosine(余弦)或者plda(probabilistic lineardiscriminative analysis,概率线性判别分析),计算实时音频数据的中间表示与注册音频的中间表示的相似度,并根据相似度与设置的相似度阈值的大小来进行说话人识别结果的判断,在当前实时音频数据的中间表示与注册音频的中间表示的相似度超过设置的相似度阈值时,确定实时音频数据与注册音频为同一说话人。例如,实时音频数据的中间表示与唤醒词K的注册音频的中间表示的相似度达到了相似度阈值的大小,就确定该实时音频数据与唤醒词K的注册音频是同一说话人。其中,cosine打分指计算两个embeddings的余弦距离,plda打分指使用plda模型计算两个embeddings的距离。
图3示意性地显示了本发明一种实施方式的支持多唤醒词的说话人识别系统,如图3所示,其包括
预先存储的神经网络模型30,其中,该神经网络模型通过图2所示的方法训练生成,其包括有一个主干部分;
音频注册模块31,用于对注册音频,利用存储的训练好的神经网络模型30的主干部分提取出其对应的中间表示存储;和
说话人识别模块32,用于在获取到实时音频数据时,通过神经网络模型对音频数据进行说话人识别,确定其与注册音频是否为同一说话人。
其中,如图3所示,说话人识别模块32实现为包括
中间表示提取单元32A,用于使用所述神经网络模型的主干部分对所述实时音频数据提取中间表示;和
识别单元32B,用于获取注册音频的中间表示,将提取出的实时音频数据的中间表示与注册音频的中间表示进行比较,根据二者的相似度,确定是否为同一说话人。
其中,图3所示的系统中各模块和单元的具体实现都可以参照前文方法部分,而前文方法部分的实现例也都可以应用在本发明实施例系统的相应模块中,故在此不再赘述。
通过本发明实施例的方法和系统,不但能够实现多唤醒词的说话人识别,满足用户需求,而且还能够避免针对不同的唤醒词均收集很多训练数据的难度,同时也避免了训练和存储多个模型的弊端,实现多个唤醒词共用一个神经网络模型进行准确的说话人识别,降低了对多唤醒词的说话人进行识别的实现成本。此外,本发明实施例的方案因为训练模型的过程中可以利用所有唤醒词的训练数据,所以相对于传统单唤醒词模型只使用这个唤醒词对应的数据的方式,模型对各种不同环境的适应性会更强。同时,多个唤醒词使用各自的损失函数相当于一种正则化,使最终训练好的模型泛化性能更好,更加鲁棒。而且,对于某些唤醒词,如果收集到的训练数据不够,那么单独训练一个单唤醒词说话人识别模型的准确度会比较差,而采用本发明实施例使用的模型结构,其他唤醒词的数据共同训练了模型的主干部分,对于该唤醒词的训练相当于一种数据增强,这种训练数据欠缺的唤醒词的说话人识别准确度依然可以得到提高。
在一些实施例中,本发明实施例提供一种非易失性计算机可读存储介质,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本发明上述支持多唤醒词的说话人识别方法。
在一些实施例中,本发明实施例还提供一种计算机程序产品,计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当所程序指令被计算机执行时,使计算机执行上述支持多唤醒词的说话人识别方法。
在一些实施例中,本发明实施例还提供一种电子设备,其包括:至少一个处理器,以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被所述至少一个处理器执行,以使至少一个处理器能够执行上述支持多唤醒词的说话人识别方法。
在一些实施例中,本发明实施例还提供一种存储介质,其上存储有计算机程序,该程序被处理器执行时能够执行上述支持多唤醒词的说话人识别方法。
上述本发明实施例的支持多唤醒词的说话人识别装置可用于执行本发明实施例的支持多唤醒词的说话人识别方法,并相应的达到上述本发明实施例的支持多唤醒词的说话人识别方法所达到的技术效果,这里不再赘述。本发明实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。
图4是本申请另一实施例提供的执行支持多唤醒词的说话人识别方法的电子设备的硬件结构示意图,如图4所示,该设备包括:
一个或多个处理器510以及存储器520,图4中以一个处理器510为例。
执行支持多唤醒词的说话人识别方法的设备还可以包括:输入装置530和输出装置540。
处理器510、存储器520、输入装置530和输出装置540可以通过总线或者其他方式连接,图4中以通过总线连接为例。
存储器520作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的支持多唤醒词的说话人识别方法对应的程序指令/模块。处理器510通过运行存储在存储器520中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的支持多唤醒词的说话人识别方法。
存储器520可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据支持多唤醒词的说话人识别装置的使用所创建的数据等。此外,存储器520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器520可选包括相对于处理器510远程设置的存储器,这些远程存储器可以通过网络连接至支持多唤醒词的说话人识别装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置530可接收输入的数字或字符信息,以及产生与支持多唤醒词的说话人识别方法的用户设置以及功能控制有关的信号。输出装置540可包括显示屏等显示设备。
上述一个或者多个模块存储在所述存储器520中,当被所述一个或者多个处理器510执行时,执行上述任意方法实施例中的支持多唤醒词的说话人识别方法。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
本申请实施例的电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子装置。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁盘、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围
以上所述的仅是本发明的一些实施方式。对于本领域的普通技术人员来说,在不脱离本发明创造构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
Claims (10)
1.支持多唤醒词说话人识别的神经网络模型的训练方法,其特征在于,包括
对设置的多个不同唤醒词分别收集来自多个说话人的音频数据进行数据处理,生成训练数据集;
构建用于说话人识别的神经网络模型,利用所述训练数据集对构建的神经网络模型进行训练,其实现为包括
构建一个具有一个主干部分和与设置的多个唤醒词分别一一对应的多个分类层的神经网络模型;
从训练数据集中获取训练数据进行以下训练过程,直至神经网络模型的参数收敛至预设范围:
将训练数据输入所述主干部分,并获取主干部分输出的中间表示;
将中间表示按唤醒词进行分类汇集,形成各唤醒词的中间表示集;
将各唤醒词的中间表示集的数据分别输入到与唤醒词对应的分类层,并在各分类层分别使用损失函数进行反向传播;
采用梯度下降法对神经网络模型的参数进行更新。
2.根据权利要求1所述的训练方法,其特征在于,所述对设置的多个不同唤醒词分别收集来自多个说话人的音频数据进行数据处理,生成训练数据集包括
对每个唤醒词,分别获取来自多个说话人的对应的音频数据集;
对每个唤醒词的音频数据集中的各个音频数据分别进行音频特征提取,形成音频特征数据集;
对提取出的各音频特征设置说话人标签,形成训练数据集;
所述将训练数据输入所述主干部分实现为将训练数据中的音频特征输入所述主干部分;
所述将中间表示按唤醒词进行分类汇集实现为将中间表示按输入的音频特征对应的唤醒词进行分类汇集。
3.根据权利要求2所述的训练方法,其特征在于,所述从训练数据集中获取训练数据是采用mini-batch的方式随机获取批量的训练数据。
4.支持多唤醒词的说话人识别方法,其特征在于,包括
在获取到实时音频数据时,使用训练好的神经网络模型的主干部分对所述实时音频数据提取中间表示,其中,所述训练好的神经网络模型包括一个主干部分和与设置的多个唤醒词分别一一对应的多个分类层;
获取注册音频的中间表示,将提取出的实时音频数据的中间表示与注册音频的中间表示进行比较,根据两者的相似度,确定是否为同一说话人,其中,所述注册音频的中间表示是使用所述训练好的神经网络模型的主干部分提取出的。
5.根据权利要求4所述的方法,其特征在于,所述将提取出的实时音频数据的中间表示与注册音频的中间表示进行比较,根据两者的相似度,确定是否为同一说话人包括
为注册音频设置相似度阈值;
计算实时音频数据的中间表示与注册音频中间表示的相似度,在存在实时音频数据的中间表示与注册音频的中间表示的相似度超过设置的相似度阈值时,确定所述实时音频数据的说话人与注册音频的说话人相同。
6.根据权利要求5所述的方法,其特征在于,所述计算实时音频数据的中间表示与注册音频的中间表示的相似度是通过打分方式进行相似度计算。
7.根据权利要求4至6任一项所述的方法,其特征在于,所述训练好的神经网络模型的训练方法包括
对设置的多个不同唤醒词分别收集来自多个说话人的音频数据进行数据处理,生成训练数据集;
从训练数据集中获取训练数据进行以下训练过程,直至神经网络模型的参数收敛至预设范围:
将训练数据输入所述主干部分,并获取主干部分输出的中间表示;
将中间表示按唤醒词进行分类汇集,形成各唤醒词的中间表示集;
将各唤醒词的中间表示集的数据分别输入到与唤醒词对应的分类层,并在各分类层分别使用损失函数进行反向传播;
采用梯度下降法对神经网络模型的参数进行更新。
8.支持多唤醒词的说话人识别系统,其特征在于,包括
神经网络模型,其中,所述神经网络模型通过权利要求1至3任一项所述的方法训练生成;
音频注册模块,用于对注册音频,使用所述神经网络模型的主干部分提取出其对应的中间表示;
说话人识别模块,用于在获取到实时音频数据时,基于所述神经网络模型确定所述实时音频数据与注册音频是否为同一说话人,其实现为包括
中间表示提取单元,用于使用所述神经网络模型的主干部分对所述实时音频数据提取中间表示;和
识别单元,用于获取注册音频的中间表示,将提取出的实时音频数据的中间表示与注册音频的中间表示分别进行比较,根据二者的相似度,确定是否为同一说话人。
9.电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求4-7中任意一项所述方法的步骤。
10.存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求4至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010032282.9A CN111243604B (zh) | 2020-01-13 | 2020-01-13 | 支持多唤醒词的说话人识别神经网络模型的训练方法、说话人识别方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010032282.9A CN111243604B (zh) | 2020-01-13 | 2020-01-13 | 支持多唤醒词的说话人识别神经网络模型的训练方法、说话人识别方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111243604A CN111243604A (zh) | 2020-06-05 |
CN111243604B true CN111243604B (zh) | 2022-05-10 |
Family
ID=70880863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010032282.9A Active CN111243604B (zh) | 2020-01-13 | 2020-01-13 | 支持多唤醒词的说话人识别神经网络模型的训练方法、说话人识别方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111243604B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111933124B (zh) * | 2020-09-18 | 2021-04-30 | 电子科技大学 | 一种可支持自定唤醒词的关键词检测方法 |
CN112382298B (zh) * | 2020-11-17 | 2024-03-08 | 北京清微智能科技有限公司 | 唤醒词声纹识别方法、唤醒词声纹识别模型及其训练方法 |
CN113782016B (zh) * | 2021-08-06 | 2023-05-05 | 佛山市顺德区美的电子科技有限公司 | 一种唤醒处理方法、装置、设备和计算机存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9443508B2 (en) * | 2013-09-11 | 2016-09-13 | Texas Instruments Incorporated | User programmable voice command recognition based on sparse features |
EP3754653A1 (en) * | 2016-06-15 | 2020-12-23 | Cerence Operating Company | Techniques for wake-up word recognition and related systems and methods |
CN107767863B (zh) * | 2016-08-22 | 2021-05-04 | 科大讯飞股份有限公司 | 语音唤醒方法、系统及智能终端 |
CN109273007B (zh) * | 2018-10-11 | 2022-05-17 | 西安讯飞超脑信息科技有限公司 | 语音唤醒方法及装置 |
-
2020
- 2020-01-13 CN CN202010032282.9A patent/CN111243604B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111243604A (zh) | 2020-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110288979B (zh) | 一种语音识别方法及装置 | |
CN107978311B (zh) | 一种语音数据处理方法、装置以及语音交互设备 | |
CN108694940B (zh) | 一种语音识别方法、装置及电子设备 | |
CN107147618B (zh) | 一种用户注册方法、装置及电子设备 | |
CN110265040B (zh) | 声纹模型的训练方法、装置、存储介质及电子设备 | |
CN111243604B (zh) | 支持多唤醒词的说话人识别神经网络模型的训练方法、说话人识别方法及系统 | |
CN111081280B (zh) | 与文本无关的语音情感识别方法及装置、用于识别情感的算法模型的生成方法 | |
CN112786029B (zh) | 使用弱监督数据训练vad的方法及装置 | |
CN111179915A (zh) | 基于语音的年龄识别方法及装置 | |
JP2021076818A (ja) | 音声対話するための方法、装置、デバイス及びコンピュータ読み取り可能な記憶媒体 | |
CN111159358A (zh) | 多意图识别训练和使用方法及装置 | |
CN111444321A (zh) | 问答方法、装置、电子设备和存储介质 | |
CN113205809A (zh) | 语音唤醒方法和装置 | |
CN110706691B (zh) | 语音验证方法及装置、电子设备和计算机可读存储介质 | |
CN111105803A (zh) | 快速识别性别的方法及装置、用于识别性别的算法模型的生成方法 | |
CN109273004B (zh) | 基于大数据的预测性语音识别方法及装置 | |
CN111081256A (zh) | 数字串声纹密码验证方法及系统 | |
CN111680514A (zh) | 信息处理和模型训练方法、装置、设备及存储介质 | |
US11670294B2 (en) | Method of generating wakeup model and electronic device therefor | |
CN115222047A (zh) | 一种模型训练方法、装置、设备及存储介质 | |
CN107846493B (zh) | 通话联系人控制方法、装置及存储介质和移动终端 | |
CN112037772A (zh) | 基于多模态的响应义务检测方法、系统及装置 | |
CN112905748A (zh) | 一种演讲效果评估系统 | |
CN111508481A (zh) | 语音唤醒模型的训练方法、装置、电子设备及存储介质 | |
CN113129874B (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 215123 building 14, Tengfei Innovation Park, 388 Xinping street, Suzhou Industrial Park, Suzhou City, Jiangsu Province Applicant after: Sipic Technology Co.,Ltd. Address before: 215123 building 14, Tengfei Innovation Park, 388 Xinping street, Suzhou Industrial Park, Suzhou City, Jiangsu Province Applicant before: AI SPEECH Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |