一种基于时延神经网络的声控设备唤醒词识别方法及装置与流程

文档序号:19867236发布日期:2020-02-08 05:27阅读:264来源:国知局
一种基于时延神经网络的声控设备唤醒词识别方法及装置与流程

本发明涉及语音识别技术领域,特别是涉及一种基于时延神经网络的声控设备唤醒词识别方法及装置。



背景技术:

随着科技的发展,语音唤醒技术在声控设备或具备人机语音交互的设备中的应用越来越广泛,允许用户与电子设备之间无需手动交互,用户可以通过说出唤醒词,即可激活声控设备或具备人机语音交互的设备中相应的处理模块。

为了提高唤醒词唤醒声控设备或具备人机语音交互的设备成功率以及设备的响应速度,人们研究了利用全连接神经网络、卷积神经网络(cnns)和循环神经网路(rnns)相结合来实现语音唤醒算法,人们也研究了rnn和cnn相结合的算法,甚至研究了tdnn+hmm(其中tdnn具体指time-delayneuralnetwork,时延神经网络,hmm具体指hiddenmarkovmodel,隐马尔科夫模型)相结合的算法。

但是这些方法中都需要涉及几种不同的神经网络模型,其结构复杂且计算量大,故而上述的神经网络模型难以同时提高唤醒词唤醒设备的成功率及响应速度。



技术实现要素:

本发明主要解决的技术问题是提供一种基于时延神经网络的声控设备唤醒词识别方法及装置,能够解决传统的神经网络模型难以同时提高唤醒词唤醒设备的成功率及响应速度的问题。

为解决上述技术问题,本发明的采用的一个技术方案是:提供一种基于时延神经网络的声控设备唤醒词识别方法,包括:

对待识别的语音数据进行多维fbank特征提取;

将提取到的所述多维fbank特征送入预先训练好的唤醒词识别模型中进行识别,并输出识别结果;

判断所述识别结果中的唤醒词的后验概率是否大于预设阈值,若是,则确认所述待识别的语音数据中包括唤醒词;

其中,所述唤醒词识别模型由作为第一层的音素-时延神经网络与作为第二层词-时延神经网络相连接后经训练得到。

其中,所述唤醒词识别模型由作为第一层的音素-时延神经网络的输出层与作为第二层词-时延神经网络输入层相连接后经训练得到。

其中,所述唤醒词识别模型由作为第一层的音素-时延神经网络与作为第二层词-时延神经网络相连接后经训练得到,还包括:

从标记有唤醒词的样本语音提取多维fbank特征;

将提取到的所述多维fbank特征输入所述所述唤醒词识别模型中进行训练;

达到预设的epoch迭代轮数时停止训练。

其中,所述对所述待识别的语音数据进行多维fbank特征提取,还包括:

对所述待识别的语音数据进行分帧处理,每帧的帧长范围为10ms~40ms,帧与帧之间的帧移为0ms~20ms,共提取40~100帧语音信号;

对每一帧的所述语音信号进行多维fbank特征提取。

其中,所述对所述待识别的语音数据进行分帧处理,每帧的帧长范围为10ms~40ms,帧与帧之间的帧移为0ms~20ms,共提取40~100帧语音信号,还包括:

对所述40~100帧语音信号进行跳帧处理,从起始帧开始,忽略每间隔的1-5帧,对忽略后的剩余所述帧的所述语音信号进行多维fbank特征提取。

进一步地,对所述待识别的语音数据进行分帧处理,每帧的帧长范围为25ms,帧与帧之间的帧移为10ms,共提取80帧语音信号,对所述80帧语音信号进行跳帧处理,从起始帧开始,忽略每间隔的4帧,对忽略后的剩余所述帧的所述语音信号进行41维fbank特征提取。

其中,所述输出识别结果之后,还包括:

所述输出识别结果包括每一帧的所述语音信号中的唤醒词的后验概率序列和非唤醒词的后验概率序列,通过移动平均滤波器对所述识别结果中的唤醒词的后验概率进行平滑处理,计算公式如下所示:

其中,n为对所述待识别的语音数据进行分帧处理后提取的语音信号的帧数,输入值x为每一帧的所述语音信号中的唤醒词的后验概率序列,输出值y为所述识别结果中的唤醒词的后验概率。

其中,为解决上述技术问题,本发明的采用的另一个技术方案是:提供一种基于时延神经网络的声控设备唤醒词识别装置,包括:

提取模块,用于对待识别的语音数据进行多维fbank特征提取;

识别模块,用于将提取到的所述多维fbank特征送入预先训练好的唤醒词识别模型中进行识别,并输出识别结果;

