深度神经支持向量机的制作方法

文档序号:11451698阅读:274来源:国知局
深度神经支持向量机的制造方法与工艺

背景

自动语音识别(asr)可使用语言模型以确定给定语言或应用域的可信的单词序列。深度神经网络(dnn)可被用于语音识别和图像处理。dnn的能力来自其具有非常多的参数的深且广的网络结构。然而,dnn的性能可被直接绑定到被用来训练dnn的数据的质量和数量。dnn系统可很好地解释与训练数据中的那些输入类似的输入,但是可能缺乏稳健性,该稳健性允许dnn(例如当背景噪声存在时)正确地解释训练数据内未找到的输入。

概述

提供本概述以便以简化的形式介绍将在以下具体实施方式中进一步描述的一些概念。本概述不旨在标识所要求保护的主题的关键特征或本质特征,也不旨在独立地用于帮助确定所要求保护的主题的范围。

本文所描述的技术涉及一种新型的深度神经网络(dnn)。该新的dnn在本文中被描述成深度神经支持向量机(dnsvm)。传统的dnn在顶层和各底层处使用多项逻辑回归(multinomiallogisticregression)(softmax激活)以进行训练。新的dnn改为使用支持向量机(svm)作为一个或多个层,包括顶层。本文所描述的技术可使用两种训练算法中的一种来训练dnsvm以在最大-间隔(maximum-margin)准则中学习svm和dnn的参数。第一种训练方法是帧级(frame-level)训练。在帧级训练中,新的模型被示为与具有dnn特征的多类svm相关。第二种训练方法是序列级(sequence-level)训练。序列级训练与具有dnn特征和hmm状态转移特征的结构化svm相关。

dnsvm解码过程可使用dnn-hmm混合系统,但是帧级后验概率由来自svm的分数代替。

dnsvm改进了自动语音识别(asr)系统的性能,尤其是在稳健性方面,以提供经改进的用户体验。经改进的稳健性通过允许asr正确地解释更多种类的用户话语来创建更有效的用户接口。

附图简述

以下参考附图详细描述本技术的各方面,附图中:

图1是根据本文所描述的技术的一个方面的适用于训练dnsvm的示例性计算环境的框图;

图2是描绘根据本文所描述的技术的一个方面的自动语音识别系统的图示;

图3是描绘根据本文所描述的技术的一个方面的深度神经支持向量机的图示;

图4是描绘根据本文所描述的技术的一个方面来训练dnsvm的方法的流程图;

图5是适用于实现本文所描述的技术的各方面的示例性计算环境的框图。

详细描述

此处用细节来描述本文所描述的技术的主题以满足法定要求。然而,描述本身并非旨在限制本专利的范围。相反,发明人已构想所要求保护的主题还可结合其他当前或未来技术以其他方式来实施,以包括不同的步骤或类似于本文中所描述的步骤的步骤组合。此外,尽管术语“步骤”和/或“框”可在此处用于指示所采用的方法的不同元素,但除非而且仅当明确描述了各个步骤的顺序时,术语不应被解释为意味着此处公开的各个步骤之中或之间的任何特定顺序。

本文所描述的技术的各方面包括一种新型的深度神经网络,其可被用来对声音(诸如自然语音中的那些声音)进行分类。该新的模型(随后将对其进行详细描述)在本文中被称为深度神经支持向量机(dnsvm)模型。dnsvm包括作为深度神经网络架构内的至少一个层的支持向量机。dnsvm模型可被用作自动语音识别系统内的声学模型的一部分。声学模型可结合语言模型和其他组件来使用以识别人类语音。非常概括地,声学模型对不同的声音进行分类。语言模型可使用声学模型的输出作为输入来生成单词的序列。

神经网络在它们可在紧致的区间上有效地逼近非线性函数的意义上是通用模型。然而,存在神经网络的两个主要缺点。首先,训练通常要求神经网络求解具有许多局部极小值的高度非线性优化问题。其次,如果训练过久,则在给定有限的数据的情况下神经网络往往过度拟合。

