JP7209330B2 - classifier, trained model, learning method - Google Patents
classifier, trained model, learning method Download PDFInfo
- Publication number
- JP7209330B2 JP7209330B2 JP2018142418A JP2018142418A JP7209330B2 JP 7209330 B2 JP7209330 B2 JP 7209330B2 JP 2018142418 A JP2018142418 A JP 2018142418A JP 2018142418 A JP2018142418 A JP 2018142418A JP 7209330 B2 JP7209330 B2 JP 7209330B2
- Authority
- JP
- Japan
- Prior art keywords
- input
- time delay
- ctc
- time
- attention module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Machine Translation (AREA)
- Image Analysis (AREA)
Description
本技術は、入力信号に対してラベルのシーケンスを出力する識別器、当該識別器に向けられた学習済モデル、当該識別器の学習方法に関する。 The present technology relates to a discriminator that outputs a sequence of labels for an input signal, a trained model directed to the discriminator, and a learning method for the discriminator.
音声認識分野において、超深層畳み込みネットワーク(very deep convolutional network)は、従来の深層ニューラルネットワーク(DNN:deep neural network)を大きく上回る性能を示すことが知られている。 In the field of speech recognition, very deep convolutional networks are known to significantly outperform conventional deep neural networks (DNNs).
音声認識タスクに対して、超深層残差時間遅延ニューラルネットワーク(very deep residual time-delay neural network)が提案されている(例えば、非特許文献1参照)。層数の少ないTDNN(time-delay neural network)およびFSMN(feedforward sequential memory networks)とは異なり、超深層残差時間遅延ニューラルネットワークは、再帰フィードバックを用いずに、より長いコンテキスト依存性を学習できる。そのため、BLSTM(bidirectional long short term memory)ネットワークを用いる場合に生じ得る時間遅れなどの問題を回避できる。そのため、音響モデルおよび言語モデルのトレーニングを一体化したE2E(end-to-end)トレーニングへの適用などが有望視されている。 For speech recognition tasks, very deep residual time-delay neural networks have been proposed (see, for example, Non-Patent Document 1). Unlike less layered time-delay neural networks (TDNN) and feedforward sequential memory networks (FSMN), ultra-deep residual time-delay neural networks can learn longer context dependencies without recursive feedback. Therefore, it is possible to avoid problems such as time delay that may occur when using a BLSTM (bidirectional long short term memory) network. Therefore, application to E2E (end-to-end) training that integrates acoustic model and language model training is considered promising.
音声認識のための有効なE2Eフレームワークとして、CTC(connectionist temporal classification)フレームワークを用いたモデルが知られている(例えば、非特許文献2など参照)。CTCフレームワークは、入力される可変長な音声フレームと出力されるラベル(単音(phones)、文字(character)、音節(syllable)などの単位)との間で生じるシーケンスラベリング問題の解決に注力している。CTCのモデル化技術においては、音響モデルパイプラインを大幅に簡素化している。そのため、CTCフレームワークにおいては、フレームレベルでのラベルや初期のGMM-HMM(Gaussian mixture model and hidden Markov model)モデル(音響モデルに相当)を必要としない。 A model using a CTC (connectionist temporal classification) framework is known as an effective E2E framework for speech recognition (see, for example, Non-Patent Document 2). The CTC framework focuses on solving the sequence labeling problem that arises between incoming variable-length speech frames and outgoing labels (units such as phones, characters, syllables, etc.). ing. The CTC modeling technique greatly simplifies the acoustic model pipeline. Therefore, the CTC framework does not require frame-level labels or an initial GMM-HMM (Gaussian mixture model and hidden Markov model) model (corresponding to an acoustic model).
本願発明者らは、先に、超深層残差時間遅延(very deep residual time-delay)構造を用いて、CTCベースのE2Eモデルをトレーニングすることを提案している(例えば、非特許文献3など参照)。 The present inventors have previously proposed training a CTC-based E2E model using a very deep residual time-delay structure (e.g., Non-Patent Document 3). reference).
超深層モデルを規定するパラメータの膨大さは、最適化を複雑化するとともに、汎化性能を低下させるという課題を有している。本願発明者らの研究では、特定のシステムに対して十分にチューニングされた超深層モデルを別のデータ設定をもつシステムにそのまま適用することはできない。これは、優れた性能を発揮する構造を見つけることは容易ではなく、ネットワーク構造のすべての候補について多数の実験を行なう必要がある。 The enormous number of parameters that define an ultradeep model poses the problem of complicating optimization and degrading generalization performance. In our research, a well-tuned ultradeep model for a particular system cannot be directly applied to a system with a different data set. It is not easy to find a structure that exhibits good performance, and it is necessary to conduct numerous experiments on all candidate network structures.
本技術は、対象のシステムに応じて適切なネットワーク構造を提供できるモデルを提供することを目的としている。 The purpose of this technology is to provide a model capable of providing an appropriate network structure according to the target system.
本発明のある局面に従えば、入力信号に対してラベルのシーケンスを出力する識別器が提供される。識別器は、入力信号から所定時間幅のフレームごとに第1の特徴ベクトルを順次生成する入力層と、入力層に引き続く、積層された複数の残差ブロックと、複数の残差ブロックの出力側に接続された出力層とを含む。複数の残差ブロックの各々は、積層された複数の時間遅延層と、複数の時間遅延層をバイパスするショートカット経路と、複数の時間遅延層を通過する経路とショートカット経路との間の重みを調整するアテンションモジュールとを含む。複数の時間遅延層は、入力に対して所定のタイムステップの遅延を与える遅延要素を有している。アテンションモジュールは、対応する残差ブロックに与えられる入力が対応する複数の時間遅延層を通過して得られる結果出力と、当該対応する残差ブロックに与えられる入力とに基づいて、タイムステップごとに重みを更新する。 According to one aspect of the invention, a discriminator is provided that outputs a sequence of labels for an input signal. The discriminator includes an input layer that sequentially generates a first feature vector for each frame of a predetermined time width from an input signal, a plurality of stacked residual blocks following the input layer, and an output side of the plurality of residual blocks. and an output layer connected to . Each of the plurality of residual blocks adjusts weights between the stacked plurality of time delay layers, shortcut paths bypassing the plurality of time delay layers, paths passing through the plurality of time delay layers, and shortcut paths. and an attention module that A plurality of time delay layers has delay elements that provide a predetermined timestep delay to the input. At each time step, the attention module performs an Update weights.
アテンションモジュールは、対応する残差ブロックの出力とショートカット経路とに接続された全結合層と、全結合層に接続されたsoftmax関数とを含むようにしてもよい。 The attention module may include a fully connected layer connected to the output of the corresponding residual block and the shortcut path, and a softmax function connected to the fully connected layer.
アテンションモジュールは、第1の重みと第2の重みの合計が1となるように、複数の時間遅延層を通過する経路に対する第1の重みと、ショートカット経路に対する第2の重みとを算出するようにしてもよい。 The attention module is configured to calculate a first weight for paths through the multiple time delay layers and a second weight for shortcut paths such that the sum of the first weight and the second weight is one. can be
時間遅延層の各々は、入力ベクトルに対して、当該入力ベクトルに対応するフレームである現在フレームに対して、タイムステップだけ時間を戻した過去フレームに対応する第1の内部ベクトルと、タイムステップだけ時間を進めた未来フレームに対応する第2の内部ベクトルとを生成するようにしてもよい。 Each of the time delay layers receives, for an input vector, a first internal vector corresponding to a past frame obtained by moving back a time step from the current frame, which is the frame corresponding to the input vector, and a first internal vector corresponding to the past frame by the time step. A second internal vector corresponding to a future frame advanced in time may be generated.
入力信号は、音声信号であり、識別器は、音声信号に対する音声認識結果を示すラベルを出力するようにしてもよい。 The input signal may be a speech signal, and the discriminator may output a label indicating the speech recognition result for the speech signal.
本発明の別の局面に従えば、入力信号に対してラベルのシーケンスを出力するように、コンピュータを機能させるための学習済モデルが提供される。学習済モデルは、入力信号から所定時間幅のフレームごとに第1の特徴ベクトルを順次生成する入力層と、入力層に引き続く、積層された複数の残差ブロックと、複数の残差ブロックの出力側に接続された出力層とを含む。複数の残差ブロックの各々は、積層された複数の時間遅延層と、複数の時間遅延層をバイパスするショートカット経路と、複数の時間遅延層を通過する経路とショートカット経路との間の重みを調整するアテンションモジュールとを含む。複数の時間遅延層は、入力に対して所定のタイムステップの遅延を与える遅延要素を有している。アテンションモジュールは、対応する残差ブロックに与えられる入力が対応する複数の時間遅延層を通過して得られる結果出力と、当該対応する残差ブロックに与えられる入力とに基づいて、タイムステップごとに重みを更新する、ように構成される。 According to another aspect of the invention, a trained model is provided for operating a computer to output a sequence of labels for an input signal. The trained model includes an input layer that sequentially generates a first feature vector for each frame of a predetermined time width from an input signal, a plurality of stacked residual blocks following the input layer, and outputs of the plurality of residual blocks. and an output layer connected to the side. Each of the plurality of residual blocks adjusts weights between the stacked plurality of time delay layers, shortcut paths bypassing the plurality of time delay layers, paths passing through the plurality of time delay layers, and shortcut paths. and an attention module that A plurality of time delay layers has delay elements that provide a predetermined timestep delay to the input. At each time step, the attention module performs an It is configured to update the weights.
本発明のさらに別の局面に従えば、入力信号に対してラベルのシーケンスを出力する識別器の学習方法が提供される。識別器は、入力信号から所定時間幅のフレームごとに第1の特徴ベクトルを順次生成する入力層と、入力層に引き続く、積層された複数の残差ブロックと、複数の残差ブロックの出力側に接続された出力層とを含む。複数の残差ブロックの各々は、積層された複数の時間遅延層と、複数の時間遅延層をバイパスするショートカット経路とを含む。複数の時間遅延層は、入力に対して所定のタイムステップの遅延を与える遅延要素を有している。学習方法は、トレーニングデータセットを用いて識別器のネットワークを規定するパラメータを決定する第1のトレーニングステップと、識別器に、複数の時間遅延層を通過する経路とショートカット経路との間の重みを調整するアテンションモジュールを付加する付加ステップとを含む。アテンションモジュールは、対応する残差ブロックに与えられる入力が対応する複数の時間遅延層を通過して得られる結果出力と、当該対応する残差ブロックに与えられる入力とに基づいて、タイムステップごとに重みを更新するように構成されている。学習方法は、トレーニングデータセットを用いてアテンションモジュールを規定するパラメータを決定する第2のトレーニングステップを含む。 According to still another aspect of the present invention, there is provided a method of learning a discriminator that outputs a sequence of labels for an input signal. The discriminator includes an input layer that sequentially generates a first feature vector for each frame of a predetermined time width from an input signal, a plurality of stacked residual blocks following the input layer, and an output side of the plurality of residual blocks. and an output layer connected to . Each of the plurality of residual blocks includes a plurality of stacked time delay layers and a shortcut path bypassing the plurality of time delay layers. A plurality of time delay layers has delay elements that provide a predetermined timestep delay to the input. The learning method includes a first training step of using a training data set to determine the parameters that define the network of classifiers; and an adding step of adding the adjusting attention module. At each time step, the attention module performs an Configured to update weights. The learning method includes a second training step of determining parameters defining attention modules using a training data set.
第2のトレーニングステップは、アテンションモジュールを規定するパラメータを含む、識別器のネットワークを規定するすべてのパラメータの値を再度決定するステップを含むようにしてもよい。 The second training step may comprise re-determining the values of all the parameters defining the network of classifiers, including the parameters defining the attention modules.
第2のトレーニングステップは、第1のトレーニングステップにおいて決定されたパラメータを固定した状態で、アテンションモジュールを規定するパラメータのみを決定するステップを含むようにしてもよい。 The second training step may comprise determining only the parameters defining the attention modules, with the parameters determined in the first training step fixed.
学習方法は、アテンションモジュールが付加された識別器に入力信号を与えることで、アテンションモジュールにより算出される重みの値の変化に基づいて、複数の時間遅延層の一部を削除するステップをさらに含むようにしてもよい。 The learning method further includes providing an input signal to a discriminator attached with an attention module to remove a portion of the plurality of time delay layers based on changes in weight values calculated by the attention module. You can also try to
本技術によれば、対象のシステムに応じて適切なネットワーク構造を提供できる。 According to the present technology, it is possible to provide an appropriate network structure according to the target system.
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。 Embodiments of the present invention will be described in detail with reference to the drawings. The same or corresponding parts in the drawings are denoted by the same reference numerals, and the description thereof will not be repeated.
[A.アプリケーション例]
まず、本実施の形態に従う学習済モデルを用いたアプリケーション例について説明する。
[A. Application example]
First, an application example using a trained model according to the present embodiment will be described.
図1は、本実施の形態に従う学習済モデルを用いたアプリケーション例を示す模式図である。図1には、アプリケーション例として、音声認識システムSを示す。音声認識システムSは、音声信号の入力を受けて認識結果を出力する。より具体的には、音声認識システムSは、音声信号の入力を受けて、予め定められた区間(以下、「音声フレーム」とも称す。)ごとの時系列データから特徴ベクトルを抽出する特徴量抽出部2と、特徴量抽出部2からのベクトルの入力を受けてテキストなどの認識結果を出力する認識エンジン4とを含む。
FIG. 1 is a schematic diagram showing an application example using a trained model according to this embodiment. FIG. 1 shows a speech recognition system S as an application example. The speech recognition system S receives an input of a speech signal and outputs a recognition result. More specifically, the speech recognition system S receives an input of a speech signal and extracts a feature vector from time-series data for each predetermined section (hereinafter also referred to as "speech frame"). and a
特徴量抽出部2は、入力される音声信号から音声フレームごとに特徴ベクトルを順次生成する。特徴量抽出部2から出力される特徴ベクトルは、予め定められた次元数を有しており、入力される音声信号の対応する音声フレームに相当する部分の特徴量を反映する。特徴ベクトルは、入力される音声信号の長さに応じて、順次出力されることになる。以下では、このような一連の特徴ベクトルの全部または一部を「音響特徴シーケンス」とも総称する。
The
認識エンジン4は、特徴量抽出部2から出力される音声フレームごとの特徴ベクトルを学習済モデルに入力してテキストを出力する。このように、認識エンジン4は、本実施の形態に従う学習済モデルで構成され、デコーダとして機能する。すなわち、認識エンジン4は、音声認識のためのE2Eフレームワーク(音響モデルおよび言語モデルが一体化されて構成される)であり、音声フレームの入力を受けて対応するテキストを出力する。
The
図2は、図1に示す音声認識システムSの学習方法を説明するための模式図である。図2を参照して、音声信号42と対応するテキスト44とからなるトレーニングデータセット40を用意する。音声信号42を特徴量抽出部2に入力するとともに、特徴量抽出部2により順次生成される特徴ベクトルを認識エンジン4に入力することで、認識エンジン4からの認識結果(テキスト)を得る。認識エンジン4からの認識結果と、入力される音声信号42に対応するラベル(テキスト44)との誤差に基づいて、認識エンジン4を規定するネットワークのパラメータを順次更新することで、ネットワークが最適化される。
FIG. 2 is a schematic diagram for explaining the learning method of the speech recognition system S shown in FIG. Referring to FIG. 2, a
[B.基本ネットワーク構造]
本実施の形態に従う学習済モデルは、以下に説明するような基本ネットワーク構造に対して、アテンションモジュールを適宜付加して学習およびネットワーク構造の最適化を実現する。先に、本実施の形態に従う基本ネットワーク構造について説明する。
[B. Basic network structure]
The trained model according to the present embodiment implements learning and optimization of the network structure by appropriately adding attention modules to the basic network structure described below. First, the basic network structure according to this embodiment will be described.
(b1:概要)
本実施の形態においては、CTCフレームワークを用いたモデルに分類される基本ネットワーク構造(以下、「基本CTCベースドモデル」とも称す。)を用いる。基本CTCベースドモデルは、入力信号に対してラベルのシーケンスを出力する識別器である。以下では、主として、入力信号として音声信号を用いるとともに、基本CTCベースドモデルが音声信号に対する音声認識結果を示すラベルを出力する例について説明するが、基本CTCベースドモデルは、音声認識以外のタスクにも応用が可能である。
(b1: Overview)
In this embodiment, a basic network structure classified as a model using the CTC framework (hereinafter also referred to as "basic CTC-based model") is used. A basic CTC-based model is a discriminator that outputs a sequence of labels for an input signal. In the following, an example in which a speech signal is used as an input signal and the basic CTC-based model outputs a label indicating the speech recognition result for the speech signal will be mainly described. Application is possible.
典型例として、本実施の形態に従う基本CTCベースドモデル1には、入力される音声信号のセンテンスに順次設定されるウィンドウ(10-15個の音声フレームを含む)の特徴量が入力される。ここで、センテンスは、言語的に意味のある区切りを意味し、通常、予め定められた区間長さの音声フレームを複数含むことになる。
As a typical example, the basic CTC-based
本実施の形態に従う基本CTCベースドモデル1からの出力は、パスと称されるフレームレベルのシーケンス(以下、「CTC出力シーケンス」とも称す。)である。出力されるシーケンスは、何らのCTCラベルもないブランク(以下、「φ」とも表現する。)を含む。
The output from the basic CTC-based
図3は、本実施の形態に従う基本CTCベースドモデル1における処理内容を概略するための図である。図3を参照して、入力される音声信号のセンテンスの先頭にウィンドウ(10-15個の音声フレームを含む)を設定するとともに、ウィンドウを複数個所にスライドさせることで、CTC出力を推定する。図3に示すように、基本CTCベースドモデル1への入力は、前進の経路のみを有している。すなわち、過去の情報のみを入力として必要とするので、入力音声の終了を待つ必要がない。
FIG. 3 is a diagram for outlining processing contents in the basic CTC based
以下の説明においては、本実施の形態に従う基本CTCベースドモデル1を「VResTD-CTC」(very deep residual time-delay neural network - CTC)」とも称する。
In the following description, the basic CTC-based
本実施の形態に従う基本CTCベースドモデル1をトレーニングすることで、図1の認識エンジン4を実現する学習済モデルを実現できる。特徴量抽出部2については、経験則などに基づいて、予め設計されてもよい。
By training the basic CTC-based
図4は、本実施の形態に従う基本CTCベースドモデル1のネットワーク構造の一例を示す模式図である。図4を参照して、基本CTCベースドモデル1には、音声信号を予め定められた区間ごとに抽出した時系列データ(音声フレーム)から特徴量抽出部2(図1)が生成する特徴ベクトル(音響特徴シーケンス)が入力される。基本CTCベースドモデル1は、順次入力される特徴ベクトルに対して、対応するテキスト(サブワードシーケンス)を順次出力する。
FIG. 4 is a schematic diagram showing an example of the network structure of the basic CTC-based
より具体的には、基本CTCベースドモデル1は、入力層としての全結合層10(以下、「FC」または「FC layers」とも称す。)と、複数の残差ブロック20と、出力層30とを含む。
More specifically, the basic CTC-based
入力層としての全結合層10は、特徴ベクトルの入力を受けて、必要な次元数の内部ベクトルを生成する。
A fully connected
複数の残差ブロック20は、全結合層10に引き続いて配置される。複数の残差ブロック20は互いに積層されることで、多段の残差ブロック20を構成する。
A plurality of
残差ブロック20の各々は、時間遅延ブロック22を含む。時間遅延ブロック22は、積層された複数の時間遅延層24(「TD layer」とも表現する。)を含む。残差ブロック20の各々は、さらに、時間遅延ブロック22をバイパスするショートカット経路26と、時間遅延ブロック22の出力とショートカット経路26(「Short-cut path」とも表現する。)の出力とを合成する加算器29とを含む。
Each
出力層30は、複数の残差ブロック20の出力側に接続されており、全結合層32と、マッピング関数34とを含む。全結合層32は、最終段の残差ブロック20の出力ノードに結合されており、出力される特徴ベクトルについての確率を正規化して、最も確からしいラベルを出力する。出力層30からはフレームごとにラベルが出力されるので、入力される音声信号に対応してラベルが順次出力されることになる。図4には、ラベルとして単音(なお、単音は、単音(phones)、文字(character)、音節(syllable)などの単位を意味する)を用いる例を示している。フレームごとに順次推定される一連のラベル(単音のシーケンス)がCTC出力シーケンスとなる。基本CTCベースドモデル1の推定結果には、対応するラベルが存在しない、ブランク(図4においては「φ」で示されている。)を含み得る。
The
マッピング関数34は、CTC出力シーケンスから対応するテキスト(サブワードシーケンス)を順次決定する。
A
以上の通り、本実施の形態に従う基本CTCベースドモデル1においては、入力されたフレームごとの音声信号に対する認識結果として、テキスト(サブワードシーケンス)が出力される。
As described above, in the basic CTC-based
(b2:単一の時間遅延層24での処理)
図5は、本実施の形態に従う基本CTCベースドモデル1に含まれる時間遅延層24の処理構造を示す模式図である。図5を参照して、時間遅延層24は、入力に対して所定のタイムステップtiの遅延を与える2つの遅延要素241,242を含む。
(b2: processing in a single time delay layer 24)
FIG. 5 is a schematic diagram showing the processing structure of the
遅延要素241,242の各々は、タイムステップtiだけ入力を遅延させる。時間遅延層24に与えられる入力シーケンスは、遅延要素241においてタイムステップtiの遅延が与えられる。遅延要素241においてタイムステップtiの遅延が与えられた結果出力はさらに遅延要素242に与えられる。遅延要素242は、遅延要素241からの結果出力に対してさらにタイムステップtiの遅延を与える。このような2段の遅延要素によって、タイミングがタイムステップtiずつ異なる3種類のコンテキストが生成される。
Each of the
入力されるフレームを未来コンテキストとし、遅延要素241からの結果出力を現在コンテキストとし、遅延要素242から出力される結果出力を過去コンテキストとすることで、実質的に双方向にタイムステップを拡大できる。
By using the input frame as the future context, the result output from the
図5に示すように、時間遅延層24の各々は、入力シーケンス(入力ベクトル)に対して、当該入力ベクトルに対応するフレームである現在フレームに対して、タイムステップtiだけ時間を戻した過去フレームに対応する過去コンテキスト(第1の内部ベクトル)と、タイムステップtiだけ時間を進めた未来フレームに対応する未来コンテキスト(第2の内部ベクトル)とを生成する。 As shown in FIG. 5, each of the time delay layers 24 returns the time step t to the current frame, which is the frame corresponding to the input sequence (input vector), to the past. A past context (first internal vector) corresponding to the frame and a future context (second internal vector) corresponding to the future frame advanced by time step ti are generated.
本実施の形態に従う基本CTCベースドモデル1において、l(エル)番目の時間遅延層24へ与えられる全体の入力シーケンスHlは、以下の(1)式のように示すことができる。
In the basic CTC-based
まず、いずれのhl
tについても、l番目の時間遅延層24に入力されると、l番目の時間遅延層24についての標準重み行列Wlおよびバイアスblを用いて、以下の(2)式のように線形変換される。
First, when any h l t is input to the l-th
次に、l番目の時間遅延層24におけるタイムステップtでの偏差et
lは、以下の(3)式のように示すことができる。
Next, the deviation e t l at time step t in the l-th
時間遅延層24の各々の出力は、以下の(4)式のように示すことができる。
Each output of the
なお、上述の(4)式においては、残差ブロック20の活性化関数として正規化線形関数(ReLU:rectified linear unit)を用いる例を示すが、これに限らず、任意の活性化関数を用いることができる。以下の説明では、正規化線形関数を「ReLU」とも称す。
In the above equation (4), an example of using a rectified linear unit (ReLU) as the activation function of the
(b3:残差ブロック20での処理)
積層された複数の時間遅延層24からなる残差ブロック20全体で見ると、多層変換fiの出力と多層変換fiをバイパスするショートカット出力との結合(加算器29の結果)が出力されることになる。多層変換fiは、時間遅延層24および活性化関数(ReLU)を直列結合した関数である。
(b3: Processing in residual block 20)
Looking at the entire
複数の残差ブロック20を互いに積層したネットワークは、アンサンブルネットワークのような振る舞いを見せる。
A network in which multiple
図6は、図4に示すネットワーク構造のうち3層の残差ブロック20からなるネットワーク構造を採用した場合と等価なネットワーク構造の一例を示す模式図である。図6(A)に示すネットワーク構造は、ショートカット経路26および合成する加算器29を展開することにより、図6(B)に示す等価ネットワーク構造として表現できる。図6(B)に示すように、異なる数の残差ブロック20を通過する経路が複数(図6では8つ)並列に存在することになる。この結果、異なるすべてのタイムステップの遅延が与えられた結果が最終的に結合される。
FIG. 6 is a schematic diagram showing an example of a network structure equivalent to the network structure shown in FIG. The network structure shown in FIG. 6A can be expressed as an equivalent network structure shown in FIG. As shown in FIG. 6(B), a plurality of paths (eight in FIG. 6) passing through different numbers of
図4および図6に示す基本CTCベースドモデル1においては、最終の残差ブロック20からのすべての出力は、所定時間に亘る他の残差ブロック20からの出力を含むことになる。例えば、3層の残差ブロック20からなる基本CTCベースドモデル1を想定すると、最終の残差ブロック20からのあるタイムステップにおける出力y3
tは、以下の(6)式のように示すことができる。
In the basic CTC-based
[C.改良ネットワーク構造]
次に、本実施の形態に従う改良ネットワーク構造について説明する。本実施の形態に従う改良ネットワーク構造は、上述の図4および図6に示される基本CTCベースドモデル1を構成する残差ブロック20に改良を加えたものに相当する。以下、「基本CTCベースドモデル」との対比として「改良CTCベースドモデル」とも称す。なお、「基本CTCベースドモデル」と「改良CTCベースドモデル」とを区別しない文脈においては、単に「CTCベースドモデル」と総称することもある。
[C. Improved network structure]
An improved network structure according to this embodiment will now be described. The improved network structure according to the present embodiment corresponds to the
図7は、本実施の形態に従う改良CTCベースドモデルのネットワーク構造の要部を示す模式図である。図7(A)は、本実施の形態に従う基本CTCベースドモデルの残差ブロック20の構造例を示し、図7(B)は、本実施の形態に従う改良CTCベースドモデルの残差ブロック20Aの構造例を示す。
FIG. 7 is a schematic diagram showing the main part of the network structure of the improved CTC-based model according to this embodiment. FIG. 7A shows an example structure of the
図7(A)と図7(B)とを比較して、残差ブロック20Aは、残差ブロック20に比較して、アテンションモジュール28(Attention module)をさらに含む。アテンションモジュール28は、残差ブロック20Aの出力層の後段に配置される。アテンションモジュール28は、残差ブロック20Aに含まれる2つの経路(ショートカット経路26側の経路および時間遅延ブロック22側の経路)に対する重みを調整する。このようなアテンションモジュール28を採用することで、基本CTCベースドモデル1をより動的に振る舞わせることができるため、学習性能および識別性能を高めることができる。
Comparing FIGS. 7A and 7B,
本実施の形態において、アテンションモジュール28は、時間遅延を実現する残差ブロック(時間遅延層24)の後段に配置されることで後述するような顕著な効果を奏する。
In the present embodiment, the
以下の説明においては、以下の(7)式に示すような、それぞれの経路の重みを変更するためのアテンションスコアαt i(ベクトル量)を用いる。 In the following description, an attention score α t i (vector quantity) for changing the weight of each route as shown in the following equation (7) is used.
アテンションスコアαt
i(ベクトル量)は、重みαt
iおよび重みβt
i(=1-αt
i)を要素として含む。重みαt
iは、任意のタイムステップtにおいて、i番目の残差ブロック20Aのショートカット経路26を伝達されるデータに対するスケールファクタを意味し、重みβt
i(=1-αt
i)は、任意のタイムステップtにおいて、i番目の残差ブロック20Aの時間遅延ブロック22を伝達されるデータに対するスケールファクタを意味する。
The attention score α t i (vector quantity) includes weight α t i and weight β t i (=1−α t i ) as elements. The weight α t i means the scale factor for the data transmitted through the
より具体的には、図7(B)に示すように、アテンションモジュール28は、全結合層282と、softmax関数284と、乗算器286,288とを含む。
More specifically, as shown in FIG. 7B, the
アテンションモジュール28の全結合層282は、対応する残差ブロック20Aの出力とショートカット経路26とに接続される。softmax関数284は、全結合層282に接続される。
A fully connected
時間遅延ブロック22からの出力経路285は乗算器286に入力され、乗算器286において重みβt
iを乗じられた上で加算器29に出力される。一方、ショートカット経路26は乗算器288に入力され、乗算器288において重みαt
iを乗じられた上で加算器29に出力される。なお、αt
i+βt
i=1である。このように、アテンションモジュール28は、重みαt
i(第1の重み)と重みβt
i(第2の重み)の合計が1となるように、複数の時間遅延層24を通過する経路に対する重みαt
i(第1の重み)と、ショートカット経路26に対する重みβt
i(第2の重み)とを算出する。
重みαt
iおよび重みβt
iが動的に変更されることで、残差ブロック20Aからの出力に含まれる、多層変換fiの出力と多層変換fiをバイパスするショートカット出力との比率を動的に調整できる。
The weights α t i and the weights β t i are dynamically changed so that the ratio between the output of the multi-layered transform f i and the shortcut output bypassing the multi-layered transform f i included in the output from the
このように、アテンションモジュール28は、複数の時間遅延層24を通過する出力経路285とショートカット経路26との間の重みを調整する。
Thus,
図7に示すような残差ブロック20Aからの出力は、上述の(5)式に示す関係式に対する重み付けを変更することで、以下の(8)式のように定義できる。
The output from the
このように、アテンションモジュール28は、対応する残差ブロック20Aに与えられる入力が対応する複数の時間遅延層24を通過して得られる結果出力と、当該対応する残差ブロック20Aに与えられる入力とに基づいて、タイムステップごとに重みαt
iおよび重みβt
i(スケールファクタ)を更新する。
In this way,
より具体的には、重みαt
iおよび重みβt
iは、全結合層282およびsoftmax関数284を用いて、以下の(9)式に従って算出される。
More specifically, the weight α t i and the weight β t i are calculated using the fully connected
[D.ハードウェア構成]
次に、本実施の形態に従う学習済モデルを用いた音声認識システムSを実現するためのハードウェア構成の一例について説明する。
[D. Hardware configuration]
Next, an example of a hardware configuration for realizing speech recognition system S using a trained model according to this embodiment will be described.
図8は、本実施の形態に従う音声認識システムSを実現するハードウェア構成の一例を示す模式図である。音声認識システムSは、典型的には、コンピュータの一例である情報処理装置500を用いて実現される。
FIG. 8 is a schematic diagram showing an example of a hardware configuration for realizing speech recognition system S according to this embodiment. The speech recognition system S is typically implemented using an
図8を参照して、音声認識システムSを実現する情報処理装置500は、主要なハードウェアコンポーネントとして、CPU(central processing unit)502と、GPU(graphics processing unit)504と、主メモリ506と、ディスプレイ508と、ネットワークインターフェイス(I/F:interface)510と、二次記憶装置512と、入力デバイス522と、光学ドライブ524とを含む。これらのコンポーネントは、内部バス528を介して互いに接続される。
Referring to FIG. 8, an
CPU502および/またはGPU504は、後述するような各種プログラムを実行することで、本実施の形態に従う音声認識システムSの実現に必要な処理を実行するプロセッサである。CPU502およびGPU504は、複数個配置されてもよいし、複数のコアを有していてもよい。
主メモリ506は、プロセッサ(CPU502および/またはGPU504)が処理を実行するにあたって、プログラムコードやワークデータなどを一時的に格納(あるいは、キャッシュ)する記憶領域であり、例えば、DRAM(dynamic random access memory)やSRAM(static random access memory)などの揮発性メモリデバイスなどで構成される。
The
ディスプレイ508は、処理に係るユーザインターフェイスや処理結果などを出力する表示部であり、例えば、LCD(liquid crystal display)や有機EL(electroluminescence)ディスプレイなどで構成される。
A
ネットワークインターフェイス510は、インターネット上またはイントラネット上の任意の情報処理装置などとの間でデータを遣り取りする。ネットワークインターフェイス510としては、例えば、イーサネット(登録商標)、無線LAN(local area network)、Bluetooth(登録商標)などの任意の通信方式を採用できる。
A
入力デバイス522は、ユーザからの指示や操作などを受付けるデバイスであり、例えば、キーボード、マウス、タッチパネル、ペンなどで構成される。また、入力デバイス522は、学習およびデコーディングに必要な音声信号を収集するための集音デバイスを含んでいてもよいし、集音デバイスにより収集された音声信号の入力を受付けるためのインターフェイスを含んでいてもよい。
The
光学ドライブ524は、CD-ROM(compact disc read only memory)、DVD(digital versatile disc)などの光学ディスク526に格納されている情報を読出して、内部バス528を介して他のコンポーネントへ出力する。光学ディスク526は、非一過的(non-transitory)な記録媒体の一例であり、任意のプログラムを不揮発的に格納した状態で流通する。光学ドライブ524が光学ディスク526からプログラムを読み出して、二次記憶装置512などにインストールすることで、コンピュータが情報処理装置500として機能するようになる。したがって、本発明の主題は、二次記憶装置512などにインストールされたプログラム自体、または、本実施の形態に従う機能や処理を実現するためのプログラムを格納した光学ディスク526などの記録媒体でもあり得る。
The
図8には、非一過的な記録媒体の一例として、光学ディスク526などの光学記録媒体を示すが、これに限らず、フラッシュメモリなどの半導体記録媒体、ハードディスクまたはストレージテープなどの磁気記録媒体、MO(magneto-optical disk)などの光磁気記録媒体を用いてもよい。
FIG. 8 shows an optical recording medium such as an
二次記憶装置512は、コンピュータを情報処理装置500として機能させるために必要なプログラムおよびデータを格納する。例えば、ハードディスク、SSD(solid state drive)などの不揮発性記憶装置で構成される。
より具体的には、二次記憶装置512は、図示しないOS(operating system)の他、学習処理を実現するためのトレーニングプログラム514と、学習対象のネットワーク構造を定義するモデル定義データ516と、学習済モデルを規定するためのネットワークパラメータ518と、トレーニングデータセット520とを格納している。
More specifically, the
トレーニングプログラム514は、プロセッサ(CPU502および/またはGPU504)により実行されることで、ネットワークパラメータ518を決定するための学習処理を実現する。モデル定義データ516は、学習対象となる基本CTCベースドモデル1および改良CTCベースドモデル1Aのネットワーク構造を構成するコンポーネントおよび接続関係などを定義するための情報を含む。ネットワークパラメータ518は、学習対象のモデル(ネットワーク)を構成する要素ごとのパラメータを含む。ネットワークパラメータ518に含まれる各パラメータの値は、トレーニングプログラム514の実行により最適化される。トレーニングデータセット520は、例えば、後述するようなCSJに含まれるデータセットを用いることができる。例えば、学習対象の基本CTCベースドモデル1および改良CTCベースドモデル1Aが音声認識タスクに向けられたものである場合には、トレーニングデータセット520は、講演などの音声信号と、当該音声信号に対応する発話内容を示す転記テキストとを含む。
プロセッサ(CPU502および/またはGPU504)がプログラムを実行する際に必要となるライブラリや機能モジュールの一部を、OSが標準で提供するライブラリまたは機能モジュールにより代替してもよい。この場合には、プログラム単体では、対応する機能を実現するために必要なプログラムモジュールのすべてを含むものにはならないが、OSの実行環境下にインストールされることで、目的の処理を実現できる。このような一部のライブラリまたは機能モジュールを含まないプログラムであっても、本発明の技術的範囲に含まれ得る。
Some of the libraries and functional modules required when the processor (
また、これらのプログラムは、上述したようないずれかの記録媒体に格納されて流通するだけでなく、インターネットまたはイントラネットを介してサーバ装置などからダウンロードすることで配布されてもよい。 Moreover, these programs may be distributed by being stored in any recording medium as described above and not only being distributed, but also being downloaded from a server device or the like via the Internet or an intranet.
図8には、単一のコンピュータを用いて情報処理装置500を構成する例を示すが、これに限らず、コンピュータネットワークを介して接続された複数のコンピュータが明示的または黙示的に連携して、情報処理装置500および情報処理装置500を含む音声認識システムSを実現するようにしてもよい。
FIG. 8 shows an example in which the
プロセッサ(CPU502および/またはGPU504)がプログラムを実行することで実現される機能の全部または一部を、集積回路などのハードワイヤード回路(hard-wired circuit)を用いて実現してもよい。例えば、ASIC(application specific integrated circuit)やFPGA(field-programmable gate array)などを用いて実現してもよい。
All or part of the functions realized by the processor (
当業者であれば、本発明が実施される時代に応じた技術を適宜用いて、本実施の形態に従う情報処理装置500を実現できるであろう。
A person skilled in the art will be able to realize
説明の便宜上、同一の情報処理装置500を用いて、学習(CTCベースドモデルの構築)およびデコーディング(CTCベースドモデルを含むモデルによる音声認識)を実行する例を示したが、学習およびデコーディングを異なるハードウェアを用いて実現してもよい。
For convenience of explanation, the same
[E.学習方法]
次に、本実施の形態に従う改良CTCベースドモデル1Aの学習方法について説明する。
[E. Learning method]
Next, a learning method for improved CTC-based
(e1:概要)
本実施の形態に従うCTCベースドモデルは、E2Eフレームワークを提供するものであり、音響モデルおよび言語モデルを別々に学習する必要はない。すなわち、CTCベースドモデルは、入力される音声信号に対応するテキストを直接出力するものであり、学習処理においては、音声信号と対応するテキストとからなるトレーニングデータセットを用いる。
(e1: Overview)
The CTC-based model according to this embodiment provides an E2E framework and does not require separate training of acoustic and language models. That is, the CTC-based model directly outputs the text corresponding to the input speech signal, and uses a training data set consisting of the speech signal and the corresponding text in the learning process.
本実施の形態に従うCTCベースドモデルの学習処理は、ニューラルネットワークの一般的な学習処理と同様に、教師有り学習を用いることができる。具体的には、CTCベースドモデルを構成する各コンポーネントのパラメータに任意の初期値を設定する。その上で、トレーニングデータセットに含まれる音声信号(音響特徴シーケンス)をCTCベースドモデルに順次入力するとともに、CTCベースドモデルから順次出力されるCTC出力シーケンス(テキスト)と入力された音声信号に対応するテキストとの誤差を算出し、その算出した誤差に基づいて、CTCベースドモデルを構成する各コンポーネントのパラメータを逐次更新する。 The learning process of the CTC-based model according to the present embodiment can use supervised learning in the same way as the general learning process of neural networks. Specifically, arbitrary initial values are set for the parameters of each component that constitutes the CTC-based model. Then, the speech signal (acoustic feature sequence) included in the training data set is sequentially input to the CTC-based model, and the CTC output sequence (text) sequentially output from the CTC-based model and the input speech signal are matched. The error with the text is calculated, and the parameter of each component constituting the CTC-based model is successively updated based on the calculated error.
このような学習処理によって、トレーニングデータからCTCベースドモデルに対応する学習済モデルを構築できる。 Through such learning processing, a trained model corresponding to the CTC-based model can be constructed from the training data.
本実施の形態においては、改良CTCベースドモデル1Aを適切に学習させることで、音声認識性能を改善することができる。上述したようなアテンションモジュール28を含む改良CTCベースドモデル1Aに特徴ベクトルを入力することで、任意のタイムステップtにおける、それぞれのショートカット経路26についてのスケールファクタ(αt
1,αt
2,…αt
i,…αt
N)を取得できる。
In this embodiment, the speech recognition performance can be improved by appropriately learning the improved CTC-based
本願発明者らの研究によれば、それぞれの残差ブロック20Aにおいて、時間遅延ブロック22をデータが通過する経路の重みと、ショートカット経路26をデータが通過する経路の重みとは、適用されるシステムによって様々である。
According to research by the inventors, in each
そこで、本実施の形態においては、以下に示すような、再トレーニング法(Retrain-based method)、切り落とし法(Prune-based method)またはネットワーク再構成法という学習方法を採用できる。 Therefore, in this embodiment, a learning method such as a retrain-based method, a prune-based method, or a network reconstruction method can be employed as described below.
(e2:再トレーニング法)
再トレーニング法は、超深層畳み込みネットワークである改良CTCベースドモデル1Aを規定するすべてのパラメータ(アテンションモジュール28のパラメータも含む)を再度トレーニングする方法である。より具体的には、基本CTCベースドモデル1をトレーニングすることで学習済モデルを取得し、この取得された学習済モデルに対して、アテンションモジュール28を付加して改良CTCベースドモデル1Aを構成した上で、再度トレーニングを実行する。
(e2: retraining method)
The retraining method is a method of retraining all parameters (including the
基本CTCベースドモデル1および改良CTCベースドモデル1Aの両方をトレーニングしなければならないので、トレーニングに要する時間は約2倍になるが、音声認識性能を確実に向上させることができる。
Since both the basic CTC-based
なお、スケールファクタ(αt 1,αt 2,…αt i,…αt N)は、タイムステップtごとに変化することになる。 Note that the scale factors (α t 1 , α t 2 , . . . α t i , . . . α t N ) change at each time step t.
図9は、本実施の形態に従う改良CTCベースドモデル1Aの学習方法(再トレーニング法)の処理手順を示すフローチャートである。図9に示す各ステップは、典型的には、情報処理装置500のプロセッサ(CPU502および/またはGPU504)がトレーニングプログラム514を実行することで実現される。
FIG. 9 is a flow chart showing a processing procedure of a learning method (retraining method) for improved CTC-based
図9を参照して、情報処理装置500には、音声信号42と対応するテキスト44とからなるトレーニングデータセット40が入力される(ステップS100)。情報処理装置500は、基本CTCベースドモデル1を規定するパラメータの初期値をランダムに決定する(ステップS102)。
Referring to FIG. 9,
情報処理装置500は、トレーニングデータセット40に含まれる音声信号42からフレームごとに特徴ベクトルを生成する(ステップS104)。そして、情報処理装置500は、生成した特徴ベクトルを基本CTCベースドモデル1に入力して推定結果を算出する(ステップS106)。
The
情報処理装置500は、算出された推定結果が予め定められた数に到達したか否かを判断する(ステップS108)。算出された推定結果が予め定められた数に到達していなければ(ステップS108においてNO)、ステップS104以下の処理が繰返される。
The
算出された推定結果が予め定められた数に到達していれば(ステップS108においてYES)、情報処理装置500は、算出された一連の推定結果(出力シーケンス)と対応するテキスト44(ラベルシーケンス)との間の誤差に基づいて、学習処理の収束条件が満たされているか否かを判断する(ステップS110)。
If the calculated estimation results have reached a predetermined number (YES in step S108),
学習処理の収束条件が満たされていなければ(ステップS110においてNO)、情報処理装置500は、ミニバッチとしてまとめて算出された一連の推定結果(出力シーケンス)と対応するテキスト44(ラベルシーケンス)との間の誤差に基づいて、基本CTCベースドモデル1を規定するパラメータの値を更新し(ステップS112)、ステップS104以下の処理を繰返す。
If the convergence condition of the learning process is not satisfied (NO in step S110), the
これに対して、学習処理の収束条件が満たされていれば(ステップS110においてYES)、現在のパラメータを学習結果として出力する(ステップS114)。すなわち、現在のパラメータにより規定される基本CTCベースドモデル1が学習済モデルとして出力される。
On the other hand, if the convergence condition of the learning process is satisfied (YES in step S110), the current parameters are output as the learning result (step S114). That is, the basic CTC-based
上述のステップS100~S114において、情報処理装置500は、トレーニングデータセット40を用いて基本CTCベースドモデル1(識別器)のネットワークを規定するパラメータを決定する第1のトレーニングステップを実行する。
In the steps S100 to S114 described above, the
続いて、情報処理装置500は、学習済の基本CTCベースドモデル1に対してアテンションモジュール28を付加して改良CTCベースドモデル1Aを生成する(ステップS116)。すなわち、情報処理装置500は、基本CTCベースドモデル1(識別器)に、複数の時間遅延層24を通過する経路とショートカット経路26との間の重みを調整するアテンションモジュール28を付加する付加ステップを実行する。
Subsequently, the
情報処理装置500は、改良CTCベースドモデル1Aに付加されたアテンションモジュール28のパラメータの初期値をランダムに決定する(ステップS118)。そして、再度トレーニングを開始する。
The
具体的には、情報処理装置500は、トレーニングデータセット40に含まれる音声信号42からフレームごとに特徴ベクトルを生成する(ステップS120)。そして、情報処理装置500は、生成した特徴ベクトルを改良CTCベースドモデル1Aに入力して推定結果を算出する(ステップS122)。
Specifically, the
情報処理装置500は、算出された推定結果が予め定められた数に到達したか否かを判断する(ステップS124)。算出された推定結果が予め定められた数に到達していなければ(ステップS124においてNO)、ステップS120以下の処理が繰返される。
The
算出された推定結果が予め定められた数に到達していれば(ステップS124においてYES)、情報処理装置500は、算出された一連の推定結果(出力シーケンス)と対応するテキスト44(ラベルシーケンス)との間の誤差に基づいて、学習処理の収束条件が満たされているか否かを判断する(ステップS126)。
If the calculated estimation results have reached a predetermined number (YES in step S124),
学習処理の収束条件が満たされていなければ(ステップS126においてNO)、情報処理装置500は、ミニバッチとしてまとめて算出された一連の推定結果(出力シーケンス)と対応するテキスト44(ラベルシーケンス)との間の誤差に基づいて、改良CTCベースドモデル1Aを規定するパラメータの値を更新し(ステップS128)、ステップS120以下の処理を繰返す。
If the convergence condition of the learning process is not satisfied (NO in step S126), the
これに対して、学習処理の収束条件が満たされていれば(ステップS126においてYES)、現在のパラメータを学習結果として出力する(ステップS130)。すなわち、現在のパラメータにより規定される改良CTCベースドモデル1Aが学習済モデルとして出力される。そして、処理は終了する。
On the other hand, if the convergence condition of the learning process is satisfied (YES in step S126), the current parameters are output as the learning result (step S130). That is, the improved CTC-based
上述のステップS118~S130において、情報処理装置500は、トレーニングデータセット40を用いてアテンションモジュール28を規定するパラメータを決定する第2のトレーニングステップを実行する。この第2のトレーニングステップにおいて、情報処理装置500は、アテンションモジュール28を規定するパラメータを含む、改良CTCベースドモデル1A(識別器)のネットワークを規定するすべてのパラメータの値を再度決定することになる。
In steps S118-S130 described above, the
このようにパラメータ全体の決定処理を2回実行することで、高い識別精度を実現できる。 By executing the process of determining all parameters twice in this manner, high identification accuracy can be achieved.
(e3:切り落とし法)
上述の再トレーニング法では、改良CTCベースドモデル1Aを規定するすべてのパラメータ(アテンションモジュール28のパラメータも含む)を更新対象としたが、切り落とし法では、生成された学習済モデルのパラメータについては固定した上で、より少ないトレーニングデータでアテンションモジュール28のパラメータのみをトレーニングするようにしてもよい。
(e3: clipping method)
In the above-described retraining method, all parameters that define the improved CTC-based
アテンションモジュール28のパラメータのみをトレーニングすることで、学習処理に要する時間を短縮できる。
By training only the parameters of the
図10は、本実施の形態に従う改良CTCベースドモデル1Aの学習方法(切り落とし法)の処理手順を示すフローチャートである。図10に示す各ステップは、典型的には、情報処理装置500のプロセッサ(CPU502および/またはGPU504)がトレーニングプログラム514を実行することで実現される。図10に示す処理のうち、図9に示す処理と同一のものは、同一のステップ番号を付している。
FIG. 10 is a flow chart showing a processing procedure of a learning method (clipping method) for improved CTC-based
図10を参照して、情報処理装置500には、音声信号42と対応するテキスト44とからなるトレーニングデータセット40が入力される(ステップS100)。情報処理装置500は、基本CTCベースドモデル1を規定するパラメータの初期値をランダムに決定する(ステップS102)。
Referring to FIG. 10,
情報処理装置500は、トレーニングデータセット40に含まれる音声信号42からフレームごとに特徴ベクトルを生成する(ステップS104)。そして、情報処理装置500は、生成した特徴ベクトルを基本CTCベースドモデル1に入力して推定結果を算出する(ステップS106)。
The
情報処理装置500は、算出された推定結果が予め定められた数に到達したか否かを判断する(ステップS108)。算出された推定結果が予め定められた数に到達していなければ(ステップS108においてNO)、ステップS104以下の処理が繰返される。
The
算出された推定結果が予め定められた数に到達していれば(ステップS108においてYES)、情報処理装置500は、算出された一連の推定結果(出力シーケンス)と対応するテキスト44(ラベルシーケンス)との間の誤差に基づいて、学習処理の収束条件が満たされているか否かを判断する(ステップS110)。
If the calculated estimation results have reached a predetermined number (YES in step S108),
学習処理の収束条件が満たされていなければ(ステップS110においてNO)、情報処理装置500は、算出された一連の推定結果(出力シーケンス)と対応するテキスト44(ラベルシーケンス)との間の誤差に基づいて、基本CTCベースドモデル1を規定するパラメータの値を更新し(ステップS112)、ステップS104以下の処理を繰返す。
If the convergence condition of the learning process is not satisfied (NO in step S110), the
これに対して、学習処理の収束条件が満たされていれば(ステップS110においてYES)、現在のパラメータを学習結果として出力する(ステップS114)。すなわち、現在のパラメータにより規定される基本CTCベースドモデル1が学習済モデルとして出力される。
On the other hand, if the convergence condition of the learning process is satisfied (YES in step S110), the current parameters are output as the learning result (step S114). That is, the basic CTC-based
上述のステップS100~S114において、情報処理装置500は、トレーニングデータセット40を用いて基本CTCベースドモデル1(識別器)のネットワークを規定するパラメータを決定する第1のトレーニングステップを実行する。
In the steps S100 to S114 described above, the
続いて、情報処理装置500は、学習済の基本CTCベースドモデル1に対してアテンションモジュール28を付加して改良CTCベースドモデル1Aを生成する(ステップS116)。すなわち、情報処理装置500は、基本CTCベースドモデル1(識別器)に、複数の時間遅延層24を通過する経路とショートカット経路26との間の重みを調整するアテンションモジュール28を付加する付加ステップを実行する。
Subsequently, the
情報処理装置500は、改良CTCベースドモデル1Aに付加されたアテンションモジュール28のパラメータの初期値をランダムに決定する(ステップS118)。そして、アテンションモジュール28に対するトレーニングを開始する。
The
具体的には、情報処理装置500は、基本CTCベースドモデル1のトレーニングに用いたトレーニングデータセット40の一部からなる縮小トレーニングデータセット40Sを取得する(ステップS119)。そして、情報処理装置500は、縮小トレーニングデータセット40Sに含まれる音声信号42からフレームごとに特徴ベクトルを生成する(ステップS121)。そして、情報処理装置500は、生成した特徴ベクトルを改良CTCベースドモデル1Aに入力して推定結果を算出する(ステップS122)。
Specifically, the
情報処理装置500は、算出された推定結果が予め定められた数に到達したか否かを判断する(ステップS124)。算出された推定結果が予め定められた数に到達していなければ(ステップS124においてNO)、ステップS120以下の処理が繰返される。
The
算出された推定結果が予め定められた数に到達していれば(ステップS124においてYES)、情報処理装置500は、算出された一連の推定結果(出力シーケンス)と対応するテキスト44(ラベルシーケンス)との間の誤差に基づいて、学習処理の収束条件が満たされているか否かを判断する(ステップS126)。
If the calculated estimation results have reached a predetermined number (YES in step S124),
学習処理の収束条件が満たされていなければ(ステップS126においてNO)、情報処理装置500は、算出された一連の推定結果(出力シーケンス)と対応するテキスト44(ラベルシーケンス)との間の誤差に基づいて、改良CTCベースドモデル1Aに含まれるアテンションモジュール28を規定するパラメータの値を更新し(ステップS129)、ステップS120以下の処理を繰返す。
If the convergence condition of the learning process is not satisfied (NO in step S126), the
これに対して、学習処理の収束条件が満たされていれば(ステップS126においてYES)、現在のパラメータを学習結果として出力する(ステップS130)。すなわち、現在のパラメータにより規定される改良CTCベースドモデル1Aが学習済モデルとして出力される。そして、処理は終了する。
On the other hand, if the convergence condition of the learning process is satisfied (YES in step S126), the current parameters are output as the learning result (step S130). That is, the improved CTC-based
上述のステップS118~S130において、情報処理装置500は、トレーニングデータセット40を用いてアテンションモジュール28を規定するパラメータを決定する第2のトレーニングステップを実行する。この第2のトレーニングステップにおいて、情報処理装置500は、第1のトレーニングステップにおいて決定されたパラメータ(基本CTCベースドモデル1を規定するパラメータ)を固定した状態で、アテンションモジュール28を規定するパラメータのみを決定する処理を実行する。
In steps S118-S130 described above, the
このように、基本CTCベースドモデル1を規定するパラメータを固定することで、第2のトレーニングを短時間で実現できる。
By fixing the parameters defining the basic CTC-based
(e4:ネットワーク再構成法)
本実施の形態に従う改良CTCベースドモデル1Aのアテンションモジュール28が示す各残差ブロック20Aのアテンションスコアあるいはスケールファクタ(重み)の平均値は、データを伝達可能なすべての経路からの情報を示すことになる。
(e4: network reconfiguration method)
The average value of the attention score or scale factor (weight) of each
図11は、本実施の形態に従う改良CTCベースドモデル1Aにおけるデータ伝達の分布例を示す図である。図11に示す例では、1番目の残差ブロック20Aにおいては、データはショートカット経路26を主体的に通過し、2番目以降の残差ブロック20Aにおいては、データは時間遅延ブロック22を主体的に通過していることが分かる。
FIG. 11 is a diagram showing an example distribution of data transfer in improved CTC-based
このような改良CTCベースドモデル1Aにおけるデータ伝達の状態を事前知識として利用することで、改良CTCベースドモデル1Aのネットワーク構造を改良し得る。ネットワーク構造の改良によって、音声認識性能も向上させることができる。
The network structure of the improved CTC-based
例えば、i番目の残差ブロック20Aについての重みαt
iを2値化(「0」または「1」)することで、ネットワーク構造自体をチューニングできる。すなわち、重みαt
iが「1」であれば、対応する残差ブロック20Aの時間遅延ブロック22にはデータが伝達されないので、時間遅延ブロック22を削除してもよいと判断できる。一方、重みαt
iが「0」であれば、ショートカット経路26を削除してもよいと判断できる。
For example, the network structure itself can be tuned by binarizing (“0” or “1”) the weight α t i for the i-th
このような重みαt iを2値化する方法としては、トレーニングデータセットの一部からなるデータセットを用いて順次生成される特徴ベクトルに対して、タイムステップごとに算出される重みαt iの代表値(平均値、最大値、最小値、中間値など)が予め定められたしきい値を超えるか否かに基づいて決定できる。重みαt iの二値化に用いられるデータセットは、例えば、後述するような開発データセット(CSJ-Dev)の音声部分を用いることができる。 As a method for binarizing such weights α t i , the weights α t i calculated for each time step are applied to feature vectors sequentially generated using a data set consisting of a part of the training data set. can be determined based on whether a representative value (average, maximum, minimum, median, etc.) of exceeds a predetermined threshold. The data set used for binarizing the weights α t i can be, for example, the speech portion of the development data set (CSJ-Dev) described later.
図12は、本実施の形態に従う改良CTCベースドモデル1Aの学習方法(ネットワーク再構成法)の処理手順を説明するための図である。まず、図12(A)に示すように、基本CTCベースドモデル1を通常のトレーニングデータセットを用いてトレーニングする。続いて、図12(B)に示すように、基本CTCベースドモデル1にアテンションモジュール28を追加して、通常のトレーニングの一部からなる縮小トレーニングデータセットを用いてアテンションモジュール28をトレーニングする。
FIG. 12 is a diagram for explaining a processing procedure of a learning method (network reconstruction method) for improved CTC-based
基本CTCベースドモデル1に対応するパラメータおよびアテンションモジュール28に対応するパラメータをトレーニングした後、改良CTCベースドモデル1Aに対して、開発データセットなどの音声部分から生成される特徴ベクトルを入力し、各残差ブロック20Aにおけるスケールファクタの時間的変化を算出する。各残差ブロック20Aにおいては、次の図13に示すような時間的変化を算出できる。
After training the parameters corresponding to the basic CTC-based
図13は、本実施の形態に従う改良CTCベースドモデル1Aを用いて算出されるスケールファクタの時間的変化の一例を示す図である。図13に示すスケールファクタである重みαt
1の値は、入力される音節ごとに大きく変化している。
FIG. 13 is a diagram showing an example of temporal changes in scale factors calculated using improved CTC-based
各残差ブロック20Aについて算出されるスケールファクタの時間的変化に基づいて、各残差ブロック20Aにおけるデータの伝達状態を評価する。このデータの伝達状態は、各残差ブロック20Aにおける安定度に対応していると考えることもできる。そして、対応するスケールファクタの時間的変化が予め定められた条件を満たした残差ブロック20Aについては、図12(C)に示すように、改良CTCベースドモデル1Aから削除される。
Based on the temporal change in the scale factor calculated for each
最終的に、状況に応じていくつかの時間遅延ブロック22が削除された後の改良CTCベースドモデル1Aを規定するすべてのパラメータ(アテンションモジュール28のパラメータも含む)を再度のトレーニングにより決定する。
Finally, all the parameters (including the
このように、アテンションモジュール28が付加された改良CTCベースドモデル1A(識別器)に入力信号を与えることで、アテンションモジュール28により算出されるスケールファクタである重みαt
1の値の変化に基づいて、複数の時間遅延層24の一部を削除する処理を実行してもよい。
Thus, by giving an input signal to the improved CTC-based
ここで、時間遅延ブロック22の各々を削除すべきか否かの条件としては、ショートカット経路26についてのスケールファクタである重みαt
iの絶対値が相対的に大きい場合、あるいは、値のバラツキが相対的に大きい場合などが挙げられる。すなわち、対象となる音声信号に対して、ショートカット経路26を通過するデータが相対的に大きい、あるいは、ショートカット経路26を通過するデータ量の変動が相対的に大きい場合には、残差ブロック20Aの安定性が低いことを意味し、このような安定性の低い残差ブロック20Aについては削除することで、学習およびデコーディングをより安定化できる。
Here, the conditions for determining whether or not each of the time delay blocks 22 should be deleted are when the absolute value of the weight α t i , which is the scale factor for the
時間遅延ブロック22を削除するか否かの具体的な条件としては、以下のようなものが挙げられる。
Specific conditions for whether or not to delete the
(1)特定の音声入力について、重みαt i(スケールファクタ)の値が予め定められたしきい値(典型的には、「0.5」)を超える数(あるいは、現れているピーク)が予め定められた数以上である場合。 (1) For a specific speech input, the number (or appearing peak) of which the value of the weight α t i (scale factor) exceeds a predetermined threshold (typically “0.5”) is greater than or equal to a predetermined number.
(2)特定の音声入力に含まれるラベル(単音、文字、音節などの単位)に対して、重みαt i(スケールファクタ)の値が予め定められたしきい値(典型的には、「0.5」)を超える数の比率が予め定められた数(例えば、30%)以上である場合。 (2) A predetermined threshold (typically, " 0.5”) is greater than or equal to a predetermined number (eg, 30%).
(3)重みαt i(スケールファクタ)の時間的変化が示すグラフの面積が予め定められたしきい値以上である場合。 (3) When the area of the graph indicated by the temporal change of the weight α t i (scale factor) is equal to or greater than a predetermined threshold.
(4)特定の音声入力について、重みαt i(スケールファクタ)の時間変動の変動幅(標準偏差、分散、最大値と最小値との差)が予め定められたしきい値以上である場合。 (4) For a specific voice input, when the variation width (standard deviation, variance, difference between the maximum value and the minimum value) of the weight α t i (scale factor) over time is greater than or equal to a predetermined threshold .
上述した以外の任意の判断基準を用いることができる。
以上のような手順によって、ネットワーク構造を最適化した上で、学習処理を実行することになる。
Any criteria other than those mentioned above can be used.
After optimizing the network structure according to the procedure described above, the learning process is executed.
図14は、本実施の形態に従う改良CTCベースドモデル1Aの学習方法(ネットワーク再構成法)の処理手順を示すフローチャートである。図14に示す各ステップは、典型的には、情報処理装置500のプロセッサ(CPU502および/またはGPU504)がトレーニングプログラム514を実行することで実現される。
FIG. 14 is a flow chart showing a processing procedure of a learning method (network reconstruction method) for improved CTC-based
図14を参照して、情報処理装置500は、トレーニングデータセット40を用いて、基本CTCベースドモデル1のパラメータを決定する(ステップS150)。このステップS150の処理は、図9に示す再トレーニング法のステップS100~S114と実質的に同一である。
Referring to FIG. 14,
続いて、情報処理装置500は、学習済の基本CTCベースドモデル1に対してアテンションモジュール28を付加して改良CTCベースドモデル1Aを生成する(ステップS152)。そして、情報処理装置500は、改良CTCベースドモデル1Aに付加されたアテンションモジュール28のパラメータを決定する(ステップS154)。このステップS154の処理は、図10に示す切り落とし法のステップS118~S130の処理と実質的に同一である。
Subsequently, the
続いて、情報処理装置500は、開発データセットの音声部分から生成される特徴ベクトルを改良CTCベースドモデル1Aに入力して、各残差ブロック20Aにおけるスケールファクタの時間的変化を算出する(ステップS156)。そして、情報処理装置500は、各残差ブロック20Aにおけるスケールファクタの時間的変化に基づいて、改良CTCベースドモデル1Aに含まれる時間遅延ブロック22のうち削除すべきものが存在するか否かを判断する(ステップS158)。時間遅延ブロック22のうち削除すべきものが存在する場合(ステップS158においてYES)、情報処理装置500は、改良CTCベースドモデル1Aから対象の時間遅延ブロック22を削除する(ステップS160)。時間遅延ブロック22のうち削除すべきものが存在しない場合(ステップS158においてNO)、ステップS160の処理はスキップされる。
Subsequently, the
最終的に、情報処理装置500は、(状況に応じて時間遅延ブロック22が削除された後の)改良CTCベースドモデル1Aのすべてのパラメータを再度決定する(ステップS162)。このステップS160の処理は、図9に示す再トレーニング法のステップS120~S130と実質的に同一である。
Finally, the
以上のような手順によって、改良CTCベースドモデル1Aの学習済モデルが生成される。
A learned model of the improved CTC-based
[F.デコーディング方法]
次に、本実施の形態に従う改良CTCベースドモデル1Aを用いたデコーディング方法について説明する。本実施の形態に従う改良CTCベースドモデル1Aは、E2Eフレームワークであるので、音声信号から順次生成される特徴ベクトルを入力するだけで、対応するテキスト(サブワードシーケンス)が順次出力されることになる。
[F. Decoding method]
Next, a decoding method using the improved CTC-based
図15は、本実施の形態に従う改良CTCベースドモデル1Aのデコーディング方法の処理手順を示すフローチャートである。図15に示す各ステップは、典型的には、情報処理装置500のプロセッサ(CPU502および/またはGPU504)がトレーニングプログラム514を実行することで実現される。
FIG. 15 is a flow chart showing the processing procedure of the decoding method for improved CTC-based
図15を参照して、情報処理装置500は、入力される音声信号からフレームごとに特徴ベクトルを生成する(ステップS200)。そして、情報処理装置500は、生成した特徴ベクトルを改良CTCベースドモデル1Aに入力して推定結果を算出および出力する(ステップS202)。
Referring to FIG. 15,
そして、情報処理装置500は、音声信号の入力が継続しているか否かを判断する(ステップS204)。音声信号の入力が継続していれば(ステップS204においてYES)、ステップS200以下の処理が繰返される。
The
一方、音声信号の入力が継続していなければ(ステップS204においてNO)、デコーディングの処理は終了する。 On the other hand, if the input of the audio signal has not continued (NO in step S204), the decoding process ends.
[G.評価実験]
本願発明者らは、上述した本実施の形態に従う改良CTCベースドモデル1Aの性能について評価実験を行なった。以下、評価実験について説明する。
[G. Evaluation experiment]
The inventors of the present application conducted evaluation experiments on the performance of the improved CTC-based
(g1:データおよびタスクの説明)
評価実験には、トレーニングデータおよび評価データとして、国立国語研究所が提供している「日本語話し言葉コーパス(Corpus of Spontaneous Japanese:CSJ)」を用いた。
(g1: description of data and tasks)
In the evaluation experiment, the "Corpus of Spontaneous Japanese (CSJ)" provided by the National Institute for Japanese Language and Linguistics was used as training data and evaluation data.
先行研究における知見に従って、CSJに含まれる240時間分の講演の音声をトレーニングデータセット(以下、「CSJ-Train」とも称す。)として構成した。CSJは、3個の公式の評価データセット(CSJ-Eval01、CSJ-Eval02、CSJ-Eval03)を含む。各評価データセットは、10講演分の音声を含む。これらの評価データセットを音声認識結果の評価に用いた。また、10講演分の音声からなる開発データセット(CSJ-Dev)をトレーニング中の評価用として用いた。 In accordance with findings from previous studies, 240 hours of speech speech included in CSJ was constructed as a training data set (hereinafter also referred to as “CSJ-Train”). The CSJ includes three official evaluation datasets (CSJ-Eval01, CSJ-Eval02, CSJ-Eval03). Each evaluation data set contains speech for 10 lectures. These evaluation datasets were used to evaluate speech recognition results. In addition, a development dataset (CSJ-Dev) consisting of 10 speeches was used for evaluation during training.
さらに、ウオームアップ初期化およびパラメータチューニングのためのシードモデルのトレーニング用に、CSJに含まれる27.6時間分のデータセット(以下、「CSJ-Trainsmall」とも称す。)を選択した。 Furthermore, a 27.6-hour data set included in CSJ (hereinafter also referred to as “CSJ-Train small ”) was selected for seed model training for warm-up initialization and parameter tuning.
これらのデータセットに含まれる講演の数および時間は、以下のTable1に示す通りである。 The number and duration of talks included in these datasets are shown in Table 1 below.
(g2:ベースラインモデル)
まず、CSJ-Trainを用いて、評価基準となるベースラインモデルをトレーニングした。第1のベースラインモデルとして、DNN-HMM-CE(deep neural network and hidden Markov model cross entropy)モデルを取り上げる。DNN-HMM-CEモデルを構築するにあたって、まず、音響モデルに相当するGMM-HMM(Gaussian mixture model and hidden Markov model)モデルをトレーニングし、続いて、5個の隠れ層(各層は2048個の隠れノードを有する)からなるDNNモデル(言語モデルに相当する)をトレーニングした。出力層は、約8500個のノードを有しており、これは、GMM-HMMモデルの結合トライフォン(triphone)状態に対応する。これらのトレーニングにおいて、72次元のフィルタバンク特徴(24次元のスタティック+Δ+ΔΔ)を用いた。フィルタバンク特徴は、話者ごとに平均化および正規化が行なわれた結果であり、分割された11フレーム(過去5フレーム、現在フレーム、未来5フレーム)からなる。DNNモデルは、交差エントロピー損失基準に基づく標準的な確率的勾配降下法(SGD:stochastic gradient descent)を用いてトレーニングした。
(g2: baseline model)
First, CSJ-Train was used to train a baseline model as an evaluation criterion. As a first baseline model, we take the DNN-HMM-CE (deep neural network and hidden Markov model cross entropy) model. In constructing the DNN-HMM-CE model, first, the GMM-HMM (Gaussian mixture model and hidden Markov model) model corresponding to the acoustic model is trained, and then five hidden layers (each layer has 2048 hidden We trained a DNN model (which corresponds to a language model) consisting of The output layer has approximately 8500 nodes, which correspond to the combined triphone states of the GMM-HMM model. In these trainings, 72-dimensional filterbank features (24-dimensional static +Δ+ΔΔ) were used. The filterbank features are the result of averaging and normalizing for each speaker and consist of 11 frames partitioned (5 past, 5 present, 5 future). The DNN model was trained using standard stochastic gradient descent (SGD) based on the cross entropy loss criterion.
デコードに関して、4グラム単語言語モデル(WLM:word language model)を、591時間分のCSJトレーニングデータセットの転記テキストによりトレーニングした。WLMの語彙サイズは98×103である。 For decoding, a 4-gram word language model (WLM) was trained with 591 hours of text transcripts from the CSJ training dataset. The WLM vocabulary size is 98×10 3 .
(g3:改良CTCベースドモデル1Aのトレーニングのための設定)
本実施の形態に従う改良CTCベースドモデル1Aは、72次元のフィルタバンク特徴(24次元のスタティック+Δ+ΔΔ)(非分割)を用いてトレーニングした。このトレーニングにおいては、日本語の263音節(日本語書き言葉の基本単位であるかな)と、非発話ノイズと、発話ノイズと、ブランク(φ)とを基本音響モデル単位として用いた。
(g3: setting for training of improved CTC-based
The improved CTC-based
対象したネットワーク(CSJ-Trainsmallによりトレーニングされた単音ベースのシードシステムを用いてチューニングされている)は、次のように規定される。すなわち、入力層に引き続く9個の全結合層と、それに続く15個の時間遅延層24(3つの残差ブロック20A全体として)と、softmax出力の前段に配置された2つの全結合層とからなる。
The target network (tuned using a phone-based seed system trained by CSJ-Train small ) is defined as follows. That is, from the nine fully connected layers following the input layer, the following fifteen time delay layers 24 (total of the three
積層された3つの残差ブロック20Aのそれぞれにおけるウィンドウサイズの変化を以下のTable2に示す。
Table 2 below shows the change in window size in each of the three stacked
CSJに含まれる27.6時間分のデータセット(CSJ-Trainsmall)を用いて、交差エントロピー損失基準に従ってシードモデルをトレーニングし、それにより得られたモデルパラメータを用いてCTCモデルを初期化した。CTCのトレーニングには、FsAdaGradアルゴリズムを用いた。240時間分の講演の音声を含むトレーニングデータセット(CSJ-Train)を用いたトレーニングを高速化するために、BMUF(block-wise model update filtering)を適用した。各フレームに対する学習レートの初期値は0.00001とし、CSJ-Devについての検定結果に応じて学習レートを自動的に調整した。ミニバッチサイズは2048とし、同一のミニバッチにおいて並列処理されるシーケンス数は16とした。エポック数の最大値は25とした。 A 27.6-hour dataset included in the CSJ (CSJ-Train small ) was used to train a seed model according to the cross-entropy loss criterion, and the resulting model parameters were used to initialize the CTC model. The FsAdaGrad algorithm was used for CTC training. Block-wise model update filtering (BMUF) was applied to speed up training with a training dataset containing 240 hours of speech speech (CSJ-Train). The initial value of the learning rate for each frame was set to 0.00001, and the learning rate was automatically adjusted according to the test results for CSJ-Dev. The mini-batch size was set to 2048, and the number of sequences processed in parallel in the same mini-batch was set to 16. The maximum number of epochs was set to 25.
ネットワークで算出されるスケール化された対数尤度をEESENデコーダに与えることで、改良CTCベースドモデル1Aをデコードする。
The modified CTC-based
また、本実施の形態に従う改良CTCベースドモデル1Aと同一の構造を有し、MicrosoftのComputational Network Toolkit(CNTK)により特徴量が設定された交差エントロピーモデル(VResTD-CE)についてもトレーニングした。このトレーニングにおいて、DNN-HMM-CEモデルと同一のラベルを用いた。
A cross-entropy model (VResTD-CE), which has the same structure as the improved CTC-based
(g4:アテンションモジュールの付加による改良CTCベースドモデル1Aのチューニング)
上述したように、基本CTCベースドモデル1(VResTD-CTC)に対して、アテンションモジュール28を付加することで、改良CTCベースドモデル1Aを構成する。改良CTCベースドモデル1Aを規定するすべてのパラメータ(アテンションモジュール28のパラメータも含む)をCSJ-Trainを用いてトレーニングすることで得られた学習済モデルを「VResTDM-CTCretrain」と称する。
(g4: tuning of improved CTC-based
As described above, the improved CTC-based
VResTDM-CTCretrainを得るために用いた学習レートの初期値は0.00001とした。ミニバッチサイズは2048とした。各エポックのトレーニングが完了するごとにCSJ-Devを用いて性能を評価した。結果的に、性能が低下する直前の17回目のエポックの開始直前でトレーニングを終了した。 The initial learning rate used to obtain VResTDM -CTC retract was 0.00001. The minibatch size was 2048. Performance was evaluated using CSJ-Dev after each epoch of training was completed. As a result, training was terminated just before the start of the 17th epoch, just before performance degraded.
図16は、本実施の形態に従う改良CTCベースドモデル1Aのアテンションスコアの変化例を示す図である。図16(A)および(B)は、入力される音声フレームに対する先頭の残差ブロック20Aにおけるアテンションスコアの変化を示し、図16(C)および(D)は、入力される音声フレームに対する最終の残差ブロック20Aにおけるアテンションスコアの変化を示す。入力される音声フレームとしては、CSJ-Eval01を用いた。
FIG. 16 is a diagram showing an example of change in attention score of improved CTC-based
2つの異なるシステム(音節ベース(syllable system)および単音ベース(ci-phone system))の先頭の残差ブロック20Aを通過する際の振る舞いは、互いに異なるものとなっている。具体的には、図16(A)に示すように、音節ベースにおいては、音声セグメントはショートカット経路を通過する傾向が強い。一方、図16(B)に示すように、単音ベースにおいては、そのような傾向は見られない。
The two different systems (syllable system and ci-phone system) behave differently when passing through the leading
評価として、音節ベースにおいては、CSJ-Eval01について、音声セグメントに対するアテンションスコアの平均値は0.6であり、ブランクに対するアテンションスコアの平均値は0.36であった。一方、単音ベースにおいては、アテンションスコアの平均値はいずれもそれらの値より十分に小さい。 As evaluations, on a syllable basis, CSJ-Eval01 had an average attention score for speech segments of 0.6 and an average attention score for blanks of 0.36. On the other hand, on a single note basis, the mean attention scores are all well below those values.
最終の残差ブロック20Aにおいては、いずれのシステムについても、ショートカット経路を避ける傾向が強い。具体的には、CSJ-Eval01についての音声フレームに対するアテンションスコアの平均値は、いずれのシステムについてもほぼ0.0であった。
In the final
これらの実験結果に基づいて、基本CTCベースドモデル1(VResTD-CTC)に含まれる残差ブロック20に対する重みを調整した改良CTCベースドモデル1Aを用意した。より具体的には、音声セグメントに対するアテンションスコアαt
iをしきい値「0.5」が二値化することで、一部の時間遅延ブロック22を削除した。すなわち、上述した切り落とし法により生成された学習済モデルを「VResTDM-CTCpruneと称する。
Based on these experimental results, an improved CTC-based
(g5:音声認識性能)
次に、本実施の形態に従う改良CTCベースドモデル1Aの音声認識性能の評価結果の一例について説明する。音声認識性能の評価には、CSJに含まれる3個の評価データセット(CSJ-Eval01、CSJ-Eval02、CSJ-Eval03)を用いた。音声認識性能の評価には、上述したベースラインモデル(DNN-HMM-CEおよびVResTD-CE)と比較した。この音声認識性能の評価結果を以下のTable3に示す。
(g5: speech recognition performance)
Next, an example of evaluation results of speech recognition performance of improved CTC-based
上述の評価結果においては、評価指標として、自動音声認識(ASR:Automatic Speech Recognition)の単語誤り率(WER:word error rate)を用いた。WERは、評価対象のモデルに音声を入力したときに出力されるテキストについて、当該入力された音声に対応する正解テキストに対する誤り率を示す。WERの値が小さいほど性能が高いことを示す。 In the evaluation results described above, the word error rate (WER) of automatic speech recognition (ASR) was used as an evaluation index. WER indicates the error rate of the text output when speech is input to the evaluation target model with respect to the correct text corresponding to the input speech. A smaller WER value indicates higher performance.
上述の評価結果によれば、VResTDM-CTCpruneおよびVResTDM-CTCretrainの両方とも、すべての評価データセットにおいて、ベースラインモデル(DNN-HMM-CE)および基本CTCベースドモデル1(VResTD-CTC)に比較して、著しい改善が見られる。また、VResTDM-CTCretrainについては、2つの評価データセットにおいて、VResTD-CEと同等の性能を発揮するとともに、3番目の評価データセットにおいてはより高い性能を発揮している。 According to the evaluation results described above, both VResTDM -CTC prune and VResTDM-CTC retract were superior to the baseline model (DNN-HMM-CE) and basic CTC-based model 1 (VResTD-CTC) in all evaluation datasets. A significant improvement is seen in comparison. In addition, VResTDM -CTC retract exhibited performance equivalent to that of VResTD-CE in two evaluation data sets, and exhibited higher performance in the third evaluation data set.
[H.まとめ]
本実施の形態に従う改良CTCベースドモデル1Aによれば、複数の時間遅延層24を通過する経路に対する重み(第1の重み)と、ショートカット経路26に対する重み(第2の重み)とをタイムステップごとに更新できる。このようなタイムステップ毎の重みの更新によって、ネットワーク全体を動的に振る舞わせることができ、これによって、対象のシステムに応じた適切なネットワーク構造を実現できる。
[H. summary]
According to the improved CTC-based
また、本実施の形態に従う改良CTCベースドモデル1Aによれば、アテンションモジュール28が更新する重み(スケールファクタ)の時間的な変化を監視することで、不安定な時間遅延層24などを特定することができ、これによって、高精度かつ高速な学習を実現できる。
Further, according to the improved CTC-based
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 The embodiments disclosed this time should be considered as examples and not restrictive in all respects. The scope of the present invention is indicated by the scope of the claims rather than the description of the above-described embodiments, and is intended to include all modifications within the scope and meaning equivalent to the scope of the claims.
1 基本CTCベースドモデル、1A 改良CTCベースドモデル、2 特徴量抽出部、4 認識エンジン、10,32,282 全結合層、20,20A 残差ブロック、22 時間遅延ブロック、24 時間遅延層、26 ショートカット経路、28 アテンションモジュール、29 加算器、30 出力層、34 マッピング関数、40,520 トレーニングデータセット、40S 縮小トレーニングデータセット、42 音声信号、44 テキスト、241,242 遅延要素、284 softmax関数、285 出力経路、286,288 乗算器、500 情報処理装置、502 CPU、504 GPU、506 主メモリ、508 ディスプレイ、510 ネットワークインターフェイス、512 二次記憶装置、514 トレーニングプログラム、516 モデル定義データ、518 ネットワークパラメータ、522 入力デバイス、524 光学ドライブ、526 光学ディスク、528 内部バス、S 音声認識システム。 1 basic CTC based model, 1A improved CTC based model, 2 feature extractor, 4 recognition engine, 10, 32, 282 fully connected layer, 20, 20A residual block, 22 time delay block, 24 time delay layer, 26 shortcut path, 28 attention module, 29 adder, 30 output layer, 34 mapping function, 40,520 training dataset, 40S reduced training dataset, 42 audio signal, 44 text, 241, 242 delay element, 284 softmax function, 285 output path, 286, 288 multiplier, 500 information processing device, 502 CPU, 504 GPU, 506 main memory, 508 display, 510 network interface, 512 secondary storage device, 514 training program, 516 model definition data, 518 network parameter, 522 Input Device, 524 Optical Drive, 526 Optical Disc, 528 Internal Bus, S Speech Recognition System.
Claims (6)
前記入力信号から所定時間幅のフレームごとに第1の特徴ベクトルを順次生成する入力層と、
前記入力層に引き続く、積層された複数の残差ブロックと、
前記複数の残差ブロックの出力側に接続された出力層とを備え、
前記複数の残差ブロックの各々は、
積層された複数の時間遅延層と、
前記複数の時間遅延層をバイパスするショートカット経路と、
前記複数の時間遅延層を通過する経路と前記ショートカット経路との間の重みを調整するアテンションモジュールとを含み、
前記複数の時間遅延層は、入力に対して所定のタイムステップの遅延を与える遅延要素を有しており、
前記時間遅延層の各々は、入力ベクトルに対して、当該入力ベクトルに対応するフレームである現在フレームに対して、前記タイムステップだけ時間を戻した過去フレームに対応する第1の内部ベクトルと、前記タイムステップだけ時間を進めた未来フレームに対応する第2の内部ベクトルとを生成し、
前記アテンションモジュールは、対応する残差ブロックに与えられる入力が対応する複数の時間遅延層を通過して得られる結果出力と、当該対応する残差ブロックに与えられる入力とに基づいて、前記タイムステップごとに前記重みを更新する、識別器。 A discriminator that outputs a sequence of labels for an input signal,
an input layer that sequentially generates a first feature vector from the input signal for each frame of a predetermined time width;
a plurality of stacked residual blocks following the input layer;
an output layer connected to the output side of the plurality of residual blocks;
each of the plurality of residual blocks comprising:
a plurality of stacked time delay layers;
a shortcut path bypassing the plurality of time delay layers;
an attention module that adjusts weights between paths passing through the plurality of time delay layers and the shortcut paths;
The plurality of time delay layers have delay elements that provide a delay of a predetermined timestep with respect to the input,
Each of the time delay layers includes, for an input vector, a first internal vector corresponding to a past frame obtained by moving back the current frame, which is the frame corresponding to the input vector, by the time step; generating a second internal vector corresponding to a future frame advanced in time by the time step;
The attention module performs the time step based on a result output obtained by passing an input provided to a corresponding residual block through a corresponding plurality of time delay layers and an input provided to the corresponding residual block. A discriminator that updates the weights each time.
対応する残差ブロックの出力と前記ショートカット経路とに接続された全結合層と、
前記全結合層に接続されたsoftmax関数とを含む、請求項1に記載の識別器。 The attention module includes:
a fully connected layer connected to the output of the corresponding residual block and the shortcut path;
2. The discriminator of claim 1, comprising a softmax function connected to said fully connected layer.
前記入力信号から所定時間幅のフレームごとに第1の特徴ベクトルを順次生成する入力層と、
前記入力層に引き続く、積層された複数の残差ブロックと、
前記複数の残差ブロックの出力側に接続された出力層とを備え、
前記複数の残差ブロックの各々は、
積層された複数の時間遅延層と、
前記複数の時間遅延層をバイパスするショートカット経路と、
前記複数の時間遅延層を通過する経路と前記ショートカット経路との間の重みを調整するアテンションモジュールとを含み、
前記複数の時間遅延層は、入力に対して所定のタイムステップの遅延を与える遅延要素を有しており、
前記アテンションモジュールは、対応する残差ブロックに与えられる入力が対応する複数の時間遅延層を通過して得られる結果出力と、当該対応する残差ブロックに与えられる入力とに基づいて、前記タイムステップごとに前記重みを更新し、
前記識別器のネットワークを規定するパラメータは、前記アテンションモジュールが存在しない状態で、トレーニングデータセットを用いたトレーニングにより決定され、
前記アテンションモジュールを規定するパラメータは、前記アテンションモジュールが配置された状態で、トレーニングデータセットを用いたトレーニングにより決定される、識別器。 A discriminator that outputs a sequence of labels for an input signal,
an input layer that sequentially generates a first feature vector from the input signal for each frame of a predetermined time width;
a plurality of stacked residual blocks following the input layer;
an output layer connected to the output side of the plurality of residual blocks;
each of the plurality of residual blocks comprising:
a plurality of stacked time delay layers;
a shortcut path bypassing the plurality of time delay layers;
an attention module that adjusts weights between paths passing through the plurality of time delay layers and the shortcut paths;
The plurality of time delay layers have delay elements that provide a delay of a predetermined timestep with respect to the input,
The attention module performs the time step based on a result output obtained by passing an input provided to a corresponding residual block through a corresponding plurality of time delay layers and an input provided to the corresponding residual block. update the weights every
parameters defining the network of classifiers are determined by training with a training data set in the absence of the attention module;
A discriminator , wherein the parameters defining the attention module are determined by training with a training data set with the attention module in place .
前記入力信号から所定時間幅のフレームごとに第1の特徴ベクトルを順次生成する入力層と、
前記入力層に引き続く、積層された複数の残差ブロックと、
前記複数の残差ブロックの出力側に接続された出力層とを備え、
前記複数の残差ブロックの各々は、
積層された複数の時間遅延層と、
前記複数の時間遅延層をバイパスするショートカット経路と、
前記複数の時間遅延層を通過する経路と前記ショートカット経路との間の重みを調整するアテンションモジュールとを含み、
前記複数の時間遅延層は、入力に対して所定のタイムステップの遅延を与える遅延要素を有しており、
前記時間遅延層の各々は、入力ベクトルに対して、当該入力ベクトルに対応するフレームである現在フレームに対して、前記タイムステップだけ時間を戻した過去フレームに対応する第1の内部ベクトルと、前記タイムステップだけ時間を進めた未来フレームに対応する第2の内部ベクトルとを生成し、
前記アテンションモジュールは、対応する残差ブロックに与えられる入力が対応する複数の時間遅延層を通過して得られる結果出力と、当該対応する残差ブロックに与えられる入力とに基づいて、前記タイムステップごとに前記重みを更新する、ように構成される、学習済モデル。 A trained model for causing a computer to output a sequence of labels for an input signal, said trained model comprising:
an input layer that sequentially generates a first feature vector from the input signal for each frame of a predetermined time width;
a plurality of stacked residual blocks following the input layer;
an output layer connected to the output side of the plurality of residual blocks;
each of the plurality of residual blocks comprising:
a plurality of stacked time delay layers;
a shortcut path bypassing the plurality of time delay layers;
an attention module that adjusts weights between paths passing through the plurality of time delay layers and the shortcut paths;
The plurality of time delay layers have delay elements that provide a delay of a predetermined timestep with respect to the input,
Each of the time delay layers includes, for an input vector, a first internal vector corresponding to a past frame obtained by moving back the current frame, which is the frame corresponding to the input vector, by the time step; generating a second internal vector corresponding to a future frame advanced in time by the time step;
The attention module performs the time step based on a result output obtained by passing an input provided to a corresponding residual block through a corresponding plurality of time delay layers and an input provided to the corresponding residual block. A trained model configured to update the weights every time.
前記識別器は、
前記入力信号から所定時間幅のフレームごとに第1の特徴ベクトルを順次生成する入力層と、
前記入力層に引き続く、積層された複数の残差ブロックと、
前記複数の残差ブロックの出力側に接続された出力層とを備え、
前記複数の残差ブロックの各々は、
積層された複数の時間遅延層と、
前記複数の時間遅延層をバイパスするショートカット経路とを含み、
前記複数の時間遅延層は、入力に対して所定のタイムステップの遅延を与える遅延要素を有しており、
前記学習方法は、
トレーニングデータセットを用いて前記識別器のネットワークを規定するパラメータを決定する第1のトレーニングステップと、
前記識別器に、前記複数の時間遅延層を通過する経路と前記ショートカット経路との間の重みを調整するアテンションモジュールを付加する付加ステップとを備え、前記アテンションモジュールは、対応する残差ブロックに与えられる入力が対応する複数の時間遅延層を通過して得られる結果出力と、当該対応する残差ブロックに与えられる入力とに基づいて、前記タイムステップごとに前記重みを更新するように構成されており、
トレーニングデータセットを用いて前記アテンションモジュールを規定するパラメータを決定する第2のトレーニングステップとを備える、学習方法。 A learning method for a discriminator that outputs a sequence of labels for an input signal, comprising:
The discriminator is
an input layer that sequentially generates a first feature vector from the input signal for each frame of a predetermined time width;
a plurality of stacked residual blocks following the input layer;
an output layer connected to the output side of the plurality of residual blocks;
each of the plurality of residual blocks comprising:
a plurality of stacked time delay layers;
a shortcut path that bypasses the plurality of time delay layers;
The plurality of time delay layers have delay elements that provide a delay of a predetermined timestep with respect to the input,
The learning method includes:
a first training step of determining parameters defining the network of classifiers using a training data set;
adding to the discriminator an attention module that adjusts weights between paths passing through the plurality of time-delay layers and the shortcut paths, wherein the attention module gives to corresponding residual blocks: updating the weights at each of the timesteps based on the resulting output obtained from passing the input through the corresponding plurality of time delay layers and the input provided to the corresponding residual block. cage,
a second training step of determining parameters defining said attention module using a training data set.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018142418A JP7209330B2 (en) | 2018-07-30 | 2018-07-30 | classifier, trained model, learning method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018142418A JP7209330B2 (en) | 2018-07-30 | 2018-07-30 | classifier, trained model, learning method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020020872A JP2020020872A (en) | 2020-02-06 |
JP7209330B2 true JP7209330B2 (en) | 2023-01-20 |
Family
ID=69589711
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018142418A Active JP7209330B2 (en) | 2018-07-30 | 2018-07-30 | classifier, trained model, learning method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7209330B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111402891B (en) * | 2020-03-23 | 2023-08-11 | 抖音视界有限公司 | Speech recognition method, device, equipment and storage medium |
CN112530410B (en) * | 2020-12-24 | 2024-08-02 | 北京地平线机器人技术研发有限公司 | Command word recognition method and device |
CN112957054B (en) * | 2021-01-25 | 2023-06-23 | 北京工业大学 | 12-lead electrocardiosignal classification method based on channel attention packet residual error network |
CN114224354B (en) * | 2021-11-15 | 2024-01-30 | 吉林大学 | Arrhythmia classification method, arrhythmia classification device, and readable storage medium |
CN116861799B (en) * | 2023-09-04 | 2023-11-24 | 自然资源部第一海洋研究所 | Submarine topography inversion model generation and submarine topography inversion method based on residual errors |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018003457A1 (en) | 2016-06-30 | 2018-01-04 | パナソニックIpマネジメント株式会社 | Information processing device, information processing method of time series data, and program |
WO2018071389A1 (en) | 2016-10-10 | 2018-04-19 | Google Llc | Very deep convolutional neural networks for end-to-end speech recognition |
JP2018513399A (en) | 2015-11-25 | 2018-05-24 | バイドゥ ユーエスエー エルエルシーBaidu USA LLC | Deployed end-to-end speech recognition |
-
2018
- 2018-07-30 JP JP2018142418A patent/JP7209330B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018513399A (en) | 2015-11-25 | 2018-05-24 | バイドゥ ユーエスエー エルエルシーBaidu USA LLC | Deployed end-to-end speech recognition |
WO2018003457A1 (en) | 2016-06-30 | 2018-01-04 | パナソニックIpマネジメント株式会社 | Information processing device, information processing method of time series data, and program |
WO2018071389A1 (en) | 2016-10-10 | 2018-04-19 | Google Llc | Very deep convolutional neural networks for end-to-end speech recognition |
Non-Patent Citations (2)
Title |
---|
Shiliang ZHANG, et al.,DEEP-FSMN FOR LARGE VOCABULARY CONTINUOUS SPEECH RECOGNITION,ICASSP 2018,IEEE,2018年04月,pp.5869-5873 |
田中智大他,Highwayネットワーク言語モデルを用いた日本語話し言葉音声認識,日本音響学会2017年春季研究発表会講演論文集[CD-ROM],2017年03月,pp.107-108 |
Also Published As
Publication number | Publication date |
---|---|
JP2020020872A (en) | 2020-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7209330B2 (en) | classifier, trained model, learning method | |
JP7109771B2 (en) | Speech Recognition System, Speech Recognition Method, Trained Model | |
US10629185B2 (en) | Statistical acoustic model adaptation method, acoustic model learning method suitable for statistical acoustic model adaptation, storage medium storing parameters for building deep neural network, and computer program for adapting statistical acoustic model | |
JP6637078B2 (en) | Acoustic model learning device, acoustic model learning method and program | |
US9824683B2 (en) | Data augmentation method based on stochastic feature mapping for automatic speech recognition | |
US9373324B2 (en) | Applying speaker adaption techniques to correlated features | |
KR100486735B1 (en) | Method of establishing optimum-partitioned classifed neural network and apparatus and method and apparatus for automatic labeling using optimum-partitioned classifed neural network | |
Shannon | Optimizing expected word error rate via sampling for speech recognition | |
KR102294638B1 (en) | Combined learning method and apparatus using deepening neural network based feature enhancement and modified loss function for speaker recognition robust to noisy environments | |
US8494847B2 (en) | Weighting factor learning system and audio recognition system | |
Ström | Phoneme probability estimation with dynamic sparsely connected artificial neural networks | |
Lugosch et al. | Donut: Ctc-based query-by-example keyword spotting | |
Gales et al. | Discriminative classifiers with adaptive kernels for noise robust speech recognition | |
JP2022545860A (en) | Soft Forgetting for Automatic Speech Recognition Based on Connectionist Time Series Classification | |
KR102406512B1 (en) | Method and apparatus for voice recognition | |
Guo et al. | Deep neural network based i-vector mapping for speaker verification using short utterances | |
JP2019105899A (en) | Learning method | |
Bataev et al. | Exploring end-to-end techniques for low-resource speech recognition | |
JP6646337B2 (en) | Audio data processing device, audio data processing method, and audio data processing program | |
JP7423056B2 (en) | Reasoners and how to learn them | |
Chen et al. | Acoustic data-driven pronunciation lexicon generation for logographic languages | |
JP6158105B2 (en) | Language model creation device, speech recognition device, method and program thereof | |
Shahnawazuddin et al. | Sparse coding over redundant dictionaries for fast adaptation of speech recognition system | |
Zhu et al. | Gaussian free cluster tree construction using deep neural network. | |
JP5308102B2 (en) | Identification score / posterior probability calculation method by number of errors, error number weighted identification learning device using the method, method thereof, speech recognition device using the device, program, and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210720 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220519 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220628 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220826 |
|
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: 20221213 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20221227 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7209330 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |