JP6691501B2 - Acoustic model learning device, model learning device, model learning method, and program - Google Patents

Acoustic model learning device, model learning device, model learning method, and program Download PDF

Info

Publication number
JP6691501B2
JP6691501B2 JP2017074365A JP2017074365A JP6691501B2 JP 6691501 B2 JP6691501 B2 JP 6691501B2 JP 2017074365 A JP2017074365 A JP 2017074365A JP 2017074365 A JP2017074365 A JP 2017074365A JP 6691501 B2 JP6691501 B2 JP 6691501B2
Authority
JP
Japan
Prior art keywords
weight parameter
model
parameter
vector
unit
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
Application number
JP2017074365A
Other languages
Japanese (ja)
Other versions
JP2018180045A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2017074365A priority Critical patent/JP6691501B2/en
Publication of JP2018180045A publication Critical patent/JP2018180045A/en
Application granted granted Critical
Publication of JP6691501B2 publication Critical patent/JP6691501B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

この発明は、系列モデリング技術に関し、特に、ニューラルネットワークで用いる線形変換の重みパラメータを補間する技術に関する。   The present invention relates to a sequence modeling technique, and more particularly to a technique for interpolating weighting parameters of linear transformation used in a neural network.

確率的な系列モデリングとして、例えば、n-gramモデル等がある(非特許文献1参照)。確率的な系列モデリングによる言語モデルは、例えば、確率的言語モデルと呼ばれる。また、ニューラルネットワークを用いた系列モデリングとして、例えば、再帰型ニューラルネットワーク(RNN: Recurrent Neural Network)の一種である単純再帰型ニューラルネットワーク(Elman Network)や長短期記憶(LSTM: Long short-term memory)等がある(非特許文献2参照)。ニューラルネットワークを用いた系列モデリングによる言語モデルは、例えば、ニューラル言語モデルと呼ばれる。   Examples of probabilistic sequence modeling include an n-gram model (see Non-Patent Document 1). A language model based on probabilistic sequence modeling is called, for example, a probabilistic language model. Further, as a series modeling using a neural network, for example, a simple recursive neural network (Elman Network) which is a type of recurrent neural network (RNN) or long short-term memory (LSTM) is used. Etc. (see Non-Patent Document 2). A language model based on sequence modeling using a neural network is called, for example, a neural language model.

奥村学、「言語処理のための機械学習入門」、コロナ社、2010年Okumura Manabu, "Introduction to Machine Learning for Language Processing", Corona Publishing Co., Ltd., 2010 Hochreiter, S., Schmidhuber, J., "Long short-term memory." Neural computation, vol. 9, no. 8, pp. 1735-1780, 1997.Hochreiter, S., Schmidhuber, J., "Long short-term memory." Neural computation, vol. 9, no. 8, pp. 1735-1780, 1997.

確率的言語モデルは、前の単語が与えられたときの次の単語の確率をカテゴリカルな分布として持つことができる。したがって、確率的言語モデルは、n-gramモデルならば階数nを持つテンソルとして、すべてのパラメータを陽に記述することができる。また同時に、前のn-1個の単語が与えられたときの次の単語の確率値という意味付けをパラメータに対して持たせることができる。例えば、2-gram(bigram)モデルであれば、その情報をすべて階数2のテンソル(すなわち、行列)として表現することができる。この行列の各列は、対応する一つ前の単語が与えられたときの、次の単語の分布として解釈することができる。例えば、あるドメインAに属するテキストデータを使って学習した確率的言語モデルに対して、別のドメインBに属するテキストデータを使って元の確率的言語モデルを適応するといった実用上重要な操作を、各々から計算した確率的言語モデルの持つテンソル同士を線形補間する等の方法によって実行することができる。   Probabilistic language models can have the probability of the next word given the previous word as a categorical distribution. Therefore, a probabilistic language model can explicitly describe all parameters as a tensor with rank n if it is an n-gram model. At the same time, it is possible to give the parameter meaning of the probability value of the next word given the previous n-1 words. For example, in a 2-gram (bigram) model, all the information can be expressed as a rank-2 tensor (that is, a matrix). Each column of this matrix can be interpreted as the distribution of the next word given the corresponding previous word. For example, a practically important operation such as applying a stochastic language model learned using text data belonging to a domain A to the original stochastic language model using text data belonging to another domain B, It can be executed by a method such as linear interpolation between tensors of the probabilistic language model calculated from each.

ニューラル言語モデルは、最小要素として、入力ベクトルに対する線形変換と、線形変換後のベクトルに対する非線形変換(代表的にはsoftmax関数)が必要になる。非線形変換後のベクトルは次の単語の事後確率値として解釈できるが、線形変換に用いる重みパラメータそのものに対して意味付けを行うことはできない。そのため、例えば、あるドメインAのテキストデータを使って学習したニューラル言語モデルに対して、別のドメインBのテキストデータを使って元のニューラル言語モデルを適応するという操作を実行することができない。   The neural language model requires, as the minimum element, a linear transformation for the input vector and a non-linear transformation (typically a softmax function) for the vector after the linear transformation. The vector after the non-linear conversion can be interpreted as the posterior probability value of the next word, but the weighting parameter itself used for the linear conversion cannot be given meaning. Therefore, for example, the operation of applying the original neural language model using the text data of another domain B to the neural language model learned using the text data of a certain domain A cannot be executed.

この発明の目的は、ニューラルネットワークを用いた系列モデリングにおいて、学習時に用いた学習データとドメインが異なる学習データを用いてモデル学習を行うことができるモデル学習技術を実現することである。   An object of the present invention is to realize a model learning technique capable of performing model learning by using learning data having a domain different from that of learning data used at the time of learning in sequence modeling using a neural network.

上記の課題を解決するために、この発明の第一の態様の音響モデル学習装置は、音響特徴ベクトルを入力として、音響特徴ベクトルに対応する出力シンボルに対する事後確率ベクトルと、出力シンボルが空シンボルである確率を表す空シンボル確率と、を出力するニューラルネットワークを用いた音響モデルを記憶する音響モデル記憶部と、学習音声から抽出した音響特徴ベクトルをニューラルネットワークに入力して事後確率ベクトルと空シンボル確率とを得る事後確率計算部と、空シンボル確率に基づいてニューラルネットワークが以前の時刻に出力した事後確率ベクトルもしくはニューラルネットワークが現在の時刻に出力した事後確率ベクトルを選択して保持する文脈保存ベクトルを計算する文脈保存ベクトル計算部と、文脈保存ベクトルが計算されるたびに重みパラメータを用いて文脈保存ベクトルを線形変換してニューラルネットワークの最終隠れ層の出力と加算してニューラルネットワークの出力層に連結する文脈保存ベクトル連結部と、単語列の集合であるテキストデータから確率モデルを用いて確率モデルパラメータを生成する確率モデル生成部と、確率モデルパラメータに対してニューラルネットワークに含まれる非線形変換の逆計算を行い、重みパラメータ相当量を計算する重みパラメータ逆計算部と、線形変換で用いる重みパラメータと重みパラメータ相当量との補間を行う重みパラメータ補間部と、を含む。   In order to solve the above problems, the acoustic model learning device according to the first aspect of the present invention uses an acoustic feature vector as an input, and a posterior probability vector for an output symbol corresponding to the acoustic feature vector, and the output symbol is an empty symbol. An empty model probability that represents a certain probability, and an acoustic model storage unit that stores an acoustic model using a neural network that outputs, and an a posteriori probability vector and an empty symbol probability by inputting an acoustic feature vector extracted from learning speech into the neural network. And a context-preserving vector that holds the posterior probability vector output by the neural network at the previous time or the posterior probability vector output by the neural network at the current time based on the empty symbol probability. The context-saving vector calculation part to calculate and the context-saving vector The context-preserving vector concatenation unit that linearly transforms the context-preserving vector using the weight parameter each time the toll is calculated and adds it to the output of the final hidden layer of the neural network and concatenates it to the output layer of the neural network, and A probabilistic model generator that generates a probabilistic model parameter using a probabilistic model from a set of text data, and a weight that calculates the weight parameter equivalent amount by performing inverse calculation of the nonlinear transformation included in the neural network for the probabilistic model parameter. It includes a parameter inverse calculation unit, and a weight parameter interpolation unit that interpolates the weight parameter used in the linear conversion and the weight parameter equivalent amount.

この発明の第二の態様のモデル学習装置は、第一ドメインに属する離散値系列の集合である第一学習データから学習した重みパラメータを用いて入力ベクトルに対して線形変換を行い、線形変換後の入力ベクトルに対して非線形変換を行うニューラルネットワークを記憶するニューラルネットワーク記憶部と、第二ドメインに属する離散値系列の集合である第二学習データから確率モデルを用いて確率モデルパラメータを生成する確率モデル生成部と、確率モデルパラメータに対して非線形変換の逆計算を行い、重みパラメータ相当量を計算する重みパラメータ逆計算部と、線形変換で用いる重みパラメータと重みパラメータ相当量との補間を行う重みパラメータ補間部と、を含む。   A model learning device according to a second aspect of the present invention linearly transforms an input vector using a weighting parameter learned from first learning data that is a set of discrete value sequences belonging to a first domain, and after linear transformation Probability of generating a probabilistic model parameter using a probabilistic model from a neural network storage unit that stores a neural network that performs a non-linear transformation on the input vector and a second learning data that is a set of discrete value sequences belonging to the second domain A model generation unit, a weight parameter inverse calculation unit that performs a non-linear transformation inverse calculation on a stochastic model parameter, and calculates a weight parameter equivalent amount, and a weight that interpolates a weight parameter used in linear transformation and a weight parameter equivalent amount. And a parameter interpolation unit.

この発明によれば、確率モデルパラメータから重みパラメータ相当量を逆計算して、ニューラルネットワークで用いる線形変換の重みパラメータと補間することができるため、ニューラルネットワークを用いた系列モデリングにおいて、学習時に用いた学習データとは異なるドメインの学習データを用いてモデル学習を行うことができる。   According to the present invention, the weight parameter equivalent amount can be inversely calculated from the probabilistic model parameter and interpolated with the weight parameter of the linear transformation used in the neural network. Model learning can be performed using learning data of a domain different from the learning data.

図1は、モデル学習装置の機能構成を例示する図である。FIG. 1 is a diagram illustrating a functional configuration of the model learning device. 図2は、モデル学習方法の処理手続きを例示する図である。FIG. 2 is a diagram illustrating a processing procedure of the model learning method. 図3は、音響モデル学習装置の機能構成を例示する図である。FIG. 3 is a diagram illustrating a functional configuration of the acoustic model learning device. 図4は、音声認識装置の機能構成を例示する図である。FIG. 4 is a diagram illustrating a functional configuration of the voice recognition device. 図5は、音響モデル学習方法の処理手続きを例示する図である。FIG. 5 is a diagram illustrating a processing procedure of the acoustic model learning method. 図6は、音声認識方法の処理手続きを例示する図である。FIG. 6 is a diagram illustrating a processing procedure of the voice recognition method. 図7は、文脈保存ベクトルの計算方法を例示する図である。FIG. 7: is a figure which illustrates the calculation method of a context preservation | save vector. 図8は、文脈保存ベクトルを線形変換して連結する構成を例示する図である。FIG. 8 is a diagram illustrating a configuration in which context-preserving vectors are linearly converted and connected. 図9は、重みパラメータ補間装置の機能構成を例示する図である。FIG. 9 is a diagram illustrating a functional configuration of the weight parameter interpolation device. 図10は、重みパラメータ補間方法の処理手続きを例示する図である。FIG. 10 is a diagram illustrating a processing procedure of the weight parameter interpolation method.