判断模块,判断所述识别结果中的唤醒词的后验概率是否大于预设阈值,若是,则确认所述待识别的语音数据中包括唤醒词;

其中,所述唤醒词识别模型由作为第一层的音素-时延神经网络与作为第二层词-时延神经网络相连接后经训练得到。

其中,为解决上述技术问题,本发明的采用的另一个技术方案是:提供、一种计算机设备,包括:包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现上述一种基于时延神经网络的声控设备唤醒词识别方法的步骤。

其中,为解决上述技术问题,本发明的采用的另一个技术方案是:提供、一种计算机可读存储介质,包括:所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述一种基于时延神经网络的声控设备唤醒词识别方法的步骤。

以上方案中的一种基于时延神经网络的声控设备唤醒词识别方法,通过对待识别的语音数据进行多维fbank特征提取,将提取到的所述多维fbank特征送入预先训练好的唤醒词识别模型中进行识别,并输出识别结果,判断所述识别结果中的唤醒词的后验概率是否大于预设阈值,若是,则确认所述待识别的语音数据中包括唤醒词。因为相比传统的神经网络大大减少了需要计算的数据量,且识别模型只需要对唤醒词进行精准识别和训练,故而具有判断准确率高且识别速度快的优点,能够有效提高用户体验,使用户说出唤醒词会能够快速唤醒声控设备,防止因唤醒失败或唤醒速度慢降低用户体验。

附图说明

为了更清楚地说明本发明的方案,下面将对实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明的一种基于时延神经网络的声控设备唤醒词识别方法一实施例的流程示意图;

图2为本发明的一种基于时延神经网络的声控设备唤醒词识别方法另一实施例的流程示意图;

图3为本发明的一种基于时延神经网络的声控设备唤醒词识别装置的结构示意图;

图4是本发明的一种计算机设备的一实施例的结构示意图。

具体实施方式

除非另有定义,本文所使用的所有的技术和科学术语与属于本申请技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

下面结合附图和实施方式对本发明进行详细说明。

请参阅图1,图1为本发明的一种基于时延神经网络的声控设备唤醒词识别方法一实施例的流程示意图,需注意的是,若有实质上相同的结果,本发明的方法并不以图1所示的流程顺序为限,该方法包括如下步骤:

本实施方式的一种基于时延神经网络的声控设备唤醒词识别方法,采用如下步骤对声控设备唤醒词进行识别:

s101:对待识别的语音数据进行多维fbank特征提取。

服务器端在接收到声控设备终端或其他人机交互设备采集并上传的语音数据后,将该语音数据作为待识别是否为唤醒词的语音数据进行识别,从该待识别的语音数据进行多维fbank特征提取。

在一些实施例中,可以从该待识别的语音数据进行41维fbank特征提取。

s102:将提取到的多维fbank特征送入预先训练好的唤醒词识别模型中进行识别,并输出识别结果。

其中,唤醒词识别模型由作为第一层的音素-时延神经网络与作为第二层词-时延神经网络相连接后经训练得到。

进一步地,该唤醒词识别模型由作为第一层的音素-时延神经网络的输出层与作为第二层词-时延神经网络输入层相连接后经训练得到。

具体地,作为第一层的音素-时延神经网络输入层用于输入从该待识别的语音数据提取的41维fbank特征,作为第一层的音素-时延神经网络输出层的输出结果为识别后得到的若干个音素,将作为第一层的音素-时延神经网络的输出层与作为第二层词-时延神经网络输入层相连接,即作为第二层词-时延神经网络输入层接收作为第一层的音素-时延神经网络输出层的输出结果为识别后得到的若干个音素并进行识别,得到该待识别的语音数据是唤醒词的后验概率和该待识别的语音数据非唤醒词的后验概率。

s103:判断识别结果中的唤醒词的后验概率是否大于预设阈值,若是,则确认待识别的语音数据中包括唤醒词。

其中,预设阈值设定的越低则成功率越高,但其准确度亦会随之降低,但是作为对声控设备的唤醒词而言,将其设置定偏低的数值的话能够有效提高唤醒词唤醒设备的成功率及响应速度,例如,可以将预设阈值的设置区间为:0.3-0.45,这种情况下唤醒词唤醒设备的成功率及响应速度会很高,但其误唤醒的几率也会有一定的提高。