支持向量机(svm)具有若干突出特征。首先,已经表明,最大化间隔等价于最小化泛化误差的上限。其次,svm的优化问题是凸的,这保证了具有全局最优解。svm最初被提出以用于二元分类。其可被扩展成使用多数投票或者通过直接对优化进行修改来处理多类分类或序列识别。然而,svm原则上是浅层架构,而具有神经网络的深度架构已被证明可在语音识别中实现最先进的性能。本文所描述的技术包括适用于自动语音识别和其他用途的深度svm架构。

传统的深度神经网络在顶层使用多项逻辑回归(softmax激活函数)以进行分类。本文所描述的技术用svm来代替逻辑回归。提供了帧和序列级的两种训练算法以在最大-间隔准则中学习svm和dnn的参数。在帧级训练中,新的模型被示为与具有dnn特征的多类svm相关。在序列级训练中,新的模型与具有dnn特征和hmm状态转移特征的结构化svm相关。在序列的情况下,svm、hmm状态转移和语言模型的参数可被联合地习得。其解码过程可使用dnn-hmm混合系统,但是帧级后验概率由来自svm的分数代替。该新的模型(随后将对其进行详细描述)在本文中被称为深度神经支持向量机(dnsvm)。

dnsvm解码过程可使用dnn-hmm混合系统,但是帧级后验概率由来自svm的分数代替。

dnsvm改进了自动语音识别(asr)系统的性能,尤其是在稳健性方面,以提供经改进的用户体验。经改进的稳健性通过允许asr正确地解释更多种类的用户话语来创建更有效的用户接口。

计算环境

系统100包括通信地耦合到(一个或多个)数据源108的网络110、存储106、客户机设备102和104以及dnsvm模型生成器120,以及未示出的其他组件。图1所示的组件可以在诸如结合图5描述的计算设备500之类的一个或多个计算设备上或使用该一个或多个计算设备实现。网络110可以包括但不限于,一个或更多个局域网(lan)和/或广域网(wan)。这样的联网环境常见于办公室、企业范围计算机网络、内联网和互联网中。应理解,可在本文所描述的技术范围内的系统100内采用任何数量的数据源、存储组件或数据存储、客户机设备和dnsvm模型生成器。其中的每个都可以包括单个设备或在分布式环境中协作的多个设备。例如,dnsvm模型生成器120可经由布置在分布式环境中的共同提供本文描述的功能性的多个计算设备或组件来提供。另外,在网络环境内还可包括其他未示出的组件。

示例系统100包括(一个或多个)数据源108。(一个或多个)数据源108包括用于训练本文描述的dnsvm模型的数据资源。(一个或多个)数据源108提供的数据可包括已标记和未标记数据,诸如已转录和未转录数据。例如,在一实施例中,数据包括一个或多个音素集(声音),并且还可包括可被用于初始化dnsvm模型的相应转录信息或聚类状态标记(senonelabel)。在一实施例中,(一个或多个)数据源108中的未标记数据通过一个或多个部署反馈循环来提供。例如,来自对搜索引擎执行的口头搜索查询的使用数据可作为未转录数据来提供。作为示例而非限制,数据源的其他示例可包括各种口语音频或图像源(包括流传输声音或视频)、web查询;移动设备相机或音频信息、摄像头馈源、智能眼镜和智能手表馈源、客户关怀系统;安全相机馈源、web文档;目录;用户馈源;sms日志;即时消息收发日志;说出单词转录;游戏系统用户交互(诸如语音命令或捕捉到的图像(例如,深度相机图像))、推特、聊天或视频呼叫记录、或者社交网络媒体。所使用的(一个或多个)特定数据源108可基于应用来确定,包括该数据是因领域而异的数据(例如,只涉及例如娱乐系统的数据)还是本质上通用的(不因领域而异的)。

示例系统100包括客户机设备102和104,客户机设备102和104可包括以下任何类型的计算设备:在该设备上具有asr系统是理想的。例如,在一个实施例中,客户机设备102和104可以是本文参照图5描述的一种类型的计算设备。作为示例而非限制,用户设备可被体现为个人数据助理(pda)、移动设备、智能电话、智能手表、智能眼镜(或其他可穿戴智能设备)、增强现实耳机、虚拟现实耳机、膝上型计算设备、平板、遥控器、娱乐系统、车辆计算机系统、嵌入式系统、控制器、电器、家庭计算机系统、安全系统、消费电子设备或其他类似的电子设备。在一个实施例中,客户机设备能够接收诸如音频和图像信息等可由本文描述的在该设备中操作的asr系统使用的输入数据。例如,客户机设备可具有用于接收音频信息的话筒或输入线路、用于接收视频或图像信息的相机、或者用于从诸如互联网或数据源108之类的另一源接收这一信息的通信组件(例如,wi-fi功能性)。