この明細書中で使用する記号「^」は、本来直後の文字の真上に記載されるべきものであるが、テキスト記法の制限により、当該文字の直前に記載する。数式中においては、これらの記号は本来の位置、すなわち文字の真上に記述している。例えば、「^x」との表記は、   The symbol "^" used in this specification is supposed to be written right above the character immediately after it, but is written immediately before the character due to the limitation of text notation. In the mathematical formula, these symbols are described at their original positions, that is, directly above the characters. For example, the notation "^ x" is

Figure 0006691501
Figure 0006691501

を表している。 Is represented.

以下、この発明の実施の形態について詳細に説明する。なお、図面中において同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。   Hereinafter, embodiments of the present invention will be described in detail. In the drawings, components having the same function are denoted by the same reference numerals, and duplicate description will be omitted.

[第一実施形態]
第一実施形態は、あるドメインのテキストデータを用いて学習済みのニューラル言語モデルに対して、別のドメインのテキストデータを用いてモデル学習を行うモデル学習装置および方法である。第一実施形態では、2-gram(bigram)相当のモデルを対象とする。このモデルは、例えば、階数が2のテンソル(すなわち、行列)を用い、語彙数と等しい次元数を持ち、出現単語に対応する次元が1でそれ以外の次元が0を持つベクトルを入力とし、入力ベクトルと重みパラメータ行列との積を行った後、softmax関数を適用して、次の単語の事後確率ベクトルを出力するものである。ただし、テンソルの階数は任意の自然数であっても対象とすることができる。
[First embodiment]
The first embodiment is a model learning device and method for performing model learning on a neural language model that has been trained using text data of a certain domain, using text data of another domain. In the first embodiment, a model corresponding to 2-gram (bigram) is targeted. This model uses, for example, a tensor of rank 2 (that is, a matrix), has a dimension number equal to the vocabulary number, and inputs a vector having a dimension corresponding to the appearing word of 1 and other dimensions of 0, After performing the product of the input vector and the weight parameter matrix, the softmax function is applied and the posterior probability vector of the next word is output. However, the rank of the tensor can be a target even if it is an arbitrary natural number.

第一実施形態のモデル学習装置は、図1に示すように、第一学習データ記憶部10、ニューラル言語モデル生成部11、ニューラル言語モデル記憶部12、第二学習データ記憶部20、頻度テンソル生成部21、確率的言語モデル生成部22、重みパラメータ逆計算部23、重みパラメータ補正部24、および重みパラメータ補間部25を含む。ただし、重みパラメータ補正部24は必須の構成ではなく、省略することも可能である。第一実施形態のモデル学習装置が、図2に示す各ステップの処理を行うことにより、第一実施形態のモデル学習方法が実現される。   As shown in FIG. 1, the model learning device of the first embodiment includes a first learning data storage unit 10, a neural language model generation unit 11, a neural language model storage unit 12, a second learning data storage unit 20, and a frequency tensor generation. It includes a unit 21, a probabilistic language model generation unit 22, a weight parameter inverse calculation unit 23, a weight parameter correction unit 24, and a weight parameter interpolation unit 25. However, the weight parameter correction unit 24 is not an essential component and can be omitted. The model learning device of the first embodiment realizes the model learning method of the first embodiment by performing the processing of each step shown in FIG.

モデル学習装置は、例えば、中央演算処理装置(CPU: Central Processing Unit)、主記憶装置(RAM: Random Access Memory)などを有する公知または専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。モデル学習装置は、例えば、中央演算処理装置の制御のもとで各処理を実行する。モデル学習装置に入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて読み出されて他の処理に利用される。また、モデル学習装置の各処理部の少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。モデル学習装置が備える各記憶部は、例えば、RAM(Random Access Memory)などの主記憶装置、ハードディスクや光ディスクもしくはフラッシュメモリ(Flash Memory)のような半導体メモリ素子により構成される補助記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。モデル学習装置が備える各記憶部は、それぞれ論理的に分割されていればよく、一つの物理的な記憶装置に記憶されていてもよい。   The model learning device is, for example, a special program configured by loading a special program into a known or dedicated computer having a central processing unit (CPU), a main storage device (RAM: Random Access Memory), and the like. It is a device. The model learning device executes each process under the control of the central processing unit, for example. The data input to the model learning device and the data obtained in each process are stored in, for example, the main storage device, and the data stored in the main storage device is read as needed and used for other processes. It Further, at least a part of each processing unit of the model learning device may be configured by hardware such as an integrated circuit. Each storage unit included in the model learning device is, for example, a main storage device such as a RAM (Random Access Memory), an auxiliary storage device configured by a semiconductor memory element such as a hard disk, an optical disk, or a flash memory (Flash Memory), or a relational storage device. It can be configured by middleware such as a database or key-value store. Each storage unit included in the model learning device has only to be logically divided, and may be stored in one physical storage device.

以下、図2を参照しながら、第一実施形態のモデル学習装置が実行するモデル学習方法の処理手続きを説明する。   The processing procedure of the model learning method executed by the model learning device of the first embodiment will be described below with reference to FIG.

第一学習データ記憶部10には、あるドメイン(以下、第一ドメインと呼ぶ)に属する複数のテキストデータを収集した第一ドメイン学習データが記憶されている。第二学習データ記憶部20には、第一ドメインとは異なるドメイン(以下、第二ドメインと呼ぶ)に属する複数のテキストデータを収集した第二ドメイン学習データが記憶されている。各テキストデータは言語モデルの学習に十分な量があればよい。   The first learning data storage unit 10 stores first domain learning data obtained by collecting a plurality of text data belonging to a certain domain (hereinafter referred to as a first domain). The second learning data storage unit 20 stores second domain learning data obtained by collecting a plurality of text data belonging to a domain different from the first domain (hereinafter referred to as a second domain). It is sufficient that each text data has a sufficient amount for learning the language model.

ステップS11において、ニューラル言語モデル生成部11は、第一学習データ記憶部10に記憶された第一ドメイン学習データを読み込み、その第一ドメイン学習データを用いてニューラル言語モデルを学習する。ニューラル言語モデル生成部11は、学習済みのニューラル言語モデルをニューラル言語モデル記憶部12へ記憶する。   In step S11, the neural language model generation unit 11 reads the first domain learning data stored in the first learning data storage unit 10 and learns the neural language model using the first domain learning data. The neural language model generation unit 11 stores the learned neural language model in the neural language model storage unit 12.

ステップS21において、頻度テンソル生成部21は、第二学習データ記憶部20に記憶された第二ドメイン学習データを読み込み、その第二ドメイン学習データに含まれる単語の連接頻度を集計し、頻度テンソルを生成する。頻度テンソル生成部21は、生成した頻度テンソルを確率的言語モデル生成部22へ出力する。この頻度テンソルは、例えば、bigramモデルのときは、頻度表となる。   In step S21, the frequency tensor generation unit 21 reads the second domain learning data stored in the second learning data storage unit 20, totals the concatenation frequencies of words included in the second domain learning data, and calculates the frequency tensor. To generate. The frequency tensor generation unit 21 outputs the generated frequency tensor to the stochastic language model generation unit 22. This frequency tensor becomes a frequency table in the case of a bigram model, for example.

ステップS22において、確率的言語モデル生成部22は、頻度テンソル生成部21から頻度テンソルを受け取り、その頻度テンソルから確率的言語モデルを用いて確率モデルパラメータテンソルを生成する。このとき、確率的言語モデルは、例えば、n-gramモデル等の一般的なものを用いればよい。また、その際にスムージングなどの一般的な操作を含めてもよい。確率的言語モデル生成部22は、生成した確率モデルパラメータテンソルを重みパラメータ逆計算部23へ出力する。   In step S22, the probabilistic language model generation unit 22 receives the frequency tensor from the frequency tensor generation unit 21, and generates a probabilistic model parameter tensor from the frequency tensor using the probabilistic language model. At this time, as the probabilistic language model, for example, a general one such as an n-gram model may be used. Further, at that time, a general operation such as smoothing may be included. The probabilistic language model generation unit 22 outputs the generated probabilistic model parameter tensor to the weight parameter inverse calculation unit 23.

ステップS23において、重みパラメータ逆計算部23は、確率的言語モデル生成部22から確率モデルパラメータテンソルを受け取り、その確率モデルパラメータテンソルに対してニューラル言語モデルに含まれる非線形変換の逆計算を行い、ニューラル言語モデルに含まれる線形変換で用いる重みパラメータに相当する量(以下、重みパラメータ相当量と呼ぶ)を計算する。重みパラメータ逆計算部23は、計算した重みパラメータ相当量を重みパラメータ補正部24へ出力する。重みパラメータ補正部24を省略した場合には、計算した重みパラメータ相当量を重みパラメータ補間部25へ出力する。   In step S23, the weight parameter inverse calculation unit 23 receives the probabilistic model parameter tensor from the probabilistic language model generation unit 22, performs inverse calculation of the nonlinear transformation included in the neural language model on the probabilistic model parameter tensor, and An amount corresponding to the weight parameter used in the linear conversion included in the language model (hereinafter referred to as a weight parameter equivalent amount) is calculated. The weight parameter inverse calculation unit 23 outputs the calculated weight parameter equivalent amount to the weight parameter correction unit 24. When the weight parameter correction unit 24 is omitted, the calculated weight parameter equivalent amount is output to the weight parameter interpolation unit 25.

重みパラメータ相当量の逆計算は、以下のようにして行う。まず、softmax関数を式(1)に示す。ここで、Dは次元数である。   The inverse calculation of the weight parameter equivalent amount is performed as follows. First, the softmax function is shown in equation (1). Here, D is the number of dimensions.

Figure 0006691501
Figure 0006691501

このsoftmax関数は、入力に定数を加算しても出力が変化しない性質を持つ。この関係性を具体的に示す。確率モデルの出力ベクトルがP=[p1, p2, …, pd, …, pD]Tと固定されたベクトルであるとする。ここで、[…]Tはベクトルの転置を表す。出力ベクトルPを式(1)のsoftmax関数に代入すると、式(2)となる。 This softmax function has the property that the output does not change even if a constant is added to the input. This relationship will be specifically shown. It is assumed that the output vector of the probabilistic model is a fixed vector with P = [p 1 , p 2 , ..., p d , ..., p D ] T. Here, [...] T represents the transpose of the vector. Substituting the output vector P into the softmax function of equation (1) yields equation (2).

Figure 0006691501
Figure 0006691501

式(2)の分母は次元dに対して定数であるから、   Since the denominator of equation (2) is a constant for dimension d,

Figure 0006691501
Figure 0006691501

とおくと、式(4)〜(6)が成り立つ。 Therefore, the equations (4) to (6) are established.

Figure 0006691501
Figure 0006691501

