(57)【要約】【課題】任意のタスクにモデル適応が可能なリカレントニューラルネットワークに基づく言語モデルを作成する。【解決手段】学習データ分割部２は、学習データを複数の要素学習データに分割する。要素言語モデル学習部３は、要素学習データからリカレントニューラルネットワークを学習して要素言語モデルを作成する。混合重み推定部６は、適応データと複数の要素言語モデルとを用いて各要素言語モデルに対する混合重みを推定する。言語モデル混合部７は、複数の要素言語モデルと複数の混合重みとを用いてリカレントニューラルネットワークを学習して混合言語モデルを作成する。【選択図】図１
2016105232.tif 000002
【特許請求の範囲】
【請求項１】
学習データを複数の要素学習データに分割する学習データ分割部と、
上記要素学習データからリカレントニューラルネットワークを学習して要素言語モデルを作成する要素言語モデル学習部と、
適応データと複数の上記要素言語モデルとを用いて各要素言語モデルに対する混合重みを推定する混合重み推定部と、
複数の上記要素言語モデルと複数の上記混合重みとを用いてリカレントニューラルネットワークを学習して混合言語モデルを作成する言語モデル混合部と、
を含む言語モデル作成装置。
【請求項２】
請求項１に記載の言語モデル作成装置であって、
Kを上記要素言語モデルの数とし、kを1以上K以下の各整数とし、wiをi番目の単語とし、wi-1をi-1番目の単語とし、si-1kをk番目の要素言語モデルのi-1番目の中間層の出力とし、θkをk番目の要素言語モデルのモデルパラメータとし、λkをk番目の要素言語モデルに対する混合重みとし、
上記混合言語モデルは次式により表されるものである
【数５】
2016105232.tif 000007
言語モデル作成装置。
【請求項３】
請求項１または２に記載の言語モデル作成装置であって、
Kを上記要素言語モデルの数とし、kを1以上K以下の各整数とし、w1,…,wLを上記適応データの単語列とし、si-1kをk番目の要素言語モデルのi-1番目の中間層の出力とし、θkをk番目の要素言語モデルのモデルパラメータとし、λkをk番目の要素言語モデルに対する混合重みとし、
【数６】
2016105232.tif 000008
とし、
上記混合重み推定部は、次式を用いて上記混合重みを求めるものである
【数７】
2016105232.tif 000009
言語モデル作成装置。
【請求項４】
学習データ分割部が、学習データを複数の要素学習データに分割する学習データ分割ステップと、
要素言語モデル学習部が、上記要素学習データからリカレントニューラルネットワークを学習して要素言語モデルを作成する要素言語モデル学習ステップと、
混合重み推定部が、適応データと複数の上記要素言語モデルとを用いて各要素言語モデルに対する混合重みを推定する混合重み推定ステップと、
言語モデル混合部が、複数の上記要素言語モデルと複数の上記混合重みとを用いてリカレントニューラルネットワークを学習して混合言語モデルを作成する言語モデル混合ステップと、
を含む言語モデル作成方法。
【請求項５】
請求項４に記載の言語モデル作成方法であって、
Kを上記要素言語モデルの数とし、kを1以上K以下の各整数とし、wiをi番目の単語とし、wi-1をi-1番目の単語とし、si-1kをk番目の要素言語モデルのi-1番目の中間層の出力とし、θkをk番目の要素言語モデルのモデルパラメータとし、λkをk番目の要素言語モデルに対する混合重みとし、
上記混合言語モデルは次式により表されるものである
【数８】
2016105232.tif 000010
言語モデル作成方法。
【請求項６】
請求項４または５に記載の言語モデル作成方法であって、
Kを上記要素言語モデルの数とし、kを1以上K以下の各整数とし、w1,…,wLを上記適応データの単語列とし、si-1kをk番目の要素言語モデルのi-1番目の中間層の出力とし、θkをk番目の要素言語モデルのモデルパラメータとし、λkをk番目の要素言語モデルに対する混合重みとし、
【数９】
2016105232.tif 000011
とし、
上記混合重み推定ステップは、次式を用いて上記混合重みを求めるものである
【数１０】
2016105232.tif 000012
言語モデル作成方法。
【請求項７】
請求項１から３のいずれかに記載の言語モデル作成装置としてコンピュータを機能させるためのプログラム。
【請求項８】
請求項７に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、リカレントニューラルネットワークに基づく言語モデルを作成する技術に関する。
【背景技術】
【０００２】
音声認識や機械翻訳では、言語的な予測のために言語モデルが必要である。言語モデルは、言語らしさを計測可能なものであり、その性能が音声認識や機械翻訳の性能を左右するものである。これまで、様々な種類の言語モデルが提案されてきているが、近年リカレントニューラルネットワークに基づく言語モデルが注目されている。リカレントニューラルネットワークに基づく言語モデルの詳細は非特許文献１などを参考にされたい。リカレントニューラルネットワークに基づく言語モデルは、非常に高い言語予測能力を持ち、音声認識や機械翻訳で積極的に利用されている。
【０００３】
リカレントニューラルネットワークに基づく言語モデルは、テキストデータから学習できる。このとき、対象タスクに適合したテキストデータからリカレントニューラルネットワークに基づく言語モデルを学習することで、高い性能を実現できる。リカレントニューラルネットワークによる確率予測では、直前の単語wi-1と直前のネットワーク中の中間層の出力si-1の２つが入力となり、現在の単語wiの予測確率P(wi|wi-1,si-1,θ)を構成する。ここで、θはリカレントニューラルネットワークのモデルパラメータである。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Mikolov Tomas, Karafiat Martin, Burget Lukas, Cernocky Jan, Khudanpur Sanjeev, “Recurrent neural network based language model”, INTERSPEECH 2010, pp. 1045-1048, 2010.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
リカレントニューラルネットワークに基づく言語モデルはモデル適応が行えないという問題がある。モデル適応とは、少量の情報を与えるだけで認識したい音声のタスク（対象タスク）に特化した言語モデルを構築する枠組みである。特化するとは、そのタスクでよく使われる言語現象に高い生起確率を与えることである。例えば、ニュース音声を認識する際はニュース音声に特化した言語モデルを用い、コールセンター音声を認識する際はコールセンター音声に特化した言語モデルを用いることが有効である。リカレントニューラルネットワークは、与えられたデータを最適に識別するように学習するため、例えば、データＡで学習したリカレントニューラルネットワークのネットワーク構造に対して、新たにデータＢを与えれば、データＢに最適になるように学習されるが、データＡで学習したときの情報は利用できなくなる。また、例えば、ある程度データＢを得られたらデータＢに最適になるように学習できれば、データＡの情報はほとんど必要なくなると考えられるが、リカレントニューラルネットワークの学習には多くの計算時間を必要とするため、ネットワークの中身を容易に変更することはできない。
【０００６】
上記の問題をまとめると、リカレントニューラルネットワークは既存のネットワークの情報を引き継げないためモデル適応ができず、仮にモデル適応に近い処理（例えば再学習など）を行うとしても多くの計算時間が必要となるため容易に実施できない。例えば、音声認識では音声認識中に逐次モデル適応を行うことが理想的であるが、そのような形態をリカレントニューラルネットワークに基づく言語モデルでは実施できない。
【０００７】
この発明の目的は、任意のタスクにモデル適応が可能なリカレントニューラルネットワークに基づく言語モデルを作成する技術を提供することである。
【課題を解決するための手段】
【０００８】
上記の課題を解決するために、この発明の言語モデル作成装置は、学習データを複数の要素学習データに分割する学習データ分割部と、要素学習データからリカレントニューラルネットワークを学習して要素言語モデルを作成する要素言語モデル学習部と、適応データと複数の要素言語モデルとを用いて各要素言語モデルに対する混合重みを推定する混合重み推定部と、複数の要素言語モデルと複数の混合重みとを用いてリカレントニューラルネットワークを学習して混合言語モデルを作成する言語モデル混合部と、を含む。
【発明の効果】
【０００９】
この発明の言語モデル作成技術によれば、既存のリカレントニューラルネットワークに基づく言語モデルのネットワーク構造に手を入れることなく、混合重みのパラメータのみを変更することで特定のタスクに適応することが可能となる。混合重みは、例えば３混合であれば３つの混合重みが存在し、可変パラメータを制限しているため、高速なモデル適応を実施可能である。これにより、リカレントニューラルネットワークが持つ優れた言語識別能力を利用しながら、簡単かつ高速にモデル適応が可能な言語モデルを作成することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】図１は、言語モデル作成装置の機能構成を例示する図である。
【図２】図２は、言語モデル作成方法の処理フローを例示する図である。
【発明を実施するための形態】
【００１１】
この発明では、上述の課題を解決するために、リカレントニューラルネットワークに基づく言語モデルを混合モデルとして表現する。従来技術では１つの言語リソースから１つのリカレントニューラルネットワークを構築していたが、この発明では１つの言語リソースを最初に複数に分割し、分割された各言語リソースそれぞれからリカレントニューラルネットワークに基づく言語モデルを学習し、各言語モデルの出力を重み付きで足し合わせる。そして、学習したリカレントニューラルネットワークは固定とし、出力を足し合わせるときの混合重みのみを可変パラメータとしてモデル化する。モデル適応の際には、適応のためのデータに対して最適になるように混合重みを決定する。したがって、この発明では、リカレントニューラルネットワークに基づく言語モデルの構築方法と、混合重みの最適化方法がポイントとなる。
【００１２】
以下、この発明の実施の形態について詳細に説明する。なお、図面中において同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
【００１３】
実施形態の言語モデル作成装置は、図１に示すように、学習データ記憶部１、学習データ分割部２、要素言語モデル学習部３、K（≧1）個の要素言語モデル記憶部４1,…,４K、適応データ記憶部５、混合重み推定部６、言語モデル混合部７、および混合言語モデル記憶部８を例えば含む。
【００１４】
言語モデル作成装置は、例えば、中央演算処理装置（CPU: Central Processing Unit）、主記憶装置（RAM: Random Access Memory）などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。言語モデル作成装置は、例えば、中央演算処理装置の制御のもとで各処理を実行する。言語モデル作成装置に入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて読み出されて他の処理に利用される。また、言語モデル作成装置の各処理部の少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。
【００１５】
言語モデル作成装置が備える各記憶部は、例えば、RAM（Random Access Memory）などの主記憶装置、ハードディスクや光ディスクもしくはフラッシュメモリ（Flash Memory）のような半導体メモリ素子により構成される補助記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。言語モデル作成装置が備える各記憶部は、それぞれ論理的に分割されていればよく、一つの物理的な記憶装置に記憶されていてもよい。
【００１６】
学習データ記憶部１には、学習データが記憶されている。学習データは、対象タスクに適合した十分な量のテキストデータである。例えば、対象タスクの音声を人手により書き起こしを行うことで得られたテキストを利用してもよいし、対象タスクに関連するドキュメント（例えば、Webテキスト）など複数の言語資源を組み合わせて利用してもよい。本形態では、学習データはすでに単語単位に分かち書きされ、文単位で区切られているものとする。
【００１７】
適応データ記憶部５には、適応データが記憶されている。適応データは、対象タスクに適合した比較的少量のテキストデータである。適応データは、例えば、学習データの一部を用いてもよいし、別途異なる言語資源からテキストデータを収集して用いてもよい。
【００１８】
図２を参照して、実施形態の言語モデル作成方法の処理手続きを説明する。
【００１９】
ステップＳ１において、学習データ分割部２は、学習データ記憶部１に記憶された学習データをK個の要素学習データに分割する。K個に分割された要素学習データは要素言語モデル学習部３へ送られる。ここで、Kは任意の正の整数である。この発明では学習データを分割する基準は限定されないが、一般的に、言語モデル適応では話題やスタイルといった観点でモデル適応を行うことが多い。そのため、分割の基準は言語モデルの用途に応じて適切に設計すればよい。
【００２０】
学習データを分割する方法を具体的に例示する。例えば、学習データが文単位で区切られていることを利用して、文の単語情報を素性ベクトルとして、ベクトル空間上のクラスタリング技術を利用して分割することができる。例えば、公知のK-meansクラスタリングを利用すれば、学習データの各文をK個のクラスタに当てはめたクラスタリングが可能である。これによって、K個の要素学習データに分割することができる。
【００２１】
また、例えば、確率的トピックモデルに学習データをあてはめることでクラスタリングすることも可能である。具体的には、代表的なトピックモデルである確率的潜在意味解析（PLSA: Probabilistic Latent Semantic Analysis）を利用して分割することができる。例えば、K個のトピックが存在するトピックモデルを学習すると、学習データの各文に対して各トピックの寄与確率を求めることができる。文sのトピックzに対する確率をP(z|s)として、次式によってクラスタリングを行うことができる。
【数１】
2016105232.tif 000003
これによって、K個のトピックごとに文集合を作ることができ、K個の要素学習データに分割することができる。
【００２２】
ステップＳ２において、要素言語モデル学習部３は、学習データ分割部２から受け取ったK個の要素学習データそれぞれからリカレントニューラルネットワークを学習し、K個のリカレントニューラルネットワークに基づく言語モデル（以下、要素言語モデルと呼ぶ）を作成する。K個の要素言語モデルそれぞれは要素言語モデル記憶部４1,…,４Kに記憶される。リカレントニューラルネットワークの学習は通常の枠組みと同様である。詳しくは、非特許文献１などを参照されたい。
【００２３】
ステップＳ３において、混合重み推定部６は、適応データ記憶部５に記憶された適応データと、要素言語モデル記憶部４1,…,４Kに記憶されたK個の要素言語モデルとを用いて、K個の混合重みλ1,…,λKを推定する。推定された混合重みλ1,…,λKは言語モデル混合部７へ送られる。混合重みλ1,…,λKは、後述の混合言語モデルを構築した際に、適応データに対する識別確率が最大化するように求める。この問題はEMアルゴリズムを利用することで求めることが可能である。
【００２４】
k番目の要素言語モデルに対する混合重みをλkとする。このとき、混合重みλ1,…,λKには次式のような制約がある。
【数２】
2016105232.tif 000004
【００２５】
混合重みλkは、EMアルゴリズムに基づいて、再帰的に、次式のように求めることができる。
【数３】
2016105232.tif 000005
ここで、w1,…,wLは適応データの単語列であり、si-1kはk番目の要素言語モデルのi-1番目の中間層の出力であり、θkはk番目の要素言語モデルのモデルパラメータである。右辺のλkは一回前に求めた混合重みであり、左辺のλkは更新された混合重みである。
【００２６】
EMアルゴリズムでは、初期の混合重みはすべての混合重みを等価とするのが一般的である。例えば、K=2であれば、λk=1/2と与えればよい。繰り返し回数は、例えば、固定数を設定しておけばよい。もしくは、混合重みは必ず局所最適に収束するので、混合重みの変化量について閾値を決定することで収束判定をしてもよい。
【００２７】
ステップＳ４において、言語モデル混合部７は、要素言語モデル記憶部４1,…,４Kに記憶されたK個の要素言語モデルと、混合重み推定部６から受け取ったK個の混合重みλ1,…,λKとを用いてリカレントニューラルネットワークを学習し、リカレントニューラルネットワークに基づく言語モデル（以下、混合言語モデルと呼ぶ）を作成する。作成された混合言語モデルは混合言語モデル記憶部８へ記憶される。
【００２８】
混合言語モデルは次式により表される。
【数４】
2016105232.tif 000006
ここで、wiは現在の単語であり、wi-1は直前の単語であり、si-1kはk番目の要素言語モデルのi-1番目の中間層の出力であり、θkはk番目の要素言語モデルのモデルパラメータである。つまり、入力は直前の単語wi-1だけでよいが、それぞれの要素言語モデルにおける１つ前の中間層の出力si-1は残しておくことになる。このように混合言語モデルを構成すると、混合重みのみを適応データで最適化しているため、各要素言語モデルのネットワーク構造はそのまま保持される。
【００２９】
本形態のリカレントニューラルネットワークに基づく混合言語モデルは、通常のリカレントニューラルネットワークに基づく言語モデルと同様に、音声認識や機械翻訳に利用できる。上記の式に従って確率計算を行うことによって言語予測を実現できる。
【００３０】
上記のように構成することで、既存のリカレントニューラルネットワークに基づく言語モデルのネットワーク構造に手を入れることなく、混合重みのパラメータのみを変更することで、特定のタスクに適応することが可能となる。混合重みは、例えば３混合であれば３つの重みが存在し、可変パラメータを制限しているため、高速なモデル適応を実施可能である。これにより、リカレントニューラルネットワークが持つ優れた言語識別能力を利用しながら、簡単かつ高速にモデル適応を実施することが可能となる。
【００３１】
この発明は上述の実施形態に限定されるものではなく、この発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。上記実施形態において説明した各種の処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
【００３２】
［プログラム、記録媒体］
上記実施形態で説明した各装置における各種の処理機能をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
【００３３】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【００３４】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【００３５】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００３６】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【符号の説明】
【００３７】
１  学習データ記憶部
２  学習データ分割部
３  要素言語モデル学習部
４  要素言語モデル記憶部
５  適応データ記憶部
６  混合重み記憶部
７  言語モデル混合部
８  混合言語モデル記憶部
【図１】
2016105232.tif 000013
【図２】
2016105232.tif 000014