综上,本实施例中的一种基于时延神经网络的声控设备唤醒词识别方法,通过对待识别的语音数据进行多维fbank特征提取,将提取到的多维fbank特征送入预先训练好的唤醒词识别模型中进行识别,并输出识别结果,判断识别结果中的唤醒词的后验概率是否大于预设阈值,若是,则确认待识别的语音数据中包括唤醒词。因为相比传统的神经网络大大减少了需要计算的数据量,且识别模型只需要对唤醒词进行精准识别和训练,故而具有判断准确率高且识别速度快的优点,能够有效提高用户体验,使用户说出唤醒词会能够快速唤醒声控设备,防止因唤醒失败或唤醒速度慢降低用户体验。

请参阅图2,图2为本发明的一种基于时延神经网络的声控设备唤醒词识别方法另一实施例的流程示意图,需注意的是,若有实质上相同的结果,本发明的方法并不以图2所示的流程顺序为限,该方法包括如下步骤:

s201:对待识别的语音数据进行分帧处理,每帧的帧长范围为25ms,帧与帧之间的帧移为10ms,共提取80帧语音信号。

在本实施例中,可以先将标记有唤醒词的样本语音分帧处理,每帧的帧长范围为25ms,帧与帧之间的帧移为10ms,共提取80帧,进行每一帧41维fbank特征提取,将提取到的fbank特征送入由作为第一层的音素-时延神经网络的输出层与作为第二层词-时延神经网络输入层相连接后经训练,得到训练后的唤醒词识别模型,并对待识别的语音数据进行分帧处理,每帧的帧长范围为25ms,帧与帧之间的帧移为10ms,共提取80帧语音信号,并准备用经上述训练后的唤醒词识别模型进行语音设别。

在一些实施例中,可以先将标记有唤醒词的样本语音分帧处理,每帧的帧长范围为10ms~40ms,帧与帧之间的帧移为0ms~20ms,共提取40~100帧语音信号,并对每一帧的语音信号进行多维fbank特征提取,将提取到的fbank特征送入由作为第一层的音素-时延神经网络的输出层与作为第二层词-时延神经网络输入层相连接后经训练,得到训练后的唤醒词识别模型,并对待识别的语音数据进行分帧处理,每帧的帧长范围为10ms~40ms,帧与帧之间的帧移为0ms~20ms,共提取40~100帧语音信号,并对每一帧的语音信号进行多维fbank特征提取。

具体地,进行模型训练时对唤醒词的样本语音分帧处理参数优选和识别时的参数相同,这样对唤醒词识别的准确率更高。

在一些实施例中,可以从标记有唤醒词的样本语音提取多维fbank特征,将提取到的多维fbank特征输入唤醒词识别模型中进行训练,达到预设的epoch迭代轮数时停止训练。

具体地,优先的epoch迭代轮数为4轮。

s202:对80帧语音信号进行跳帧处理,从起始帧开始,忽略每间隔的4帧,对忽略后的剩余帧的语音信号进行41维fbank特征提取。

在本实施例中,采用以下方法来减少计算量。对80帧语音信号进行跳帧处理,例如第一帧计算,第2,3,4都不计算,到第5帧的时候再计算,这个计算是指从音素神经网络开始计算,直到输出识别结果。因为在识别的时候跳过一些帧的话,网络也还是可以抓住很多有效的信息,可以保证识别的结果。通过这种方法减少计算量,使唤醒词识别模型更加高效。

在一些实施例中,可以对40~100帧语音信号进行跳帧处理,从起始帧开始,忽略每间隔的1-5帧,对忽略后的剩余帧的语音信号进行多维fbank特征提取。

s203:将提取到的41维fbank特征送入预先训练好的唤醒词识别模型中进行识别,并输出识别结果。

具体地,作为第一层的音素-时延神经网络输入层用于输入从该待识别的语音数据提取的41维fbank特征,作为第一层的音素-时延神经网络输出层的输出结果为识别后得到的若干个音素,将作为第一层的音素-时延神经网络的输出层与作为第二层词-时延神经网络输入层相连接,即作为第二层词-时延神经网络输入层接收作为第一层的音素-时延神经网络输出层的输出结果为识别后得到的若干个音素并进行识别,得到该待识别的语音数据是唤醒词的后验概率和该待识别的语音数据非唤醒词的后验概率。

进一步地,由于在上述步骤中,通过分帧、移帧、跳帧对待识别的语音数据进行的处理,同时能够在一定程度上保证提取到的多维fbank特征的有效性,实现了极大地减少了要识别的数据量,所以能够有效提高识别速率。

s204:通过移动平均滤波器对识别结果中的唤醒词的后验概率进行平滑处理,判断识别结果中的唤醒词的后验概率是否大于预设阈值,若是,则确认待识别的语音数据中包括唤醒词。