式(6)は、cを媒介変数とし、入力ベクトルX=[x1, x2, …, xD]TのD次元の空間上で、点[ln(p1), ln(p2), …, ln(pD)]Tを通り、ベクトル[1, 1, …, 1]Tに平行な直線の方程式である。つまり、この直線上の任意の点が、同じ出力ベクトルP=[p1, p2, …, pD]Tを与えることがわかる。ここで、任意の基準を用いて、適当なベクトル^X=[^x1, ^x2, …, ^xD]Tを定めることができるが、ここでは、二乗ノルム最小化基準を用い、||[x1, x2, …, xD]T||2を最小化するもの、つまり、長さが最も短いものを採用する。最適な媒介変数cを^cで表すと、式(7)〜(9)が成り立つ。 Equation (6) uses c as a parameter, and points [ln (p 1 ), ln (p 2 ) on the D-dimensional space of the input vector X = [x 1 , x 2 ,…, x D ] T. ,…, Ln (p D )] T is a straight line equation parallel to the vector [1, 1,…, 1] T. That is, it can be seen that any point on this straight line gives the same output vector P = [p 1 , p 2 , ..., p D ] T. Here, an arbitrary vector can be used to determine an appropriate vector ^ X = [^ x 1 ,, ^ x 2 , ..., ^ x D ] T , but here, using the square norm minimization criterion, || [x 1 , x 2 , ..., x D ] T || The one that minimizes 2 , that is, the one that has the shortest length is adopted. When the optimal parameter c is represented by ^ c, equations (7) to (9) are established.

Figure 0006691501
Figure 0006691501

式(9)を式(6)に代入すると、最終的な逆計算式(10)が定まる。   By substituting equation (9) into equation (6), the final inverse calculation equation (10) is determined.

Figure 0006691501
Figure 0006691501

つまり、以下の式(11)によって、前の単語列が与えられたときの次の単語の事後確率ベクトルP=[p1, p2, …, pD]Tごとに確率モデルパラメータテンソルから重みパラメータ相当量^X=[^x1, ^x2, …, ^xD]Tへの逆計算を行うことができる。 That is, according to the following equation (11), weighting is performed from the probability model parameter tensor for each posterior probability vector P = [p 1 , p 2 ,…, p D ] T of the next word when the previous word string is given. The inverse calculation to the parameter equivalent ^ X = [^ x 1 , ^ x 2 ,…, ^ x D ] T can be performed.

Figure 0006691501
Figure 0006691501

ステップS24において、重みパラメータ補正部24は、重みパラメータ逆計算部23から重みパラメータ相当量を受け取り、ニューラル言語モデル記憶部12に記憶されているニューラル言語モデルの重みパラメータと、分布のパラメータ(平均および分散)が合うように重みパラメータ相当量を補正する。重みパラメータ補正部24は、補正した重みパラメータ相当量を重みパラメータ補間部25へ出力する。   In step S24, the weighting parameter correction unit 24 receives the weighting parameter equivalent amount from the weighting parameter inverse calculation unit 23, and the weighting parameter of the neural language model stored in the neural language model storage unit 12 and the distribution parameter (average and The weight parameter equivalent amount is corrected so that the variance) is matched. The weight parameter correction unit 24 outputs the corrected weight parameter equivalent amount to the weight parameter interpolation unit 25.

理論上は、式(11)で計算される量が重みパラメータに相当する量となっているが、実際には、値のレンジが大幅にずれてしまうことがある。そこで、ヒューリスティックに平均と分散をニューラル言語モデルの重みパラメータに合わせることを行う。具体的には、重みパラメータ逆計算部23が求めた重みパラメータ相当量の平均を0、標準偏差を1に正規化し、対応するニューラル言語モデルの重みパラメータから計算した標準偏差を掛け、同様に重みパラメータから計算した平均を足すことで補正を行う。すなわち、重みパラメータ逆計算部23が求めた重みパラメータ相当量の平均をμp、標準偏差をσpとし、対応する重みパラメータの平均をμn、標準偏差をσnとし、d=1, 2, …, Dについて、式(12)を計算して重みパラメータ相当量^X=[^x1, ^x2, …, ^xD]Tを補正する。 Theoretically, the amount calculated by equation (11) is the amount corresponding to the weighting parameter, but in practice, the range of values may shift significantly. Therefore, heuristically adjust the mean and variance to the weighting parameters of the neural language model. Specifically, the weight parameter inverse calculation unit 23 normalizes the average of the weight parameter equivalent amounts to 0 and the standard deviation to 1, and multiplies the standard deviation calculated from the weight parameter of the corresponding neural language model to obtain the same weight. Correction is performed by adding the average calculated from the parameters. That is, the average of the weight parameter equivalents calculated by the weight parameter inverse calculation unit 23 is μ p , the standard deviation is σ p , the average of the corresponding weight parameters is μ n , and the standard deviation is σ n, and d = 1, 2 , ..., the D, the weighting parameter corresponding amount by calculating equation (12) ^ X = [^ x 1, ^ x 2, ..., ^ x D] to correct T.

Figure 0006691501
Figure 0006691501

ステップS25において、重みパラメータ補間部25は、重みパラメータ補正部24もしくは重みパラメータ逆計算部23から重みパラメータ相当量を受け取り、ニューラル言語モデル記憶部12に記憶されているニューラル言語モデルの重みパラメータと、入力された重みパラメータ相当量とを線形補間することにより、新しい重みパラメータを得る。重みパラメータ補間部25は、ニューラル言語モデル記憶部12に記憶されているニューラル言語モデルの重みパラメータを新しい重みパラメータに更新する。   In step S25, the weight parameter interpolating unit 25 receives the weight parameter equivalent amount from the weight parameter correcting unit 24 or the weight parameter inverse calculating unit 23, and the weight parameter of the neural language model stored in the neural language model storage unit 12, A new weight parameter is obtained by linearly interpolating the input weight parameter equivalent amount. The weight parameter interpolation unit 25 updates the weight parameter of the neural language model stored in the neural language model storage unit 12 to a new weight parameter.

[変形例1]
第二ドメイン学習データに含まれない単語であって、ニューラル言語モデルには含まれる単語(以下、ミスマッチ単語と呼ぶ)が存在する場合、頻度テンソル生成部21は、以下の方法によって、ミスマッチ単語の仮想的な頻度を定めて、頻度テンソルを生成する。第二ドメイン学習データに含まれない単語に対して確率的言語モデルが出力する事後確率は、元々のニューラル言語モデルが出力する事後確率から大きな変化がないことが望ましい。そのため、ニューラル言語モデルの重みパラメータをsoftmax関数に掛けた後のミスマッチ単語の事後確率に変化がないという制約を用いる。この制約は、ミスマッチ単語が一個のときは簡単に解くことができる。具体的には、softmax関数の入力ベクトルをX=[x1, x2, …, xD]Tとして、最後の要素xDをミスマッチ単語の頻度とし、仮想的な値を求めたいものとする。残りの要素x1, x2, …, xD-1については、具体的な頻度が第二ドメイン学習データの集計により求まっているものとする。出力ベクトルはY=[y1, y2, …, yD]Tとして、最後の要素yDをニューラル言語モデルの重みパラメータにsoftmax関数を掛けて得られたミスマッチ単語の事後確率とし、この値が変化しないようにする。この関係性は式(13)で表される。
[Modification 1]
When a word that is not included in the second domain learning data and that is included in the neural language model (hereinafter, referred to as a mismatch word) exists, the frequency tensor generation unit 21 uses the following method to identify the mismatch word. A virtual frequency is defined and a frequency tensor is generated. It is desirable that the posterior probabilities output by the probabilistic language model for words not included in the second domain learning data do not significantly change from the posterior probabilities output by the original neural language model. Therefore, we use the constraint that there is no change in the posterior probability of mismatched words after the softmax function is multiplied by the weight parameter of the neural language model. This constraint can be easily solved when there is only one mismatch word. Specifically, assume that the input vector of the softmax function is X = [x 1 , x 2 , ,,, x D ] T , and the last element x D is the frequency of mismatch words, and we want to obtain a virtual value. . For the remaining elements x 1 , x 2 , ..., x D-1, it is assumed that specific frequencies have been obtained by aggregating the second domain learning data. The output vector is Y = [y 1 , y 2 , ..., y D ] T , and the last element y D is the posterior probability of the mismatch word obtained by multiplying the weight parameter of the neural language model by the softmax function. Do not change. This relationship is expressed by equation (13).

Figure 0006691501
Figure 0006691501

これは、   this is,

Figure 0006691501
Figure 0006691501

となる。以前に出現した単語の条件ごとに式(14)の計算を行い、求まったxDをミスマッチ単語の仮想的な頻度として用いる。ミスマッチ単語を一個でなく任意の個数とする場合には、上記の関係性から立てた連立方程式を解いて、ミスマッチ単語それぞれの仮想的な頻度として用いればよい。 Becomes Equation (14) is calculated for each condition of previously appeared words, and the obtained x D is used as the virtual frequency of mismatched words. When the number of mismatched words is not one but an arbitrary number, the simultaneous equations established from the above relationships may be solved and used as the virtual frequency of each mismatched word.

[変形例2]
第一実施形態では、重みパラメータ逆計算部23が、底を自然対数とする対数関数lnを用いたが、任意の値を底とする対数関数を用いてもよい。
[Modification 2]
In the first embodiment, the weight parameter inverse calculation unit 23 uses the logarithmic function ln whose base is the natural logarithm, but a logarithmic function whose base is an arbitrary value may be used.

[変形例3]
第一実施形態では、重みパラメータ逆計算部23が、二乗ノルム最小化基準を用いて、||[x1, x2, …, xD]T||2を最小化するベクトル^X=[^x1, ^x2, …, ^xD]Tを重みパラメータ相当量と定めたが、ベクトル^Xを定める基準は任意のものを用いてもよい。例えば、任意のL-pノルムを用いてもよいし、ニューラル言語モデルの重みパラメータに対して近付くように誤差を小さくしてもよい。
[Modification 3]
In the first embodiment, the weight parameter inverse calculation unit 23 uses the square norm minimization criterion to minimize a vector ^ X = [that minimizes || [x 1 , x 2 , ..., x D ] T || 2 . Although ^ x 1 , ^ x 2 , ..., ^ x D ] T is defined as the weight parameter equivalent amount, any criterion may be used as the criterion for defining the vector ^ X. For example, an arbitrary Lp norm may be used, or the error may be reduced so as to approach the weight parameter of the neural language model.

[変形例4]
重みパラメータ補正部24は、固定の関数またはニューラル言語モデルのパラメータを用いた関数などの任意の関数を用いて、重みパラメータ相当量の値が取り得る幅を変更してもよい。
[Modification 4]
The weighting parameter correction unit 24 may change the width that the value of the weighting parameter equivalent amount can take, using an arbitrary function such as a fixed function or a function using the parameters of the neural language model.

[変形例5]
第一実施形態では、重みパラメータ補間部25が、重みパラメータ相当量とニューラル言語モデルの重みパラメータとを線形補間する構成としたが、任意の一般的な補間法、例えば、幾何平均等により補間を行ってもよい。
[Modification 5]
In the first embodiment, the weight parameter interpolating unit 25 is configured to linearly interpolate the weight parameter equivalent amount and the weight parameter of the neural language model. However, the interpolation may be performed by any general interpolation method, for example, geometric mean. You can go.

[変形例6]
第一実施形態では、単語列を対象として連接頻度を集計したが、例えば、文字や音素列等、任意の離散値系列を対象としてもよい。
[Modification 6]
In the first embodiment, the concatenation frequency is totaled for the word string, but any discrete value series such as a character or a phoneme string may be targeted.

[変形例7]
第一実施形態では、ニューラル言語モデル、すなわちニューラルネットワークによる言語モデルを対象としたが、他の任意の離散値系列判別を目的としたニューラルネットワークの一部または全部の重みパラメータを対象としてもよい。
[Modification 7]
In the first embodiment, the neural language model, that is, the language model based on the neural network is targeted, but the weighting parameters of a part or all of the neural network for the purpose of discriminating other arbitrary discrete value series may be targeted.

