(57)【要約】【課題】少ない計算時間で一定の音声認識精度を有する音響モデルを学習する技術を提供する。【解決手段】音響モデルを用いて学習用コーパスCjの要素である音声データのロスを計算するロス計算部と、ロスが小さいことを示す所定の範囲にある音声データを要素とする学習用コーパスCjの部分集合の和であるカリキュラムコーパスを生成するカリキュラムコーパス生成部と、カリキュラムコーパスを用いて音響モデルを更新する音響モデル更新部と、所定の終了条件を満たす場合は音響モデルを出力し、所定の終了条件を満たさない場合はロス計算部に実行制御を移す第１終了条件判定部とを含む音響モデル学習装置であって、音響モデル更新部は、音声データがカリキュラムコーパスの要素として選定された回数が大きいほど小さくなるような音声データに対する重みを用いて、カリキュラムコーパスの要素である音声データに対する勾配を重み付けして音響モデルを更新する。【選択図】図１
2020126141.tif 000002
【特許請求の範囲】
【請求項１】
Jを1以上の整数、Cj(j=1, …, J)を音声データの集合である学習用コーパスとし、
学習用コーパスCj(j=1, …, J)に対して、音響モデルθを用いて学習用コーパスCjの要素である音声データのロスを計算するロス計算部と、
前記ロスが小さいことを示す所定の範囲にある音声データを要素とする学習用コーパスCj(j=1, …, J)の部分集合の和であるカリキュラムコーパスCを生成するカリキュラムコーパス生成部と、
カリキュラムコーパスCを用いて、音響モデルθを更新する音響モデル更新部と、
所定の終了条件を満たす場合は音響モデルθを出力し、前記所定の終了条件を満たさない場合は前記ロス計算部に実行制御を移す第１終了条件判定部と、
を含む音響モデル学習装置であって、
前記音響モデル更新部は、
音声データがカリキュラムコーパスの要素として選定された回数nが大きいほど小さくなるような音声データに対する重みwを用いて、カリキュラムコーパスCの要素である音声データに対する勾配を重み付けして、音響モデルθを更新する
音響モデル学習装置。
【請求項２】
Jを1以上の整数、Cj(j=1, …, J)を音声データの集合である学習用コーパスとし、
学習用コーパスCj(j=1, …, J)に対して、音響モデルθの初期値である初期音響モデルθiniを用いて学習用コーパスCjの要素である音声データのロスを計算するロス計算部と、
前記ロスが小さいことを示す所定の範囲にある音声データを要素とする学習用コーパスCj(j=1, …, J)の部分集合の和であるカリキュラムコーパスCを生成するカリキュラムコーパス生成部と、
カリキュラムコーパスCを用いて、音響モデルθを更新する音響モデル更新部と、
所定の終了条件を満たす場合は音響モデルθを出力し、前記所定の終了条件を満たさない場合は前記カリキュラムコーパス生成部に実行制御を移す第１終了条件判定部と、
を含む音響モデル学習装置であって、
前記音響モデル更新部は、
音声データがカリキュラムコーパスの要素として選定された回数nが大きいほど小さくなるような音声データに対する重みwを用いて、カリキュラムコーパスCの要素である音声データに対する勾配を重み付けして、音響モデルθを更新する
音響モデル学習装置。
【請求項３】
請求項１または２に記載の音響モデル学習装置であって、
mをカリキュラムコーパス生成回数、αを所定の定数とし、
音声データに対する重みwは、αm/nと表される
ことを特徴とする音響モデル学習装置。
【請求項４】
Jを1以上の整数、Cj(j=1, …, J)を音声データの集合である学習用コーパスとし、
音響モデル学習装置が、学習用コーパスCj(j=1, …, J)に対して、音響モデルθを用いて学習用コーパスCjの要素である音声データのロスを計算するロス計算ステップと、
前記音響モデル学習装置が、前記ロスが小さいことを示す所定の範囲にある音声データを要素とする学習用コーパスCj(j=1, …, J)の部分集合の和であるカリキュラムコーパスCを生成するカリキュラムコーパス生成ステップと、
前記音響モデル学習装置が、カリキュラムコーパスCを用いて、音響モデルθを更新する音響モデル更新ステップと、
前記音響モデル学習装置が、所定の終了条件を満たす場合は音響モデルθを出力し、前記所定の終了条件を満たさない場合は前記ロス計算ステップに実行制御を移す第１終了条件判定ステップと、
を含む音響モデル学習方法であって、
前記音響モデル更新ステップは、
音声データがカリキュラムコーパスの要素として選定された回数nが大きいほど小さくなるような音声データに対する重みwを用いて、カリキュラムコーパスCの要素である音声データに対する勾配を重み付けして、音響モデルθを更新する
音響モデル学習方法。
【請求項５】
Jを1以上の整数、Cj(j=1, …, J)を音声データの集合である学習用コーパスとし、
音響モデル学習装置が、学習用コーパスCj(j=1, …, J)に対して、音響モデルθの初期値である初期音響モデルθiniを用いて学習用コーパスCjの要素である音声データのロスを計算するロス計算ステップと、
前記音響モデル学習装置が、前記ロスが小さいことを示す所定の範囲にある音声データを要素とする学習用コーパスCj(j=1, …, J)の部分集合の和であるカリキュラムコーパスCを生成するカリキュラムコーパス生成ステップと、
前記音響モデル学習装置が、カリキュラムコーパスCを用いて、音響モデルθを更新する音響モデル更新ステップと、
前記音響モデル学習装置が、所定の終了条件を満たす場合は音響モデルθを出力し、前記所定の終了条件を満たさない場合は前記カリキュラムコーパス生成ステップに実行制御を移す第１終了条件判定ステップと、
を含む音響モデル学習方法であって、
前記音響モデル更新ステップは、
音声データがカリキュラムコーパスの要素として選定された回数nが大きいほど小さくなるような音声データに対する重みwを用いて、カリキュラムコーパスCの要素である音声データに対する勾配を重み付けして、音響モデルθを更新する
音響モデル学習方法。
【請求項６】
請求項４または５に記載の音響モデル学習方法であって、
mをカリキュラムコーパス生成回数、αを所定の定数とし、
音声データに対する重みwは、αm/nと表される
ことを特徴とする音響モデル学習方法。
【請求項７】
請求項１ないし３のいずれか１項に記載の音響モデル学習装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声認識における音響モデルを学習する技術に関する。
【背景技術】
【０００２】
近年、音声認識の実用場面において、深層ニューラルネットワーク(Deep Neural Networks, DNN)を用いた技術が広く用いられている。DNNを用いて音響モデルを安定的に学習する方法の一つとして、非特許文献１に記載のカリキュラム学習を用いる方法がある。カリキュラム学習では、例えば、学習データの学習難易度に基づいて多彩な学習データをいくつかのクラスにクラスタリングし、より平易な学習データから学習を行う。カリキュラム学習では適切なタイミングで適切な難易度の学習データを学習させていくため、カリキュラム学習は複数の環境に同時に適応するようなモデルを学習するのに有効である。
【０００３】
現在、カリキュラム学習として様々な手法が提案されている。例えば、非特許文献２に記載のSPL(Self-Paced Learning)は、自動で学習用カリキュラムを獲得する手法である。また、SPLに多様性の観点を考慮した手法であるSPLD(Self-Paced Learning with Diversity)（非特許文献３）と呼ばれる手法もある。
【０００４】
ここで、SPLDに基づく音響モデルの学習について説明する。SPLDに基づく音響モデルの学習では、以下のような手順に従って、複数の学習用コーパスを用いて音響モデルを学習する。
（１）すべての学習用コーパスに対して、現時点で得られている音響モデルを用いて、学習用コーパスの要素である音声データのロスを計算する。ここで、ロスとは、音響モデルを用いて音声データから得られる出力の正しさの程度を表す損失関数の値のことである。（２）学習用コーパスごとに、当該学習用コーパスの要素である音声データをロスが小さい順にソート（つまり、昇順ソート）する。
（３）所定の閾値以下の（より小さい）ロスの音声データを学習データとして選定する。閾値には、例えば次式を用いることができる。
【０００５】
【数１】
2020126141.tif 000003
【０００６】
ただし、λ，γは定数である。なお、λ，γをそれぞれ年齢重み、多様性重みと呼ぶこともある。また、iは音声データに付与される、各学習用コーパスにおける昇順ソートでの順位を表す。したがって、iは1以上の整数である。
【０００７】
ここで、定数λ，γにはそれぞれ次のような性質がある。定数λについては、その値が大きいほど、よりロスの大きい音声データ（つまり、学習が難しい音声データ）を学習データとして選定することになるという性質がある。また、定数γについては、その値が大きいほど、複数の学習用コーパスから広く音声データを選定しやすくなるという性質がある。
（４）（３）で選定した音声データを一つのコーパスとして統合し、当該コーパスを用いて音響モデルを学習する。
（５）（１）〜（４）の処理を繰り返す。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】Y. Bengio, et al., “Curriculum Learning”, Proceedings of the 26th annual international conference on machine learning, ACM, 2009.
【非特許文献２】M. Pawan Kumar, Benjamin Packer, Daphne Koller, “Self-paced Learning for Latent Variable Models”, Advances in Neural Information Processing Systems, pp.1189-1197, 2010.
【非特許文献３】L. Jiang, et al., “Self-paced Learning with Diversity” , Advances in Neural Information Processing Systems, 2014.
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上記説明したSPLDに基づく音響モデルの学習からわかるように、カリキュラム学習に基づく音響モデルの学習には、下記の問題がある。
（問題１）ロスが大きい音声データ、つまり、学習難易度が高い音声データは、学習過程の後半になってから学習データとして選定されるため、音響モデルの学習に利用される回数が少なくなり、学習終了までに十分に学習されないことがある。
【００１０】
つまり、学習難易度が高い音声データを十分に用いることなく、学習が終了することもあるため、カリキュラム学習に基づく音響モデルの学習では、一定の音声認識精度を有する音響モデルを学習することができないことがある。
【００１１】
そこで本発明は、少ない計算時間で一定の音声認識精度を有する音響モデルを学習する技術を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明の一態様は、Jを1以上の整数、Cj(j=1, …, J)を音声データの集合である学習用コーパスとし、学習用コーパスCj(j=1, …, J)に対して、音響モデルθを用いて学習用コーパスCjの要素である音声データのロスを計算するロス計算部と、前記ロスが小さいことを示す所定の範囲にある音声データを要素とする学習用コーパスCj(j=1, …, J)の部分集合の和であるカリキュラムコーパスCを生成するカリキュラムコーパス生成部と、カリキュラムコーパスCを用いて、音響モデルθを更新する音響モデル更新部と、所定の終了条件を満たす場合は音響モデルθを出力し、前記所定の終了条件を満たさない場合は前記ロス計算部に実行制御を移す第１終了条件判定部と、を含む音響モデル学習装置であって、前記音響モデル更新部は、音声データがカリキュラムコーパスの要素として選定された回数nが大きいほど小さくなるような音声データに対する重みwを用いて、カリキュラムコーパスCの要素である音声データに対する勾配を重み付けして、音響モデルθを更新する。
【００１３】
本発明の一態様は、Jを1以上の整数、Cj(j=1, …, J)を音声データの集合である学習用コーパスとし、学習用コーパスCj(j=1, …, J)に対して、音響モデルθの初期値である初期音響モデルθiniを用いて学習用コーパスCjの要素である音声データのロスを計算するロス計算部と、前記ロスが小さいことを示す所定の範囲にある音声データを要素とする学習用コーパスCj(j=1, …, J)の部分集合の和であるカリキュラムコーパスCを生成するカリキュラムコーパス生成部と、カリキュラムコーパスCを用いて、音響モデルθを更新する音響モデル更新部と、所定の終了条件を満たす場合は音響モデルθを出力し、前記所定の終了条件を満たさない場合は前記カリキュラムコーパス生成部に実行制御を移す第１終了条件判定部と、を含む音響モデル学習装置であって、前記音響モデル更新部は、音声データがカリキュラムコーパスの要素として選定された回数nが大きいほど小さくなるような音声データに対する重みwを用いて、カリキュラムコーパスCの要素である音声データに対する勾配を重み付けして、音響モデルθを更新する。
【発明の効果】
【００１４】
本発明によれば、少ない計算時間で一定の音声認識精度を有する音響モデルを学習することができる。
【図面の簡単な説明】
【００１５】
【図１】音響モデル学習装置１００の構成の一例を示す図である。
【図２】音響モデル学習装置１００の動作の一例を示す図である。
【図３】音響モデル更新部１３０の構成の一例を示す図である。
【図４】音響モデル更新部１３０の動作の一例を示す図である。
【図５】音響モデル学習装置２００の構成の一例を示す図である。
【図６】音響モデル学習装置２００の動作の一例を示す図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
【００１７】
＜技術的背景＞
上記問題１を解決するために、音響モデルのパラメータ更新のための勾配算出処理において、音声データごとにカウントした学習に用いた回数が大きいほど小さくなるような音声データの重みを用いて、音声データに対する勾配の重み付けを行う。このようにすると、“パラメータ更新において、繰り返し学習に用いられる音声データの影響を相対的に小さくする一方で、新しく学習に用いることになった音声データの影響を相対的に大きくする”ことができる。
【００１８】
＜第１実施形態＞
音響モデル学習装置１００は、音声データの集合である学習用コーパスCj（j=1, …, J、Jは1以上の整数）を用いて、音響モデルθを学習する。この際、音響モデル学習装置１００は、音響モデルθの初期値である初期音響モデルθiniを用いて学習を開始する。ここで、初期音響モデルθiniは、ある程度の大きさがあるコーパスを用いて事前にDNN学習した、学習済みの音響モデルである。なお、“ある程度の大きさ”とは、一般にDNN学習に充分と思われる量（例えば、100時間程度の音声データ）である。また、学習用コーパスCj(j=1, …, J)は、所定の基準に着目し音声データをクラスタリングすることにより、生成した音声データの集合である。クラスタリングの基準は、例えば、発話タスク（例えば、短文発話、自然発話）、発話環境（例えば、残響や雑音の有無、残響や雑音の種類、残響や雑音の強度）、音声帯域、話者情報（例えば、性別、年代、・方言）である。
【００１９】
以下、図１〜図２を参照して音響モデル学習装置１００について説明する。図１に示すように音響モデル学習装置１００は、ロス計算部１１０、カリキュラムコーパス生成部１２０、音響モデル更新部１３０、第１終了条件判定部１４０、記録部１９０を含む。記録部１９０は、音響モデル学習装置１００の処理に必要な情報を適宜記録する構成部である。記録部１９０は、例えば、学習用コーパスCj(j=1, …, J)、音響モデルθを記録する。
【００２０】
図２に従い音響モデル学習装置１００の動作について説明する。
【００２１】
Ｓ１１０において、ロス計算部１１０は、学習用コーパスCj(j=1, …, J)を入力とし、学習用コーパスCj(j=1, …, J)に対して、音響モデルθを用いて学習用コーパスCjの要素である音声データのロスを計算し、当該ロスを出力する。ここで、ロスとは、音響モデルを用いて音声データから得られる出力の正しさの程度を表す損失関数の値のことである。また、ロス計算部１１０による最初の処理では、初期音響モデルθiniを用いるが、２回目以降の処理では、学習中の音響モデルθを用いる。
【００２２】
Ｓ１２０において、カリキュラムコーパス生成部１２０は、学習用コーパスCj(j=1, …, J)とＳ１１０で計算したロスを入力とし、Ｓ１１０で計算したロスが小さいことを示す所定の範囲にある音声データを要素とする学習用コーパスCj(j=1, …, J)の部分集合の和であるカリキュラムコーパスCを生成し、カリキュラムコーパスCを出力する。ここで、ロスが小さいことを示す所定の範囲にあるとは、ロスが所定の閾値以下であること、または、ロスが所定の閾値より小さいことのいずれかであることをいう。また、カリキュラムコーパス生成部１２０は、カリキュラムコーパスCの生成に用いた音声データ（つまり、カリキュラムコーパスCの要素である音声データ）に対して、音声データがカリキュラムコーパスの要素として選定された回数nを1だけインクリメントすることにより更新する。なお、すべての音声データに対して、回数nの初期値として0を設定しておく。
【００２３】
以下、カリキュラムコーパス生成部１２０がSPLDに基づいてカリキュラムコーパスCを生成する手順について説明する。なお、SPLDはあくまで一例であり、カリキュラムコーパス生成部１２０はSPLD以外のカリキュラム学習に基づいてカリキュラムコーパスを生成するようにしてもよい。
【００２４】
（１）学習用コーパスCj(j=1, …, J)に対して、学習用コーパスCjごとに、当該学習用コーパスCjの要素である音声データをロスが小さい順にソートする。
（２）学習用コーパスCj(j=1, …, J)に対して、学習用コーパスCjごとに、所定の閾値以下の（より小さい）ロスの音声データを学習データとして選定する。つまり、カリキュラムコーパスCを構成する学習用コーパスCjの部分集合の要素として、当該音声データを加える。また、当該音声データがカリキュラムコーパスの要素として選定された回数nを更新し、記録する。ここで、ロスが小さい音声データから順に閾値と比較していく場合、学習用コーパスCjの要素である音声データは昇順ソートされているため、ロスが閾値より大きい（以上）のデータが出現した時点で当該比較処理を打ち切ることができる。
（３）（２）で生成した、所定の閾値以下の（より小さい）ロスの音声データを要素とする学習用コーパスCjの部分集合を一つのコーパスとして統合し、カリキュラムコーパスCを生成する。したがって、カリキュラムコーパスCは、学習用コーパスCj(j=1, …, J)の部分集合の和集合となる。
【００２５】
閾値の定義式には先述の式(1)を用いることができる。式(1)に出現する定数λ, γは、カリキュラムコーパス生成の回数を重ねるごとに、徐々に大きくするとよい。このようのうにすると、λ, γが大きくなるにつれ、閾値thriも大きくなり、その結果、ロスの大きい音声データを学習データとしてカリキュラムコーパスに取り込むことができ、学習難易度が高い音声データが増える形で、徐々に学習に用いるデータ量を増やすことができる。なお、λ, γは音響モデル学習装置１００に対して外部から与えるようにすればよい。
【００２６】
Ｓ１３０において、音響モデル更新部１３０は、Ｓ１２０で生成したカリキュラムコーパスCを入力として、Ｓ１２０で生成したカリキュラムコーパスCを用いて音響モデルθを更新し、音響モデルθを出力する。音響モデルの更新には、例えば、確率的勾配降下法(stochastic gradient descent, SGD)のような公知のDNN学習を用いることができる。以下、図３〜図４を参照して音響モデル更新部１３０を説明する。図３は、音響モデル更新部１３０の構成を示すブロック図である。図４は、音響モデル更新部１３０の動作を示すフローチャートである。図３に示すように音響モデル更新部１３０は、初期化部１３１、パラメータ更新部１３２と、カウンタ更新部１３３と、第２終了条件判定部１３４を含む。
【００２７】
図４に従い音響モデル更新部１３０の動作について説明する。
【００２８】
Ｓ１３１において、初期化部１３１は、カウンタtを初期化する。具体的には、t=1とする。
【００２９】
Ｓ１３２において、パラメータ更新部１３２は、カリキュラムコーパスCを用いて音響モデルθのパラメータを更新する。以下、SGDに基づくパラメータ更新処理について説明する。
【００３０】
（１）カリキュラムコーパスCを用いてランダムバッチを生成する。ここで、ランダムバッチとは、カリキュラムコーパスCの要素である音声データをランダムに選択することにより得られる、カリキュラムコーパスCの部分集合である。
（２）ランダムバッチの要素である音声データに対して、ロスを計算する。
（３）（２）で計算したロスを用いて音声データに対する勾配を計算し、当該勾配に重みwを乗じたものを最終的な勾配とする。音声データに対する重みwには、音声データがカリキュラムコーパスの要素として選定された回数nが大きいほど小さくなる重みを用いる。例えば、音声データに対する重みwを1/nとする方法が考えられる。
【００３１】
ただし、この方法は、学習データ選定の繰り返しにつれ、学習データ全体のロスの傾向が小さい方に大きく傾いていくため、十分に学習がなされないまま収束してしまう懸念がある。当該懸念を解消するため、カリキュラムコーパス生成回数を用いて、ロスの全体的な逓減を抑制することを考える。すなわち、mをカリキュラムコーパス生成回数、αを所定の定数とし、1/nの代わりにαm/nを音声データに対する重みwとする。ここで、αは重みwの大きさを調整するための定数である。αは任意の実数値を取りうるが、値が大きいと学習が失敗してしまうため、学習条件にあわせて適切な値とする必要がある。m/nが1以上となるため、αは1未満の実数とするのが好ましい。
【００３２】
以下、αの例についていくつか説明する。例えば、学習開始当初から選択されている音声データに対する重みについては調節をせず、2回目以降に選択される音声データについて重みを付けたい場合には、α=1とするとよい。また、学習開始当初から選択される音声データについてはm/n=1となることを考慮し、繰り返し何回も選択される音声データの寄与を抑制し、比較的後半に選択される音声データの寄与を強調するのをバランスよく行いたい場合には、α=0.5とするとよい。この場合、全体としてのロスの平均値も安定するため、学習の収束を妨げないメリットがある。したがって、実際には、α=0.5を初期値として、学習条件（学習の特性）に合わせて適宜調整し、αを決定するのがよいと考えられる。
（４）（３）で計算した勾配に基づいてパラメータを更新する。
【００３３】
（３）、（４）からわかるように、音声データがカリキュラムコーパスの要素として選定された回数nが大きいほど小さくなるような音声データに対する重みwを用いて、カリキュラムコーパスCの要素である音声データに対する勾配を重み付けして、音響モデルθを更新する。
【００３４】
Ｓ１３３において、カウンタ更新部１３３は、カウンタtを1だけインクリメントする。具体的には、t←t+1とする。
【００３５】
Ｓ１３４において、第２終了条件判定部１３４は、カウンタtが所定の更新回数T（Tは1以上の整数）に達した場合（つまり、t>Tとなり、終了条件が満たされた場合）は、そのときの音響モデルθを出力して、処理を終了する。それ以外の場合、Ｓ１３２の処理に戻る。つまり、音響モデル更新部１３０は、Ｓ１３２〜Ｓ１３４の処理を繰り返す。
【００３６】
なお、更新回数Tは、SDGに基づく音響モデルの学習を単独で実行する場合の更新回数に比べて小さい値とするのがよい。これは、SDGに基づく音響モデルの学習を単独で実行する場合は、学習に用いるコーパスを固定した上で収束するまで学習するのに対して、音響モデル更新部１３０はあくまで音響モデル学習装置１００を構成する一部であり、音響モデル更新部１３０による学習はカリキュラムコーパスの更新を繰り返しながら複数回実行されるためである。
【００３７】
Ｓ１４０において、第１終了条件判定部１４０は、所定の終了条件を満たす場合は音響モデルθを出力し、処理を終了する。一方、所定の終了条件を満たさない場合は、ロス計算部１１０に実行制御を移す（Ｓ１１０の処理に戻る）。つまり、音響モデル学習装置１００は、Ｓ１１０〜Ｓ１４０の処理を繰り返す。所定の終了条件として、例えば、カウンタsが所定の更新回数S（Sは1以上の整数）に達した否かという条件を用いることができる。この場合、Sはカリキュラムコーパス生成回数mの上限となる。また、事前に用意した検証用コーパス(validation corpus)に対して音響モデルθを用いて計算されるフレーム正確度(frame accuracy)の改善の有無を所定の終了条件としてもよい。この場合、第１終了条件判定部１４０は、フレーム正確度の改善の有無をチェックし、改善がない場合は音響モデルθを出力し、処理を終了し、改善がある場合はＳ１１０の処理に戻るようにしてもよい。
【００３８】
本実施形態の発明によれば、少ない計算時間で一定の音声認識精度を有する音響モデルを学習することができる。音声データがカリキュラムコーパスの要素として選定された回数nが大きいほど小さくなるような音声データに対する重みwを用いて音響モデルを学習することにより、学習過程の後半において難易度の高い音声データを相対的に重視した学習が可能となり、少ない計算時間で一定の音声認識精度を有する音響モデルの学習が可能となる。
【００３９】
＜第２実施形態＞
音響モデル学習装置１００は、音響モデルθを更新する度に、学習用コーパスCj(j=1, …, J)の要素である音声データすべてに対して、ロスを計算する。このことが学習効率に悪影響を与え、少ない計算時間で一定の音声認識精度を有する音響モデルを学習することに負の影響を与える（問題２）。
【００４０】
この問題２を解決するために、ロスの計算を１回に限定する。（具体的な数値は示さないが、）実験によると、カリキュラムコーパス生成の都度ロス計算を行うようにしても、学習の収束速度にはほぼ影響がない。その一方で、ロス計算は、すべての学習用コーパスに含まれるすべての音声データに対して音響モデルを用いて行う必要があるため、その計算には膨大な時間がかかる。したがって、ロスの計算を１回に限定したとしても学習に負の影響を与えることなく、計算時間を大幅に削減にすることができる。
【００４１】
以下、ロスの計算を１回に限定した音響モデル学習装置２００について説明する。図５〜図６を参照して音響モデル学習装置２００について説明する。図５に示すように音響モデル学習装置２００は、ロス計算部２１０、カリキュラムコーパス生成部２２０、音響モデル更新部１３０、第１終了条件判定部２４０、記録部１９０を含む。記録部１９０は、音響モデル学習装置２００の処理に必要な情報を適宜記録する構成部である。記録部１９０は、例えば、学習用コーパスCj(j=1, …, J)、音響モデルθを記録する。
【００４２】
図６に従い音響モデル学習装置２００の動作について説明する。
【００４３】
Ｓ２１０において、ロス計算部２１０は、学習用コーパスCj(j=1, …, J)を入力とし、学習用コーパスCj(j=1, …, J)に対して、音響モデルθの初期値である初期音響モデルθiniを用いて学習用コーパスCjの要素である音声データのロスを計算し、当該ロスを出力する。
【００４４】
Ｓ２２０において、カリキュラムコーパス生成部２２０は、学習用コーパスCj(j=1, …, J)とＳ２１０で計算したロスを入力とし、Ｓ２１０で計算したロスが小さいことを示す所定の範囲にある音声データを要素とする学習用コーパスCj(j=1, …, J)の部分集合の和であるカリキュラムコーパスCを生成し、カリキュラムコーパスCを出力する。また、カリキュラムコーパス生成部２２０は、カリキュラムコーパスCの生成に用いた音声データ（つまり、カリキュラムコーパスCの要素である音声データ）に対して、音声データがカリキュラムコーパスの要素として選定された回数nを1だけインクリメントすることにより更新する。カリキュラムコーパス生成部２２０がカリキュラムコーパスCを生成する手順についてはカリキュラムコーパス生成部１２０と同様でよい。
【００４５】
Ｓ１３０において、音響モデル更新部１３０は、Ｓ２２０で生成したカリキュラムコーパスCを入力として、Ｓ２２０で生成したカリキュラムコーパスCを用いて音響モデルθを更新し、音響モデルθを出力する。
【００４６】
Ｓ２４０において、第１終了条件判定部２４０は、所定の終了条件を満たす場合は音響モデルθを出力し、処理を終了する。一方、所定の終了条件を満たさない場合は、カリキュラムコーパス生成部２２０に実行制御を移す（Ｓ２２０の処理に戻る）。つまり、音響モデル学習装置２００は、Ｓ２２０〜Ｓ２４０の処理を繰り返す。第１終了条件判定部２４０における所定の終了条件は、第１終了条件判定部１４０と同様でよい。
【００４７】
本実施形態の発明によれば、少ない計算時間で一定の音声認識精度を有する音響モデルを学習することができる。カリキュラムコーパス生成に際して、都度ロス計算を行うのでなく、初期音響モデルを用いて計算したロスを利用することにより、ロス計算に係る時間を不要とし、より少ない計算時間での学習が可能となる。
【００４８】
＜補記＞
本発明の装置は、例えば単一のハードウェアエンティティとして、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置（例えば通信ケーブル）が接続可能な通信部、ＣＰＵ（Central Processing Unit、キャッシュメモリやレジスタなどを備えていてもよい）、メモリであるＲＡＭやＲＯＭ、ハードディスクである外部記憶装置並びにこれらの入力部、出力部、通信部、ＣＰＵ、ＲＡＭ、ＲＯＭ、外部記憶装置の間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、ハードウェアエンティティに、ＣＤ−ＲＯＭなどの記録媒体を読み書きできる装置（ドライブ）などを設けることとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
【００４９】
ハードウェアエンティティの外部記憶装置には、上述の機能を実現するために必要となるプログラムおよびこのプログラムの処理において必要となるデータなどが記憶されている（外部記憶装置に限らず、例えばプログラムを読み出し専用記憶装置であるＲＯＭに記憶させておくこととしてもよい）。また、これらのプログラムの処理によって得られるデータなどは、ＲＡＭや外部記憶装置などに適宜に記憶される。
【００５０】
ハードウェアエンティティでは、外部記憶装置（あるいはＲＯＭなど）に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてメモリに読み込まれて、適宜にＣＰＵで解釈実行・処理される。その結果、ＣＰＵが所定の機能（上記、…部、…手段などと表した各構成要件）を実現する。
【００５１】
本発明は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記実施形態において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
【００５２】
既述のように、上記実施形態において説明したハードウェアエンティティ（本発明の装置）における処理機能をコンピュータによって実現する場合、ハードウェアエンティティが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記ハードウェアエンティティにおける処理機能がコンピュータ上で実現される。
【００５３】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等を、光磁気記録媒体として、ＭＯ（Magneto-Optical disc）等を、半導体メモリとしてＥＥＰ−ＲＯＭ（Electronically Erasable and Programmable-Read Only Memory）等を用いることができる。
【００５４】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【００５５】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記憶装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００５６】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、ハードウェアエンティティを構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【００５７】
上述の本発明の実施形態の記載は、例証と記載の目的で提示されたものである。網羅的であるという意思はなく、開示された厳密な形式に発明を限定する意思もない。変形やバリエーションは上述の教示から可能である。実施形態は、本発明の原理の最も良い例証を提供するために、そして、この分野の当業者が、熟考された実際の使用に適するように本発明を色々な実施形態で、また、色々な変形を付加して利用できるようにするために、選ばれて表現されたものである。すべてのそのような変形やバリエーションは、公正に合法的に公平に与えられる幅にしたがって解釈された添付の請求項によって定められた本発明のスコープ内である。
【図１】
2020126141.tif 000004
【図２】
2020126141.tif 000005
【図３】
2020126141.tif 000006
【図４】
2020126141.tif 000007
【図５】
2020126141.tif 000008
【図６】
2020126141.tif 000009