使用本文所描述的dnsvm模型的asr模型可处理经输入的数据以确定计算机可用的信息。例如,由用户说出的查询可被处理以确定查询的内容(即用户要求什么)。

示例客户机设备102和104被包括在系统100中以提供dnsvm模型可被部署在其中的示例环境。尽管构想本文描述的dnsvm模型的各方面可以在一个或多个客户机设备102和104上操作,但还构想本文所描述的技术的一些实施例不包括客户机设备。例如,dnsvm模型可被实现在服务器上或云中。此外,尽管图1示出了两个示例客户机设备,但可使用更多或更少的设备。

存储106一般存储包括数据、计算机指令(例如,软件程序指令、例程或服务)和/或本文所描述的技术的实施例中所使用的模型在内的信息。在一实施例中,存储106存储来自(一个或多个)数据源108的数据、一个或多个dnsvm模型、用于生成和训练dnsvm模型的信息以及由一个或多个dnsvm模型输出的计算机可用信息。如图1所示,存储106包括dnsvm模型107和109。dnsvm模型的附加细节和示例结合图2-5进行描述。尽管为了简明起见被描绘为单个数据存储组件,但存储106可被体现为一个或多个信息存储,包括客户机设备102或104、dnsvm模型生成器120上或云中的存储器。

dnsvm模型生成器120包括访问组件122、帧级训练组件124、序列级训练组件126以及解码组件128。dnsvm模型生成器120通常负责生成dnsvm模型,包括创建新的dnsvm模型(或对现有的dnsvm模型进行适配)。由生成器120生成的dnsvm模型可被部署在诸如设备104或102等客户机设备、服务器或其他计算机系统上。dnsvm模型生成器120及其组件122、124、126和128可被体现为经编译的计算机指令或函数集、程序模块、计算机软件服务、或者在诸如结合例如图5描述的计算设备500之类的一个或多个计算机系统上执行的进程布置。dnsvm模型生成器120、组件122、124、126和128、由这些组件执行的功能、或者由这些组件执行的服务可以在(一个或多个)计算系统的诸如操作系统层、应用层、硬件层等(一个或多个)合适的抽象层处实现。替代地或附加地,这些组件的功能性、生成器120和/或本文所描述的技术的实施例可以至少部分地由一个或多个硬件逻辑组件来执行。例如、但非限制,可使用的硬件逻辑组件的说明性类型包括场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑器件(cpld)、等等。

继续图1,访问组件122通常负责访问并向dnsvm模型生成器120提供来自一个或多个数据源108的训练数据。在一些实施例中,访问组件122可访问关于特定客户机设备102或104的信息,诸如关于该客户机设备上可用的计算和/或存储资源的信息。在一些实施例中,该信息可被用于确定由dnsvm模型生成器120生成以供部署在特定客户机设备上的dnsvm模型的最优大小。

帧级训练组件124使用训练dnsvm模型的帧级训练方法。在本文所描述的技术的一些实施例中,dnsvm模型直接从可被预先确定的上下文相关的、高斯混合模型、隐马尔可夫模型(“cd-gmm-hmm”)系统继承包括音素集、隐马尔可夫模型(“hmm”)拓扑和上下文相关状态的绑定的模型结构。此外,在一实施例中,被用于训练dnn的聚类状态标记可从使用dnsvm模型生成的强制对准中提取。在一些实施例中,训练准则用来最小化交叉熵,该交叉熵被减小以最小化负对数似然,因为每一帧只具有一个目标标记st:

-∑tlog(p(st|xt))(1)

dnn模型参数可使用随机梯度下降或者对于本领域普通技术人员已知的类似技术来通过反向传播优化。

目前,大多数dnn在顶层使用多项逻辑回归(也称为softmax激活函数)以进行分类。具体而言,给定在帧t的观测ot,令ht等于dnn中顶隐藏层(tophiddenlayer)的输出向量,则对于状态st的dnn的输出可被表示成