[変形例8]
第一実施形態では、確率的言語モデル生成部22は、確率的言語モデルを用いて確率モデルパラメータテンソルを出力する構成としたが、例えば、RNNやLSTM等、前の単語から次の単語を予測する確率を出力する任意のモデリングを用い、出力された確率値系列を確率モデルパラメータテンソルの代わりに用いてもよい。
[Modification 8]
In the first embodiment, the probabilistic language model generation unit 22 is configured to output the probabilistic model parameter tensor using the probabilistic language model. However, for example, RNN or LSTM predicts the next word from the previous word. The output probability value sequence may be used instead of the probabilistic model parameter tensor by using any modeling that outputs the probability of performing.

[変形例9]
第一実施形態では、第一ドメイン学習データから学習したニューラルネットワークの重みパラメータを初期値としてモデル学習を行う構成を説明したが、重みパラメータ逆計算部23が求めた(すなわち、第二ドメイン学習データから学習した確率モデルの出力ベクトルに対して逆計算した)重みパラメータ相当量を初期値としてモデル学習を行ってもよい。また、重みパラメータ逆計算部23が求めた重みパラメータ相当量を平均とするガウス分布を事前分布としてモデル学習を行ってもよい。
[Modification 9]
In the first embodiment, the configuration in which the model learning is performed by using the weight parameter of the neural network learned from the first domain learning data as an initial value has been described, but the weight parameter inverse calculation unit 23 calculates (that is, the second domain learning data). The model learning may be performed with the weight parameter equivalent amount (inversely calculated for the output vector of the probabilistic model learned from the above) as the initial value. Further, model learning may be performed by using a Gaussian distribution having the weight parameter equivalent calculated by the weight parameter inverse calculation unit 23 as an average as a prior distribution.

[第二実施形態]
第一実施形態では、系列モデリングの一例として、ニューラルネットワークによる言語モデルに対してこの発明を適用した一般的な構成例を説明した。第二実施形態では、より実用的な構成例として、CTCニューラルネットワークを用いた音響モデルに対してこの発明を適用した構成例を説明する。
[Second embodiment]
In the first embodiment, as an example of sequence modeling, a general configuration example in which the present invention is applied to a language model by a neural network has been described. In the second embodiment, as a more practical configuration example, a configuration example in which the present invention is applied to an acoustic model using a CTC neural network will be described.

主に音声認識に用いられるConnectionist Temporal Classification(以下、CTC)は、ニューラルネットワーク(NN: Neural Network)を用いた機械学習による系列変換モデルの一種であり、隠れマルコフモデル(HMM: Hidden Markov Model)相当の機能をニューラルネットワークに行わせることができる枠組みである。音声認識において現在一般的に使われているNN-HMMハイブリッド方式では、音をシンボルに変換する音響モデルにおいて、入力系列と出力系列の長さが一対一である制約がある。一方、CTCでは通常の出力シンボルに加えて、空白を表現する空シンボルを導入することにより、系列長の短くなる変換をNN音響モデルに行わせることができるようになっている。そのため、音声認識であれば、単位時間(以下、フレームとも呼ぶ)毎の音響特徴ベクトルの入力に対し、音素や文字、単語等を直接出力系列として、音響モデルや音声認識器を学習することができる(参考文献1参照)。   Connectionist Temporal Classification (CTC), which is mainly used for speech recognition, is a kind of sequence conversion model by machine learning using neural network (NN: Neural Network) and is equivalent to Hidden Markov Model (HMM). It is a framework that allows the neural network to perform the function of. The NN-HMM hybrid method, which is commonly used in speech recognition, has a constraint that the length of the input sequence and the output sequence is one-to-one in the acoustic model that converts sounds into symbols. On the other hand, in CTC, the NN acoustic model can be transformed by introducing an empty symbol that represents a blank in addition to the usual output symbol. Therefore, in the case of speech recognition, it is possible to learn an acoustic model or a speech recognizer by directly inputting an acoustic feature vector for each unit time (hereinafter, also referred to as a frame) using phonemes, characters, words, etc. as output sequences. Yes (see Reference 1).

〔参考文献1〕Yajie Miao, Mohammad Gowayyed, and Florian Metze, "EESEN: End-to-End Speech Recognition using Deep RNN Models and WFST-based Decoding", 2015 IEEE Workshop on Automatic Speech Recognition and Understanding (ASRU), IEEE, 2015.
第二実施形態の音声認識システムは、例えば、音響モデル学習装置と音声認識装置とを含む。音響モデル学習装置は、学習音声と各学習音声に関するテキスト情報(例えば、文字、音素、HMM状態等、音声の変換先のシンボル情報)とを含む学習データを用いて、学習音声から生成された音響特徴ベクトルとともに音響特徴ベクトルの変換先の正解系列としてテキスト情報を入力し、このペアを用いてCTCによる音響モデルを学習する。音声認識装置は、音響モデル学習装置により学習した音響モデルを用いて、入力音声の音声認識を行う。
[Reference 1] Yajie Miao, Mohammad Gowayyed, and Florian Metze, "EESEN: End-to-End Speech Recognition using Deep RNN Models and WFST-based Decoding", 2015 IEEE Workshop on Automatic Speech Recognition and Understanding (ASRU), IEEE , 2015.
The voice recognition system of the second embodiment includes, for example, an acoustic model learning device and a voice recognition device. The acoustic model learning device uses a learning data including learning voices and text information (for example, characters, phonemes, HMM states, and the like, symbol information of a voice conversion destination) related to each learning voice, and generates an acoustic sound generated from the learning voice. Along with the feature vector, text information is input as the correct sequence of the transformation destination of the acoustic feature vector, and the acoustic model by CTC is learned using this pair. The voice recognition device performs voice recognition of the input voice using the acoustic model learned by the acoustic model learning device.

音響モデル学習装置は、図3に示すように、学習データ記憶部30、文脈保存ベクトル生成部31、事後確率計算部32、文脈保存ベクトル計算部33、文脈保存ベクトル連結部34、音響モデル記憶部35、テキストデータ記憶部40、頻度テンソル生成部41、確率的言語モデル生成部42、重みパラメータ逆計算部43、重みパラメータ補正部44、および重みパラメータ補間部45を含む。ただし、重みパラメータ補正部44は必須の構成ではなく、省略することも可能である。第二実施形態の音響モデル学習装置が、図5に示す各ステップの処理を行うことにより第二実施形態の音響モデル学習方法が実現される。   As shown in FIG. 3, the acoustic model learning device includes a learning data storage unit 30, a context preserving vector generation unit 31, a posterior probability calculation unit 32, a context preserving vector calculation unit 33, a context preserving vector connection unit 34, an acoustic model storage unit. 35, a text data storage unit 40, a frequency tensor generation unit 41, a probabilistic language model generation unit 42, a weight parameter inverse calculation unit 43, a weight parameter correction unit 44, and a weight parameter interpolation unit 45. However, the weight parameter correction unit 44 is not an essential component and can be omitted. The acoustic model learning method of the second embodiment is realized by the acoustic model learning device of the second embodiment performing the processing of each step shown in FIG.

音声認識装置は、図4に示すように、音響モデル記憶部35、言語モデル記憶部36、および音声認識部37を含む。第二実施形態の音声認識装置が、図6に示す各ステップの処理を行うことにより第二実施形態の音声認識方法が実現される。   As shown in FIG. 4, the voice recognition device includes an acoustic model storage unit 35, a language model storage unit 36, and a voice recognition unit 37. The speech recognition method of the second embodiment is realized by the processing of each step shown in FIG. 6 by the speech recognition device of the second embodiment.

音響モデル学習装置および音声認識装置は、例えば、中央演算処理装置(CPU: Central Processing Unit)、主記憶装置(RAM: Random Access Memory)などを有する公知または専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。音響モデル学習装置および音声認識装置は、例えば、中央演算処理装置の制御のもとで各処理を実行する。音響モデル学習装置および音声認識装置に入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて読み出されて他の処理に利用される。また、音響モデル学習装置および音声認識装置の各処理部の少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。音響モデル学習装置および音声認識装置が備える各記憶部は、例えば、RAM(Random Access Memory)などの主記憶装置、ハードディスクや光ディスクもしくはフラッシュメモリ(Flash Memory)のような半導体メモリ素子により構成される補助記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。音響モデル学習装置および音声認識装置が備える各記憶部は、それぞれ論理的に分割されていればよく、一つの物理的な記憶装置に記憶されていてもよい。   In the acoustic model learning device and the speech recognition device, for example, a special program is loaded into a known or dedicated computer having a central processing unit (CPU), a main storage device (RAM: Random Access Memory), and the like. It is a special device configured. The acoustic model learning device and the speech recognition device execute each process under the control of the central processing unit, for example. The data input to the acoustic model learning device and the voice recognition device and the data obtained by each process are stored in, for example, the main storage device, and the data stored in the main storage device are read as necessary and It is used for processing. Further, at least a part of each processing unit of the acoustic model learning device and the voice recognition device may be configured by hardware such as an integrated circuit. Each storage unit included in the acoustic model learning device and the voice recognition device is, for example, a main storage device such as a RAM (Random Access Memory), an auxiliary device including a semiconductor memory device such as a hard disk, an optical disk, or a flash memory (Flash Memory). It can be configured by a storage device or middleware such as a relational database or a key-value store. Each storage unit included in the acoustic model learning device and the voice recognition device may be logically divided, and may be stored in one physical storage device.

以下、図5を参照しながら、第二実施形態の音響モデル学習装置が実行する音響モデル学習方法を説明する。   Hereinafter, the acoustic model learning method executed by the acoustic model learning device of the second embodiment will be described with reference to FIG.

音響モデル学習装置の学習データ記憶部30には、音響モデルの学習に用いる学習データが記憶されている。学習データは、学習音声と各学習音声の内容に関するテキスト情報(例えば、HMM状態、音素、文字、単語等)とを含む。学習データは手動で収集してもよいし、公知の学習データ生成技術を用いて自動的に生成してもよい。学習データは予め十分な量を用意して学習データ記憶部30に記憶しておく。   The learning data storage unit 30 of the acoustic model learning device stores learning data used for learning the acoustic model. The learning data includes learning voices and text information (for example, HMM state, phonemes, characters, words, etc.) regarding the content of each learning voice. The learning data may be collected manually or may be automatically generated using a known learning data generation technique. A sufficient amount of learning data is prepared in advance and stored in the learning data storage unit 30.

音響モデル学習装置の音響モデル記憶部35には、CTCによる音響モデルが記憶されている。初期状態では従来技術のCTCによる音響モデルを用意して記憶しておけばよい。   An acoustic model based on CTC is stored in the acoustic model storage unit 35 of the acoustic model learning device. In the initial state, a conventional CTC acoustic model may be prepared and stored.

