(57)【要約】【課題】従来よりも低いコストで新たな単語又は文字を追加することができるモデル学習技術を提供する。【解決手段】モデル学習装置は、音声認識用のニューラルネットワークモデルが記憶されている記憶部３２と、追加しようとする単語又は文字に対応するユニットを、記憶部３２から読み込んだニューラルネットワークモデルの出力層に追加する追加部３３と、単語又は文字に対応する各特徴量を、単語又は文字に対応するユニットが出力層に追加されたニューラルネットワークモデルに入力したときの出力層からの出力である出力確率分布を計算するモデル計算部３０と、各特徴量に対応する正解ユニット番号及び計算された出力確率分布に基づいて、ニューラルネットワークモデルの出力層のパラメタを更新するモデル更新部３１と、を備えている。【選択図】図２
2019211627.tif 000002
【特許請求の範囲】
【請求項１】
音声認識用のニューラルネットワークモデルが記憶されている記憶部と、
追加しようとする単語又は文字に対応するユニットを、前記記憶部から読み込んだニューラルネットワークモデルの出力層に追加する追加部と、
前記単語又は文字に対応する各特徴量を、前記単語又は文字に対応するユニットが出力層に追加されたニューラルネットワークモデルに入力したときの出力層からの出力である出力確率分布を計算するモデル計算部と、
前記各特徴量に対応する正解ユニット番号及び前記計算された出力確率分布に基づいて、前記ニューラルネットワークモデルの出力層のパラメタを更新するモデル更新部と、
を含むモデル学習装置。
【請求項２】
記憶部には、音声認識用のニューラルネットワークモデルが記憶されているとし、
追加部が、追加しようとする単語又は文字に対応するユニットを、前記記憶部から読み込んだニューラルネットワークモデルの出力層に追加する追加ステップと、
モデル計算部が、前記単語又は文字に対応する各特徴量を、前記単語又は文字に対応するユニットが出力層に追加されたニューラルネットワークモデルに入力したときの出力層からの出力である出力確率分布を計算するモデル計算ステップと、
モデル更新部が、前記各特徴量に対応する正解ユニット番号及び前記計算された出力確率分布に基づいて、前記ニューラルネットワークモデルの出力層のパラメタを更新するモデル更新ステップと、
を含むモデル学習方法。
【請求項３】
請求項１のモデル学習装置の各部としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、音声を認識するために用いられるモデルを学習する技術に関する。
【背景技術】
【０００２】
図１を参照して、一般的なニューラルネットワークモデルの学習方法を説明する。この学習方法を用いた、音声認識用のニューラルネットワークモデル型のモデルを学習する方法は、非特許文献１の”TRAINING DEEP NEURAL NETWORKS”の節に例えば記載されているものである。
【０００３】
図１のモデル学習装置は、中間特徴量計算部１０１と、出力確率分布計算部１０２と、モデル更新部１０３とを備えている。
【０００４】
事前に学習データの各サンプルから抽出した実数のベクトルである特徴量及び各特徴量に対応する正解ユニット番号のペアと、適当な初期モデルとを用意する。初期モデルとしては、各パラメタに乱数を割り当てたニューラルネットワークモデルや、既に別の学習データで学習済みのニューラルネットワークモデル等を利用することができる。
【０００５】
中間特徴量計算部１０１は、入力された特徴量から、出力確率分布計算部１０２において正解ユニットを識別しやすくするための中間特徴量を計算する。中間特徴量は、非特許文献１の式（１）により定義されるものである。計算された中間特徴量は、出力確率分布計算部１０２に出力される。
【０００６】
より具体的には、ニューラルネットワークモデルが１個の入力層、複数個の中間層及び１個の出力層で構成されているとして、中間特徴量計算部１０１は、入力層及び複数個の中間層のそれぞれで中間特徴量の計算を行う。中間特徴量計算部１０１は、複数個の中間層の中の最後の中間層で計算された中間特徴量を出力確率分布計算部１０２に出力する。
【０００７】
出力確率分布計算部１０２は、中間特徴量計算部１０１で最終的に計算された中間特徴量を現在のモデルの出力層に入力することにより、出力層の各ユニットに対応する確率を並べた出力確率分布を計算する。出力確率分布は、非特許文献１の式（２）により定義されるものである。計算された出力確率分布は、モデル更新部１０３に出力される。
【０００８】
モデル更新部１０３は、正解ユニット番号と出力確率分布に基づいて損失関数の値を計算し、損失関数の値を減少させるようにモデルを更新する。損失関数は、非特許文献１の式（３）により定義されるものである。モデル更新部１０３によるモデルの更新は、非特許文献１の式（４）によって行われる。
【０００９】
学習データの特徴量及び正解ユニット番号の各ペアに対して、上記の中間特徴量の抽出、出力確率分布の計算及びモデルの更新の処理を繰り返し、所定回数の繰り返しが完了した時点のモデルを学習済みモデルとして利用する。所定回数は、通常、数千万から数億回である。
【００１０】
非特許文献１では、出力シンボルを、音素よりも細かい表現である状態共有トライフォンとしていたが、近年では非特許文献２に示すように音声の特徴量から直接単語の出現確率分布を出力する音声認識モデルが用いられるようになっている。
【先行技術文献】
【非特許文献】
【００１１】
【非特許文献１】Geoffrey Hinton, Li Deng, Dong Yu, George E. Dahl, Abdel-rahman Mohamed, Navdeep Jaitly, Andrew Senior, Vincent Vanhoucke, Patric Nguyen, Tara N. Sainath and Brian Kingsbury, “Deep Neural Networks for Acoustic Modeling in Speech Recognition,” IEEE Signal Processing Magazine, Vol. 29, No 6, pp.82-97, 2012.
【非特許文献２】Hagen Soltau, Hank Liao, and Hasim Sak,“Neural Speech Recognizer: Acoustic-to-Word LSTM Model for Large Vocabulary Speech Recognition,” INTERSPEECH, pp. 3707-3711, 2017.
【発明の概要】
【発明が解決しようとする課題】
【００１２】
従来技術で述べたように音声の特徴量から単語の出現確率分布を直接出力する音声認識モデルでは、新たな単語又は文字を追加しようとする場合に、再学習が必要であり、この再学習には大量の学習データと時間が必要であり、コストがかかるという問題があった。
【００１３】
この発明は、従来よりも低いコストで新たな単語又は文字を追加することができるモデル学習装置、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
この発明の一態様によるモデル学習装置によれば、音声認識用のニューラルネットワークモデルが記憶されている記憶部と、追加しようとする単語又は文字に対応するユニットを、記憶部から読み込んだニューラルネットワークモデルの出力層に追加する追加部と、単語又は文字に対応する各特徴量を、単語又は文字に対応するユニットが出力層に追加されたニューラルネットワークモデルに入力したときの出力層からの出力である出力確率分布を計算するモデル計算部と、各特徴量に対応する正解ユニット番号及び計算された出力確率分布に基づいて、ニューラルネットワークモデルの出力層のパラメタを更新するモデル更新部と、を備えている。
【発明の効果】
【００１５】
従来よりも低いコストで新たな単語又は文字を追加することができる。
【図面の簡単な説明】
【００１６】
【図１】図１は、非特許文献１のモデル学習装置の機能構成の例を示す図である。
【図２】図２は、この発明のモデル学習装置の機能構成の例を示す図である。
【図３】図３は、モデル学習方法の処理手続きの例を示す図である。
【発明を実施するための形態】
【００１７】
以下、この発明の実施の形態について詳細に説明する。なお、図面中において同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
【００１８】
[モデル学習装置及び方法]
モデル学習装置は、図２に示すように、モデル計算部３０と、モデル更新部３１と、記憶部３２と、追加部３３とを例えば備えている。モデル計算部３０は、中間特徴量計算部３０１と出力確率分布計算部３０２とを例えば備えている。
【００１９】
モデル学習方法は、モデル学習装置の各構成部が、以下に説明する及び図３に示すステップＳ３３、ステップＳ３０及びステップＳ３１の処理を行うことにより例えば実現される。
【００２０】
以下、モデル学習装置の各構成部について説明する。
【００２１】
<記憶部３２>
記憶部３２には、予め学習された音声認識用のニューラルネットワークモデルが記憶されている。
【００２２】
<追加部３３>
追加部３３は、記憶部３２からニューラルネットワークモデルを読み込む。また、追加部３３には、追加しようとする単語又は文字についての情報が入力される。追加しようとする単語又は文字は、２個以上あってもよい。
【００２３】
追加部３３は、追加しようとする単語又は文字に対応するユニットを、記憶部３２から読み込んだニューラルネットワークモデルの出力層に追加する（ステップＳ３３）。
【００２４】
追加部３３は、追加しようとする単語又は文字に対応するユニットの、ニューラルネットワークモデルに関するパラメタを例えば乱数により決定する。
【００２５】
例えば、既に学習済みである、記憶部３２から読み込んだニューラルネットワークモデルの出力層のユニットの数がN1個であり、追加しようとする単語又は文字がN2個である場合には、N2個のユニットが出力層に追加されるため、出力層のユニットの総数はN1+N2個になる。
【００２６】
入力層及び中間層は、ユニットを記憶部３２から読み込んだニューラルネットワークモデルの入力層及び中間層のままとする。ただし、最後の中間層から計算された中間特徴量は、出力層の追加されたユニットに入力されるとする。
【００２７】
出力層にユニットが追加されたニューラルネットワークモデルは、モデル計算部３０に出力される。
【００２８】
なお、追加部３３は、既存の出力層のユニットの全てを破棄し、追加しようとする単語又は文字に対応するユニットだけで出力層を構成するようにしてもよい。これにより、新たなドメインに特化したニューラルネットワークモデルを生成することができる。
【００２９】
ここで挙げるドメインとは、音声検索、自然発話、議会音声、対話などの発話目的や話題（トピック）等の言語的なドメインのことである。
【００３０】
<モデル計算部３０>
モデル計算部３０には、追加部３３により、単語又は文字に対応するユニットが出力層に追加されたニューラルネットワークモデルと、追加しようとする単語又は文字に対応する各特徴量とが入力される。
【００３１】
モデル計算部３０は、追加しようとする単語又は文字に対応する各特徴量を、追加しようとする単語又は文字に対応するユニットが出力層に追加されたニューラルネットワークモデルに入力したときの出力層からの出力である出力確率分布を計算する（ステップＳ３０）。
【００３２】
計算された出力確率分布は、モデル更新部３１に出力される。
【００３３】
以下、モデル計算部３０の処理を詳細に説明するために、モデル計算部３０の中間特徴量計算部３０１及び出力確率分布計算部３０２について説明する。
【００３４】
以下に説明する中間特徴量計算部３０１及び出力確率分布計算部３０２の処理は、追加しようとする単語又は文字に対応する各特徴量に対して行われる。これにより、追加しようとする単語又は文字に対応する各特徴量に対応する出力確率分布が得られる。
【００３５】
<<中間特徴量計算部３０１>>
中間特徴量計算部３０１は、中間特徴量計算部１０１と同様の処理を行う。
【００３６】
中間特徴量計算部３０１には、特徴量が入力される。
【００３７】
中間特徴量計算部３０１は、入力された特徴量とニューラルネットワークモデルとを用いて、中間特徴量を生成する（ステップＳ３０１）。中間特徴量は、例えば非特許文献１の式（１）により定義されるものである。
【００３８】
計算された中間特徴量は、出力確率分布計算部３０２に出力される。
【００３９】
中間特徴量計算部３０１は、入力された特徴量及び現在のモデルから、出力確率分布計算部３０２において正解ユニットを識別しやすくするための中間特徴量を計算する。具体的には、現在のモデルのニューラルネットワークモデルが１個の入力層、複数個の中間層及び１個の出力層で構成されているとして、中間特徴量計算部３０１は、入力層及び複数個の中間層のそれぞれで中間特徴量の計算を行う。中間特徴量計算部３０１は、複数個の中間層の中の最後の中間層で計算された中間特徴量を出力確率分布計算部３０２に出力する。
【００４０】
現在のモデルとは、中間特徴量計算部３０１が第１回目の処理をする場合には、追加しようとする単語又は文字に対応するユニットが出力層に追加されたニューラルネットワークモデルそのものであり、ｋを２以上の正の整数として、中間特徴量計算部３０１が第ｋ回目の処理をする場合には、モデル学習装置及び方法の第ｋ−１回目の処理により生成されたニューラルネットワークモデルである。
【００４１】
<<出力確率分布計算部３０２>>
出力確率分布計算部３０２は、出力確率分布計算部１０２と同様の処理を行う。
【００４２】
出力確率分布計算部３０２には、中間特徴量計算部３０１が計算した中間特徴量が入力される。
【００４３】
出力確率分布計算部３０２は、中間特徴量計算部３０１で最終的に計算された中間特徴量を現在のモデルの出力層に入力することにより、出力層の各ユニットに対応する確率を並べた出力確率分布を計算する（ステップＳ３０２）。出力確率分布は、例えば非特許文献１の式（２）により定義されるものである。
【００４４】
計算された出力確率分布は、モデル更新部３１に出力される。
【００４５】
入力された特徴量が音声の特徴量であり、モデルが音声認識用のニューラルネットワーク型の音響モデルである場合には、出力確率分布計算部３０２により、音声の特徴量を識別しやすくした中間特徴量がどの音声の出力シンボル（音素状態）であるかが計算され、言い換えれば入力された音声の特徴量に対応した出力確率分布が得られる。
【００４６】
<モデル更新部３１>
モデル更新部３１には、各特徴量に対応する正解ユニット番号と、モデル計算部３０が計算した各特徴量に対応する出力確率分布とが入力される。
【００４７】
モデル更新部３１は、各特徴量に対応する正解ユニット番号及び前記計算された出力確率分布に基づいて、ニューラルネットワークモデルの出力層のパラメタを更新する（ステップＳ３１）。モデル更新部３１は、ニューラルネットワークモデルの入力層及び中間層のパラメタについては更新しない。
【００４８】
モデル更新部３１は、各特徴量に対応する正解ユニット番号と、各特徴量に対応する出力確率分布とに基づいて計算される損失関数の値を最小化するようにニューラルネットワークモデルの出力層のパラメタを更新する。
【００４９】
損失関数は、例えば非特許文献１の式（３）により定義されるものである。モデル更新部３１によるモデルの更新は、例えば非特許文献１の式（４）によって行われる。更新されるモデル内のパラメタは、例えば非特許文献１の式（１）の重みwとバイアスbである。
【００５０】
更新されたニューラルネットワークモデルは、中間特徴量計算部３０１及び出力確率分布計算部３０２に出力される。
【００５１】
このように、ニューラルネットワークモデルの出力層のパラメタをのみを更新し、入力層及び中間層のパラメタについては、既に学習されているパラメタを用いることで、追加しようとする単語又は文字についての少量の学習データのみでニューラルネットワークモデルの学習を行うことができる。このようにして、従来よりも低いコストで新たな単語又は文字を追加することができる。
【００５２】
[変形例]
以上、この発明の実施の形態について説明したが、具体的な構成は、これらの実施の形態に限られるものではなく、この発明の趣旨を逸脱しない範囲で適宜設計の変更等があっても、この発明に含まれることはいうまでもない。
【００５３】
実施の形態において説明した各種の処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
【００５４】
[プログラム、記録媒体]
上記説明した各装置における各種の処理機能をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
【００５５】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【００５６】
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【００５７】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記憶装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００５８】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【符号の説明】
【００５９】
１０１ 中間特徴量計算部
１０２ 出力確率分布計算部
１０３ モデル更新部
３０   モデル計算部
３０１ 中間特徴量計算部
３０２ 出力確率分布計算部
３１   モデル更新部
３２   記憶部
３３   追加部
【図１】
2019211627.tif 000003
【図２】
2019211627.tif 000004
【図３】
2019211627.tif 000005