(57)【特許請求の範囲】
【請求項１】
コンピュータによる、N-gram言語モデルの教師無し学習方法であって、
（ａ）前記コンピュータが、音声データを音声認識して得られた認識結果を読み出すステップと、
（ｂ）前記コンピュータが、読み出した前記認識結果の各々に対する信頼度を取得するステップと、
（ｃ）前記コンピュータが、前記認識結果と取得した前記信頼度とを参照してN-gramエントリを選択するステップと、
（ｄ）前記コンピュータが、全認識結果を用いて、選択された１以上の前記N-gramエントリについて前記N-gram言語モデルを学習するステップと
を含み、
ステップ（ｃ）は、前記コンピュータが、前記認識結果に出現する出現回数が所定の回数を超える前記N-gramエントリを選択するステップであって、前記出現回数は前記信頼度に応じた重みで重み付けされる、
N-gram言語モデルの教師無し学習方法。
【請求項２】
ステップ（ｄ）は、前記コンピュータが、前記全認識結果を用いて、選択された１以上の前記N-gramエントリを学習し、前記１以上のN-gramエントリと学習の結果得られたその確率とを、ベースとなるN-gram言語モデルに追加するステップを含む、請求項１に記載のNgram言語モデルの教師無し学習方法。
【請求項３】
取得する前記音声データの前記認識結果は、クラウド型音声認識システム又はサーバ型音声認識システムにおいて自動音声認識された認識結果である、請求項１に記載のN-gram言語モデルの教師無し学習方法。
【請求項４】
ステップ（ｂ）において、前記音声データを音声認識する際に得られる文章単位の事後確率を前記信頼度として利用する、請求項１に記載のN-gram言語モデルの教師無し学習方法。
【請求項５】
請求項１乃至４のいずれか一項に記載の学習方法の各ステップを、前記コンピュータに実行させるN-gram言語モデルの教師無し学習プログラム。
【請求項６】
請求項１乃至４のいずれか一項に記載の学習方法の各ステップを実行するように適合された手段を備えるN-gram言語モデルの教師無し学習システム。
【請求項７】
コンピュータによる、N-gram言語モデルの教師無し学習方法であって、
（ａ）前記コンピュータが、音声データを音声認識して得られた認識結果を読み出すステップと、
（ｂ）前記コンピュータが、読み出した前記認識結果の各々に対する信頼度を取得するステップと、
（ｃ）前記コンピュータが、前記認識結果と取得した前記信頼度とを参照してN-gramエントリを選択するステップと、
（ｄ）前記コンピュータが、全認識結果を用いて、選択された１以上の前記N-gramエントリについて前記N-gram言語モデルを学習するステップと
を含み、
ステップ（ｃ）は、前記コンピュータが、前記全認識結果の集合である第１コーパスに出現する第1出現回数と、前記信頼度が所定の閾値以上である前記認識結果の部分集合である第２コーパスに出現する第２出現回数との合計が、所定の回数を超える前記N-gramエントリを選択するステップを含む、
N-gram言語モデルの教師無し学習方法。
【請求項８】
コンピュータによる、N-gram言語モデルの教師無し学習方法であって、
（ａ）前記コンピュータが、音声データを音声認識して得られた認識結果を読み出すステップと、
（ｂ）前記コンピュータが、読み出した前記認識結果の各々に対する信頼度を取得するステップと、
（ｃ）前記コンピュータが、前記認識結果と取得した前記信頼度とを参照してN-gramエントリを選択するステップと、
（ｄ）前記コンピュータが、全認識結果を用いて、選択された１以上の前記N-gramエントリについて前記N-gram言語モデルを学習するステップと
を含み、
ステップ（ｃ）は、前記コンピュータが、前記全認識結果の集合である第１コーパスに出現する第1出現回数と、前記信頼度が所定の閾値以上である前記認識結果の部分集合である第２コーパスに出現する第２出現回数と、前記N-gram言語モデルのベースラインである第３コーパスに出現する第３出現回数との合計が、所定の回数を超える前記N-gramエントリを第１コーパス及び第３コーパスの中から選択するステップであって、前記第１出現回数、前記第２出現回数、前記第３出現回数の各々は互いに異なる重みで重み付けされる、
N-gram言語モデルの教師無し学習方法。
【請求項９】
前記第１出現回数、前記第２出現回数、前記第３出現回数の各々を重み付けする各重みは
、前記第１コーパス、前記第２コーパス、及び前記第３コーパスの各々のサブセットから推定される言語モデルを用いてＥＭアルゴリズムにより事前に推定される、請求項８に記載のN-gram言語モデルの教師無し学習方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、N-gram言語モデルの教師無し学習方法を改善する技術に関する。
【背景技術】
【０００２】
今日、音声認識や自動翻訳、情報検索など様々な分野で言語モデルが使用されている。言語モデルとは単語列や文字列に対し、それらが起こる確率を与える統計モデルである。言語モデルとしては、N-gramモデル、隠れマルコフモデル、最大エントロピーモデルなどがあるが、最もよく利用されているのはN-gramモデルである。
【０００３】
言語モデルは、学習用データから統計的に学習することによって構築される。しかしながら、ユーザの使用する表現は日々変化し、新しい表現は、古い学習用データで学習された言語モデルにとって未知となる。そのため学習用データと言語モデルの定期的な更新が必要となる。
【０００４】
学習用データと言語モデルの人手による更新は現実的ではない。しかし近年、音声検索サービスやコールセンター向け音声認識サービスなどを提供するクラウド型音声認識システムやサーバ型音声認識システムの出現により、大量の発話データ（以下、フィールドデータという）が入手可能となっている。これらフィールドデータを教師なしで自動認識した結果は、言語モデルの学習データを補完するのに役立つ。以下、言語モデルの構築及び自動音声認識結果の言語モデル又は音響モデル構築への利用に関する従来技術について説明する。
【０００５】
非特許文献１は、大学の講義データを言語モデル適応に活用する際に、音声認識結果の信頼度が閾値以上の内容語の割合が多い発話単位から言語モデルを構築する技術を開示する。
【０００６】
特許文献１は、音声データと当該音声データの音声認識結果として得られた信頼尺度が付されたテキストとからなる複数の適応用データを用いて音響モデルの適応を行う際に、相対的に信頼尺度が高い適応用データについてはそのまま用いて教師なし適応を行い、相対的に信頼尺度が低い適応用データのうち信頼尺度が高い適応用データに含まれない音素環境を持つデータについては優先的に人手による音声認識テキストの修正を施して教師あり適応を行い、相対的に信頼尺度が低くかつテキストの修正を施さないデータについては他のデータより低い重みをかけて教師なし適応を行う技術を開示する。
【０００７】
特許文献２は、アプリケーションに適したサイズに言語モデルを枝刈りできる言語モデルの枝刈り手法として、ｎ−グラム言語モデルＭ０から全ての最上位のグラム（ｎ−グラム）とそのそれぞれの確率を削除することにより、初期のベースモデルを生成し、この初期のベースモデルにいくつかの最も重要なバイグラム確率を追加して、これを枝刈りされた言語モデルとする技術を開示する。
【０００８】
非特許文献２は、自動音声認識による認識結果の信頼度を示す尺度として利用可能な指標を３つのカテゴリに分類して紹介する。本文献は、本発明において利用可能な信頼度の例を示す参考文献として挙げたものである。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１１−７５６２２号公報
【特許文献２】特開２００８−２３４６５７号公報
【非特許文献】
【００１０】
【非特許文献１】勝丸  徳浩、外３名、“大学講義のノートテイク支援のための音声認識用言語モデルの適応”、情報処理学会研究報告.ＳＬＰ、音声言語情報処理、vol.2008、no.68、pp.25-30、2008
【非特許文献２】Hui Jiang、“Confidence measures for speechrecognition : A survey”、Speech Communication 45、pp455-470、2005
【発明の概要】
【発明が解決しようとする課題】
【００１１】
非特許文献１が示すように、音声認識結果の信頼度が閾値以上である部分のみを言語モデル構築に利用することで、認識誤りの可能性の高い部分の利用を避けることができる。しかし信頼度の高い部分のみを抽出してN-gram言語モデルを構築した場合、算出されるN-gramエントリの確率にひずみが生じる。また特許文献１が示すように、一部のデータのみを対象とするのであっても、人による判断を必要とするのは、自動化の妨げとなり好ましくない。更に特許文献２が示す言語モデルの枝刈りは、残すべきN-gramエントリの選択の問題であり、N-gramエントリの確率は枝刈り前の言語モデルのものが利用可能であるため、N-gram言語モデルの教師無し学習方法に適用できない。
【００１２】
本発明は、上記従来技術における問題点に鑑みてなされたものであり、人手による修正を必要とせず、またN-gramエントリの確率のひずみもない、改善されたN-gram言語モデルの教師無し学習方法、学習システム、及び学習プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明は、上記従来技術の課題を解決するために以下の特徴を有するN-gram言語モデルの教師無し学習方法を提供する。本発明の学習方法は、（ａ）前記コンピュータが、音声データを音声認識して得られた認識結果を読み出すステップと、（ｂ）前記コンピュータが、読み出した前記認識結果の各々に対する信頼度を取得するステップと、（ｃ）前記コンピュータが、前記認識結果と取得した前記信頼度とを参照してN-gramエントリを選択するステップと、（ｄ）前記コンピュータが、全認識結果を用いて、選択された１以上の前記N-gramエントリについて前記N-gram言語モデルを学習するステップとを含む。
【００１４】
好ましくは、ステップ（ｃ）は、前記コンピュータが、前記信頼度が所定の閾値以上である前記認識結果に出現する出現回数が所定の回数を超える前記N-gramエントリを選択するステップを含む。
【００１５】
上記構成に代えて、ステップ（ｃ）は、前記コンピュータが、前記認識結果に出現する出現回数が所定の回数を超える前記N-gramエントリを選択するステップであって、前記出現回数は前記信頼度に応じた重みで重み付けされる、上記選択するステップであってもよい。
【００１６】
あるいは、ステップ（ｃ）は、前記コンピュータが、前記全認識結果の集合である第１コーパスに出現する第1出現回数と、前記信頼度が所定の閾値以上である前記認識結果の集合である第２コーパスに出現する第２出現回数との合計が、所定の回数を超える前記N-gramエントリを選択するステップを含んでもよい。
【００１７】
または、ステップ（ｃ）は、前記コンピュータが、前記全認識結果の集合である第１コーパスに出現する第1出現回数と、前記信頼度が所定の閾値以上である前記認識結果の集合である第２コーパスに出現する第２出現回数と、前記N-gram言語モデルのベースラインとなる第３コーパスに出現する第３出現回数との合計が、所定の回数を超える前記N-gramエントリを第１コーパス及び第３コーパスの中から選択するステップであって、前記第１出現回数、前記第２出現回数、前記第３出現回数の各々は互いに異なる重みで重み付けされる、上記選択するステップであってもよい。
【００１８】
ここで、前記第１出現回数、前記第２出現回数、前記第３出現回数の各々を重み付けする各重みは、前記第１コーパス、前記第２コーパス、及び前記第３コーパスの各々のサブセットから推定される言語モデルを用いてＥＭアルゴリズムにより事前に推定されてよい。
【００１９】
好ましくは、ステップ（ｄ）は、前記コンピュータが、前記全認識結果を用いて、選択された１以上の前記N-gramエントリを学習し、選択された前記１以上のN-gramエントリと学習の結果得られた対応するN-gramエントリの確率とを、ベースラインのN-gram言語モデルに追加するステップを含む。
【００２０】
好ましくは、読み出す前記音声データの前記認識結果は、クラウド型音声認識システム又はサーバ型音声認識システムにおいて自動音声認識された認識結果である。
【００２１】
好ましくは、ステップ（ｂ）において、前記音声データを音声認識する際に得られる文章単位の事後確率を前記信頼度として利用する。
【００２２】
以上、N-gram言語モデルの教師無し学習方法として本発明を説明した。しかし本発明は、そのような学習方法の各ステップをコンピュータに実行させるN-gram言語モデルの教師無し学習プログラム、及び該学習プログラムをコンピュータにインストールして実現されるN-gram言語モデルの教師無し学習システムとして把握することもできる。
【発明の効果】
【００２３】
本発明では、音声データを音声認識して得られた認識結果を利用してN-gram言語モデルを学習する。その際に、本発明によれば、認識結果の信頼度を参照して認識結果の一部からN-gramエントリを選択しつつも、選択したN-gramエントリを学習する際には全認識結果を用いるので、N-gramエントリの確率にひずみが生じることがない。本発明のその他の効果については、各実施の形態の記載から理解される。
【図面の簡単な説明】
【００２４】
【図１】本発明の実施形態によるN-gram言語モデルの教師無し学習システムを実現するのに好適なコンピュータ１００のハードウェア構成の一例を示す。
【図２Ａ】本発明の実施形態によるN-gram言語モデルの教師無し学習システムの一例の概要を示した図である。
【図２Ｂ】本発明の実施形態によるN-gram言語モデルの教師無し学習システムの他の例の概要を示した図である。
【図３】本発明の実施形態によるN-gram言語モデルの教師無し学習システム３００の機能ブロック図である。
【図４】本発明の実施形態によるN-gram言語モデルの教師無し学習処理の流れの一例を示すフローチャートある。
【発明を実施するための形態】
【００２５】
以下、本発明を実施するための形態を図面に基づいて詳細に説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。なお、実施の形態の説明の全体を通じて同じ要素には同じ番号を付している。
【００２６】
図１は、本発明を実施するためのコンピュータ１００の例示的なハードウェア構成を示す。図１において外部記憶装置１１４やＲＯＭ１０６は、オペレーティング・システムと協働してＣＰＵ１０２に命令を与え、本発明を実施するためのN-gram言語モデルの教師無し学習プログラムのコードや各種データを記録することができる。そして外部記憶装置１１４やＲＯＭ１０６に格納された複数のコンピュータ・プログラムは各々ＲＡＭ１０４にロードされることによってＣＰＵ１０２により実行される。なお、外部記憶装置１１４は、ＳＣＳＩコントローラなどのコントローラ（図示しない）を経由してバス１０８へ接続されている。コンピュータ・プログラムは圧縮し、また複数に分割して複数の媒体に記録することもできる。
【００２７】
コンピュータ１００はまた、視覚データをユーザに提示するための表示装置１１６を含む。表示装置１１６は、グラフィックスコントローラ（図示しない）を経由してバス１０８へ接続されている。コンピュータ１００は、通信インタフェース１１８を介してネットワークに接続し、他のコンピュータ等と通信を行うことが可能である。
【００２８】
上記説明した構成要素は例示であり、そのすべての構成要素が本発明の必須構成要素となるわけではない。同様に本発明を実施するためのコンピュータ１００は、キーボードやマウスのような入力デバイス、スピーカー等の他の構成要素を含むことも可能であることは言うまでもない。
【００２９】
以上の説明により、コンピュータ１００は、通常のパーソナルコンピュータ、ワークステーション、メインフレームなどの情報処理装置、又は、これらの組み合わせによって実現されることが容易に理解されるであろう。
【００３０】
ここで、最初に、本発明により生成される言語モデルについてその概要を説明する。
【００３１】
本発明において生成するN-gram言語モデルは、単純なモデルでありながら効果が大きいことから現在の大語彙連続音声認識で最もよく用いられている。言語モデルP(W)によるn単語からなる単語列w1w2…wnの生起確率は、次式で表すことができる。
【数１】
0005932869.tif 000002
【００３２】
しかし、式（１）の確率を推定するのは一般に困難であるため、N-gram言語モデルでは、ある単語の生起は直前の（N-1）単語の生起にのみに依存するという仮定がなされる。すると式（１）は次のように近似することができる。
【数２】
0005932869.tif 000003
N=1のときのモデルをユニグラム（unigram）、N=2のときをバイグラム（bigram）、N=3のときをトライグラム（trigram）と呼ぶ。Nとしては、音声認識では２または３、４程度がよく用いられている。
【００３３】
上式（２）の条件付き確率は、コーパス中に出現するN個の単語列と(N-1)個の単語列の出現回数から、最尤推定により推定することによって求めることができる。単語列wi-N+1…wiの出現回数をC(wi-N+1…wi)で表すと、条件付き確率P(wi|wi-N+1…wi-1)は、次式により表される。
【数３】
0005932869.tif 000004
しかしこの計算方法では、コーパスにたまたま出現しなかったN個の単語列の生起確率がゼロになってしまう。これを防ぐために、確率の平滑化（smoothing）が行われる。N-gram確率に対する代表的な平滑化手法としてはバックオフ平滑化(back-off smoothing)がある。これは、出現しなかったN個の単語列の生起確率を、(N-1)個の単語列の生起確率によって求める手法である。なお、上記方法は一例であり、本発明を適用するのに他の方法を利用可能であることはいうまでもない。本発明ではこのようなN-gram言語モデルを、音声認識結果を用いて教師無しで学習する。
【００３４】
図２Ａは、本発明の実施形態によるN-gram言語モデルの教師無し学習システムの一例の概要を示した図である。図２Ａに示すN-gram言語モデルの教師無し学習システム２００は、音声データを自動で音声認識した認識結果のうち、信頼性の高い部分から出現頻度の高いN-gramエントリを選択する。その一方N-gramエントリの確率を求めるにあたっては、学習システム２００は認識結果全体を用いてN-gram言語モデルの学習を行う。選択したN-gramエントリとそのN-gramエントリ確率は、一からN-gram言語モデルを構築するのに用いてもよく、或いは、構築済みのN-gram言語モデルを更新するのに用いてもよい。  
【００３５】
図２Ｂは、本発明の実施形態によるN-gram言語モデルの教師無し学習システムの他の一例の概要を示した図である。図２Ｂに示すN-gram言語モデルの教師無し学習システム２０２は、ベースラインのコーパスと、音声データを自動で音声認識した認識結果のうち信頼性の高い部分とから、それぞれ出現頻度の高いN-gramエントリを選択する。そして学習システム２０２は、選択したN-gramエントリについて、ベースラインのコーパスと認識結果全体とを用いてN-gram言語モデルを学習する。図２Ａに示したシステム２００と同様に、選択したN-gramエントリと学習の結果得られたそのN-gramエントリの確率は、一からN-gram言語モデルを構築するのに用いてもよく、或いは、構築済みのN-gram言語モデルを更新するのに用いてもよい。  
【００３６】
このように本発明の実施形態によるN-gram言語モデルの教師無し学習システムでは、信頼性の高い認識結果を参照してN-gramエントリを選択しつつも、N-gram言語モデルの学習時には信頼性の低い部分も含めて認識結果全体を用いる。これは次の理由による。即ち、信頼性の高い部分は認識結果が正しいものの、認識結果全体のサブセットであるため、本来の単語分布とは異なる分布を有するサブセットとなる。例えば、「コンピュータ」という単語が非常に認識されやすい単語であるとする。フィールドデータ全体で10000単語を含み、その中に単語「コンピュータ」が100回出現すると仮定する。すると、その1-gram確率は0.01である。しかしながら信頼性の高い部分として1000単語が選択され、単語「コンピュータ」が認識されやすいことから100個全てその1000単語の中に含まれるとすると、その1-gram確率は0.1となってしまう。このようなひずみをなくすために、本発明では、認識結果全体を用いてN-gram言語モデルの学習を行う。
【００３７】
以下、図３及び図４を参照して、N-gram言語モデルの教師無し学習システム３００について詳細に説明する。図３は、本発明の実施形態によるN-gram言語モデルの教師無し学習システム３００の機能ブロック図である。図４は、本発明の実施形態によるN-gram言語モデルの教師無し学習処理の流れの一例を示すフローチャートある。
【００３８】
図３に示すN-gram言語モデルの教師無し学習システム３００は、コーパスＡ３０２と、コーパスＢ３０４と、信頼度取得部３０６と、言語モデル生成部３０８とを含み、言語モデル生成部３０８は更に、選択部３１０と確率算出部３１２とを含む。
【００３９】
コーパスＡ３０２は、N-gram言語モデルの基礎となる部分を構築するのに使用されるベースラインのコーパスである。一例としてコーパスＡ３０２は、ターゲットアプリケーションに合致したドメイン及びスタイルを持つコーパスであってよい。他の一例として、コーパスＡ３０２は、オープンドメイン及びスタイルを持つコーパスであってもよい。また、第１コーパス３０２は、雑誌、新聞、インターネット上などの書き言葉を対象としたコーパスであってよく、或いは、音声を人手で書き起こした話し言葉のテキストデータを対象としたコーパスであってもよい。コーパスＡ３０２はまた、書き言葉と話し言葉の両方を対象としたコーパスであってもよい。
【００４０】
コーパスＢ３０４は、音声データを人手によらず自動音声認識した認識結果からなるコーパスである。そのような認識結果は、例えば、音声検索サービスやコールセンター向け音声認識サービスなどを提供するクラウド型音声認識システムやサーバ型音声認識システムから入手してよい。あるいは、TVニュースやWeb上にある音声データを、自ら用意する音声認識システムにおいて自動音声認識して取得してもよい。なお、音声認識は単語単位で動作するため、認識結果も単語分割された形で取得できることに留意されたい。
【００４１】
信頼度取得部３０６は、コーパスＢ３０４に含まれる認識結果の各文章に対し、認識結果がどの程度信頼できるものかを示す信頼度を、自ら算出することによって、あるいは外部から、取得する。取得する信頼度は、信頼度を表す指標として現在知られているもの（非特許文献２を参照）に限らず、将来新たに導出されるものも利用可能である。具体的には、音響尤度と言語尤度の論理和として算出される信頼度や、音声認識時に得られる文章単位の事後確率を利用した信頼度、複数の音声認識システムの出力の共通部分が正解であるとして正解単語の再現率又は適合率によって算出される信頼度などがある。ここでは、音声認識時に得られる文章単位の事後確率を利用するものとする。文章単位の事後確率は、音素などの認識時の単位で得られる事後確率を対数化して足し合わせることで算出される。
【００４２】
Wが認識結果の文章、Xが観測される音声信号として、文書単位の事後確率は次式（５）からargmaxを除外した形で表される。Σは全ての仮説の集合を表す。
【数４】
0005932869.tif 000005
なお、音声認識実行時にはp(X)は算出されないが、信頼度を算出する際にはp(X)による正規化を行う。P(X)は、音声認識時の仮説をHとして、次式により表される。
【数５】
0005932869.tif 000006
すべての仮説について和をとることは困難であるため、P(X)を近似的に求める種々の方法が提案されている。例えば多くの音素にマッチするモデル（バックグランドモデル）を用いて仮説を計算した上で、P(X)を算出する方法がある。
【００４３】
信頼度算出部３０６により算出された又は取得された信頼度は、コーパスＢ３０４に含まれる認識結果の各文章に対応付けて、同じコーパスＢ３０４内に、或いは他の記憶場所に格納される。なお、上記では文章単位で信頼度を算出したが、信頼度の算出は単語単位で行ってもよい。また、音声認識結果をクラウド型音声認識システムやサーバ型音声認識システムなどの外部から入手する場合、信頼度若しくは信頼度の計算に必要な情報（例えば音声認識時に得られる文章単位の事後確率）もあわせて入手するものとする。
【００４４】
言語モデル生成部３０８は、コーパスＡ３０２及びコーパスＢ３０４の両コーパスを学習用テキストとして使用してN-gram言語モデルを構築する。より具体的には、言語モデル生成部３０８は、N-gram言語モデルを構成するN-gramエントリを選択する選択部３１０と、選択した各N-gramエントリの確率を求める確率算出部３１２を含む。なお、以下では、コーパスＢ３０４に含まれる認識結果のうち、対応する信頼度が所定の閾値以上である認識結果の部分集合をコーパスｂとも呼称する。
【００４５】
一例として、選択部３１０は、コーパスＡ３０２及びコーパスＢ３０４の中から、コーパスＡ３０２に出現する出現回数ＣＡと、コーパスＢ３０４に出現する出現回数ＣＢと、コーパスｂに出現する出現回数Ｃｂとの合計が所定の回数を超えるN-gramエントリを選択する。ここで選択部３１０は、出現回数ＣＡ、出現回数ＣＢ、出現回数Ｃｂの各々を、互いに異なる重み（順に、ｗＡ、ｗＢ、ｗｂ）で重み付けする。各重みｗＡ、ｗＢ、ｗｂは、コーパスＡ３０２、コーパスＢ３０４、及びコーパスｂの各々のサブセットから言語モデルを推定し、推定した言語モデルを用いて、対象となる分野の開発用テキストに対する生成確率が最大となるように、ＥＭアルゴリズムにより最適化することで求めることができる。これに代えて、各重みｗＡ、ｗＢ、ｗｂは、経験から得られる値を予め設定しておいてもよい。
【００４６】
コーパスｂはコーパスＢ３０４のサブセットであるため、コーパスｂに出現するN-gramエントリの出現回数にはｗＢ＋ｗｂの重みが付与される。結果としてコーパスｂに出現するN-gramエントリは、コーパスＢ３０４にのみ出現する他のN-gramエントリよりも積極的に選択されることになる
【００４７】
なお、コーパスＡ３０２の利用はオプションであり、これを使用することなくN-gramエントリを選択してもよい。即ち、選択部３１０は、コーパスＢ３０４に含まれる認識結果の各々と対応する信頼度とを参照して、N-gramエントリを選択してもよい。より具体的には、選択部３１０は、コーパスｂに出現する出現回数が、所定の回数を超えるN-gramエントリを選択してよい。
【００４８】
上記構成に代えて、選択部３１０は、コーパスＢ３０４に出現するN-gramエントリの出現回数を、信頼度に応じた重みで重み付けをしてカウントしてもよい。選択部３１０は、そのようにカウントした出現回数が所定の回数を超えるN-gramエントリを選択してよい。
【００４９】
更に、選択部３１０は、コーパスＢ３０４に出現する出現回数とコーパスｂに出現する出現回数との合計が、所定の回数を超えるN-gramエントリを選択してもよい。
【００５０】
上記いずれの構成においても、選択部３１０は、信頼度の高い認識結果から積極的にN-gramエントリを選択することになる。
【００５１】
確率算出部３１２は、コーパスＡ３０２及びコーパスＢ３０４に含まれる全認識結果を用いて、選択部３１０により選択された１以上のN-gramエントリについてN-gram言語モデルを学習する。或いは学習用データとしてコーパスＢのみが使用される場合、確率算出部３１２は、選択された１以上のN-gramエントリについて、コーパスＢに含まれる全認識結果を用いてN-gram言語モデルを学習する。確率の算出方法はN-gram言語モデルの概要で説明した通りである。また、ＳＲＩインターナショナル社の言語モデルツールキット（SRILM-The SRI LanguageModeling Toolkit, http://www.speech.sri.com/projects/srilm/）など学習ツールも利用可能である。
【００５２】
言語モデル生成部３０８は、選択された１以上のN-gramエントリと学習の結果得られたその確率とを、ベースとなるN-gram言語モデルに追加してもよく、或いはN-gram言語モデルを１から構築してもよい。
【００５３】
次に図４を参照して、本発明の実施形態によるN-gram言語モデルの教師無し学習システムの動作を説明する。N-gram言語モデルの教師無し学習処理はステップ４００で開始し、信頼度算出部３０６は、音声データを自動音声認識した認識結果からなるコーパスＢ３０４から認識結果を読み出し、認識結果の各々に対する信頼度を、自ら算出することにより、または外部より取得する（ステップ４０２）。取得した信頼度は対応する認識結果に対応付けて格納される。
【００５４】
続いて言語モデル生成部３０８の選択部３１０は、ベースラインのコーパスであるコーパスＡ３０２と音声データを自動音声認識した認識結果からなるコーパスＢ３０４から、N-gram言語モデルの少なくとも１部を構成するN-gramエントリを選択する（ステップ４０４）。ここで選択部３１０は、ステップ４０２で算出した信頼度を参照し、音声データを自動音声認識した認識結果については、信頼度の低い認識結果よりも信頼度の高い認識結果に出現するN-gramエントリを積極的に選択する。
【００５５】
続いて言語モデル生成部３０８の確率算出部３１２は、ステップ４０４において選択された１以上のN-gramエントリについて、コーパスＡ３０２と、コーパスＢ３０４、即ち全認識結果とを用いて、N-gram言語モデルを学習する（ステップ４０６）。そして処理は終了する。
【００５６】
以上、実施形態を用いて本発明の説明をしたが、本発明の技術範囲は上記実施形態に記載の範囲には限定されない。上記の実施形態に、種々の変更又は改良を加えることが可能であることが当業者に明らかである。従って、そのような変更又は改良を加えた形態も当然に本発明の技術的範囲に含まれる。
【００５７】
なお、特許請求の範囲、明細書、及び図面中において示した装置、システム、プログラム、及び方法における動作、手順、ステップ、及び段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り任意の順序で実現しうることに留意すべきである。また、前の処理の出力を後の処理で用いる場合でも、前の処理と後の処理の間に他の処理が入ることは可能である場合があること、又は間に他の処理が入るように記載されていても前の処理を後の処理の直前に行うよう変更することも可能である場合があることも留意されたい。特許請求の範囲、明細書、及び図面中の動作フローに関して、便宜上「まず、」、「次に、」、「続いて、」等を用いて説明したとしても、この順で実施することが必須であることを必ずしも意味するとは限らない。
【図１】
0005932869.tif 000007
【図２Ａ】
0005932869.tif 000008
【図２Ｂ】
0005932869.tif 000009
【図３】
0005932869.tif 000010
【図４】
0005932869.tif 000011