ステップS31において、文脈保存ベクトル生成部31は、文脈保存ベクトルK0=[k0,1, k0,2, k0,3, k0,4, …]Tを生成する。文脈保存ベクトルK0の各次元は任意の値(例えば、0や1)に初期化する。文脈保存ベクトル生成部31は入力なしに動作することができるが、初期化に用いる値(例えば、0や1)を入力としてもよい。生成した文脈保存ベクトルK0は、音響モデル記憶部35に記憶されている音響モデルにおけるCTCニューラルネットワークの入力層もしくは隠れ層の任意の位置に連結する。連結とは、文脈保存ベクトルの情報を用いてCTCニューラルネットワークのパラメータに影響を与えるようにすることである。例えば、元々のCTCニューラルネットワークの隠れ層の前または後ろに文脈保存ベクトルを繋げ、隠れ層のベクトルの長さと文脈保存ベクトルの長さの和の長さであるベクトルを新規に生成する。または、個々の文脈保存ベクトルを隠れ層や出力層の大きさに変換する行列を別に用意し、行列による変換の結果を元々のCTCニューラルネットワークの出力層のベクトルと加算する。 In step S31, the context-preserving vector generation unit 31 generates the context-preserving vector K 0 = [k 0,1 , k 0,2 , k 0,3 , k 0,4 , ...] T. Each dimension of the context-preserving vector K 0 is initialized to an arbitrary value (for example, 0 or 1). The context-preserving vector generation unit 31 can operate without input, but may use a value used for initialization (for example, 0 or 1) as input. The generated context-saving vector K 0 is connected to an arbitrary position in the input layer or hidden layer of the CTC neural network in the acoustic model stored in the acoustic model storage unit 35. The concatenation is to use the information of the context-preserving vector to influence the parameters of the CTC neural network. For example, a context-preserving vector is connected before or after the hidden layer of the original CTC neural network, and a vector that is the sum of the length of the hidden layer vector and the length of the context-preserving vector is newly generated. Alternatively, a matrix for converting each context-preserving vector into the size of the hidden layer or the output layer is prepared separately, and the result of the conversion by the matrix is added to the vector of the output layer of the original CTC neural network.

ステップS32において、事後確率計算部32は、学習データ記憶部30に記憶されている学習音声から抽出した時刻t+1(t≧0)における音響特徴ベクトルXt+1=[xt+1,1, xt+1,2, xt+1,3, xt+1,4, …]Tと、前の時刻tにおける文脈保存ベクトルKtとを、音響モデル記憶部35に記憶されている音響モデルのCTCニューラルネットワークへ入力し、出力シンボルに対する事後確率ベクトルCt+1=[ct+1,1, ct+1,2, ct+1,3, ct+1,4, …]T(以下、出力事後確率ベクトルと呼ぶ)と、出力シンボルが空シンボルである確率を表す空シンボル確率φt+1とを得る。出力事後確率ベクトルCt+1と正解系列とは、CTCニューラルネットワークの誤差関数へ入力され、CTCニューラルネットワークのパラメータの更新に使用される。事後確率計算部32は、出力事後確率ベクトルCt+1および空シンボル確率φt+1を文脈保存ベクトル計算部33へ出力する。 In step S32, the posterior probability calculating unit 32 causes the acoustic feature vector X t + 1 = [x t + 1, at time t + 1 (t ≧ 0) extracted from the learning voice stored in the learning data storage unit 30 . 1 , x t + 1,2 , x t + 1,3 , x t + 1,4 , ...] T and the context preservation vector K t at the previous time t are stored in the acoustic model storage unit 35. acoustic model of type into CTC neural network, the posterior probability vector for the output symbol C t + 1 = [c t + 1,1, c t + 1,2 you are, c t + 1,3, c t + 1,4 , ...] T (hereinafter referred to as an output posterior probability vector) and an empty symbol probability φ t + 1 representing the probability that the output symbol is an empty symbol. The output posterior probability vector C t + 1 and the correct sequence are input to the error function of the CTC neural network and used to update the parameters of the CTC neural network. The posterior probability calculation unit 32 outputs the output posterior probability vector C t + 1 and the empty symbol probability φ t + 1 to the context-preserving vector calculation unit 33.

ステップS33において、文脈保存ベクトル計算部33は、事後確率計算部32から出力事後確率ベクトルCt+1および空シンボル確率φt+1を受け取り、空シンボル確率φt+1に基づいて一つ前の時刻tにおける文脈保存ベクトルKt=[kt,1, kt,2, kt,3, kt,4, …]Tを更新して、現在の時刻t+1における文脈保存ベクトルKt+1=[kt+1,1, kt+1,2, kt+1,3, kt+1,4, …]Tを生成する。文脈保存ベクトル計算部33は、例えば、空シンボル確率φt+1が空シンボルであることを示す場合には、CTCニューラルネットワークが最後に空シンボル以外のシンボルを出力した際の出力事後確率ベクトルを保持し、空シンボル確率φt+1が空シンボルでないことを示す場合には、CTCニューラルネットワークが今回出力した出力事後確率ベクトルCt+1を記録するように、文脈保存ベクトルKt+1を計算する。文脈保存ベクトル計算部33は、計算した文脈保存ベクトルKt+1を文脈保存ベクトル連結部34へ出力する。 In step S33, the context-preserving vector calculation unit 33 receives the output posterior probability vector C t + 1 and the empty symbol probability φ t + 1 from the posterior probability calculation unit 32, and outputs the previous one based on the empty symbol probability φ t + 1. Context-preserving vector K t = [k t, 1 , k t, 2 , k t, 3 , k t, 4 ,…] T is updated to the context-preserving vector K at the current time t + 1. t + 1 = [k t + 1,1 , k t + 1,2 , k t + 1,3 , k t + 1,4 , ...] T is generated. For example, when the empty symbol probability φ t + 1 indicates that the empty symbol probability φ t + 1 is an empty symbol, the context-preserving vector calculation unit 33 calculates the output posterior probability vector when the CTC neural network finally outputs a symbol other than the empty symbol. If it holds and the empty symbol probability φ t + 1 indicates that it is not an empty symbol, the context-preserving vector K t + 1 is set so as to record the output posterior probability vector C t + 1 output by the CTC neural network this time. calculate. The context-saving vector calculation unit 33 outputs the calculated context-saving vector K t + 1 to the context-saving vector connecting unit 34.

文脈保存ベクトルの計算には、例えば、電子回路におけるフリップフロップ回路に類似した更新則を用いる。CTCニューラルネットワークが出力する空シンボル確率φt+1は0から1までの値を取り、1に近いほど空シンボルである可能性が高いことを表す。簡単のため、その両端の場合を考えると、 The calculation of the context-preserving vector uses, for example, an update rule similar to a flip-flop circuit in an electronic circuit. The empty symbol probability φ t + 1 output by the CTC neural network takes a value from 0 to 1, and the closer it is to 1, the higher the possibility of an empty symbol. For simplicity, considering the case of both ends,

Figure 0006691501
Figure 0006691501

のように、空シンボルではない場合(φt+1=0)には現在の時刻t+1における出力事後確率ベクトルCt+1の内容を記録し、空シンボルの場合(φt+1=1)には一つ前の時刻tにおける文脈保存ベクトルKtの内容を保持する。具体的には、出力された空シンボル確率φt+1が所定の閾値以上であればφt+1=1とし、空シンボル確率φt+1が所定の閾値未満であればφt+1=0とする等の手段により空シンボル確率φt+1を二値化し、式(15)のような更新則を用いればよい。また、両端が含まれるように自然に連続的に拡張した更新則として、式(16)を定義して計算してもよい。 If it is not an empty symbol (φ t + 1 = 0), the content of the output posterior probability vector C t + 1 at the current time t + 1 is recorded, and if it is an empty symbol (φ t + 1 = In 1), the contents of the context-preserving vector K t at the previous time t are retained. Specifically, if the output empty symbol probability φ t + 1 is greater than or equal to a predetermined threshold value, then φ t + 1 = 1, and if the empty symbol probability φ t + 1 is less than the predetermined threshold value, then φ t + 1 The empty symbol probability φ t + 1 may be binarized by a means such as = 0, and an update rule such as equation (15) may be used. Further, Equation (16) may be defined and calculated as an update rule that is naturally and continuously expanded to include both ends.

Figure 0006691501
Figure 0006691501

ただし、 However,

Figure 0006691501
Figure 0006691501

は要素毎の積を表す。[1, …, 1]Tは1を縦に並べたベクトルを表す。Φt+1は空シンボル確率φt+1を出力事後確率ベクトルCt+1の次元数分並べた縦ベクトル、すなわち、Φt+1=[φt+1, …, φt+1]Tである。 Represents the product of each element. [1,…, 1] T represents a vector in which 1s are arranged vertically. Φ t + 1 is a vertical vector in which empty symbol probabilities φ t + 1 are arranged by the number of dimensions of the output posterior probability vector C t + 1 , that is, Φ t + 1 = [φ t + 1 , ..., φ t + 1 ]. T.

式(16)は式(17)のように書き下すことも可能である。   Equation (16) can also be rewritten as equation (17).

Figure 0006691501
Figure 0006691501

文脈保存ベクトル計算部33は、出力シンボルに対する事後確率ベクトルCt+1の代わりに、図7に示す入力層、第一隠れ層、最終隠れ層等の、ニューラルネットワークの隠れ層等の他の内部パラメータや、入力された音響特徴ベクトルXt+1を用いてもよい。また、文脈保存ベクトル計算部33は、公知の次元削減手段を用いて文脈保存ベクトルKt+1を低次元化して出力してもよいし、平均化や正規化、離散化等の予め固定された関数による変換を行った後に出力してもよい。 The context-preserving vector calculation unit 33 replaces the posterior probability vector C t + 1 for the output symbol with other internal layers such as the hidden layer of the neural network such as the input layer, the first hidden layer, and the final hidden layer shown in FIG. 7. A parameter or the input acoustic feature vector X t + 1 may be used. The context-preserving vector calculation unit 33 may reduce the dimension of the context-preserving vector K t + 1 by using a known dimension reduction unit and may output it, or may be fixed in advance such as averaging, normalization, or discretization. You may output after performing the conversion by the function.

ステップS34において、文脈保存ベクトル連結部34は、文脈保存ベクトル計算部33から文脈保存ベクトルKt+1を受け取り、音響モデル記憶部35に記憶されているCTCニューラルネットワークに対して文脈保存ベクトルKt+1を連結する。文脈保存ベクトルの連結は、各時刻に更新された文脈保存ベクトルを受け取るたびに行う。文脈保存ベクトルを連結する際には、図8に示すように、出力シンボル系列のマルコフ性を表す行列を用いた線形変換を適用した後、直接出力層に加算等で統合するようなCTCニューラルネットワークを作成する。行列による線形変換を適用するとき、文脈保存ベクトルが入力される行列を、外部の言語資源等からの情報を反映したような出力シンボル系列のマルコフ性を表す行列とする。この行列は、外部の言語資源等を集計することにより算出したシンボル遷移確率を用いて、外部から行列の値に影響を与える操作(例えば、線形補間等)により、外部の言語資源等からの情報を反映するように構成されるものである。 In step S34, the context saved vector connecting portion 34, the context save vector receive context save vector K t + 1 from the calculation unit 33, an acoustic model context stored in the storage unit 35 relative to the CTC neural network stored vector K t Concatenate +1 . Concatenation of the context-preserving vectors is performed each time the context-preserving vector updated at each time is received. When connecting the context-preserving vectors, as shown in FIG. 8, after applying a linear transformation using a matrix representing the Markov property of the output symbol sequence, the CTC neural network is directly integrated into the output layer by addition or the like. To create. When applying a linear transformation using a matrix, the matrix into which the context-preserving vector is input is a matrix that represents the Markov property of the output symbol sequence that reflects information from an external language resource or the like. This matrix uses the symbol transition probabilities calculated by aggregating external language resources, etc., and performs information from external language resources, etc., by operations that affect the matrix values from the outside (for example, linear interpolation). Is configured to reflect.

