(57)【要約】【課題】ＮＮに基づく音響モデルの、双方向の時系列パターンの逐次的な学習を効率的に行う。【解決手段】特徴量抽出部１１は、所定の開始時刻から所定の終了時刻までの音声データから、各時刻に対応するフレームごとの音声特徴量を抽出する。事後確率計算部１２は、特徴量抽出部１１によって抽出された音声特徴量のうち、開始時刻から所定時間後までの時刻のそれぞれに対応するフレームごとの音声特徴量と、終了時刻から所定時間前までの時刻のそれぞれに対応するフレームごとの音声特徴量と、を基に、ＮＮで表される音響モデルを用いて、開始時刻から所定時間後の時刻の順方向の事後確率及び終了時刻から所定時間前の時刻の逆方向の事後確率を計算する。更新部１３は、事後確率計算部１２によって計算された各時刻の順方向の事後確率及び逆方向の事後確率を基に計算した音響尤度を用いて、音響モデルのパラメータを更新する。【選択図】図１
2019032408.tif 000002
【特許請求の範囲】
【請求項１】
所定の開始時刻から所定の終了時刻までの音声データから、各時刻に対応するフレームごとの音声特徴量を抽出する特徴量抽出部と、
前記特徴量抽出部によって抽出された音声特徴量のうち、前記開始時刻から所定時間後までの時刻のそれぞれに対応するフレームごとの音声特徴量と、前記終了時刻から前記所定時間前までの時刻のそれぞれに対応するフレームごとの音声特徴量と、を基に、ニューラルネットワークで表される音響モデルを用いて、前記開始時刻から所定時間後の時刻の順方向の事後確率及び前記終了時刻から所定時間前の時刻の逆方向の事後確率を計算する事後確率計算部と、
前記事後確率計算部によって計算された各時刻の前記順方向の事後確率及び前記逆方向の事後確率を基に計算した音響尤度を用いて、前記音響モデルのパラメータを更新する更新部と、
を有することを特徴とする音響モデル学習装置。
【請求項２】
前記事後確率計算部は、ＬＳＴＭ（Long-Short-Term-Memory）又はＣＬＳＴＭ（Convolutional  LSTM）を活性化関数として用いたニューラルネットワークを用いることを特徴とする請求項１に記載の音響モデル学習装置。
【請求項３】
所定の開始時刻から所定の終了時刻までの音声データから、各時刻に対応するフレームごとの音声特徴量を抽出する特徴量抽出部と、
前記特徴量抽出部によって抽出された音声特徴量のうち、前記開始時刻から所定時間後までの時刻のそれぞれに対応するフレームごとの音声特徴量と、前記終了時刻から前記所定時間前までの時刻のそれぞれに対応するフレームごとの音声特徴量と、を基に、ニューラルネットワークで表される音響モデルを用いて、前記開始時刻から所定時間後の時刻の順方向の事後確率及び前記終了時刻から所定時間前の時刻の逆方向の事後確率を計算する事後確率計算部と、
前記事後確率計算部によって計算された各時刻の前記順方向の事後確率及び前記逆方向の事後確率を基に、言語モデルに含まれる単語列から前記音声データに対応する単語列を探索する単語列探索部と、
を有することを特徴とする音声認識装置。
【請求項４】
コンピュータによって実行される音響モデル学習方法であって、
所定の開始時刻から所定の終了時刻までの音声データから、各時刻に対応するフレームごとの音声特徴量を抽出する特徴量抽出工程と、
前記特徴量抽出工程によって抽出された音声特徴量のうち、前記開始時刻から所定時間後までの時刻のそれぞれに対応するフレームごとの音声特徴量と、前記終了時刻から前記所定時間前までの時刻のそれぞれに対応するフレームごとの音声特徴量と、を基に、ニューラルネットワークで表される音響モデルを用いて、前記開始時刻から所定時間後の時刻の順方向の事後確率及び前記終了時刻から所定時間前の時刻の逆方向の事後確率を計算する事後確率計算工程と、
前記事後確率計算工程によって計算された各時刻の前記順方向の事後確率及び前記逆方向の事後確率を基に計算した音響尤度を用いて、前記音響モデルのパラメータを更新する更新工程と、
を含んだことを特徴とする音響モデル学習方法。
【請求項５】
前記事後確率計算工程は、ＬＳＴＭ（Long-Short-Term-Memory）又はＣＬＳＴＭ（Convolutional  LSTM）を活性化関数として用いたニューラルネットワークを用いることを特徴とする請求項４に記載の音響モデル学習方法。
【請求項６】
コンピュータによって実行される音声認識方法であって、
所定の開始時刻から所定の終了時刻までの音声データから、各時刻に対応するフレームごとの音声特徴量を抽出する特徴量抽出工程と、
前記特徴量抽出工程によって抽出された音声特徴量のうち、前記開始時刻から所定時間後までの時刻のそれぞれに対応するフレームごとの音声特徴量と、前記終了時刻から前記所定時間前までの時刻のそれぞれに対応するフレームごとの音声特徴量と、を基に、ニューラルネットワークで表される音響モデルを用いて、前記開始時刻から所定時間後の時刻の順方向の事後確率及び前記終了時刻から所定時間前の時刻の逆方向の事後確率を計算する事後確率計算工程と、
前記事後確率計算工程によって計算された各時刻の前記順方向の事後確率及び前記逆方向の事後確率を基に、言語モデルに含まれる単語列から前記音声データに対応する単語列を探索する単語列探索工程と、
を含んだことを特徴とする音声認識方法。
【請求項７】
コンピュータを、請求項１に記載の音響モデル学習装置、請求項２に記載の音響モデル学習装置、又は請求項３に記載の音声認識装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音響モデル学習装置、音声認識装置、音響モデル学習方法、音声認識方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、音声認識の分野では、人間を越える認識率を達成する音声認識システムが登場するなど、革新的な成果が報告されている（例えば、非特許文献１を参照）。そのような音声認識システムにおけるＨＭＭ（Hidden  Markov  Model）に基づく音響モデルの内部では、従来のニューラルネットワーク（以下、ＮＮ（Neural  Network））の代わりに、ＣＮＮ（Convolutional  Neural  Network）やＢＲＮＮ（Bidirectional  Recurrent  Neural  Network）が利用されている。
【０００３】
ＣＮＮの利点としては、畳み込み操作による位置変化や雑音に対する頑健性が知られている（例えば、非特許文献２を参照）。一方、ＢＲＮＮの利点としては、ＣＮＮと異なり再帰入力を用いて双方向の時系列パターンを動的に学習できることが挙げられる。ＣＮＮとＢＲＮＮの両方のシステムをデコード時に用いることで、互いが相補的に働き、高精度な認識が可能となることが知られている（例えば、非特許文献３を参照）。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】W.  Xiong,  J.  Droppo,  X.  Huang,  F.  Seide,  M.  Seltzer,  A.  Stolcke,  D.  Yu  and  G.  Zweig,  “Achieving  Human  Parity  in  Conversational  Speech  Recognition,”  arXiv:1610.05256v2  [cs.CL]  17  Feb  2017.  （http://arxiv.org/abs/1610.05256）
【非特許文献２】Y.  Qian,  M.  Bi,  T.  Tan,  and  K.  Yu,  “Very  Deep  Convolutional  Neural  Networks  for  Noise  Robust  Speech  Recognition,”  IEEE/ACM  Transactions  on  Audio,  Speech,  and  Language  Processing,  vol.  24,  no.  12,  pp.  2263-2276,  2016.（http://doi.org/10.1109/TASLP.2016.2602884）
【非特許文献３】George  Saon,  Tom  Sercu,  Steven  Rennie  and  Hong-Kwang  J.  Kuo,  “The  IBM  2016  English  Conversational  Telephone  Speech  Recognition  System,”  INTERSPEECH  2016,  17th  Annual  Conference  of  the  International  Speech  Communication  Association,  pp.  7-11,  2016.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の音響モデル学習装置には、ＮＮに基づく音響モデルの、双方向の時系列パターンの逐次的な学習を、効率的に行うことができない場合があるという問題がある。
【０００６】
例えば、従来のＢＲＮＮでは、１つのフレームのＨＭＭ状態の事後確率を計算する際に、全フレームに関する所定の計算結果が必要になる。このため、従来のＢＲＮＮを利用した音響モデルの学習に、逐次的な学習手法であるTruncated  ＢＰＴＴを用いたとしても、記憶領域が限られている場合、並列処理ができなくなることや、パラメータの更新速度が低下することにより、効率的な学習ができない場合がある。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明の音響モデル学習装置は、所定の開始時刻から所定の終了時刻までの音声データから、各時刻に対応するフレームごとの音声特徴量を抽出する特徴量抽出部と、前記特徴量抽出部によって抽出された音声特徴量のうち、前記開始時刻から所定時間後までの時刻のそれぞれに対応するフレームごとの音声特徴量と、前記終了時刻から前記所定時間前までの時刻のそれぞれに対応するフレームごとの音声特徴量と、を基に、ニューラルネットワークで表される音響モデルを用いて、前記開始時刻から所定時間後の時刻の順方向の事後確率及び前記終了時刻から所定時間前の時刻の逆方向の事後確率を計算する事後確率計算部と、前記事後確率計算部によって計算された各時刻の前記順方向の事後確率及び前記逆方向の事後確率を基に計算した音響尤度を用いて、前記音響モデルのパラメータを更新する更新部と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、ＮＮに基づく音響モデルの、双方向の時系列パターンの逐次的な学習を効率的に行うことができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、第１の実施形態に係る音響モデル学習装置の構成の一例を示す図である。
【図２】図２は、第１の実施形態に係る音響モデル学習装置による事後確率の計算について説明するための図である。
【図３】図３は、第１の実施形態に係る音声認識装置の構成の一例を示す図である。
【図４】図４は、第１の実施形態に係る音響モデル学習装置の処理の流れを示すフローチャートである。
【図５】図５は、第１の実施形態に係る音声認識装置の処理の流れを示すフローチャートである。
【図６】図６は、音響モデル学習プログラム、又は音声認識プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１０】
以下に、本願に係る音響モデル学習装置、音声認識装置、音響モデル学習方法、音声認識方法、及びプログラムの実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
【００１１】
なお、以下では、例えばＡがベクトルである場合には“ベクトルＡ”と表記し、例えばＡが行列である場合には“行列Ａ”と表記し、例えばＡがスカラーである場合には単に“Ａ”と表記する。また、例えばＡが集合である場合には、“集合Ａ”と表記する。また、例えばベクトルＡの関数ｆは、ｆ（ベクトルＡ）と表記する。また、ベクトル、行列又はスカラーであるＡに対し、“＾Ａ”と記載する場合は「“Ａ”の直上に“＾”が記された記号」と同等であるとする。また、ベクトル、行列又はスカラーであるＡに対し、“−Ａ”と記載する場合は「“Ａ”の直上に“−”が記された記号」と同等であるとする。また、ベクトル、行列又はスカラーであるＡに対し、“~Ａ”と記載する場合は「“Ａ”の直上に“~”が記された記号」と同等であるとする。また、ベクトル、行列又はスカラーであるＡに対し、“←Ａ”と記載する場合は「“Ａ”の直上に“←”が記された記号」と同等であるとする。また、ベクトル、行列又はスカラーであるＡに対し、“→Ａ”と記載する場合は「“Ａ”の直上に“→”が記された記号」と同等であるとする。また、ベクトル又は行列であるＡに対し、ＡＴはＡの転置を表す。
【００１２】
［第１の実施形態に係る音響モデル学習装置の構成］
まず、図１を用いて、第１の実施形態に係る音響モデル学習装置の構成について説明する。図１は、第１の実施形態に係る音響モデル学習装置の構成の一例を示す図である。図１に示すように、音響モデル学習装置１０は、特徴量抽出部１１、事後確率計算部１２、更新部１３、エラー計算部１４、ＢＰＴＴ計算部１５、ＳＧＤ更新部１６、収束判定部１７及び音響モデル記憶部１８を有する。
【００１３】
音響モデル記憶部１８は、音声の音響的特徴をモデル化した音響モデルを記憶する。音響モデルは、各音素のLeft-to-rightのＨＭＭであり、ＮＮで計算されたＨＭＭの各状態の事後確率分布を含む。具体的には、音響モデル記憶部１８は、ＮＮのパラメータである音響モデルパラメータΛを記憶する。
【００１４】
特徴量抽出部１１は、所定の開始時刻から所定の終了時刻までの音声データから、各時刻に対応するフレームごとの音声特徴量を抽出する。特徴量抽出部１１は、音声特徴量として、例えば、ＭＦＣＣ（Mel  Frequency  Cepstral  Coefficient）、ＦＢＡＮＫ、ΔＭＦＣＣ（ＭＦＣＣの１回微分）、ΔΔＭＦＣＣ（ＭＦＣＣの２回微分）、対数パワー、Δ対数パワー（対数パワーの１回微分）等を抽出する。特徴量抽出部１１は、学習用音声データから、音声特徴量として特徴量ベクトルｘを抽出する。
【００１５】
事後確率計算部１２は、特徴量抽出部１１によって抽出された特徴量ベクトルｘ、及び音響モデル記憶部１８に記憶された音響モデルパラメータΛに基づいて、各ＨＮＮ状態の事後確率ｐ（ｙ｜ｘ）を計算する。事後確率計算部１２は、例えば、ＬＳＴＭ（Long-Short-Term-Memory）又はＣＬＳＴＭ（Convolutional  LSTM）を活性化関数として用いたＮＮを用いる。また、事後確率計算部１２は、Gated  Recurrent  Unitを含んだＮＮを用いてもよい。事後確率計算部１２は、本発明における双方向の時系列パターンを用いたＮＮであるForward-backward  ＲＮＮを用いた事後確率の計算を行う。ここで、双方向の時系列パターンを用いたＮＮであるＢＲＮＮを用いた事後確率の計算、及び、Forward-backward  ＲＮＮを用いた事後確率の計算について説明する。
【００１６】
（ＢＲＮＮを用いた事後確率の計算）
まず、従来の音響モデル学習装置による、ＢＲＮＮを用いた事後確率の計算について説明する。従来の音響モデル学習装置は、学習用音声データから音声特徴量としてｘ１ｘ２，…，ｘＴ∈ＲＮ（ただし、Ｔはフレーム数、Ｎは例えばフィルタ係数ＦのFilterbankとその１回微分と２回微分の合計である３Ｆ）が抽出された場合、ＨＭＭ状態系列ｙ１，ｙ２，…，ｙＴ∈Ｙ＝｛１，２，…，Ｃ｝の事後確率ｐ（ｙｔ｜ｘ１ｘ２，…，ｘＴ）を、式（１−１）〜（１−４）のように計算する。
【００１７】
【数１】
2019032408.tif 000003
【００１８】
ここで、→φは順方向のＲＮＮであり、式（２−１）のように表される。また、←φは逆方向のＲＮＮであり、式（２−２）のように表される。
【００１９】
【数２】
2019032408.tif 000004
【００２０】
また、σは活性化関数であり、例えば、ＬＳＴＭ又はＣＬＳＴＭである。また、ｓｏｆｔｍａｘ関数は、式（３）のように定義される。
【００２１】
【数３】
2019032408.tif 000005
【００２２】
また、各式で用いられる行列及びベクトルの次元数は、式（４−１）〜（４−５）の通りである。ただし、ＣはＨＭＭ状態数である。また、Ｍは音声特徴量ベクトルの次元数である。
【００２３】
【数４】
2019032408.tif 000006
【００２４】
（Forward-backward  ＲＮＮを用いた事後確率の計算）
次に、事後確率計算部１２による、Forward-backward  ＲＮＮを用いた事後確率の計算について説明する。事後確率計算部１２は、特徴量抽出部１１によって抽出された音声特徴量のうち、開始時刻から所定時間後までの時刻のそれぞれに対応するフレームごとの音声特徴量と、終了時刻から所定時間前までの時刻のそれぞれに対応するフレームごとの音声特徴量と、を基に、ＮＮで表される音響モデルを用いて、開始時刻から所定時間後の時刻の順方向の事後確率及び終了時刻から所定時間前の時刻の逆方向の事後確率を計算する。
【００２５】
つまり、図２に示すように、事後確率計算部１２は、時刻０から時刻ｔまでの音声特徴量と、時刻Ｔ−ｔから時刻Ｔまでの音声特徴量と、を基に、ＮＮである→φ、←φ、及びφｍｅｒｇｅを用いて、時刻ｔの順方向のＨＭＭ状態の事後確率→ｙｔ及び時刻Ｔ−ｔの逆方向のＨＭＭ状態の事後確率←ｙＴ−ｔを計算する。なお、図２は、第１の実施形態に係る音響モデル学習装置による事後確率の計算について説明するための図である。
【００２６】
ただし、開始時刻を時刻０、終了時刻を時刻Ｔとする。また、→φは、順方向に条件付けられたＲＮＮである。また、←φは、逆方向に条件付けられたＲＮＮである。事後確率計算部１２は、時刻０から時刻Ｔまでのそれぞれの時刻について、順方向のＨＭＭ状態の事後確率及び逆方向のＨＭＭ状態の事後確率を計算することができる。
【００２７】
具体的に、事後確率計算部１２は、式（５−１）〜（５−５）のように、順方向の事後確率ｐ（→ｙｔ｜ｘ１ｘ２，…，ｘＴ）及び逆方向の事後確率ｐ（←ｙＴ−ｔ｜ｘ１ｘ２，…，ｘＴ）を計算する。また、事後確率計算部１２は、式（５−６）のように、音響尤度、すなわち、順方向と逆方向に条件付けられた事後確率ｐ（ｙｔ｜ｘ１ｘ２，…，ｘＴ）を計算する。
【００２８】
【数５】
2019032408.tif 000007
【００２９】
更新部１３は、事後確率計算部１２によって計算された各時刻の順方向の事後確率及び逆方向の事後確率を基に計算した音響尤度を用いて、音響モデルのパラメータを更新する。更新部１３は、エラー計算部１４、ＢＰＴＴ計算部１５、ＳＧＤ更新部１６、収束判定部１７による処理を繰り返すことで、音響モデルのパラメータを更新する。更新部１３は、既知のＮＮのパラメータの更新手法（参考文献：I.  Sutskever,  “Training  Recurrent  Neural  Networks,”  PhD  thesis,  p.  101,  2013.  （ＵＲＬ：http://www.cs.utoronto.ca/~ilya/pubs/ilya_sutskever_phd_thesis.pdf））を用いて更新を行うことができる。
【００３０】
エラー計算部１４は、事後確率計算部１２によって計算された音響尤度を基に、各時刻に対応するフレームごとの損失関数Ｌｔを計算する。エラー計算部１４は、損失関数Ｌｔを、式（６−１）に示すようなＨＭＭ状態の事後確率の予測誤差であるＫＬダイバージェンスの和とすることができる。また、式（６−１）は、式（６−２）のように、負の対数尤度の和として表すことができる。
【００３１】
【数６】
2019032408.tif 000008
【００３２】
ＢＰＴＴ計算部１５は、損失関数Ｌｔを基に、目的関数を計算する。ＢＰＴＴ計算部１５は、ＢＰＴＴによる学習を行う場合、式（７−１）のように目的関数を計算する。一方、ＢＰＴＴ計算部１５は、Truncated  ＢＰＴＴによる学習を行う場合、式（７−２）のように目的関数を計算する。
【００３３】
【数７】
2019032408.tif 000009
【００３４】
Truncated  ＢＰＴＴによれば、目的関数の逐次的な最適化が可能となる。ここで、従来の音響モデル学習装置が、ＢＲＮＮを用いて各フレームの音響尤度を計算する場合、各フレームの計算結果を再帰的に入力する必要があるため、全フレームの計算結果が必要になる。例えば、従来の音響モデル学習装置がＢＲＮＮを用いて音響尤度ｐ（ｙｔ｜ｘ１ｘ２，…，ｘＴ）を計算する場合、式（１−４）に示すように、→ｈ１，→ｈ２，…，→ｈｔ及び←ｈｔ＋１，←ｈｔ＋２，…，←ｈＴが必要になる。これより、例えば、Ｔ＝２０００、ＴＢ＝５０とした場合、時刻２１０（ｔ＝２１０）におけるＢＲＮＮを用いた音響尤度の学習における事後確率ｐ（ｙｔ｜ｘ１ｘ２，…，ｘＴ）の計算に必要な計算結果は、→ｈ１，→ｈ２，…，→ｈ２１０及び←ｈ２２１，←ｈ２２２，…，←ｈ２０００の２０００個である。
【００３５】
例えば、全フレームの計算結果をメモリ上に保持しておく場合、メモリの使用率が増加し、並列処理を行うことが困難になる。一方、全フレームの計算結果を補助記憶装置等に保持しておく場合、計算の際に逐一読み出しが必要になり、処理速度が低下する。
【００３６】
一方、事後確率計算部１２が、Forward-backward  ＲＮＮを用いて各フレームの音響尤度を計算する場合、全フレームの計算結果を必要としない。式（７−２）に示すように、更新部１３は、全フレームをｃｅｉｌ（Ｔ／ＴＢ）個の区間に分割して逐次的に目的関数の最小化を行う（ただし、ＴＢはTruncated  ＢＰＴＴの幅を表す定数）。なお、ｃｅｉｌ（・）は、・を超えない最大の整数を表す。例えば、式（７−２）に示すｋの最大値は、ｃｅｉｌ（Ｔ／ＴＢ）と書くことができる。
【００３７】
このとき、事後確率計算部１２による音響尤度の計算に必要な計算結果の区間は、順方向の事後確率ｐ（→ｙｔ｜ｘ１ｘ２，…，ｘＴ）の計算に必要な区間であるｔ∈［ｋＴＢ＋１，（ｋ＋１）ＴＢ］、及び逆方向の事後確率ｐ（←ｙＴ−ｔ｜ｘ１ｘ２，…，ｘＴ）の計算に必要な区間であるｔ∈［Ｔ−（ｋ＋１）ＴＢ＋１，Ｔ−ｋＴＢ］である。ただし、ｋは時刻ｔが含まれる区間の番号に対応し、ｃｅｉｌ（ｔ／ＴＢ）と表される（ｋ＝０，１，…，［Ｔ／ＴＢ］）。これより、例えば、Ｔ＝２０００、ＴＢ＝５０とした場合、時刻２１０（ｔ＝２１０）におけるForward-backward  ＲＮＮを用いた音響尤度の学習における順方向の事後確率ｐ（→ｙｔ｜ｘ１ｘ２，…，ｘＴ）及び逆方向の事後確率ｐ（←ｙＴ−ｔ｜ｘ１ｘ２，…，ｘＴ）の計算に必要な計算結果は、ｋ＝ｃｅｉｌ（２１０／５０）＝４なので、→ｈ２０１，→ｈ２０２，…，→ｈ２５０及び←ｈ１７５１，←ｈ１７５２，…，←ｈ１８００の１００個である。
【００３８】
ＳＧＤ更新部１６は、目的関数が最適化されるように音響モデルパラメータΛを更新する。また、収束判定部１７は、更新により音響モデルパラメータΛが収束したか否かを判定する。
【００３９】
ここで、収束判定部１７によって音響モデルパラメータΛが収束していないと判定された場合、事後確率計算部１２及び更新部１３は、更新後の音響モデルパラメータΛを用いて、さらに事後確率の計算及び音響モデルパラメータΛの更新を行う。また、例えば、収束判定部１７は、音響モデルパラメータΛの更新により予測誤差が改善しない場合、ＳＧＤ更新部１６における学習率を０．０４から減少させていき、学習率が０．０００４となった場合に収束したと判定してもよい。
【００４０】
［第１の実施形態に係る音声認識装置の構成］
次に、図３を用いて、第１の実施形態に係る音声認識装置の構成について説明する。図３は、第１の実施形態に係る音声認識装置の構成の一例を示す図である。図３に示すように、音声認識装置２０は、特徴量抽出部２１、事後確率計算部２２、単語列探索部２３及び記憶部２４を有する。
【００４１】
記憶部２４は、音響モデル及び言語モデルを記憶する。具体的には、記憶部２４は、音響モデル学習装置１０で学習済みの音響モデルパラメータΛを記憶する。また、言語モデルは、音素や単語といった多数のシンボル系列から構成されている。
【００４２】
特徴量抽出部２１は、所定の開始時刻から所定の終了時刻までの音声データから、各時刻に対応するフレームごとの音声特徴量を抽出する。特徴量抽出部２１は、音響モデル学習装置１０の特徴量抽出部１１と同様の処理を行う。ただし、特徴量抽出部２１には認識用音声データが入力される。
【００４３】
事後確率計算部２２は、特徴量抽出部２１によって抽出された音声特徴量のうち、開始時刻から所定時間後までの時刻のそれぞれに対応するフレームごとの音声特徴量と、終了時刻から所定時間前までの時刻のそれぞれに対応するフレームごとの音声特徴量と、を基に、ＮＮで表される音響モデルを用いて、開始時刻から所定時間後の時刻の順方向の事後確率及び終了時刻から所定時間前の時刻の逆方向の事後確率を計算する。事後確率計算部２２は、音響モデル学習装置１０の事後確率計算部１２と同様の処理を行う。
【００４４】
単語列探索部２３は、事後確率計算部２２によって計算された各時刻の順方向の事後確率及び逆方向の事後確率を基に、言語モデルに含まれる単語列から音声データに対応する単語列を探索する。そして、単語列探索部２３は、探索した単語列を音声認識の結果（認識単語列）として出力する。
【００４５】
なお、音響モデル学習装置１０で学習した音響モデルパラメータは、既知の音声認識技術（参考文献：G.  Hinton  et  al.,  “Deep  Neural  Networks  for  Acoustic  Modeling  in  Speech  Recognition,  The  shared  views  of  four  research  groups,”  IEEE  SIGNAL  PROCESSING  MAGAZINE,  Vol.  29，No.  6,  pp.  82−97,  2012.）において用いられてもよい。
【００４６】
［第１の実施形態に係る音響モデル学習装置の処理］
図４を用いて、音響モデル学習装置１０の処理の流れについて説明する。図４は、第１の実施形態に係る音響モデル学習装置の処理の流れを示すフローチャートである。図４に示すように、まず、音響モデル学習装置１０は、音響モデルを読み込む（ステップＳ１０１）。このとき、具体的には、音響モデル学習装置１０は、音響モデル記憶部１８から音響モデルパラメータΛを読み込む。次に、音響モデル学習装置１０は、学習用音声データを読み込む（ステップＳ１０２）。そして、音響モデル学習装置１０は、読み込んだ学習用音声データに対応する正解ＨＭＭ状態系列を読み込む（ステップＳ１０３）。
【００４７】
特徴量抽出部１１は、学習用音声データから特徴量を抽出する（ステップＳ１０４）。
そして、事後確率計算部１２は、ＨＭＭ状態の事後確率を計算する（ステップＳ１０５）。このとき、事後確率計算部１２は、Forward-backward  ＲＮＮを用いて事後確率を計算する。
【００４８】
エラー計算部１４は、フレームごとの損失関数を計算するエラー計算を行う（ステップＳ１０６）。そして、ＢＰＴＴ計算部１５は、損失関数を音響尤度として目的関数を計算するＢＰＴＴ計算を行う（ステップＳ１０７）。次に、ＳＧＤ更新部１６は、目的関数が最適化されるように音響モデルパラメータΛを更新するＳＧＤ更新を行う（ステップＳ１０８）。
【００４９】
収束判定部１７は、音響モデルパラメータΛが収束したか否かを判定する（ステップＳ１０９）。収束判定部１７によって音響モデルパラメータΛが収束したと判定されなかった場合（ステップＳ１０９、Ｎｏ）、音響モデル学習装置１０は、ステップＳ１０５からステップＳ１０８を繰り返す。
【００５０】
一方、収束判定部１７によって音響モデルパラメータΛが収束したと判定された場合（ステップＳ１０９、Ｙｅｓ）、音響モデル学習装置１０は、音響モデルパラメータΛを出力する（ステップＳ１１０）。このとき、例えば、音響モデル学習装置１０は、更新済みの音響モデルパラメータΛを音声認識装置２０の記憶部２４に記憶させる。
【００５１】
［第１の実施形態に係る音声認識装置の処理］
図５を用いて、音声認識装置２０の処理の流れについて説明する。図５は、第１の実施形態に係る音声認識装置の処理の流れを示すフローチャートである。図５に示すように、まず、音声認識装置２０は、音響モデルを読み込む（ステップＳ２０１）。このとき、具体的には、音声認識装置２０は、記憶部２４から学習済みの音響モデルパラメータΛを読み込む。次に、音声認識装置２０は、言語モデルを読み込む（ステップＳ２０２）。そして、音声認識装置２０は、認識用音声データを読み込む（ステップＳ２０３）。
【００５２】
特徴量抽出部２１は、認識用音声データから特徴量を抽出する（ステップＳ２０４）。
そして、事後確率計算部２２は、ＨＭＭ状態の事後確率を計算する（ステップＳ２０５）。このとき、事後確率計算部２２は、Forward-backward  ＲＮＮを用いて事後確率を計算する。次に、単語列探索部２３は、事後確率を基に単語列の探索を行う（ステップＳ２０６）。そして、単語列探索部２３は、探索した単語列を音声認識の結果として出力する（ステップＳ２０７）。
【００５３】
［第１の実施形態の効果］
特徴量抽出部１１は、所定の開始時刻から所定の終了時刻までの音声データから、各時刻に対応するフレームごとの音声特徴量を抽出する。また、事後確率計算部１２は、特徴量抽出部１１によって抽出された音声特徴量のうち、開始時刻から所定時間後までの時刻のそれぞれに対応するフレームごとの音声特徴量と、終了時刻から所定時間前までの時刻のそれぞれに対応するフレームごとの音声特徴量と、を基に、ＮＮで表される音響モデルを用いて、開始時刻から所定時間後の時刻の順方向の事後確率及び終了時刻から所定時間前の時刻の逆方向の事後確率を計算する。また、更新部１３は、事後確率計算部１２によって計算された各時刻の順方向の事後確率及び逆方向の事後確率を基に計算した音響尤度を用いて、音響モデルのパラメータを更新する。これにより、本実施形態では、Truncated  ＢＰＴＴのような逐次的な学習方法を用いた場合に、記憶領域が限られている場合であっても、処理の並列度の低下や、速度の低下が発生しにくくなる。このため、本実施形態によれば、ＮＮに基づく音響モデルの、双方向の時系列パターンの逐次的な学習を効率的に行う。
【００５４】
また、逐次的な学習を行うことで、ＳＧＤ更新部１６におけるミニバッチ数を増加させることができ、より多くの発話を並列で処理することが可能となる。また、本実施形態によれば、処理の効率化により、従来学習できなかった多量のパラメータを持ったモデルの学習が可能となるため、音声認識だけでなく、特徴量を基にクラス分類を行う様々なパターン認識においてクラス分類精度を向上させることができる。
【００５５】
実施形態による音声認識精度と、従来技術による音声認識精度を比較した実験の結果を表１に示す。実験では、実施形態（Forward-backward  ＲＮＮ）の音響モデル学習装置１０を用いて学習した音響モデルを使って連続単語認識処理（参考文献：T.  Yoshioka,  K.  Ohnishi,  F.  Fang,  and  T.  Nakatani,  “Noise  robust  speech  recognition  using  recent  developments  in  neural  networks  for  computer  vision,”  in  2016  IEEE  International  Conference  on  Acoustics,  Speech  and  Signal  Processing  (ICASSP),  2016,  pp.  5730-5734.）を行った際の単語誤り率（ＷＥＲ：Word  Error  Rate）を、従来技術（ＣＮＮ）及び従来技術（ＲＮＮ）のものと比較した。
【００５６】
【表１】
2019032408.tif 000010
【００５７】
実験では、Forward-backward  ＲＮＮの活性化関数として３層の３００個のフィルタを持つＣＬＳＴＭを用いた。また、実験条件として、入力音声の特徴量は、４０次元のＦＢＡＮＫ＋ΔＦＢＡＮＫ＋ΔΔＦＢＡＮＫとした。すなわち、実験条件として、ＲＮＮへ入力する特徴量は、４０×３＝１２０個を入力単位とした。また、実験条件として、従来技術において、ＮＮへ入力する特徴量は、学習用音声データのデータセットを用いた計算された平均分散モデルの正規化パラメータを用いて正規化した。また、実験条件としてＨＭＭ状態数Ｃ＝３０４２とした。また、実験条件として、Truncated  ＢＰＴＴに基づく学習におけるＳＧＤの学習率を０．０４、並列処理する発話を１２８個とした。また、言語モデルとしてバイグラムモデルを用いた。
【００５８】
表１に示すように、実施形態（Forward-backward  ＲＮＮ）の単語誤り率は、従来技術（ＣＮＮ）及び従来技術（ＲＮＮ）のものよりも小さかった。このため、実施形態による音声認識は、従来技術よりも高い性能を持っていることがいえる。
【００５９】
事後確率計算部１２は、ＬＳＴＭ又はＣＬＳＴＭを活性化関数として用いたＮＮを用いる。このように、本実施形態では既知の活性化関数を用いた音響モデルの学習を行うことができる。
【００６０】
特徴量抽出部２１は、所定の開始時刻から所定の終了時刻までの音声データから、各時刻に対応するフレームごとの音声特徴量を抽出する。また、事後確率計算部２２は、特徴量抽出部２１によって抽出された音声特徴量のうち、開始時刻から所定時間後までの時刻のそれぞれに対応するフレームごとの音声特徴量と、終了時刻から所定時間前までの時刻のそれぞれに対応するフレームごとの音声特徴量と、を基に、ＮＮで表される音響モデルを用いて、開始時刻から所定時間後の時刻の順方向の事後確率及び終了時刻から所定時間前の時刻の逆方向の事後確率を計算する。また、単語列探索部２３は、事後確率計算部２２によって計算された各時刻の順方向の事後確率及び逆方向の事後確率を基に、言語モデルに含まれる単語列から音声データに対応する単語列を探索する。これにより、本実施形態の音響モデル学習装置１０で学習した音響モデルパラメータを用いた音声認識を行うことができる。
【００６１】
［システム構成等］
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、ＣＰＵ及び当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００６２】
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００６３】
［プログラム］
一実施形態として、音響モデル学習装置１０及び音声認識装置２０は、パッケージソフトウェアやオンラインソフトウェアとして、それぞれ上記の音響モデルの学習又は音声認識を実行する音響モデル学習プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の音響モデル学習プログラムを情報処理装置に実行させることにより、情報処理装置を音響モデル学習装置１０として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）等の移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistant）等のスレート端末等がその範疇に含まれる。
【００６４】
また、音響モデル学習装置１０は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の音響モデル学習の学習に関するサービスを提供する音響モデル学習サーバ装置として実装することもできる。例えば、音響モデル学習サーバ装置は、学習用音声データを入力とし、学習済みの音響モデルパラメータを出力とする音響モデル学習サービスを提供するサーバ装置として実装される。この場合、音響モデル学習サーバ装置は、Ｗｅｂサーバとして実装することとしてもよいし、アウトソーシングによって上記の音響モデルの学習に関するサービスを提供するクラウドとして実装することとしてもかまわない。
【００６５】
図６は、音響モデル学習プログラム、又は音声認識プログラムを実行するコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０、ＣＰＵ１０２０を有する。また、コンピュータ１０００は、ハードディスクドライブインタフェース１０３０、ディスクドライブインタフェース１０４０、シリアルポートインタフェース１０５０、ビデオアダプタ１０６０、ネットワークインタフェース１０７０を有する。これらの各部は、バス１０８０によって接続される。
【００６６】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１及びＲＡＭ（Random  Access  Memory）１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１１００に挿入される。シリアルポートインタフェース１０５０は、例えばマウス１１１０、キーボード１１２０に接続される。ビデオアダプタ１０６０は、例えばディスプレイ１１３０に接続される。
【００６７】
ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、音響モデル学習装置１０又は音声認識装置２０の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール１０９３として実装される。プログラムモジュール１０９３は、例えばハードディスクドライブ１０９０に記憶される。例えば、音響モデル学習装置１０又は音声認識装置２０における機能構成と同様の処理を実行するためのプログラムモジュール１０９３が、ハードディスクドライブ１０９０に記憶される。なお、ハードディスクドライブ１０９０は、ＳＳＤにより代替されてもよい。
【００６８】
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ１０９４として、例えばメモリ１０１０やハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して実行する。
【００６９】
なお、プログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、プログラムモジュール１０９３及びプログラムデータ１０９４は、ネットワーク（ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール１０９３及びプログラムデータ１０９４は、他のコンピュータから、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【００７０】
１０  音響モデル学習装置
１１、２１  特徴量抽出部
１２、２２  事後確率計算部
１３  更新部
１４  エラー計算部
１５  ＢＰＴＴ計算部
１６  ＳＧＤ更新部
１７  収束判定部
１８  音響モデル記憶部
２０  音声認識装置
２３  単語列探索部
２４  記憶部
【図１】
2019032408.tif 000011
【図２】
2019032408.tif 000012
【図３】
2019032408.tif 000013
【図４】
2019032408.tif 000014
【図５】
2019032408.tif 000015
【図６】
2019032408.tif 000016