其中wst是将末隐藏层(lasthiddenlayer)连接到输出状态st的权重,而n是状态数。注意到,等式(1)中的归一化项与状态无关,因此其可在帧分类或序列解码期间被忽略。例如,在帧分类中,给定观测ot,相应的状态st可通过以下等式来推断

对于多类svm,分类函数为

其中φ(ot)是预定义的特征空间,而ws是类/状态s的权重参数。如果dnn被用来导出特征空间(例如,),则多类svm和dnn的解码是相同的。注意到,dnn可使用帧级交叉熵(ce)或序列级mmi/smbr准则来训练。本文所描述的技术可使用帧或序列级的算法以使用最大间隔准则来估计(在一层中的)svm的参数并且来更新(在所有先前的层中的)dnn的参数。所得到的模型被称为深度神经svm(dnsvm)。其架构在图3中得到例示。

现在转向图3,提供了dnsvm模型分类器的说明性表示的各方面并将其概括地称为dnsvm模型分类器300。该示例dnsvm模型分类器300包括dnsvm模型301。(图3还示出了数据302,该数据是出于理解的目的而示出的,但不被认为是分类器300的一部分。)在一个实施例中,dnsvm模型301包括一模型且可被体现为输入与合适输出集的映射概率关系的特定结构,诸如在图3中说明性地描绘的。这些概率关系(被示为每一层的节点305之间的连接线307)可通过训练来确定。因此,在本文所描述的技术的一些实施例中,dnsvm模型301根据其训练来定义。(因此,未经训练的dnn模型可被认为具有与已经被训练的同一dnn模型不同的内部结构。)深度神经网络(dnn)可被认为是具有许多隐藏层的(由此是深度的)常规多层感知器。

dnsvm模型包括多个层340的节点。节点也可被描述成感知器。被馈送到分类器中的声学输入或特征可被示为输入层310。线307在dnsvm模型内将输入层310中的每个节点连接到第一隐藏层312中的每个节点。隐藏层312中的每个节点执行计算以生成随后被馈送到第二隐藏层314中的每个节点的输出。不同的节点可能给不同的输入赋予不同的权重,从而得到不同的输出。对被用来执行计算以产生输出的每个节点而言唯一的权重和其他因素在本文中被描述成“节点参数”或者仅“参数”。节点参数通过训练来习得。隐藏层314中的节点将结果传递到层316中的节点。层316中的节点将结果传送到层318中的节点。层318中的节点将计算结果传递到顶层320,其产生被示作输出层350的最终结果。输出层被示为带有多个节点,但可能仅有单个节点。例如,输出层可输出针对声学输入的单个分类。在dnsvm模型中,一个或多个层是支持向量机。不同类型的支持向量机可被使用。例如,结构化支持向量机或多类svm。

帧级最大-间隔训练

回到图1,帧级分类组件124使用帧级训练将参数分配给dmsvm内的节点。当多类svm被用于dnsvm模型中的一个或多个层时,帧级训练可被使用。给定训练观测及其对应的状态标记其中st∈{1,...,n},在帧级训练中,dnn的参数可通过最小化交叉熵来估计。在此,令作为从dnn导出的特征空间,最后一层的参数首先使用多类svm训练算法来估计:

对于每一个训练帧t=1,...,t,

对于每个竞争状态

其中εt≥0是对违反间隔要求的数据点进行惩罚的松弛变量。注意到,目标函数实质上与二元svm相同。唯一的区别来自于约束,其基本上说,正确的状态标记的分数必须比任何其他状态的分数大由损失所确定的间隔。在等式(4)中,对于任何错误分类,损失是常数1。使用经平方的松弛可稍微优于εt,因此在等式(4)中得到应用。

注意到,如果正确的分数大于所有竞争分数则其必须大于“最”竞争分数因此,通过将松弛变量εt从约束代入目标函数,等式(4)可重新用公式表示成下式的最小化

其中是每个状态的参数向量,而[·]+是铰链函数(hingefunction)。注意到,一组线性函数的最大者是凸的,因而等式(5)关于w是凸的。