文脈保存ベクトルKt+1を線形変換する際に用いる出力シンボル系列のマルコフ性を表す行列は、ステップS41からS45の処理により学習したものである。出力シンボル系列のマルコフ性を表す行列の学習は、文脈保存ベクトルKt+1をCTCニューラルネットワークへ連結するより前であれば、任意のタイミングで行えばよい。以下、出力シンボル系列のマルコフ性を表す行列は、重みパラメータとも呼ぶ。 The matrix representing the Markov property of the output symbol sequence used when linearly converting the context-preserving vector K t + 1 is the one learned by the processing of steps S41 to S45. The learning of the matrix representing the Markov property of the output symbol sequence may be performed at any timing before connecting the context-preserving vector K t + 1 to the CTC neural network. Hereinafter, the matrix representing the Markov property of the output symbol sequence is also referred to as a weight parameter.

テキストデータ記憶部40には、少なくとも1つの単語列が含まれる複数のテキストデータが記憶されている。このテキストデータは手動で収集してもよいし、インターネット等から取得できる言語資源から自動で収集してもよいし、公知の学習データ生成技術を用いて自動的に生成してもよい。テキストデータは予め十分な量を用意してテキストデータ記憶部40に記憶しておく。   The text data storage unit 40 stores a plurality of text data including at least one word string. This text data may be manually collected, may be automatically collected from a language resource that can be obtained from the Internet, or may be automatically generated by using a known learning data generation technique. A sufficient amount of text data is prepared in advance and stored in the text data storage unit 40.

ステップS41において、頻度テンソル生成部41は、テキストデータ記憶部40に記憶されたテキストデータを読み込み、そのテキストデータに含まれる単語の連接頻度を集計し、頻度テンソルを生成する。頻度テンソル生成部41は、生成した頻度テンソルを確率的言語モデル生成部42へ出力する。   In step S41, the frequency tensor generation unit 41 reads the text data stored in the text data storage unit 40, totals the concatenation frequencies of words included in the text data, and generates a frequency tensor. The frequency tensor generation unit 41 outputs the generated frequency tensor to the stochastic language model generation unit 42.

ステップS42において、確率的言語モデル生成部42は、頻度テンソル生成部41から頻度テンソルを受け取り、その頻度テンソルから確率的言語モデルを用いて確率モデルパラメータテンソルを生成する。このとき、確率的言語モデルは、例えば、n-gramモデル等の一般的なものを用いればよい。また、その際にスムージングなどの一般的な操作を含めてもよい。確率的言語モデル生成部42は、生成した確率モデルパラメータテンソルを重みパラメータ逆計算部43へ出力する。   In step S42, the probabilistic language model generation unit 42 receives the frequency tensor from the frequency tensor generation unit 41 and generates a probabilistic model parameter tensor from the frequency tensor using the probabilistic language model. At this time, as the probabilistic language model, for example, a general one such as an n-gram model may be used. Further, at that time, a general operation such as smoothing may be included. The probabilistic language model generation unit 42 outputs the generated probabilistic model parameter tensor to the weight parameter inverse calculation unit 43.

ステップS43において、重みパラメータ逆計算部43は、確率的言語モデル生成部42から確率モデルパラメータテンソルを受け取り、その確率モデルパラメータテンソルに対してCTCニューラルネットワークに含まれる非線形変換の逆計算を行い、出力シンボル系列のマルコフ性を表す行列(すなわち、重みパラメータ)に相当する量(以下、重みパラメータ相当量と呼ぶ)を生成する。重みパラメータ相当量の逆計算は、第一実施形態の重みパラメータ逆計算部と同様に、式(11)により行えばよい。重みパラメータ逆計算部43は、計算した重みパラメータ相当量を重みパラメータ補正部44へ出力する。重みパラメータ補正部44を省略した場合には、計算した重みパラメータ相当量を重みパラメータ補間部45へ出力する。   In step S43, the weight parameter inverse calculation unit 43 receives the stochastic model parameter tensor from the stochastic language model generation unit 42, performs inverse calculation of the nonlinear transformation included in the CTC neural network on the stochastic model parameter tensor, and outputs the result. An amount (hereinafter, referred to as a weight parameter equivalent amount) corresponding to a matrix (that is, a weight parameter) representing the Markov property of the symbol sequence is generated. The inverse calculation of the weight parameter equivalent amount may be performed by the equation (11) as in the weight parameter inverse calculation unit of the first embodiment. The weight parameter inverse calculation unit 43 outputs the calculated weight parameter equivalent amount to the weight parameter correction unit 44. When the weight parameter correction unit 44 is omitted, the calculated weight parameter equivalent amount is output to the weight parameter interpolation unit 45.

ステップS44において、重みパラメータ補正部44は、重みパラメータ逆計算部43から重みパラメータ相当量を受け取り、音響モデル記憶部35に記憶されている重みパラメータと、分布のパラメータ(平均および分散)が合うように重みパラメータ相当量を補正する。重みパラメータ相当量の補正は、第一実施形態の重みパラメータ補正部と同様に、式(12)により行えばよい。重みパラメータ補正部44は、補正した重みパラメータ相当量を重みパラメータ補間部45へ出力する。   In step S44, the weighting parameter correction unit 44 receives the weighting parameter equivalent amount from the weighting parameter inverse calculation unit 43 so that the weighting parameter stored in the acoustic model storage unit 35 matches the distribution parameter (mean and variance). Then, the weight parameter equivalent amount is corrected. The correction of the weight parameter equivalent amount may be performed by the equation (12) as in the weight parameter correction unit of the first embodiment. The weight parameter correction unit 44 outputs the corrected weight parameter equivalent amount to the weight parameter interpolation unit 45.

ステップS45において、重みパラメータ補間部45は、重みパラメータ補正部44もしくは重みパラメータ逆計算部43から重みパラメータ相当量を受け取り、音響モデル記憶部35に記憶されているCTCニューラルネットワークの重みパラメータと、入力された重みパラメータ相当量とを線形補間することにより、新しい重みパラメータを得る。重みパラメータ補間部45は、音響モデル記憶部35に記憶されているCTCニューラルネットワークの重みパラメータを新しい重みパラメータに更新する。   In step S45, the weight parameter interpolation unit 45 receives the weight parameter equivalent amount from the weight parameter correction unit 44 or the weight parameter inverse calculation unit 43, and inputs the weight parameter of the CTC neural network stored in the acoustic model storage unit 35 and the input. A new weight parameter is obtained by linearly interpolating the obtained weight parameter equivalent amount. The weight parameter interpolating unit 45 updates the weight parameter of the CTC neural network stored in the acoustic model storage unit 35 to a new weight parameter.

以下、図6を参照しながら、第二実施形態の音声認識装置が実行する音声認識方法を説明する。   Hereinafter, the voice recognition method executed by the voice recognition device of the second embodiment will be described with reference to FIG.

音声認識装置の音響モデル記憶部35には、音響モデル学習装置により学習したCTCによる音響モデルが記憶されている。   The acoustic model storage unit 35 of the voice recognition device stores an acoustic model based on CTC learned by the acoustic model learning device.

音声認識装置の言語モデル記憶部36には、音声認識に用いる言語モデルが記憶されている。言語モデルの種類は、音声認識部37が音声認識を行う際に利用可能なものであればどのようなものであってもよい。   The language model storage unit 36 of the voice recognition device stores a language model used for voice recognition. Any type of language model may be used as long as it can be used when the voice recognition unit 37 performs voice recognition.

ステップS37において、音声認識部37は、音響モデル記憶部35に記憶された音響モデルと言語モデル記憶部36に記憶された言語モデルとを用いて、入力音声を音声認識し、その音声認識結果を出力する。音声認識部37は、CTCによる音響モデル単体を用いて音声認識を行う音声認識器でもよいし、CTCによる音響モデルを重み付き有限状態トランスデューサ(WFST: Weighted Finite-State Transducer)と組み合わせた音声認識器であってもよい。   In step S37, the voice recognition unit 37 performs voice recognition on the input voice using the acoustic model stored in the acoustic model storage unit 35 and the language model stored in the language model storage unit 36, and outputs the voice recognition result. Output. The voice recognition unit 37 may be a voice recognizer that performs voice recognition using a single CTC acoustic model, or a voice recognizer that combines the CTC acoustic model with a weighted finite state transducer (WFST). May be

第二実施形態では、音響モデル学習装置と音声認識装置とを別々の装置として構成した音声認識システムを説明したが、音響モデル学習装置と音声認識装置とが備える機能をすべて備えた一台の音声認識装置として構成してもよい。すなわち、学習データ記憶部30、文脈保存ベクトル生成部31、事後確率計算部32、文脈保存ベクトル計算部33、文脈保存ベクトル連結部34、音響モデル記憶部35、言語モデル記憶部36、音声認識部37、テキストデータ記憶部40、頻度テンソル生成部41、確率的言語モデル生成部42、重みパラメータ逆計算部43、重みパラメータ補正部44、および重みパラメータ補間部45を含む音声認識装置を構成することも可能である。   In the second embodiment, the speech recognition system in which the acoustic model learning device and the speech recognition device are configured as separate devices has been described. However, a single speech having all the functions of the acoustic model learning device and the speech recognition device is provided. It may be configured as a recognition device. That is, the learning data storage unit 30, the context preservation vector generation unit 31, the posterior probability calculation unit 32, the context preservation vector calculation unit 33, the context preservation vector connection unit 34, the acoustic model storage unit 35, the language model storage unit 36, the speech recognition unit. 37, a text data storage unit 40, a frequency tensor generation unit 41, a probabilistic language model generation unit 42, a weight parameter inverse calculation unit 43, a weight parameter correction unit 44, and a weight parameter interpolation unit 45. Is also possible.

上記のように構成することにより、第二実施形態の音響モデル学習装置は、CTCによる音響モデルの学習に用いる学習データとは異なる外部の言語資源であるテキストデータを用いて出力シンボル系列のマルコフ性を表す行列を学習することができる。学習データは学習音声と書き起こしのテキスト情報であるため、収集のために要するコストが大きいが、テキストデータは例えばインターネット等の既存の資源が利用できるため小さいコストで十分な量を収集することが可能である。これにより、第二実施形態の音響モデル学習装置によれば、効率的に高精度なCTCによる音響モデルを学習することができる。   With the above configuration, the acoustic model learning device of the second embodiment uses the Markov property of the output symbol sequence by using text data that is an external language resource different from the learning data used for learning the acoustic model by CTC. You can learn the matrix that represents. Since the learning data is the learning voice and the text information of the transcription, the cost required for the collection is large, but since the existing resources such as the Internet can be used for the text data, it is possible to collect a sufficient amount at a small cost. It is possible. As a result, according to the acoustic model learning device of the second embodiment, it is possible to efficiently and highly accurately learn the acoustic model by CTC.

[第三実施形態]
上記の各実施形態で説明した重みパラメータ逆計算部、重みパラメータ補正部、および重みパラメータ補間部を独立した装置として構成し、確率モデルパラメータを入力としてニューラルネットワークの重みパラメータを補間する重みパラメータ補間装置を構成することも可能である。
[Third embodiment]
A weight parameter interpolating device that configures the weight parameter inverse calculating unit, the weight parameter correcting unit, and the weight parameter interpolating unit described in each of the above embodiments as independent devices, and interpolates the weight parameter of the neural network using the probabilistic model parameters as inputs Can also be configured.