在本实施例中,判断识别结果中的唤醒词的后验概率是否大于预设阈值之前,可以通过移动平均滤波器对识别结果中的唤醒词的后验概率进行平滑处理。

在一些实施例中,输出识别结果包括每一帧的语音信号中的唤醒词的后验概率序列和非唤醒词的后验概率序列,通过移动平均滤波器对识别结果中的唤醒词的后验概率进行平滑处理,计算公式如下所示:

其中,n为对待识别的语音数据进行分帧处理后提取的语音信号的帧数,n为数据采样宽度,输入值x为每一帧的语音信号中的唤醒词的后验概率序列,输出值y为识别结果中的唤醒词的后验概率。

例如,对待识别的语音数据进行分帧处理后提取的语音信号的帧数n可以为80,n为数据采样宽度可以为9。

综上所述,本实施例中的一种基于时延神经网络的声控设备唤醒词识别方法,通过对待识别的语音数据进行分帧处理,每帧的帧长范围为25ms,帧与帧之间的帧移为10ms,共提取80帧语音信号,对80帧语音信号进行跳帧处理,从起始帧开始,忽略每间隔的4帧,对忽略后的剩余帧的语音信号进行41维fbank特征提取,将提取到的41维fbank特征送入预先训练好的唤醒词识别模型中进行识别,并输出识别结果,通过移动平均滤波器对识别结果中的唤醒词的后验概率进行平滑处理,判断识别结果中的唤醒词的后验概率是否大于预设阈值,若是,则确认待识别的语音数据中包括唤醒词。因为相比传统的神经网络模型大大减少了数据本身需要计算的数据量,还通过分帧、移动、跳帧等手段的结合对待识别的语音数据进行的处理,同时能够在一定程度上保证提取到的多维fbank特征的有效性,实现了极大地减少了要识别的数据量,且识别模型只需要对唤醒词进行精准识别和训练,故而具有判断准确率高且识别速度快的优点,能够有效提高用户体验,使用户说出唤醒词会能够快速唤醒声控设备,防止因唤醒失败或唤醒速度慢降低用户体验。

请参阅图3,图3为本发明的一种基于时延神经网络的声控设备唤醒词识别装置的结构示意图,一种基于时延神经网络的声控设备唤醒词识别装置30,包括:

提取模块301,用于对待识别的语音数据进行多维fbank特征提取;

识别模块302,用于将提取到的多维fbank特征送入预先训练好的唤醒词识别模型中进行识别,并输出识别结果;

判断模块303,判断识别结果中的唤醒词的后验概率是否大于预设阈值,若是,则确认待识别的语音数据中包括唤醒词;

其中,唤醒词识别模型由作为第一层的音素-时延神经网络与作为第二层词-时延神经网络相连接后经训练得到。

通常,一种基于时延神经网络的声控设备唤醒词识别装置30是作为与声控设备终端或人机交互设备相连接的服务器端。

在一些实施例中,一种基于时延神经网络的声控设备唤醒词识别装置30也可以是声控设备终端或人机交互设备终端。

请参阅图4,图4是本发明的一种计算机设备的一实施例的结构示意图。

计算机设备40包括通过系统总线相互通信连接存储器401、处理器402、网络接口403。需要指出的是,图中仅示出了具有组件401-403的计算机设备400,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(applicationspecificintegratedcircuit,asic)、可编程门阵列(field-programmablegatearray,fpga)、数字处理器(digitalsignalprocessor,dsp)、嵌入式设备等。

计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。

存储器401至少包括一种类型的可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器401可以是计算机设备400的内部存储单元,例如该计算机设备400的硬盘或内存。在另一些实施例中,存储器401也可以是计算机设备400的外部存储设备,例如该计算机设备400上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,存储器401还可以既包括计算机设备400的内部存储单元也包括其外部存储设备。本实施例中,存储器401通常用于存储安装于计算机设备400的操作系统和各类应用软件,例如金融数据的交换的校验方法的程序代码等。此外,存储器401还可以用于暂时地存储已经输出或者将要输出的各类数据。

处理器402在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器402通常用于控制计算机设备400的总体操作。本实施例中,处理器402用于运行存储器402中存储的程序代码或者处理数据,例如运行金融数据的交换的校验方法的程序代码。

网络接口403可包括无线网络接口或有线网络接口,该网络接口403通常用于在计算机设备400与其他电子设备之间建立通信连接。

本发明还提供了另一种实施方式,即提供一种计算机可读存储介质,计算机可读存储介质存储有文档编辑程序,金融数据的交换的校验程序可被至少一个处理器执行,以使至少一个处理器执行如上述的金融数据的交换的校验方法的步骤。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例的方法。

显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。

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