给定多类svm参数w,前一层的参数w[l]可通过从顶层多类svm反向传播梯度来更新,

注意到,与标准dnn相同。关键在于计算关于激活ht的偏导。然而,由于铰链函数和max(·),等式(5)是不可微分的。为了处理该情况,次梯度方法得到了应用。给定每个状态ws的(最后一层中的)当前多类svm参数以及最竞争状态标记目标函数(5)的次梯度可被表示成:

在此之后,反向传播算法与标准dnn完全相同。注意到,在多类svm的训练之后,大多数训练帧可被正确地分类并且在间隔以外。这意味着,对那些帧而言,因此,只有其余的几个训练样本(支持向量)具有非零次梯度。

序列级最大-间隔训练

序列级训练组件126使用序列级最大-间隔训练方法来训练dnsvm。当结构化svm被用于一个或多个层时,序列级训练可被使用。经序列级训练的dnsvm可充当声学模型和语言模型。在最大-间隔序列训练中,为了简单起见,首先考虑一个训练话语(o,s),其中o={o1,...,ot}是观测序列,而s={s1,...,st}是对应的参考状态。模型的参数可通过对下式最大化来估计

这里,间隔被定义成对数后验域中参考状态序列s与竞争状态序列之间的最小距离。注意到,与mmi/smbr序列训练不同,后验概率中的归一化项∑sp(o,s)被约去,因为其同时在分子和分母两者中。为了清楚起见,语言模型概率在此不被示出。为了泛化上述目标函数,损失函数被引入以控制间隔的大小,铰链函数[·]+得到应用以忽略在边缘以外的数据,并且先验p(w)被并入以进一步减少泛化误差。因此,准则变成了对下式最小化

对于dnsvm,log(p(o|s)p(s))可经由下式来计算

其中φ(o,s)是表征o与s之间的依赖关系的点特征,

其中δ(·)是克罗内克(kronecker)增量(指示符)函数。这里,先验p(w)被假定为具有零均值和经按比例缩放的单位协方差矩阵ci的高斯分布(gaussian),由此将先验和等式(9)代入准则(8),(最后一层中的)dnsvm的参数可通过对下式最小化来估计

其中u=1,...,u是训练话语的索引。如同对于w而言也是凸的。有趣的是,等式(11)与结构化svm的训练准则相同。其可使用切割平面算法(cuttingplanealgorithm)来求解。求解优化(11)要求有效地搜索最竞争状态序列如果状态级损失(state-levelloss)被施加,则搜索问题maxsu{·}可使用维特比解码算法(viterbidecodingalgorithm)来求解(参见2.3节)。训练期间的计算负荷可通过该搜索过程来支配。在一个方面,多达u个并行线程(每个并行线程为训练数据的一子集搜索)可被使用。中央服务器可被用来从每个线程收集然后更新参数。

为了加速训练,具有状态对准的分母点阵(denominatorlattice)被用来约束搜索空间。然后,基于点阵的前向-后向搜索被应用以找到最竞争状态序列

类似于帧级的情况,各先前层的参数也可通过从顶层反向传播梯度来更新。顶层参数在此过程期间是固定的,而各先前层的参数得到更新。等式12可被用来针对话语u和帧t计算关于ht的次梯度,

其中是参考su与其最竞争状态序列之间的损失,而φ是的缩写。在此之后,反向传播算法与标准dnn完全相同。

当隐藏层是svm而不是神经网络时,网络的宽度(每个隐藏层中的节点的数量)可由svm训练算法自动地习得,而不是被指定任意数字。更具体而言,如果最后一层的输出被用作当前层中的svm的输入特征,则由svm算法检测到的支持向量可被用来构造当前层中的节点。因此,检测到的支持向量越多(这意味着数据难以进行分类),则更宽的层将被构造。

解码

解码组件128将经训练的dnsvm模型应用于经分类的音频数据,以标识音频数据内的聚类状态。结果可随后与分类数据进行比较以测量准确度。被用来验证训练的解码过程也可用于未经分类的数据,以生成被用来对未标记的语音进行分类的结果。该解码过程类似于标准dnn-hmm混合系统,但是后验概率logp(st|ot)由来自dnsvm的分数代替。如果序列训练得到应用,则(对数域中的)状态先验、状态转移概率以及语言模型分数通过从等式(11)中习得的权重来按比例缩放。注意到,除了损失之外,对最有可能的状态序列s进行解码本质上与推导等式(11)中最竞争状态序列相同。它们可使用维特比算法来求解。