第三実施形態の重みパラメータ補間装置は、図9に示すように、重みパラメータ記憶部50、重みパラメータ逆計算部51、重みパラメータ補正部52、および重みパラメータ補間部53を含む。ただし、重みパラメータ補正部52は必須の構成ではなく、省略することも可能である。第三実施形態の重みパラメータ補間装置が、図10に示す各ステップの処理を行うことにより、第三実施形態の重みパラメータ補間方法が実現される。   As shown in FIG. 9, the weight parameter interpolation device of the third embodiment includes a weight parameter storage unit 50, a weight parameter inverse calculation unit 51, a weight parameter correction unit 52, and a weight parameter interpolation unit 53. However, the weight parameter correction unit 52 is not an indispensable component and can be omitted. The weighting parameter interpolation device of the third embodiment implements the weighting parameter interpolation method of the third embodiment by performing the processing of each step shown in FIG.

重みパラメータ補間装置は、例えば、中央演算処理装置(CPU: Central Processing Unit)、主記憶装置(RAM: Random Access Memory)などを有する公知または専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。重みパラメータ補間装置は、例えば、中央演算処理装置の制御のもとで各処理を実行する。重みパラメータ補間装置に入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて読み出されて他の処理に利用される。また、重みパラメータ補間装置の各処理部の少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。重みパラメータ補間装置が備える各記憶部は、例えば、RAM(Random Access Memory)などの主記憶装置、ハードディスクや光ディスクもしくはフラッシュメモリ(Flash Memory)のような半導体メモリ素子により構成される補助記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。   The weight parameter interpolating device is a special program configured by loading a special program into a known or dedicated computer having a central processing unit (CPU), a main storage device (RAM: Random Access Memory), or the like. It is a device. The weight parameter interpolating device executes each process under the control of the central processing unit, for example. The data input to the weight parameter interpolating device and the data obtained in each process are stored in, for example, the main storage device, and the data stored in the main storage device is read out as needed and used for other processes. To be done. Further, at least a part of each processing unit of the weight parameter interpolating device may be configured by hardware such as an integrated circuit. Each storage unit included in the weight parameter interpolating device is, for example, a main storage device such as a RAM (Random Access Memory), an auxiliary storage device configured by a semiconductor memory device such as a hard disk, an optical disk, or a flash memory (Flash Memory), or It can be configured by middleware such as relational database and key-value store.

以下、図10を参照しながら、第三実施形態の重みパラメータ補間装置が実行する重みパラメータ補間方法の処理手続きを説明する。   Hereinafter, the processing procedure of the weight parameter interpolation method executed by the weight parameter interpolation device of the third embodiment will be described with reference to FIG. 10.

重みパラメータ記憶部50には、あるドメインに属する学習データ(以下、第一学習データ)から学習したニューラルネットワークに含まれる線形変換で用いる重みパラメータが記憶されている。   The weight parameter storage unit 50 stores weight parameters used in linear conversion included in a neural network learned from learning data belonging to a certain domain (hereinafter, first learning data).

ステップS51において、重みパラメータ逆計算部51は、重みパラメータ補間装置に入力された確率モデルパラメータテンソルに対してニューラルネットワークの非線形変換の逆計算を行い、重みパラメータ相当量を生成する。確率モデルパラメータテンソルは、第一学習データとは異なるドメインに属する学習データ(以下、第二学習データ)から処理単位(例えば、単語や形態素、文字、音素等、任意の離散値系列)毎の連接頻度を表す頻度テンソルを生成し、その頻度テンソルから確率モデルを用いて生成したものである。重みパラメータ相当量の逆計算は、第一実施形態の重みパラメータ逆計算部と同様に、式(11)により行えばよい。重みパラメータ逆計算部51は、計算した重みパラメータ相当量を重みパラメータ補正部52へ出力する。重みパラメータ補正部52を省略した場合には、計算した重みパラメータ相当量を重みパラメータ補間部53へ出力する。   In step S51, the weight parameter inverse calculation unit 51 performs inverse calculation of the nonlinear transformation of the neural network on the stochastic model parameter tensor input to the weight parameter interpolating device, and generates a weight parameter equivalent amount. The probabilistic model parameter tensor is a concatenation of learning data (hereinafter, second learning data) belonging to a domain different from that of the first learning data for each processing unit (for example, an arbitrary discrete value sequence such as a word, a morpheme, a character, a phoneme, etc.). A frequency tensor representing a frequency is generated, and a probability model is generated from the frequency tensor. The inverse calculation of the weight parameter equivalent amount may be performed by the equation (11) as in the weight parameter inverse calculation unit of the first embodiment. The weight parameter inverse calculation unit 51 outputs the calculated weight parameter equivalent amount to the weight parameter correction unit 52. When the weight parameter correction unit 52 is omitted, the calculated weight parameter equivalent amount is output to the weight parameter interpolation unit 53.

ステップS52において、重みパラメータ補正部52は、重みパラメータ逆計算部51から重みパラメータ相当量を受け取り、重みパラメータ記憶部50に記憶されている重みパラメータと、分布のパラメータ(平均および分散)が合うように重みパラメータ相当量を補正する。重みパラメータ相当量の補正は、第一実施形態の重みパラメータ補正部と同様に、式(12)により行えばよい。重みパラメータ補正部52は、補正した重みパラメータ相当量を重みパラメータ補間部53へ出力する。   In step S52, the weighting parameter correction unit 52 receives the weighting parameter equivalent amount from the weighting parameter inverse calculation unit 51 so that the weighting parameter stored in the weighting parameter storage unit 50 matches the distribution parameter (mean and variance). Then, the weight parameter equivalent amount is corrected. The correction of the weight parameter equivalent amount may be performed by the equation (12) as in the weight parameter correction unit of the first embodiment. The weight parameter correction unit 52 outputs the corrected weight parameter equivalent amount to the weight parameter interpolation unit 53.

ステップS53において、重みパラメータ補間部53は、重みパラメータ補正部52もしくは重みパラメータ逆計算部51から重みパラメータ相当量を受け取り、重みパラメータ記憶部50に記憶されている重みパラメータと、入力された重みパラメータ相当量とを線形補間することにより、新しい重みパラメータを得る。重みパラメータ補間部53は、新しい重みパラメータを重みパラメータ補間装置の出力とする。   In step S53, the weight parameter interpolation unit 53 receives the weight parameter equivalent amount from the weight parameter correction unit 52 or the weight parameter inverse calculation unit 51, and the weight parameter stored in the weight parameter storage unit 50 and the input weight parameter. A new weighting parameter is obtained by linearly interpolating with The weight parameter interpolation unit 53 outputs the new weight parameter as an output of the weight parameter interpolation device.

[発明のポイント]
ニューラルネットワークで用いるsoftmax関数は、単写ではないため、逆関数が存在しない。しかし、それに相当する操作(すなわち、逆計算)を考えることにより、確率ベクトルをニューラルネットワークで用いる重みパラメータに相当する量に変換することができる。元々のニューラルネットワークで用いる重みパラメータと、別ドメインのテキストデータから計算した確率モデルのパラメータテンソルを重みパラメータに相当する量に変換したものとを補間することによって、別ドメインへのモデル適応ができる。また、変換量を初期値や制約として再学習を行うなど、この性質を用いた学習によって、単なる出力のリスコアリングではないモデルの改善を実現できる。
[Points of the Invention]
Since the softmax function used in the neural network is not a single shot, there is no inverse function. However, the probability vector can be converted into an amount corresponding to the weighting parameter used in the neural network by considering an operation (that is, inverse calculation) corresponding to that. The model can be adapted to another domain by interpolating the weight parameter used in the original neural network and the parameter tensor of the probabilistic model calculated from the text data of another domain converted into an amount corresponding to the weight parameter. In addition, learning using this property, such as performing re-learning with the conversion amount as an initial value or a constraint, can improve a model that is not simply rescoring of output.

以上、この発明の実施の形態について説明したが、具体的な構成は、これらの実施の形態に限られるものではなく、この発明の趣旨を逸脱しない範囲で適宜設計の変更等があっても、この発明に含まれることはいうまでもない。実施の形態において説明した各種の処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。   Although the embodiments of the present invention have been described above, the specific configuration is not limited to these embodiments, and even if the design is appropriately changed without departing from the gist of the present invention, Needless to say, it is included in the present invention. The various kinds of processing described in the embodiments may be executed not only in time series according to the order described, but also in parallel or individually according to the processing capability of the device that executes the processing or the need.

[プログラム、記録媒体]
上記実施形態で説明した各装置における各種の処理機能をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
[Program, recording medium]
When various processing functions in each device described in the above embodiments are realized by a computer, processing contents of functions that each device should have are described by a program. By executing this program on a computer, various processing functions of the above-described devices are realized on the computer.

この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。   The program describing the processing contents can be recorded in a computer-readable recording medium. The computer-readable recording medium may be any recording medium such as a magnetic recording device, an optical disc, a magneto-optical recording medium, or a semiconductor memory.

また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。   The program is distributed by selling, transferring, or lending a portable recording medium such as a DVD or a CD-ROM in which the program is recorded. Further, the program may be stored in a storage device of a server computer and transferred from the server computer to another computer via a network to distribute the program.

このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記憶装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。   A computer that executes such a program first stores, for example, the program recorded on a portable recording medium or the program transferred from the server computer in its own storage device. Then, when executing the process, this computer reads the program stored in its own storage device and executes the process according to the read program. As another execution form of this program, a computer may directly read the program from a portable recording medium and execute processing according to the program, and the program is transferred from the server computer to this computer. Each time, the processing according to the received program may be sequentially executed. In addition, a configuration in which the above-described processing is executed by a so-called ASP (Application Service Provider) type service that realizes a processing function only by the execution instruction and result acquisition without transferring the program from the server computer to this computer May be It should be noted that the program in this embodiment includes information that is used for processing by an electronic computer and that conforms to the program (data that is not a direct command to a computer but has the property of defining computer processing).

また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。   Further, in this embodiment, the present apparatus is configured by executing a predetermined program on a computer, but at least a part of the processing contents may be implemented by hardware.

10 第一学習データ記憶部
11 ニューラル言語モデル生成部
12 ニューラル言語モデル記憶部
20 第二学習データ記憶部
21 頻度テンソル生成部
22 確率的言語モデル生成部
23 重みパラメータ逆計算部
24 重みパラメータ補正部
25 重みパラメータ補間部
30 学習データ記憶部
31 文脈保存ベクトル生成部
32 事後確率計算部
33 文脈保存ベクトル計算部
34 文脈保存ベクトル連結部
35 音響モデル記憶部
36 言語モデル記憶部
37 音声認識部
40 テキストデータ記憶部
41 頻度テンソル生成部
42 確率的言語モデル生成部
43 重みパラメータ逆計算部
44 重みパラメータ補正部
45 重みパラメータ補間部
50 重みパラメータ記憶部
51 重みパラメータ逆計算部
52 重みパラメータ補正部
53 重みパラメータ補間部
10 First Learning Data Storage Unit 11 Neural Language Model Generation Unit 12 Neural Language Model Storage Unit 20 Second Learning Data Storage Unit 21 Frequency Tensor Generation Unit 22 Stochastic Language Model Generation Unit 23 Weight Parameter Inverse Calculation Unit 24 Weight Parameter Correction Unit 25 Weight parameter interpolation unit 30 Learning data storage unit 31 Context-preserved vector generation unit 32 Posterior probability calculation unit 33 Context-preserved vector calculation unit 34 Context-preserved vector connection unit 35 Acoustic model storage unit 36 Language model storage unit 37 Speech recognition unit 40 Text data storage Unit 41 frequency tensor generation unit 42 stochastic language model generation unit 43 weight parameter inverse calculation unit 44 weight parameter correction unit 45 weight parameter interpolation unit 50 weight parameter storage unit 51 weight parameter inverse calculation unit 52 weight parameter correction unit 53 weight parameter interpolation unit

