CN108073980A - 模式识别装置以及模式识别方法 - Google Patents
模式识别装置以及模式识别方法 Download PDFInfo
- Publication number
- CN108073980A CN108073980A CN201710752959.4A CN201710752959A CN108073980A CN 108073980 A CN108073980 A CN 108073980A CN 201710752959 A CN201710752959 A CN 201710752959A CN 108073980 A CN108073980 A CN 108073980A
- Authority
- CN
- China
- Prior art keywords
- vector
- input
- rnn
- layer
- dimension
- 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
Links
- 238000003909 pattern recognition Methods 0.000 title claims abstract description 77
- 238000000034 method Methods 0.000 title abstract description 19
- 239000013598 vector Substances 0.000 claims abstract description 487
- 238000006243 chemical reaction Methods 0.000 claims abstract description 160
- 230000009466 transformation Effects 0.000 claims abstract description 84
- 238000012545 processing Methods 0.000 claims abstract description 72
- 238000004364 calculation method Methods 0.000 claims abstract description 32
- 239000011159 matrix material Substances 0.000 claims description 37
- 238000013528 artificial neural network Methods 0.000 claims description 22
- 230000000306 recurrent effect Effects 0.000 claims description 20
- 230000006870 function Effects 0.000 claims description 15
- 238000012886 linear function Methods 0.000 claims description 10
- 230000015654 memory Effects 0.000 claims description 10
- 230000004913 activation Effects 0.000 claims description 8
- 230000020411 cell activation Effects 0.000 claims description 8
- 238000012567 pattern recognition method Methods 0.000 claims description 8
- 230000006403 short-term memory Effects 0.000 claims description 4
- 230000017105 transposition Effects 0.000 claims description 3
- 239000010410 layer Substances 0.000 abstract 7
- 239000011229 interlayer Substances 0.000 abstract 1
- 230000007935 neutral effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000009467 reduction Effects 0.000 description 6
- 230000007774 longterm Effects 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- 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/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- 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/044—Recurrent networks, e.g. Hopfield 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/12—Classification; Matching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Databases & Information Systems (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Multimedia (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Medical Informatics (AREA)
- Algebra (AREA)
- Image Analysis (AREA)
Abstract
一种模式识别装置以及模式识别方法。本发明的实施方式涉及模式识别装置以及模式识别方法。实现高效地削减计算量。在实施方式的模式识别装置中,作为构成递归型神经网络的中间层的RNN层包括输入变换部和RNN处理部。RNN层的输入变换部针对每个阶段进行针对输入矢量和递归输入矢量的变换,计算比所述输入矢量的维数与所述递归输入矢量的维数之和小的维数的变换矢量并输出的步骤,其中该输入矢量由从所述输入层输出的特征矢量或者下位的所述RNN层所包括的所述RNN处理部的输出构成,该递归输入矢量由该RNN层所包括的所述RNN处理部的之前阶段的输出构成。RNN层的RNN处理部针对每个阶段根据由该RNN层所包括的输入变换部计算出的变换矢量计算RNN输出矢量并输出。
Description
本申请以日本专利申请2016-223333(申请日:2016/11/16)为基础,从该申请享受优先的利益。本申请通过参照该申请而包括该申请的全部内容。
技术领域
本发明的实施方式涉及模式识别装置以及模式识别方法。
背景技术
递归型神经网络(RNN:Recurrent Neural Network)一般包括输入层、输出层以及一个或者多个中间层(RNN层)。在存在多个RNN层的情况下,以使下位层的输出为该层的输入、使该层的输出为上位层的输入的方式,按照从最下位层到最上位层的顺序排列多个RNN层。在此,最下位的RNN层的输入是输入层的输出,最上位的RNN层的输出是输出层的输入。另外,各RNN层包括一个或者多个部件。
递归型神经网络在被输入特征矢量序列时,在各RNN层中,针对输入的每个阶段,除了使用来自该阶段的下位层的输入以外,还使用包括之前阶段的该RNN层的输出的递归输入来计算该阶段的输出。因此,能够实现考虑了序列的模式的模式识别,例如,在声音辨别或图像辨别、字符辨别、自然语言处理等各种领域中被用作模式识别装置。
但是,在递归型神经网络中,在作为中间层的RNN层中,除了输入以外递归输入也被用于输出的计算,所以与在中间层中仅根据输入计算输出的并非递归型的神经网络相比,计算量增加。因此,研究削减递归型神经网络中的计算量,但在以往的方法中难以高效地削减递归型神经网络中的计算量,要求改善。
发明内容
本发明想要解决的课题在于提供一种能够高效地削减计算量的模式识别装置、模式识别方法以及程序。
实施方式提供一种模式识别装置,在输入层与输出层之间,具有一层以上的作为构成递归型神经网络的中间层的RNN层,从所述输出层输出与输入到所述输入层的特征矢量序列对应的模式序列,其中,所述RNN层包括输入变换部和RNN处理部。所述输入层针对每个阶段逐个地依次输出构成所述特征矢量序列的特征矢量。所述RNN层的所述输入变换部针对每个阶段进行针对输入矢量和递归输入矢量的变换,计算比所述输入矢量的维数与所述递归输入矢量的维数之和小的维数的变换矢量并输出的步骤,其中,该输入矢量由从所述输入层输出的特征矢量或者下位的所述RNN层所包括的所述RNN处理部的输出构成,该递归输入矢量由该RNN层所包括的所述RNN处理部的之前阶段的输出构成。所述RNN层的所述RNN处理部针对每个阶段,根据由该RNN层所包括的所述输入变换部计算出的所述变换矢量计算RNN输出矢量并输出。所述输出层根据由最上位的所述RNN层所包括的所述RNN处理部计算出的所述RNN输出矢量,计算所述模式序列并输出。
根据上述结构的模式识别装置,能够高效地削减计算量。
附图说明
图1是示出第1实施方式的模式识别装置的功能性的结构例的框图。
图2是示出有多个RNN层的情况的结构例的框图。
图3是示出第2实施方式的模式识别装置的功能性的结构例的框图。
图4是示出有多个LSTM层的情况的结构例的框图。
图5是示出实施方式的模式识别装置的硬件结构例的框图。
(符号说明)
10:输入层;20:RNN层;21:输入变换部;22:RNN处理部;30:输出层;40:LSTM层;41:输入变换部;42:LSTM处理部。
具体实施方式
以下,参照附图,详细说明实施方式的模式识别装置以及模式识别方法。实施方式的模式识别装置是使用递归型神经网络的模式识别装置。也就是说,实施方式的模式识别装置在输入层与输出层之间具有一层以上的作为构成递归型神经网络的中间层的RNN层,从输出层输出与输入到输入层的特征矢量序列对应的模式序列。
RNN层针对输入的每个阶段,除了使用来自该阶段的下位层的输入以外,还使用包括之前阶段的该RNN层的输出的递归输入来计算该阶段的输出。因此,使用将RNN层作为中间层的递归型神经网络的模式识别装置能够进行考虑了序列的模式的模式识别。
另外,在作为递归型神经网络的一种的LSTM(Long Short-Term Memory,长短期记忆网络)中,不使用通常的RNN层的部件,例如,使用具备控制输入的输入门、控制存储的遗忘门以及控制输出的输出门的被称为LSTM块的记忆单元。在RNN层使用LSTM的模式识别装置使用输入门、遗忘门以及输出门来控制输入、存储、以及输出,从而能够保持长期的存储,能够实现对使用通常的RNN层的模式识别装置来说困难的考虑了长期的序列的模式的模式识别。
但是,在递归型神经网络中,如上所述,除了输入以外递归输入也被用于计算输出,所以存在与仅根据输入计算输出的并非递归型的神经网络相比计算量增加的问题。特别是,在LSTM中,在各门中使用输入和递归输入来计算门输出,所以存在计算量大幅增加的问题。
针对该问题,有如下手法:根据使用LSTM的RNN层(以下将其特别称为“LSTM层”)的输出,使用递归射影层(recurrent projection layer)生成维数比该层的输出少的递归射影输出(recurrent projected output),将递归射影输出用作下一阶段的该LSTM层的递归输入以及该阶段的上位层的输入,从而削减计算量。
但是,在该手法中,需要预先确定各LSTM层的递归射影输出的维度,所以无法使各LSTM层中的输入和递归输入的维数的分配自动地最佳化,难以实现高效的计算量削减。另外,在该手法中,还存在无法削减最下位的LSTM层的输入的维数的问题。作为削减输入到RNN层的特征矢量的维度的方法,还有使用深度自动编码器(deep autoencoder)的方法,但即使在假设使用该方法来削减LSTM的输入的维数和由递归射影输出构成的递归输入的维数的情况下,也需要预先确定这些维度削减后的输入的维数和递归输入的维数,所以仍无法使输入和递归输入的维数的分配自动地最佳化,难以实现高效的计算量削减。
因此,在实施方式的模式识别装置中,设为构成递归型神经网络的中间层的RNN层包括输入变换部和RNN处理部的结构,输入变换部进行针对RNN层的输入和递归输入的变换而生成变换矢量,RNN处理部使用该变换矢量来计算RNN输出矢量。也就是说,在实施方式的模式识别装置中,RNN层的输入变换部针对每个阶段进行针对输入矢量和递归输入矢量的变换,计算比输入矢量的维数与递归输入矢量的维数之和小的维数的变换矢量并输出,其中,该输入矢量由从输入层输出的特征矢量或者包含于下位的RNN层的RNN处理部的输出构成,该递归输入矢量由包含于该RNN层的RNN处理部的之前阶段的输出构成。然后,RNN层的RNN处理部针对每个阶段,根据由包含于该RNN层的输入变换部计算出的变换矢量来计算RNN输出矢量并输出。
这样,在实施方式的模式识别装置中做成计算利用针对RNN层的输入和递归输入的变换削减了维数的变换矢量,并根据该变换矢量计算RNN输出矢量并输出的结构,所以能够使RNN层的输入和递归输入的维度削减后的维数的分配自动地最佳化,能够高效地削减计算量。以下,分成在中间层中使用通常的RNN层的情况和使用LSTM层的情况,进一步详细说明实施方式的模式识别装置的具体例。
(第1实施方式)
首先,作为第1实施方式说明在中间层中使用通常的RNN层的情况的例子。图1是示出第1实施方式的模式识别装置的功能性的结构例的框图。如图1所示,本实施方式的模式识别装置是如下结构:具备输入层10、RNN层20以及输出层30,RNN层20包括输入变换部21和RNN处理部22。
输入层10受理特征矢量序列,针对序列的每个阶段逐个地依次输出构成特征矢量序列的特征矢量。
RNN层20的输入变换部21针对每个阶段进行针对由从输入层10输出的特征矢量构成的输入矢量和由作为RNN处理部22的之前阶段的输出的RNN输出矢量构成的递归输入矢量的变换,计算比输入矢量的维数与递归输入矢量的维数之和小的维数的变换矢量并输出。
例如,输入变换部21根据阶段t的输入矢量xt和递归输入矢量mt-1,通过下述式(1)计算阶段t的变换矢量vt。
【式1】
vt=Wvx·xt+Wvm·mt-1…(1)
其中,Wvx是针对输入矢量xt的权重矩阵,Wvm是针对递归输入矢量mt-1的权重矩阵。
在此,将输入矢量xt的维数设为N、将递归输入矢量mt-1的维数设为M、将变换矢量vt的维数设为I,考虑针对用于实现计算量的削减的变换矢量vt的维数I的制约条件。
在以往的一般的递归型神经网络的RNN层中使用N维的输入矢量xt和M维的递归输入矢量mt-1来计算M维的RNN输出矢量,所以其计算量能够表示为(N+M)×M。另一方面,在本实施方式的RNN层20中,首先,在输入变换部21中使用N维的输入矢量xt和M维的递归输入矢量mt-1来计算I维的变换矢量vt,之后,根据I维的变换矢量vt计算M维的RNN输出矢量,所以其计算量能够表示为(N+M)×I+I×M。因此,如果(N+M)×I+I×M<(N+M)×M,则可以说能够通过本实施方式削减计算量。
根据以上情况,变换矢量vt的维数I最好满足下述式(2)所示的条件。也就是说,输入变换部21最好计算满足下述式(2)所示的条件的变换矢量vt并输出。
【式2】
另外,在将阶段t的变换矢量vt中的仅根据输入矢量xt计算的分量设为vxt、将根据输入矢量xt和递归输入矢量mt-1计算的分量设为vct、将仅根据递归输入矢量mt-1计算的分量设为vmt时,输入变换21也可以如以下所述地计算变换矢量vt。
vt=[vxt T,vct T,vmt T]T
vxt=Wvxi×xt
vct=Wvxc×xt+Wvmc×mt-1
vmt=Wvmi×mt
其中,·T是矩阵的转置,Wvxi、Wvxc是针对输入矢量xt的权重矩阵,Wvmc、Wvmi是针对递归输入矢量mt-1的权重矩阵。
为方便起见,将这样的线性变换称为非完全连接(non-fully connected linartransformation)的线性变换。在使用非完全连接的线性变换的情况下,在将分量vxt的维数设为Ix、将分量vct的维数设为Ic、将分量vmt的维数设为Im时,如果(Ix+Ic)×N+(Im+Ic)×M+I×M<(N+M)×M、(I-Im)×N+(Ic+Im)×M+I×M<(N+M)×M、(I-Im)×N+(I-Ix)×M+I×M<(N+M)×M,则可以说能够削减计算量。
因此,在使用非完全连接的线性变换的情况下,输入变换部21最好计算满足下述式(3)所示的条件的变换矢量vt并输出。
【式3】
此外,在使用非完全连接的线性变换的情况下,有即使变换矢量vt的维数I为递归输入矢量mt-1的维数m以上(I≥M)也能够削减计算量的情况,但至少需要变换矢量vt的维数I小于输入矢量xt的维数N与递归输入矢量mt-1的维数m之和(I<N+M)。另外,在Ic=I、Ix=Im=0的情况下,与上述式(1)等价。
以上说明的变换是线性变换,但由输入变换部21实施的变换未必一定是线性变换,也可以使用仿射变换或可最佳化的非线性变换等。例如,输入变换部21也可以根据阶段t的输入矢量xt和递归输入矢量mt-1,通过下述式(4)计算阶段t的变换矢量vt。
【式4】
vt=k(Wvx·xt+Wvm·mt-1+bv)…(4)
其中,k(·)是对每个矢量应用的Sigmoid函数、tanh函数等非线性函数,Wvx是针对输入矢量xt的权重矩阵,Wvm是针对递归输入矢量mt-1的权重矩阵,bv是使变换矢量vt的维数为I时的I维的偏置矢量。
在通过上述式(4)的非线性变换计算变换矢量vt的情况下,针对变换矢量vt的维数I的制约条件也与通过上述式(1)的线性变换计算变换矢量vt的情况相同。也就是说,输入变换部21最好计算满足上述式(2)所示的条件的变换矢量vt并输出。
另外,在将阶段t的变换矢量vt中的仅根据输入矢量xt计算的分量设为vxt、将根据输入矢量xt和递归输入矢量mt-1计算的分量设为vct、将仅根据递归输入矢量mt-1计算的分量设为vmt时,输入变换21也可以如以下所述地计算变换矢量vt。
vt=[vxt T,vct T,vmt T]T
vxt=k(Wvxi×xt+bvx)
vct=k(Wvxc×xt+Wvmc×mt-1+bvc)
vmt=k(Wvmi×mt+bvm)
其中,·T是矩阵的转置,k(·)是对每个矢量应用的非线性函数,Wvxi、Wvxc是针对所述输入矢量xt的权重矩阵,Wvmi、Wvmc是针对所述递归输入矢量mt-1的权重矩阵,bvx是使所述变换矢量的分量vxt的维数为Ix时的Ix维的偏置矢量,bvc是使所述变换矢量的分量vct的维数为Ic时的Ic维的偏置矢量,bvm是使所述变换矢量的分量vmt的维数为Im时的Im维的偏置矢量。
为方便起见,将这样的非线性变换称为非完全连接的非线性变换。在使用非完全连接的非线性变换的情况下,输入变换部21最好与使用上述非完全连接的线性变换的情况同样地计算满足上述式(3)所示的条件的变换矢量vt并输出。
RNN层20的RNN处理部22针对每个阶段,根据由输入变换部21计算出的变换矢量,使用下述式(5)来计算RNN输出矢量。
【式5】
mt=σ(Wmv.vt+bm)…(5)
其中,mt是阶段t的RNN输出矢量,vt是阶段t的变换矢量,Wmv是针对变换矢量vt的权重矩阵,bm是偏置矢量,σ(·)是对矢量的每个要素应用的非线性函数。σ(·)一般使用Sigmoid函数、tanh函数等,但也可以使用其它非线性的函数。
输出层30根据由RNN处理部22计算出的RNN输出矢量来计算模式序列。在模式序列是N等级识别问题中的N维得分矢量的序列的情况下,使用例如式(6)来计算阶段t的得分矢量yt。
【式6】
yt=Wym.mt+by…(6)
其中,Wym是用于计算得分矢量的权重矩阵,by是偏置矢量。
在此,模式序列未必一定是得分矢量的序列,也可以是后验概率矢量的序列或得分为最大的等级的索引的序列等。在模式序列是后验概率矢量的序列的情况下,根据例如得分矢量yt,使用下述式(7)来计算阶段t的后验概率矢量zt。
【式7】
zt=soft max(yt)…(7)
其中,softmax(·)是Softmax函数,根据得分矢量yt的各要素yt(n),使用式(8)来计算后验概率矢量zt的各要素zt(n)。
【式8】
其中,J是得分矢量yt的维数。
另外,在模式序列是得分为最大的等级的索引的序列的情况下,例如,根据得分矢量yt的各要素yt(n),使用下述式(9)来计算阶段t的索引
【式9】
其中,argmaxn(yt(n))是求取得分矢量yt的各要素yt(n)中的具有最大值的要素的索引的函数。
在本实施方式的模式识别装置中,能够使用学习数据,通过例如下述的参考文献所示的手法等使为了RNN层20的输入变换部21计算变换矢量vt而使用的权重矩阵、即上述式(1)或者上述式(5)中的权重矩阵Wvx、Wvm最佳化。
<参考文献>P.J.Werbos,“Backpropagation Through Time:What it Does andHow to Do It,”,Proceedings of the IEEE,vol.78,no.10,pp.1550-1560,Oct.1990.
在本实施方式的模式识别装置中,成为RNN层20的输入变换部21使用上述线性变换、非完全连接的线性变换、非线性变换、非完全连接的非线性变换中的任意变换来计算变换矢量vt的结构,所以能够使用学习数据自动地确定利用输入矢量xt和递归输入矢量mt-1中的哪个来提供大的权重,能够使针对变换矢量vt的输入矢量xt和递归输入矢量mt-1的维数的分配自动地最佳化。
在本实施方式中,在此之前叙述了RNN层20为一个的情况,但如图2所示,也可以在输入层10与输出层30之间有多个RNN层20(第1位RNN层20-1…第R位RNN层20-R)。如图2所示,在RNN层20的数量为R、按照从作为最下位层的第1位RNN层20-1到作为最上位层的第R位RNN层20-R的顺序排列成下位的RNN层20的输出成为上位的RNN层20的输入时,从输入层10输出的特征矢量成为第1位RNN层20-1的输入变换部21-1的输入矢量,从第1位RNN层20-1的RNN处理部22-1输出的RNN输出矢量成为作为其上位的第2位RNN层20-2的输入变换部21-2的输入矢量。
同样地,从第r位RNN层20-r(1≤r<R)的RNN处理部22-r输出的RNN输出矢量成为第(r+1)位RNN层20-(r+1)的输入变换部21-(r+1)的输入矢量,从最上位的第R位RNN层20-R的RNN处理部22-R输出的RNN输出矢量被输入到输出层30。在使用学习数据进行各RNN层20的输入变换部21中的变换的最佳化时,在各RNN层20中自动地确定输入矢量和递归输入矢量的维数的最佳的分配。
在这样具有多个RNN层20的结构的模式识别装置中,在RNN层20的输入变换部21使用上述式(1)所示的线性变换或者上述式(4)所示的非线性变换计算变换矢量的情况下,在将在第r位RNN层(1≤r≤R)20-r中计算的变换矢量vrt的维数的维数设为Ir、将第r位RNN层20-r的输入矢量的维数设为Nr、将第r位RNN层20-r的递归输入矢量的维数设为Mr时,在满足下述式(10)的情况下,可以说能够削减计算量。
【式10】
因此,第r位RNN层20-r的变换矢量vrt的维数Ir最好满足下述式(11)所示的条件。也就是说,输入变换部21最好是计算满足下述式(11)所示的条件的变换矢量vrt并输出。
【式11】
另外,在这样具有多个RNN层20的结构的模式识别装置中,在RNN层20的输入变换部21使用上述非完全连接的线性变换或者非完全连接的非线性变换计算变换矢量的情况下,在将在第r位RNN层(1≤r≤R)20-r中计算的变换矢量vrt的维数设为Ir、将第r位RNN层20-r的输入矢量的维数设为Nr、将递归输入矢量的维数设为Mr、将在第r位RNN层20-r中计算的变换矢量vrt中的仅根据输入矢量计算的分量的维数设为Irx、将根据输入矢量和递归输入矢量计算的分量的维数设为Irc、将仅根据递归输入矢量计算的分量的维数设为Irm时,在满足下述式(12)或者与其等价的下述式(13)的情况下,可以说能够削减计算量。
【式12】
【式13】
因此,第r位RNN层20-r的变换矢量vrt的维数Ir最好是满足下述式(14)所示的条件。也就是说,输入变换部21最好计算满足下述式(14)所示的条件的变换矢量vrt并输出。
【式14】
此外,上述的模式识别装置的结构能够在不脱离本发明的要旨的范围内进行各种变形。例如,也可以在输入层10与RNN层20的输入变换部21之间追加任意的处理,将追加的处理的输出矢量作为输入变换部21的输入矢量的一部分或者全部。另外,也可以在RNN层20的RNN处理部22与输出层30之间追加任意的处理,将追加的处理的输出矢量作为输出层30的输入的一部分或者全部。进而,输出层30也可以将由RNN层20的RNN处理部22计算出的RNN输出矢量直接作为模式序列输出。
如以上说明,在本实施方式的模式识别装置中,RNN层20的输入变换部21计算通过针对输入矢量和递归输入矢量的变换而削减了维数的变换矢量。然后,RNN层20的RNN处理部22根据由输入变换部21计算出的变换矢量来计算RNN输出矢量并输出。因此,根据本实施方式的模式识别装置,能够在使输入到RNN层20的输入矢量和递归输入矢量的维数的分配自动地最佳化的同时,比以往的递归型神经网络削减RNN层20中的计算量,能够实现高效的计算量的削减。
(第2实施方式)
接下来,将在中间层中使用通常的LSTM层时的例子作为第2实施方式进行说明。图3是示出第2实施方式的模式识别装置的功能性的结构例的框图。如图3所示,本实施方式的模式识别装置为具备LSTM层40而不具备第1实施方式的RNN层20的结构。此外,除了RNN代替20代替LSTM层40以外,与第1实施方式相同,因此,以下仅说明与第1实施方式的不同点。
如图3所示,本实施方式的模式识别装置中的LSTM层40包括输入变换部41和LSTM处理部42。
LSTM层40的输入变换部41与在第1实施方式中说明的RNN层20的输入变换部21同样地,针对序列的每个阶段,使用上述式(1)所示的线性变换、或者非完全连接的线性变换、或者上述式(4)所示的非线性变换、或者非完全连接的非线性变换进行针对输入矢量和递归输入矢量(在本实施方式中是作为LSTM处理部42的之前阶段的输出的LSTM输出矢量)的变换,计算比输入矢量的维数与递归输入矢量的维数之和小的维数的变换矢量并输出。其中,在本实施方式中,如后所述,在LSTM处理部42中,除了针对输入值的计算中使用变换矢量以外,在输入门、遗忘门以及输出门这三个门的计算中也使用变换矢量,所以针对用于实现计算量的削减的变换矢量的维数的制约条件不同。
在此,在将阶段t的输入矢量设为xt、将递归输入矢量设为mt-1、将变换矢量设为vt、将输入矢量xt的维数设为N、将递归输入矢量mt-1的维数设为M、将变换矢量vt的维数设为I时,以往的一般的结构的LSTM层中的输入值和三个门的矩阵计算的计算量能够表示为4×(N+M)×M。另一方面,本实施方式的LSTM层40中的输入值和三个门的矩阵计算的计算量能够表示为(N+M)×I+4×I×M。因此,如果(N+M)×I+4×I×M<4×(N+M)×M,则可以说能够通过本实施方式削减计算量。
根据以上,在使用上述式(1)所示的线性变换、或者上述式(4)所示的非线性变换来计算变换矢量vt的情况下,变换矢量vt的维数I最好满足下述式(13)所示的条件。也就是说,LSTM层40的输入变换部41最好计算满足下述式(15)所示的条件的变换矢量vt并输出。
【式15】
此外,在该情况下,存在即使变换矢量vt的维数I是递归输入矢量mt-1的维数m以上(I≥M)也能够削减计算量的情况,但至少需要变换矢量vt的维数I小于输入矢量xt的维数N与递归输入矢量mt-1的维数m之和(I<N+M)。
另外,在使用上述非完全连接的线性变换或者非完全连接的非线性变换来计算变换矢量vt的情况下,在将分量vxt的维数设为Ix、将分量vct的维数设为Ic、将分量vmt的维数设为Im时,根据(Ix+Ic)×N+(Ic+Im)×M+4×I×M或者I=Ix+Ic+Im的关系,本实施方式的LSTM层40中的输入值和三个门的矩阵计算的计算量能够表示为(I-Im)×N+(I-Ic)×M+4×I×M。
因此,在使用上述的非完全连接的线性变换或者非完全连接的非线性变换来计算变换矢量vt的情况下,变换矢量vt的维数I最好满足下述式(16)所示的条件。也就是说,LSTM层40的输入变换部41最好计算满足下述式(16)所示的条件的变换矢量vt并输出。
【式16】
LSTM层40的LSTM处理部42针对每个阶段,根据由输入变换部41计算出的变换矢量,使用下述式(17)至式(21)计算LSTM输出矢量。
【式17】
(其中,it是阶段t的输入门激活矢量,ft是阶段t的遗忘门激活矢量,ct是阶段t的记忆单元激活矢量,ct-1是阶段t-1的记忆单元激活矢量,Wiv、Wfv、Wcv、Wov是针对所述变换矢量vt的权重矩阵,Wic、wfc、woc是权重矢量,bi、bf、bc、bo是偏置矢量,是每个要素的乘法运算,σ(·)、g(·)、h(·)是对矢量的每个要素应用的非线性函数)
一般,σ(·)使用Sigmoid函数,g(·)和h(·)使用tanh函数,但也可以使用其它非线性的函数。
输出层30根据由LSTM层40的LSTM处理部42计算出的LSTM输出矢量,通过与第1实施方式同样的方法,例如,计算N等级识别问题中的N维度得分矢量的序列、后验概率矢量的序列、得分为最大的等级的索引的序列等模式序列。
在本实施方式的模式识别装置中也为LSTM层40的输入变换部41使用上述线性变换、非完全连接的线性变换、非线性变换、非完全连接的非线性变换的任意变换来计算变换矢量vt的结构,所以与第1实施方式同样地,能够使用学习数据自动地确定由输入矢量xt和递归输入矢量mt-1中的哪个提供大的权重,能够使对变换矢量vt的输入矢量xt和递归输入矢量mt-1的维数的分配自动地最佳化。
在本实施方式中,在此之前叙述了LSTM层40为一个的情况,但如图4所示,也可以在输入层10与输出层30之间有多个LSTM层40(第1位LSTM层40-1…第R位LSTM层40-R)。如图4所示,在LSTM层40的数量是R、按照从作为最下位层的第1位LSTM层40-1到作为最上位层的第R位LSTM层40-R的顺序排列成使下位的LSTM层40的输出成为上位的LSTM层40的输入时,从输入层10输出的特征矢量成为第1位LSTM层40-1的输入变换部41-1的输入矢量,从第1位LSTM层40-1的LSTM处理部42-1输出的LSTM输出矢量成为作为其上位的第2位LSTM层40-2的输入变换部41-2的输入矢量。
同样地,从第r位LSTM层40-r(1≤r<R)的LSTM处理部42-r输出的LSTM输出矢量成为第(r+1)位LSTM层40-(r+1)的输入变换部41(r+1)的输入矢量,从最上位的第R位LSTM层40-R的LSTM处理部42-R输出的LSTM输出矢量被输入到输出层30。在使用学习数据来进行各LSTM层40的输入变换部41的变换的最佳化时,在各LSTM层40中自动地确定输入矢量和递归输入矢量的维数的最佳的分配。
在这样具有多个LSTM层40的结构的模式识别装置中,在LSTM层40的输入变换部41使用上述式(1)所示的线性变换或者上述式(4)所示的非线性变换来计算变换矢量的情况下,在将在第r位LSTM层(1≤r≤R)40-r中计算的变换矢量vrt的维数的维数设为Ir、将第r位LSTM层40-r的输入矢量的维数设为Nr、将第r位LSTM层40-r的递归输入矢量的维数设为Mr时,输入变换部41最好计算满足下述式(22)所示的条件的变换矢量vrt并输出。
【式18】
另外,在这样具有多个RNN层20的结构的模式识别装置中,在RNN层20的输入变换部21使用上述非完全连接的线性变换或者非完全连接的非线性变换来计算变换矢量的情况下,在将在第r位LSTM层(1≤r≤R)40-r中计算的变换矢量vrt的维数的维数设为Ir、将第r位LSTM层40-r的输入矢量的维数设为Nr、将第r位LSTM层40-r的递归输入矢量的维数设为Mr、将在第r位LSTM层40-r中计算的变换矢量vrt中的仅根据输入矢量计算的分量的维数设为Irx、将根据输入矢量和递归输入矢量计算的分量的维数设为Irc、将仅根据递归输入矢量计算的分量的维数设为Irm时,输入变换部41最好计算满足下述式(23)所示的条件的变换矢量vrt并输出。
【式19】
此外,上述模式识别装置的结构能够在不脱离本发明的要旨的范围内进行各种变形。例如,也可以在输入层10与LSTM层40的输入变换部41之间追加任意的处理,将追加的处理的输出矢量作为输入变换部41的输入矢量的一部分或者全部。另外,也可以在LSTM层40的LSTM处理部42与输出层30之间追加任意的处理,将追加的处理的输出矢量作为输出层30的输入的一部分或者全部。进而,也可以输出层30将由LSTM层40的LSTM处理部42计算的LSTM输出矢量直接作为模式序列输出。
如以上说明,在本实施方式的模式识别装置中,LSTM层40的输入变换部41计算通过针对输入矢量和递归输入矢量的变换而削减了维数的变换矢量。然后,LSTM层40的LSTM处理部42根据由输入变换部41计算出的变换矢量计算LSTM输出矢量并输出。因此,根据本实施方式的模式识别装置,能够在使输入到LSTM层40的输入矢量和递归输入矢量的维数的分配自动地最佳化的同时,比以往的递归型神经网络削减LSTM层40中的计算量,能够实现高效的计算量的削减。
(补充说明)
上述的实施方式的模式识别装置例如能够由构成一般的计算机的硬件和由计算机执行的程序(软件)的协作实现。例如,通过计算机执行预定的程序,能够实现上述输入层10、输出层30以及包括输入变换部21和RNN处理部22的RNN层20或者包括输入变换部41和LSTM处理部42的LSTM层40。
图5是示出实施方式的模式识别装置的硬件结构例的框图。例如如图5所示,实施方式的模式识别装置具有具备CPU101等硬件处理器、RAM102和ROM103等内部存储装置、HDD104等外部存储装置、经由网络与外部进行通信的通信I/F105以及用于连接周边设备的设备I/F106的、作为通常的计算机的硬件结构。
此时,上述程序例如被记录到磁盘、光盘、半导体存储器或者与其类似的记录介质来提供。记录程序的记录介质只要是计算机系统可读取的记录介质,则其存储形式可以是任意的方式。另外,既可以构成为将上述程序预先安装到计算机,也可以构成为将经由网络分发的上述程序适当地安装到计算机。
由上述计算机执行的程序为包括上述模式识别装置的功能性的构成要素的模块结构,处理器适当地读出并执行该程序,从而在RAM102等主存储上生成上述各部。
此外,实施方式的模式识别装置也可以是由ASIC(Application SpecificIntegrated Circuit,集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)等专用的硬件实现上述功能性的各部的一部分或者全部的结构。另外,实施方式的模式识别装置也可以是在云系统上动作的虚拟机。
以上,虽然说明了本发明的实施方式,但此处说明的实施方式仅为例示,并不意图限定发明的范围。此处说明的新的实施方式能够以其它各种方式实施,能够在不脱离发明的要旨的范围内进行各种省略、置换、变更。在此说明的实施方式及其变形包含于发明的范围、要旨内,并且包含于权利要求书记载的发明及其均等的范围。
此外,能够将上述实施方式总结为以下的技术方案。
技术方案1
一种模式识别装置,在输入层与输出层之间具有一层以上的作为构成递归型神经网络的中间层的RNN层,从所述输出层输出与输入到所述输入层的特征矢量序列对应的模式序列,其中,
所述RNN层包括输入变换部和RNN处理部,
所述输入层针对每个阶段逐个地依次输出构成所述特征矢量序列的特征矢量,
所述RNN层的所述输入变换部针对每个阶段进行针对输入矢量和递归输入矢量的变换,计算比所述输入矢量的维数与所述递归输入矢量的维数之和小的维数的变换矢量并输出,其中该输入矢量由从所述输入层输出的特征矢量或者下位的所述RNN层所包括的所述RNN处理部的输出构成,该递归输入矢量由该RNN层所包括的所述RNN处理部的之前阶段的输出构成。
所述RNN层的所述RNN处理部针对每个阶段根据由该RNN层所包括的所述输入变换部计算出的所述变换矢量计算RNN输出矢量并输出,
所述输出层根据由最上位的所述RNN层所包括的所述RNN处理部计算出的所述RNN输出矢量计算所述模式序列并输出。
技术方案2
在上述技术方案1的模式识别装置中,
所述输入变换部根据阶段t的所述输入矢量xt和所述递归输入矢量mt-1,通过
【式1】
vt=Wvx·xt+Wvm·mt-1
(其中,Wvx是针对所述输入矢量xt的权重矩阵,Wvm是针对所述递归输入矢量mt-1的权重矩阵)
或者
【式2】
vt=k(Wvx·xt+Wvm·mt-1+bv)
(其中,k(·)是对每个矢量应用的非线性函数,Wvx是针对所述输入矢量xt的权重矩阵,Wvm是针对所述递归输入矢量mt-1的权重矩阵,bv是使所述变换矢量vt的维数为I时的I维的偏置矢量)
来计算阶段t的所述变换矢量vt。
技术方案3
在上述技术方案2的模式识别装置中,
所述RNN处理部根据阶段t的所述变换矢量vt,通过
【式3】
mt=σ(Wmv·vt+bm)
(其中,Wmv是针对所述变换矢量vt的权重矩阵,bm是偏置矢量,σ(·)是对矢量的每个要素应用的非线性函数)
计算阶段t的所述RNN输出矢量mt。
技术方案4
在上述技术方案3的模式识别装置中,
在所述RNN层的层数为1的情况下,在将所述输入矢量的维数设为N、将所述递归输入矢量的维数设为M、将所述变换矢量的维数设为I时,所述输入变换部计算满足
【式4】
的条件的所述变换矢量并输出。
技术方案5
在上述技术方案3的模式识别装置中,
在所述RNN层的层数为R(R是2以上的整数)的情况下,在将第r层(1≤r≤R)的阶段t的所述输入矢量的维数设为Nr、将所述递归输入矢量的维数设为Mr、将所述变换矢量的维数设为Ir时,所述输入变换部计算满足
【式5】
的条件的所述变换矢量并输出。
技术方案6
在上述技术方案2的模式识别装置中,
所述RNN处理部是LSTM(Long Short-Term Memory,长短期记忆网络),根据所述变换矢量vt,通过
【式6】
(其中,it是阶段t的输入门激活矢量,ft是阶段t的遗忘门激活矢量,ct是阶段t的记忆单元激活矢量,ct-1是阶段t-1的记忆单元激活矢量,Wiv、Wfv、Wcv、Wov是针对所述变换矢量vt的权重矩阵,Wic、wfc、woc是权重矢量,bi、bf、bc、bo是偏置矢量,是每个要素的乘法运算,σ(·)、g(·)、h(·)是对矢量的每个要素应用的非线性函数)
计算阶段t的所述RNN输出矢量mt。
技术方案7
在上述技术方案6的模式识别装置中,
在所述RNN层的层数为1的情况下,在将所述输入矢量的维数设为N、将所述递归输入矢量的维数设为M、将所述变换矢量的维数设为I时,所述输入变换部计算满足
【式7】
的条件的所述变换矢量并输出。
技术方案8
在上述技术方案6的模式识别装置中,
在所述RNN层的层数为R(R是2以上的整数)的情况下,在将第r层(1≤r≤R)的阶段t的所述输入矢量的维数设为Nr、将所述递归输入矢量的维数设为Mr、将所述变换矢量的维数设为Ir时,所述输入变换部计算满足
【式8】
的条件的所述变换矢量并输出。
技术方案9
在上述技术方案1的模式识别装置中,
所述输入变换部在将在阶段t的所述变换矢量vt中的仅根据阶段t的所述输入矢量xt计算的分量设为vxt、将根据所述输入矢量xt和所述递归输入矢量mt-1计算的分量设为vct、将仅根据所述递归输入矢量mt-1计算的分量设为vmt时,通过
【式9】
vt=[vxt T,vct T,vmt T]T
vxt=Wvxi·xt
vct=Wvxc·xt+Wvmc·mt-1
vmt=Wvmi·mt
(其中,·T是矩阵的转置,Wvxi、Wvxc是针对所述输入矢量xt的权重矩阵,Wvmi、Wvmc是针对所述递归输入矢量mt-1的权重矩阵)
或者
【式10】
vt=[vxt T,vct T,vmt T]T
vxt=k(Wvxi·xt+bvx)
vct=k(Wvxc·xt+Wvmc·mt-1+bvc)
vmt=k(Wvmi·mt+bvm)
(其中,·T是矩阵的转置,k(·)是对每个矢量应用的非线性函数,Wvxi、Wvxc是针对所述输入矢量xt的权重矩阵,Wvmi、Wvmc是针对所述递归输入矢量mt-1的权重矩阵,bvx是使所述变换矢量的分量vxt的维数为Ix时的Ix维的偏置矢量,bvc是使所述变换矢量的分量vct的维数为Ic时的Ic维的偏置矢量,bvm是使所述变换矢量的分量vmt的维数为Im时的Im维的偏置矢量)
计算所述变换矢量vt。
技术方案10
在上述技术方案9的模式识别装置中,
所述RNN处理部根据阶段t的所述变换矢量vt,通过
【式11】
mt=σ(Wmv·vt+bm)
(其中,Wmv是针对所述变换矢量vt的权重矩阵,bm是偏置矢量,σ(·)是对矢量的每个要素应用的非线性函数)
计算阶段t的所述RNN输出矢量mt。
技术方案11
在上述技术方案10的模式识别装置中,
在所述RNN层的层数为1的情况下,在将所述输入矢量的维数设为N、将所述递归输入矢量的维数设为M、将所述变换矢量的维数设为I、将在所述变换矢量中的仅根据所述输入矢量计算的分量的维数设为Ix、将根据所述递归输入矢量计算的维数设为Im时,所述输入变换部计算满足
【式12】
的条件的所述变换矢量并输出。
技术方案12
在上述技术方案10的模式识别装置中,
在所述RNN层的层数为R(R是2以上的整数)的情况下,在将第r层(1≤r≤R)的阶段t的所述输入矢量的维数设为Nr、将所述递归输入矢量的维数设为Mr、将所述变换矢量的维数设为Ir、将在该变换矢量中的仅根据所述输入矢量计算的分量的维数设为Irx、将根据所述输入矢量和所述递归输入矢量计算的分量的维数设为Irc、将仅根据所述递归输入矢量计算的分量的分量的维数设为Irm时,所述输入变换部计算满足
【式13】
的条件的所述变换矢量并输出。
技术方案13
在上述技术方案9的模式识别装置中,
所述RNN处理部是LSTM(Long Short-Term Memory长短期记忆网络),根据所述变换矢量vt,通过
【式14】
(其中,it是阶段t的输入门激活矢量,ft是阶段t的遗忘门激活矢量,ct是阶段t的记忆单元激活矢量,ct-1是阶段t-1的记忆单元激活矢量,Wiv、Wfv、Wcv、Wov是针对所述变换矢量vt的权重矩阵,Wic、wfc、woc是权重矢量,bi、bf、bc、bo是偏置矢量,是每个要素的乘法运算,σ(·)、g(·)、h(·)是对矢量的每个要素应用的非线性函数)
计算阶段t的所述RNN输出矢量mt。
技术方案14
在上述技术方案13的模式识别装置中,
在所述RNN层的层数为1的情况下,在将所述输入矢量的维数设为N、将所述递归输入矢量的维数设为M、将所述变换矢量的维数设为I、将所述变换矢量中的仅根据所述输入矢量计算的分量的维数设为Ix、将仅根据所述递归输入矢量计算的维数设为Im时,所述输入变换部计算满足
【式15】
的条件的所述变换矢量并输出。
技术方案15
在上述技术方案13的模式识别装置中,
在所述RNN层的层数为R(R是2以上的整数)的情况下,在将第r层(1≤r≤R)的所述输入矢量的维数设为Nr、将所述递归输入矢量的维数设为Mr、将所述变换矢量的维数设为Ir、将该变换矢量中的仅根据所述输入矢量计算的分量的维数设为Irx、将根据所述输入矢量和所述递归输入矢量计算的分量的维数设为Irc、将仅根据所述递归输入矢量计算的维数的维数设为Irm时,所述输入变换部计算满足
【式16】
的条件的所述变换矢量并输出。
技术方案16
一种模式识别方法,由模式识别装置执行,该模式识别装置在输入层与输出层之间具有一层以上的作为构成递归型神经网络的中间层的RNN层,从所述输出层输出与输入到所述输入层的特征矢量序列对应的模式序列,其中,
所述RNN层包括输入变换部和RNN处理部,
所述模式识别方法包括:
所述输入层针对每个阶段逐个地依次输出构成所述特征矢量序列的特征矢量的步骤;
所述RNN层的所述输入变换部针对每个阶段进行针对输入矢量和递归输入矢量的变换,计算比所述输入矢量的维数与所述递归输入矢量的维数之和小的维数的变换矢量并输出的步骤,其中,该输入矢量由从所述输入层输出的特征矢量或者下位的所述RNN层所包括的所述RNN处理部的输出构成,该递归输入矢量由该RNN层所包括的所述RNN处理部的之前阶段的输出构成;
所述RNN层的所述RNN处理部针对每个阶段,根据由该RNN层所包括的所述输入变换部计算出的所述变换矢量计算RNN输出矢量并输出的步骤;以及
所述输出层根据由最上位的所述RNN层所包括的所述RNN处理部计算出的所述RNN输出矢量计算所述模式序列并输出的步骤。
技术方案17
一种程序,用于使计算机实现作为模式识别装置的功能,该模式识别装置在输入层与输出层之间具有一层以上的作为构成递归型神经网络的中间层的RNN层,从所述输出层输出与输入到所述输入层的特征矢量序列对应的模式序列,其中,
所述RNN层包括输入变换部和RNN处理部,
所述程序使计算机执行:
所述输入层针对每个阶段逐个地依次输出构成所述特征矢量序列的特征矢量的步骤;
所述RNN层的所述输入变换部针对每个阶段进行针对输入矢量和递归输入矢量的变换,计算比所述输入矢量的维数与所述递归输入矢量的维数之和小的维数的变换矢量并输出的步骤,其中,该输入矢量由从所述输入层输出的特征矢量或者下位的所述RNN层所包括的所述RNN处理部的输出构成,该递归输入矢量由该RNN层所包括的所述RNN处理部的之前阶段的输出构成;
所述RNN层的所述RNN处理部针对每个阶段,根据由该RNN层所包括的所述输入变换部计算出的所述变换矢量计算RNN输出矢量并输出的步骤;以及
所述输出层根据由最上位的所述RNN层所包括的所述RNN处理部计算出的所述RNN输出矢量计算所述模式序列并输出的步骤。
Claims (10)
1.一种模式识别装置,在输入层与输出层之间具有一层以上的作为构成递归型神经网络的中间层的RNN层,从所述输出层输出与输入到所述输入层的特征矢量序列对应的模式序列,其中,
所述RNN层包括输入变换部和RNN处理部,
所述输入层针对每个阶段逐个地依次输出构成所述特征矢量序列的特征矢量,
所述RNN层的所述输入变换部针对每个阶段进行针对输入矢量和递归输入矢量的变换,计算比所述输入矢量的维数与所述递归输入矢量的维数之和小的维数的变换矢量并输出,其中该输入矢量由从所述输入层输出的特征矢量或者下位的所述RNN层所包括的所述RNN处理部的输出构成,该递归输入矢量由该RNN层所包括的所述RNN处理部的之前阶段的输出构成,
所述RNN层的所述RNN处理部针对每个阶段根据由该RNN层所包括的所述输入变换部计算出的所述变换矢量计算RNN输出矢量并输出,
所述输出层根据由最上位的所述RNN层所包括的所述RNN处理部计算出的所述RNN输出矢量计算所述模式序列并输出。
2.根据权利要求1所述的模式识别装置,其中,
所述输入变换部根据阶段t的所述输入矢量xt和所述递归输入矢量mt-1,通过
【式1】
vt=Wvx·xt+Wvm·mt-1
或者
【式2】
vt=k(Wvx·xt+Wvm·mt-1+bv)
计算阶段t的所述变换矢量vt,
其中,Wvx是针对所述输入矢量xt的权重矩阵,Wvm是针对所述递归输入矢量mt-1的权重矩阵,k(·)是对每个矢量应用的非线性函数,bv是使所述变换矢量vt的维数为I时的I维的偏置矢量。
3.根据权利要求2所述的模式识别装置,其中,
所述RNN处理部根据阶段t的所述变换矢量vt,通过
【式3】
mt=σ(Wmv·vt+bm)
计算阶段t的所述RNN输出矢量mt,
其中,Wmv是针对所述变换矢量vt的权重矩阵,bm是偏置矢量,σ(·)是对矢量的每个要素应用的非线性函数。
4.根据权利要求3所述的模式识别装置,其中,
在所述RNN层的层数为1的情况下,在将所述输入矢量的维数设为N、将所述递归输入矢量的维数设为M、将所述变换矢量的维数设为I时,所述输入变换部计算满足
【式4】
<mrow>
<mi>I</mi>
<mo><</mo>
<mfrac>
<mrow>
<mo>(</mo>
<mi>N</mi>
<mo>+</mo>
<mi>M</mi>
<mo>)</mo>
<mo>&CenterDot;</mo>
<mi>M</mi>
</mrow>
<mrow>
<mi>N</mi>
<mo>+</mo>
<mn>2</mn>
<mi>M</mi>
</mrow>
</mfrac>
</mrow>
的条件的所述变换矢量并输出。
5.根据权利要求3所述的模式识别装置,其中,
在所述RNN层的层数为R的情况下,在将第r层的阶段t的所述输入矢量的维数设为Nr、将所述递归输入矢量的维数设为Mr、将所述变换矢量的维数设为Ir时,所述输入变换部计算满足
【式5】
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>r</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>R</mi>
</munderover>
<mrow>
<mo>(</mo>
<mo>(</mo>
<mrow>
<msub>
<mi>N</mi>
<mi>r</mi>
</msub>
<mo>+</mo>
<mn>2</mn>
<mo>&CenterDot;</mo>
<msub>
<mi>M</mi>
<mi>r</mi>
</msub>
</mrow>
<mo>)</mo>
<mo>&CenterDot;</mo>
<msub>
<mi>I</mi>
<mn>1</mn>
</msub>
<mo>)</mo>
</mrow>
<mo><</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>r</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>R</mi>
</munderover>
<mrow>
<mo>(</mo>
<mo>(</mo>
<mrow>
<msub>
<mi>N</mi>
<mi>r</mi>
</msub>
<mo>+</mo>
<msub>
<mi>M</mi>
<mi>r</mi>
</msub>
</mrow>
<mo>)</mo>
<mo>&CenterDot;</mo>
<msub>
<mi>M</mi>
<mi>r</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
的条件的所述变换矢量并输出,
其中,R是2以上的整数,1≤r≤R。
6.根据权利要求2所述的模式识别装置,其中,
所述RNN处理部是LSTM即长短期记忆网络,根据所述变换矢量vt,通过
【式6】
<mrow>
<msub>
<mi>i</mi>
<mi>t</mi>
</msub>
<mo>=</mo>
<mi>&sigma;</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>W</mi>
<mrow>
<mi>i</mi>
<mi>v</mi>
</mrow>
</msub>
<mo>&CenterDot;</mo>
<msub>
<mi>v</mi>
<mi>t</mi>
</msub>
<mo>+</mo>
<msub>
<mi>w</mi>
<mrow>
<mi>i</mi>
<mi>c</mi>
</mrow>
</msub>
<mo>&CircleTimes;</mo>
<msub>
<mi>c</mi>
<mrow>
<mi>t</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mi>b</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<msub>
<mi>f</mi>
<mi>t</mi>
</msub>
<mo>=</mo>
<mi>&sigma;</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>W</mi>
<mrow>
<mi>f</mi>
<mi>v</mi>
</mrow>
</msub>
<mo>&CenterDot;</mo>
<msub>
<mi>v</mi>
<mi>t</mi>
</msub>
<mo>+</mo>
<msub>
<mi>w</mi>
<mrow>
<mi>f</mi>
<mi>c</mi>
</mrow>
</msub>
<mo>&CircleTimes;</mo>
<msub>
<mi>c</mi>
<mrow>
<mi>t</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mi>b</mi>
<mi>f</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<msub>
<mi>c</mi>
<mi>t</mi>
</msub>
<mo>=</mo>
<msub>
<mi>f</mi>
<mi>t</mi>
</msub>
<mo>&CircleTimes;</mo>
<msub>
<mi>c</mi>
<mrow>
<mi>t</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mi>i</mi>
<mi>t</mi>
</msub>
<mo>&CircleTimes;</mo>
<mi>g</mi>
<mrow>
<mo>(</mo>
<mrow>
<msub>
<mi>W</mi>
<mrow>
<mi>c</mi>
<mi>v</mi>
</mrow>
</msub>
<mo>&CenterDot;</mo>
<msub>
<mi>v</mi>
<mi>t</mi>
</msub>
<mo>+</mo>
<msub>
<mi>b</mi>
<mi>c</mi>
</msub>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<msub>
<mi>o</mi>
<mi>t</mi>
</msub>
<mo>=</mo>
<mi>&sigma;</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>W</mi>
<mrow>
<mi>o</mi>
<mi>v</mi>
</mrow>
</msub>
<mo>&CenterDot;</mo>
<msub>
<mi>v</mi>
<mi>t</mi>
</msub>
<mo>+</mo>
<msub>
<mi>w</mi>
<mrow>
<mi>o</mi>
<mi>c</mi>
</mrow>
</msub>
<mo>&CircleTimes;</mo>
<msub>
<mi>c</mi>
<mi>t</mi>
</msub>
<mo>+</mo>
<msub>
<mi>b</mi>
<mi>o</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<msub>
<mi>m</mi>
<mi>t</mi>
</msub>
<mo>=</mo>
<msub>
<mi>o</mi>
<mi>t</mi>
</msub>
<mo>&CircleTimes;</mo>
<mi>h</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>c</mi>
<mi>t</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
计算阶段t的所述RNN输出矢量mt,
其中,
it是阶段t的输入门激活矢量,ft是阶段t的遗忘门激活矢量,ct是阶段t的记忆单元激活矢量,ct-1是阶段t-1的记忆单元激活矢量,Wiv、Wfv、Wcv、Wov是针对所述变换矢量vt的权重矩阵,Wic、wfc、woc是权重矢量,bi、bf、bc、bo是偏置矢量,是每个要素的乘法运算,σ(·)、g(·)、h(·)是对矢量的每个要素应用的非线性函数。
7.根据权利要求6所述的模式识别装置,其中,
在所述RNN层的层数为1的情况下,在将所述输入矢量的维数设为N、将所述递归输入矢量的维数设为M、将所述变换矢量的维数设为I时,所述输入变换部计算满足
【式7】
<mrow>
<mi>I</mi>
<mo><</mo>
<mfrac>
<mrow>
<mn>4</mn>
<mo>&CenterDot;</mo>
<mrow>
<mo>(</mo>
<mi>N</mi>
<mo>+</mo>
<mi>M</mi>
<mo>)</mo>
</mrow>
<mo>&CenterDot;</mo>
<mi>M</mi>
</mrow>
<mrow>
<mi>N</mi>
<mo>+</mo>
<mn>5</mn>
<mi>M</mi>
</mrow>
</mfrac>
</mrow>
的条件的所述变换矢量并输出。
8.根据权利要求6所述的模式识别装置,其中,
在所述RNN层的层数为R的情况下,在将第r层的阶段t的所述输入矢量的维数设为Nr、将所述递归输入矢量的维数设为Mr、将所述变换矢量的维数设为Ir时,所述输入变换部计算满足
【式8】
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>r</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>R</mi>
</munderover>
<mrow>
<mo>(</mo>
<mo>(</mo>
<mrow>
<msub>
<mi>N</mi>
<mi>r</mi>
</msub>
<mo>+</mo>
<mn>5</mn>
<mo>&CenterDot;</mo>
<msub>
<mi>M</mi>
<mi>r</mi>
</msub>
</mrow>
<mo>)</mo>
<mo>&CenterDot;</mo>
<msub>
<mi>I</mi>
<mi>r</mi>
</msub>
<mo>)</mo>
</mrow>
<mo><</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>r</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>R</mi>
</munderover>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>&CenterDot;</mo>
<mo>(</mo>
<mrow>
<msub>
<mi>N</mi>
<mi>r</mi>
</msub>
<mo>+</mo>
<msub>
<mi>M</mi>
<mi>r</mi>
</msub>
</mrow>
<mo>)</mo>
<mo>&CenterDot;</mo>
<msub>
<mi>M</mi>
<mi>r</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
的条件的所述变换矢量并输出,
其中,R是2以上的整数,1≤r≤R。
9.根据权利要求1所述的模式识别装置,其中,
所述输入变换部在将阶段t的所述变换矢量vt中的仅根据阶段t的所述输入矢量xt计算的分量设为vxt、将根据所述输入矢量xt和所述递归输入矢量mt-1计算的分量设为vct、将仅根据所述递归输入矢量mt-1计算的分量设为vmt时,通过
【式9】
vt=[vxt T,vct T,vmt T]T
vxt=Wvxi·xt
vct=Wvxc·xt+Wvmc·mt-1
vmt=Wvmi·mt
或者
【式10】
vt=[vxt T,vct T,vmt T]T
vxt=k(Wvxi·xt+bvx)
vct=k(Wvxc·xt+Wvmc·mt-1+bvc)
vmt=k(Wvmi·mt+bvm)
计算所述变换矢量vt,
其中,·T是矩阵的转置,Wvxi、Wvxc是针对所述输入矢量xt的权重矩阵,Wvmi、Wvmc是针对所述递归输入矢量mt-1的权重矩阵,k(·)是对每个矢量应用的非线性函数,bvx是使所述变换矢量的分量vxt的维数为Ix时的Ix维的偏置矢量,bvc是使所述变换矢量的分量vct的维数为Ic时的Ic维的偏置矢量,bvm是使所述变换矢量的分量vmt的维数为Im时的Im维的偏置矢量。
10.一种模式识别方法,由模式识别装置执行,该模式识别装置在输入层与输出层之间具有一层以上的作为构成递归型神经网络的中间层的RNN层,从所述输出层输出与输入到所述输入层的特征矢量序列对应的模式序列,其中,
所述RNN层包括输入变换部和RNN处理部,
所述模式识别方法包括:
所述输入层针对每个阶段逐个地依次输出构成所述特征矢量序列的特征矢量的步骤;
所述RNN层的所述输入变换部针对每个阶段进行针对输入矢量和递归输入矢量的变换,计算比所述输入矢量的维数与所述递归输入矢量的维数之和小的维数的变换矢量并输出的步骤,其中该输入矢量由从所述输入层输出的特征矢量或者下位的所述RNN层所包括的所述RNN处理部的输出构成,该递归输入矢量由该RNN层所包括的所述RNN处理部的之前阶段的输出构成;
所述RNN层的所述RNN处理部针对每个阶段根据由该RNN层所包括的所述输入变换部计算出的所述变换矢量计算RNN输出矢量并输出的步骤;以及
所述输出层根据由最上位的所述RNN层所包括的所述RNN处理部计算出的所述RNN输出矢量计算所述模式序列并输出的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211302084.5A CN115564026A (zh) | 2016-11-16 | 2017-08-29 | 模式识别装置以及模式识别方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016223333A JP6612716B2 (ja) | 2016-11-16 | 2016-11-16 | パターン識別装置、パターン識別方法およびプログラム |
JP2016-223333 | 2016-11-16 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211302084.5A Division CN115564026A (zh) | 2016-11-16 | 2017-08-29 | 模式识别装置以及模式识别方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108073980A true CN108073980A (zh) | 2018-05-25 |
Family
ID=62108549
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211302084.5A Pending CN115564026A (zh) | 2016-11-16 | 2017-08-29 | 模式识别装置以及模式识别方法 |
CN201710752959.4A Pending CN108073980A (zh) | 2016-11-16 | 2017-08-29 | 模式识别装置以及模式识别方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211302084.5A Pending CN115564026A (zh) | 2016-11-16 | 2017-08-29 | 模式识别装置以及模式识别方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11636667B2 (zh) |
JP (1) | JP6612716B2 (zh) |
CN (2) | CN115564026A (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10354168B2 (en) * | 2016-04-11 | 2019-07-16 | A2Ia S.A.S. | Systems and methods for recognizing characters in digitized documents |
EP3594860B1 (en) * | 2018-07-09 | 2024-05-08 | Tata Consultancy Services Limited | Sparse neural network based anomaly detection in multi-dimensional time series |
JP7206898B2 (ja) * | 2018-12-25 | 2023-01-18 | 富士通株式会社 | 学習装置、学習方法および学習プログラム |
JP7118882B2 (ja) * | 2018-12-28 | 2022-08-16 | 日本電信電話株式会社 | 変数変換装置、潜在パラメータ学習装置、潜在パラメータ生成装置、これらの方法及びプログラム |
CN111915073A (zh) * | 2020-04-28 | 2020-11-10 | 同济大学 | 一种考虑日期属性和天气因素的铁路城际客流短期预测方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002541599A (ja) | 1999-04-12 | 2002-12-03 | シーメンス アクチエンゲゼルシヤフト | 互いに接続された計算素子の装置及びダイナミックプロセスの基礎となるダイナミクスをコンピュータ援用検出するための方法及び互いに接続された計算素子の装置をコンピュータ援用トレーニングさせるための方法 |
EP1450350A1 (en) | 2003-02-20 | 2004-08-25 | Sony International (Europe) GmbH | Method for Recognizing Speech with attributes |
DE102007001024B4 (de) | 2007-01-02 | 2008-10-02 | Siemens Ag | Verfahren zur rechnergestützten Regelung und/oder Steuerung eines technischen Systems insbesondere einer Gasturbine |
DE102007001026B4 (de) | 2007-01-02 | 2008-09-04 | Siemens Ag | Verfahren zur rechnergestützten Steuerung und/oder Regelung eines technischen Systems |
DE102010011221B4 (de) | 2010-03-12 | 2013-11-14 | Siemens Aktiengesellschaft | Verfahren zur rechnergestützten Steuerung und/oder Regelung eines technischen Systems |
US9620108B2 (en) | 2013-12-10 | 2017-04-11 | Google Inc. | Processing acoustic sequences using long short-term memory (LSTM) neural networks that include recurrent projection layers |
US9659384B2 (en) | 2014-10-03 | 2017-05-23 | EyeEm Mobile GmbH. | Systems, methods, and computer program products for searching and sorting images by aesthetic quality |
JP6832501B2 (ja) * | 2016-06-17 | 2021-02-24 | パナソニックIpマネジメント株式会社 | 意味生成方法、意味生成装置及びプログラム |
-
2016
- 2016-11-16 JP JP2016223333A patent/JP6612716B2/ja active Active
-
2017
- 2017-08-15 US US15/677,069 patent/US11636667B2/en active Active
- 2017-08-29 CN CN202211302084.5A patent/CN115564026A/zh active Pending
- 2017-08-29 CN CN201710752959.4A patent/CN108073980A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
JP6612716B2 (ja) | 2019-11-27 |
US11636667B2 (en) | 2023-04-25 |
CN115564026A (zh) | 2023-01-03 |
JP2018081493A (ja) | 2018-05-24 |
US20180137410A1 (en) | 2018-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108073980A (zh) | 模式识别装置以及模式识别方法 | |
Balaji et al. | Metareg: Towards domain generalization using meta-regularization | |
US20200380213A1 (en) | Multitask Learning As Question Answering | |
US11797822B2 (en) | Neural network having input and hidden layers of equal units | |
CN102737278B (zh) | 联合非线性随机投影、受限波尔兹曼机、以及基于批量的可并行优化来使用的深凸网络 | |
WO2020214305A1 (en) | Multi-task machine learning architectures and training procedures | |
WO2020194077A1 (en) | Unification of models having respective target classes with distillation | |
Chien et al. | Deep unfolding for topic models | |
CN108629414B (zh) | 深度哈希学习方法及装置 | |
CN109328362A (zh) | 渐进式神经网络 | |
CN111797589B (zh) | 一种文本处理网络、神经网络训练的方法以及相关设备 | |
CN106170800A (zh) | 经由输出分布来学习学生dnn | |
US20230196202A1 (en) | System and method for automatic building of learning machines using learning machines | |
Zhang et al. | Genetic pattern search and its application to brain image classification | |
US10783432B2 (en) | Update management for RPU array | |
CN109377532B (zh) | 基于神经网络的图像处理方法及装置 | |
US20210374529A1 (en) | End-to-end learning in communication systems | |
US11875809B2 (en) | Speech denoising via discrete representation learning | |
CN112446888A (zh) | 图像分割模型的处理方法和处理装置 | |
CN111373418A (zh) | 学习设备和学习方法、识别设备和识别方法、程序和记录介质 | |
US20200356850A1 (en) | Fusion of neural networks | |
Nguyen et al. | Momentum transformer: Closing the performance gap between self-attention and its linearization | |
CN114581966A (zh) | 用于信息处理的方法、电子设备和计算机程序产品 | |
CN115952493A (zh) | 一种黑盒模型的逆向攻击方法、攻击装置以及存储介质 | |
JP7059166B2 (ja) | 情報処理装置、情報処理方法およびプログラム |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180525 |