使用dnsvm的自动语音识别系统

现在转到图2,示出了根据本文所描述的技术的一实施例的自动语音识别(asr)系统的示例。图2中所示的asr系统201仅仅是适用于与dnsvm一起使用以确定经识别的语音的asr系统的一个示例。构想了,可使用asr系统的其他变型,包括包含比此处所示的示例asr系统更少的组件或者图2中未示出的附加的组件的asr系统。

asr系统201示出了感测由用户-扬声器295提供的声学信息(可听见的口头单词或语音290)的传感器250。传感器250可包括一个或多个麦克风或声学传感器,其可被体现在用户设备(诸如图1中所描述的用户设备102或104)上。传感器250将语音290转换成可被提供给特征提取器255(或者在一些实施例中可被直接提供给解码器260)的声学信号信息253。在一些实施例中,声学信号可在特征提取器255之前经历预处理(未示出)。特征提取器255通常执行特征分析以确定语音信号的参数化有用特征,同时减少噪声恶化或者以其他方式丢弃冗余或不需要的信息。特征提取器255将声学信号转换成适合于解码器260所使用的模型的特征258(其可以包括语音语料库)。

解码器260包括声学模型(am)265和语言模型(lm)270。am265包括构成单词的不同声音(其可被分配一个称为“音素”的标记)的统计学表示。am265可使用dnsvm将标记分配给声音。am265可基于语音特征对音素进行建模,并向lm270提供包括对应于语音语料库的单词序列的语料库。作为替代,am265可向lm270提供音素串。lm270接收单词的语料库,并且确定经识别的语音280,其可包括单词、实体(类)或短语。

在一些实施例中,lm270可反映特定子域或某些类型的语料库,诸如某些类(例如个人名称、位置、日期/时间、电影、游戏等)单词或字典、短语或这些的组合,诸如基于令牌的组件lm。

现在转到图4,描述了用于训练由具有处理器和存储器的一个或多个计算设备执行的深度神经支持向量机(“dnsvm”)的方法400。该方法在步骤410包括接收训练材料的语料库。训练材料的语料库可包括一个或多个已标记的声学特征。在步骤420,dnsvm内的一个或多个先前层的参数的初始值得到确定及固定。在步骤430,dnsvm的顶层得到训练,同时使用最大间隔目标函数来保持初始值固定以找到解决方案。顶层可以是支持向量机。顶层可以是多类、一种结构化或另一种类型的支持向量机。

在步骤440,初始值根据解决方案被分配到顶层参数并且被固定。在步骤450,dnsvm的先前的层得到训练,同时保持顶层参数的初始值固定。该训练使用步骤430的最大间隔目标函数来生成一个或多个先前的层的参数的经更新的值。先前的层的训练还可使用次梯度下降计算。在步骤460,模型被评估是否可以终止。在一个方面,步骤420-450被迭代地重复470以重新训练顶层和先前的层,直到在多次迭代之间参数变化小于阈值。当参数变化小于阈值时,训练停止,并且在步骤480,dnsvm模型被保存。

在步骤430训练顶层和/或在步骤450训练先前的层可使用先前所描述的帧级训练或序列级训练。

示例性操作环境

概括地参考附图,并首先具体参考图5,示出了用于实现本文描述的技术的各方面的示例性操作环境,并将其概括地指定为计算设备500。计算设备500只是合适的计算环境的一个示例,并且不旨在对本文描述的技术的使用或功能范围提出任何限制。也不应将计算设备500解释为对所示出的任一组件或其组合有任何依赖性或要求。

本文所描述的技术可以在由计算机或诸如个人数据助理或其他手持式设备之类的其他机器执行的计算机代码或机器可使用指令(包括诸如程序组件之类的计算机可执行指令)的一般上下文中描述。一般而言,包括例程、程序、对象、组件、数据结构等的程序组件指的是执行特定任务或实现特定抽象数据类型的代码。本文所描述的技术的各方面可以在各种系统配置中实施,这些系统配置包括手持式设备、消费电子产品、通用计算机、专用计算设备等等。本文所描述的技术的各方面也可以在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实施。