Claims (8)

音響特徴ベクトルを入力として、上記音響特徴ベクトルに対応する出力シンボルに対する事後確率ベクトルと、上記出力シンボルが空シンボルである確率を表す空シンボル確率と、を出力するニューラルネットワークを用いた音響モデルを記憶する音響モデル記憶部と、
学習音声から抽出した音響特徴ベクトルを上記ニューラルネットワークに入力して上記事後確率ベクトルと上記空シンボル確率とを得る事後確率計算部と、
上記空シンボル確率に基づいて上記ニューラルネットワークが以前の時刻に出力した事後確率ベクトルもしくは上記ニューラルネットワークが現在の時刻に出力した事後確率ベクトルを選択して保持する文脈保存ベクトルを計算する文脈保存ベクトル計算部と、
上記文脈保存ベクトルが計算されるたびに重みパラメータを用いて上記文脈保存ベクトルを線形変換して上記ニューラルネットワークの最終隠れ層の出力と加算して上記ニューラルネットワークの出力層に連結する文脈保存ベクトル連結部と、
単語列の集合であるテキストデータから確率モデルを用いて確率モデルパラメータを生成する確率モデル生成部と、
上記確率モデルパラメータに対して上記ニューラルネットワークに含まれる非線形変換の逆計算を行い、重みパラメータ相当量を計算する重みパラメータ逆計算部と、
上記線形変換で用いる重みパラメータと上記重みパラメータ相当量との補間を行う重みパラメータ補間部と、
を含む音響モデル学習装置。
Store an acoustic model using a neural network that receives an acoustic feature vector as an input and outputs a posterior probability vector for an output symbol corresponding to the acoustic feature vector and an empty symbol probability that represents the probability that the output symbol is an empty symbol. An acoustic model storage unit that
A posterior probability calculation unit that inputs the acoustic feature vector extracted from the learning voice to the neural network to obtain the posterior probability vector and the empty symbol probability,
Context-preserving vector calculation for selecting and retaining the posterior probability vector output by the neural network at the previous time or the posterior probability vector output by the neural network at the current time based on the empty symbol probability Department,
Each time the context-preserving vector is calculated, the context-preserving vector is linearly transformed by using a weight parameter, added to the output of the final hidden layer of the neural network, and connected to the output layer of the neural network. Department,
A probabilistic model generation unit that generates a probabilistic model parameter using a probabilistic model from text data that is a set of word strings,
A weight parameter inverse calculation unit that performs inverse calculation of the non-linear transformation included in the neural network on the stochastic model parameter and calculates a weight parameter equivalent amount,
A weight parameter interpolating unit that interpolates the weight parameter used in the linear conversion and the weight parameter equivalent amount,
Acoustic model learning device including.
第一ドメインに属する離散値系列の集合である第一学習データから学習した重みパラメータを用いて入力ベクトルに対して線形変換を行い、線形変換後の入力ベクトルに対して非線形変換を行うニューラルネットワークを記憶するニューラルネットワーク記憶部と、
第二ドメインに属する離散値系列の集合である第二学習データから確率モデルを用いて確率モデルパラメータを生成する確率モデル生成部と、
上記確率モデルパラメータに対して上記非線形変換の逆計算を行い、重みパラメータ相当量を計算する重みパラメータ逆計算部と、
上記線形変換で用いる重みパラメータと上記重みパラメータ相当量との補間を行う重みパラメータ補間部と、
を含むモデル学習装置。
A neural network that performs a linear transformation on the input vector using the weighting parameters learned from the first learning data, which is a set of discrete value sequences belonging to the first domain, and performs a nonlinear transformation on the input vector after the linear transformation. A neural network storage unit for storing,
A probabilistic model generation unit that generates a probabilistic model parameter using a probabilistic model from the second learning data that is a set of discrete value series belonging to the second domain,
An inverse calculation of the non-linear transformation is performed on the stochastic model parameter, and a weight parameter inverse calculation unit that calculates a weight parameter equivalent amount,
A weight parameter interpolating unit that interpolates the weight parameter used in the linear conversion and the weight parameter equivalent amount,
Model learning device including.
請求項2に記載のモデル学習装置であって、
上記重みパラメータ相当量の分布パラメータが上記重みパラメータの分布パラメータと合うように上記重みパラメータ相当量を補正する重みパラメータ補正部をさらに含む、
モデル学習装置。
The model learning device according to claim 2, wherein
A weight parameter correction unit that corrects the weight parameter equivalent amount so that the distribution parameter of the weight parameter equivalent amount matches the distribution parameter of the weight parameter,
Model learning device.
請求項2または3に記載のモデル学習装置であって、
上記重みパラメータ補間部は、線形補間もしくは幾何平均により、上記重みパラメータと上記重みパラメータ相当量との補間を行うものである、
モデル学習装置。
The model learning device according to claim 2 or 3, wherein
The weighting parameter interpolating unit performs interpolation between the weighting parameter and the weighting parameter equivalent amount by linear interpolation or geometric mean.
Model learning device.
請求項2から4のいずれかに記載のモデル学習装置であって、
上記確率モデル生成部は、上記第一学習データに含まれるが上記第二学習データに含まれないミスマッチデータについて、上記重みパラメータを上記非線形変換した後の上記ミスマッチデータの出現確率が変化しないように上記ミスマッチデータの頻度を定めて、上記確率モデルパラメータを生成するものである、
モデル学習装置。
The model learning device according to any one of claims 2 to 4,
The probability model generation unit, for the mismatch data included in the first learning data but not included in the second learning data, so that the appearance probability of the mismatch data after the nonlinear conversion of the weighting parameter does not change. The frequency of the mismatch data is determined, and the probability model parameter is generated.
Model learning device.
請求項2から5のいずれかに記載のモデル学習装置であって、
上記ニューラルネットワークは、上記重みパラメータ相当量を初期値とし、または、上記重みパラメータ相当量が平均となるガウス分布を事前確率として学習したものである、
モデル学習装置。
The model learning device according to any one of claims 2 to 5,
The neural network is one in which the weight parameter equivalent amount is an initial value, or a Gaussian distribution in which the weight parameter equivalent amount is an average is learned as a prior probability.
Model learning device.
ニューラルネットワーク記憶部が、第一ドメインに属する離散値系列の集合である第一学習データから学習した重みパラメータを用いて入力ベクトルに対して線形変換を行い、線形変換後の入力ベクトルに対して非線形変換を行うニューラルネットワークを記憶しており、
確率モデル生成部が、第二ドメインに属する離散値系列の集合である第二学習データから確率モデルを用いて確率モデルパラメータを生成し、
重みパラメータ逆計算部が、上記確率モデルパラメータに対して上記非線形変換の逆計算を行い、重みパラメータ相当量を計算し、
重みパラメータ補間部が、上記線形変換で用いる重みパラメータと上記重みパラメータ相当量との補間を行う、
モデル学習方法。
The neural network storage unit performs a linear transformation on the input vector using the weighting parameter learned from the first learning data, which is a set of discrete value sequences belonging to the first domain, and nonlinearly transforms the input vector after the linear transformation. It stores the neural network that performs the conversion,
The probabilistic model generation unit generates a probabilistic model parameter using a probabilistic model from the second learning data that is a set of discrete value series belonging to the second domain,
The weight parameter inverse calculation unit performs the inverse calculation of the non-linear transformation on the stochastic model parameter to calculate the weight parameter equivalent amount,
A weight parameter interpolating unit interpolates the weight parameter used in the linear conversion and the weight parameter equivalent amount,
Model learning method.
請求項1に記載の音響モデル学習装置もしくは請求項2から6のいずれかに記載のモデル学習装置としてコンピュータを機能させるためのプログラム。   A program for causing a computer to function as the acoustic model learning device according to claim 1 or the model learning device according to any one of claims 2 to 6.
JP2017074365A 2017-04-04 2017-04-04 Acoustic model learning device, model learning device, model learning method, and program Active JP6691501B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017074365A JP6691501B2 (en) 2017-04-04 2017-04-04 Acoustic model learning device, model learning device, model learning method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017074365A JP6691501B2 (en) 2017-04-04 2017-04-04 Acoustic model learning device, model learning device, model learning method, and program

Publications (2)

Publication Number Publication Date
JP2018180045A JP2018180045A (en) 2018-11-15
JP6691501B2 true JP6691501B2 (en) 2020-04-28

Family

ID=64276069

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017074365A Active JP6691501B2 (en) 2017-04-04 2017-04-04 Acoustic model learning device, model learning device, model learning method, and program

Country Status (1)

Country Link
JP (1) JP6691501B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113632165A (en) * 2019-03-28 2021-11-09 索尼集团公司 Information processing apparatus, information processing method, and program
US11423883B2 (en) * 2019-05-06 2022-08-23 Google Llc Contextual biasing for speech recognition

Also Published As

Publication number Publication date
JP2018180045A (en) 2018-11-15

Similar Documents

Publication Publication Date Title
JP6712642B2 (en) Model learning device, method and program
CN112289342B (en) Generating audio using neural networks
US11264044B2 (en) Acoustic model training method, speech recognition method, acoustic model training apparatus, speech recognition apparatus, acoustic model training program, and speech recognition program
US9984683B2 (en) Automatic speech recognition using multi-dimensional models
US20190325859A1 (en) System and methods for adapting neural network acoustic models
KR102167719B1 (en) Method and apparatus for training language model, method and apparatus for recognizing speech
JP6651629B2 (en) Expansion of neural network using external memory
JP6222821B2 (en) Error correction model learning device and program
US11450332B2 (en) Audio conversion learning device, audio conversion device, method, and program
JP5982297B2 (en) Speech recognition device, acoustic model learning device, method and program thereof
US11514925B2 (en) Using a predictive model to automatically enhance audio having various audio quality issues
US11704570B2 (en) Learning device, learning system, and learning method
JP2019159058A (en) Speech recognition system, speech recognition method, learned model
CN111354333B (en) Self-attention-based Chinese prosody level prediction method and system
CN108735199A (en) A kind of adaptive training method and system of acoustic model
US11341413B2 (en) Leveraging class information to initialize a neural network language model
JP6691501B2 (en) Acoustic model learning device, model learning device, model learning method, and program
CN113674733A (en) Method and apparatus for speaking time estimation
GB2607133A (en) Knowledge distillation using deep clustering
Gumelar et al. Bilstm-cnn hyperparameter optimization for speech emotion and stress recognition
JP6633556B2 (en) Acoustic model learning device, speech recognition device, acoustic model learning method, speech recognition method, and program
JP2018141925A (en) Acoustic model learning device and acoustic model learning program
US20220284326A1 (en) Using functions to annotate a syntax tree with real data used to generate an answer to a question
JP6082657B2 (en) Pose assignment model selection device, pose assignment device, method and program thereof
JP2013182260A (en) Language model creation device, voice recognition device and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190626

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200319

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200407

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200410

R150 Certificate of patent or registration of utility model

Ref document number: 6691501

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150