继续参考图5,计算设备500包括直接或间接耦合以下设备的总线510:存储器512、一个或多个处理器514、一个或多个呈现组件516、输入/输出(i/o)端口518、i/o组件520、和说明性电源522。总线510表示可以是一条或多条总线(诸如地址总线、数据总线、或其组合)。虽然为了清楚起见利用线条示出了图5的各框,但是实际上,各组件的轮廓并不是那样清楚,并且比喻性地来说,线条更精确地将是灰色的和模糊的。例如,可以将诸如显示设备等呈现组件认为是i/o组件520。而且,处理器也具有存储器。发明人认识到,这是本领域的特性,并且重申,图5的图示只是例示可结合本文描述的技术的一个或多个方面来使用的示例性计算设备。诸如“工作站”、“服务器”、“膝上型计算机”、“手持式设备”等分类之间没有区别,它们全部都被认为是在图5的范围之内并且被称为“计算机”或“计算设备”。

计算设备500通常包括各种计算机可读介质。计算机可读介质可以是可由计算设备500访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。作为示例而非限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何方法和技术实现的易失性和非易失性、可移动和不可移动介质。

计算机存储介质包括ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁带盒、磁带、磁盘存储或其他磁存储设备。计算机存储介质不包括被传播的数据信号。

通信介质通常以诸如载波或其他传输机制之类的已调制数据信号来体现计算机可读指令、数据结构、程序模块或其他数据,并且包括任何信息传送介质。术语“经调制数据信号”是指使得以在信号中编码信息的方式来设定或改变其一个或多个特征的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接之类的有线介质,以及诸如声学、rf、红外及其他无线介质之类的无线介质。上述的任意组合也应包含在计算机可读介质的范围内。

存储器512包括易失性和/或非易失性存储器形式的计算机存储介质。存储器512可以是可移动的、不可移动的、或其组合。示例性存储器包括非瞬态、固态存储器、硬盘驱动器、光盘驱动器等。计算设备500包括从诸如总线510、存储器512或i/o组件520等各种实体读取数据的一个或多个处理器514。呈现组件516向用户或其他设备呈现数据指示。示例性呈现组件516包括显示设备、扬声器、打印组件、振动组件等等。i/o端口518允许计算设备500在逻辑上耦合至包括i/o组件520的其他设备,其中某些设备可以是内置的。

说明性i/o组件包括话筒、游戏控制杆、游戏手柄、圆盘式卫星天线、扫描仪、打印机、显示设备、无线设备、控制器,诸如指示笔、键盘和鼠标、自然用户界面(nui)等。在各实施例中,提供了笔型数字化仪(未示出)和附随的输入工具(也未被示出,但可包括(仅作为示例)笔或触控笔)以数字地捕捉徒手用户输入。笔型数字化仪和处理器514之间的连接可以是直接的或者经由利用串行端口、并行端口和/或本领域内已知的其它接口和/或系统总线的耦合。此外,数字化仪输入组件可以是与诸如显示设备之类的输出组件分开的组件,或者在一些实施例中,数字化仪的可用输入区域可以与显示设备的显示区域共存、与显示设备集成、或者可作为单独的设备覆盖件存在或以其它方式附连到显示设备。申请人构想任何及所有如此的变型、及其任何组合都落在本文描述的技术的各实施例的范围内。

nui处理用户生成的空中手势、语音或其他生理输入。适当的nui输入可被解释成用于与计算设备500相关联地呈现的墨水笔画(inkstroke)。这些请求可被传送给适当的网络元件以供未来处理。nui实现语言识别、触摸和指示笔识别、面部识别、生物测定识别、平不上或屏幕附近的姿势识别、空中识别、头部和眼睛跟踪、以及与计算设备500的显示器相关联的触摸识别的任何组合。计算设备500可装备有深度相机,诸如立体相机系统、红外相机系统、rgb相机系统以及这些的组合以也能够与姿势检测和识别。此外,计算设备500可装备有允许检测运动的加速度计或陀螺仪。加速度计或陀螺仪的输出可被提供到计算设备500的显示器以渲染沉浸式增强现实或虚拟现实。

计算设备可包括无线电。无线电传送并接收无线电通信。计算设备可以是适合于通过各种无线网络接收到的通信和介质的无线终端。计算设备500可通过无线协议(诸如码分多址“cdma”、全球移动系统“gsm”,或时分多址“tdma”等等)通信,以与其他设备进行通信。无线电通信可以是近程连接、远程连接,或近程和远程无线电信连接两者的组合。当我们谈到“近”和“远”类型的连接时,我们不意指两个设备之间的空间关系。相反,我们通常称近程和远程为不同类别或类型的连接(即主要连接和次要连接)。近程连接包括到提供对无线通信网络的访问的设备(例如,移动热点)的连接,诸如使用802.11协议的wlan连接。到另一计算设备的蓝牙连接是近程连接的第二个示例。远程连接可包括使用cdma、gprs、gsm、tdma和802.16协议的一个或多个的连接。

实施例

实施例1。一种自动语音识别(asr)系统,包括:处理器;以及计算机存储存储器,所述计算机存储存储器具有被储存在其上的计算机可执行指令,所述计算机可执行指令在由所述处理器执行时实现声学模型和语言模型:被配置成将语音转换成声学信息的声学传感器;所述声学模型(am)包括被配置成将所述声学信息分类成多个音素的深度神经支持向量机;并且所述语言模型(lm)被配置成将所述多个音素转换成可信的单词序列。

实施例2。如实施例1所述的系统,其中所述asr系统被部署在用户设备上。

实施例3。如实施例1或2所述的系统,其中所述深度神经支持向量机的顶层是多类支持向量机,其中所述顶层生成所述深度神经支持向量机的输出。

实施例4。如实施例3所述的系统,其中所述顶层使用帧级训练来训练。

实施例5。如实施例1或2所述的系统,其中所述深度神经支持向量机的顶层是结构化支持向量机,其中所述顶层生成所述深度神经支持向量机的输出。

实施例6。如实施例5所述的系统,其中所述顶层使用序列级训练来训练。

实施例7。如以上各实施例中任一项所述的系统,其中所述顶层中节点的数量由所述svm训练算法来习得。

实施例8。如以上各实施例中任一项所述的系统,其中所述声学模型和所述语言模型使用序列级训练来联合地习得。

实施例9。一种用于训练由具有处理器和存储器的一个或多个计算设备执行的深度神经支持向量机(“dnsvm”)的方法,所述方法包括:接收训练材料的语料库;确定所述dnsvm内的一个或多个先前层的参数的初始值;训练所述dnsvm的顶层,同时使用最大间隔目标函数来保持所述初始值固定以找到解决方案;以及根据所述解决方案将初始值分配给所述顶层参数。

实施例10。如实施例9所述的方法,其中所述训练材料的语料库包括一个或多个已标记的声学特征。

实施例11。如实施例9或10所述的方法,还包括:

训练所述dnsvm的先前的层,同时使用所述最大间隔目标函数来保持所述顶层参数的初始值固定,以生成一个或多个先前层的参数的经更新的值。

实施例12。如实施例11所述的方法,还包括继续迭代地重新训练所述顶层和先前层,直到在多次迭代之间参数变化小于阈值。

实施例13。如实施例9至12中任一项所述的方法,其中确定参数的初始值包括根据均匀分布来设置所述权重的值。

实施例14。如实施例9至13中任一项所述的方法,其中所述深度神经支持向量机的顶层是多类支持向量机,其中所述顶层生成所述深度神经支持向量机的输出。

实施例15。如实施例14所述的方法,其中所述顶层使用帧级训练来训练。

实施例16。如实施例9至13中任一项所述的方法,其中所述深度神经支持向量机的顶层是结构化支持向量机,其中所述顶层生成所述深度神经支持向量机的输出。

实施例17。如实施例16所述的方法,其中所述顶层使用序列级训练来训练。

实施例18。如实施例9至17中任一项所述的方法,其中所述顶层是支持向量机。

本文所描述的各方面已被描述为说明性的而非限制性的。可理解的是,某些特征和子组合是有用的,并且可以加以利用而无需参考其他特征和子组合。这由权利要求所构想的,并在权利要求的范围内。

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