(57)【特許請求の範囲】
【請求項１】
言語処理システムのための言語モデルを構築するための方法を実行するためのコンピュータ読み取り可能な命令を格納したコンピュータ読み取り可能な媒体において、前記方法は、
選択されたアプリケーションの意味上または構文上の概念を表すノンターミナルトークンを備えた複数の文脈自由文法にアクセスするステップと、
前記複数の文脈自由文法から単語フレーズを生成するステップと、
該単語フレーズの少なくとも一つからクエリを生成するステップと、
当該生成されたクエリに基づいてタスク独立のコーパスを照会することにより、前記タスク独立のコーパスにおける関連するテキストを特定するステップと、
当該特定されたテキストを用いて言語モデルを構築するステップと
を備えたことを特徴とするコンピュータ読み取り可能な媒体。
【請求項２】
前記言語モデルを構築するステップは、Ｎグラム言語モデルを構築するステップを備えたことを特徴とする請求項１に記載のコンピュータ読み取り可能な媒体。
【請求項３】
前記方法は、
前記複数の文脈自由文法によって前記タスク独立のコーパスの前記特定されたテキストをパージングして前記意味上または構文上の概念の各々の単語と一致する単語を特定するステップと、
当該特定された単語の各々を、前記特定された単語に対応する文脈自由文法によって定められたノンターミナルトークンで置き換えるステップとをさらに備え、
前記Ｎグラム言語モデルを構築するステップは、当該置き換えられたノンターミナルトークンを有するＮグラムモデルを構築するステップを備えたことを特徴とする請求項２に記載のコンピュータ読み取り可能な媒体。
【請求項４】
言語処理システムのための言語モデルを構築するための方法を実行するためのコンピュータ読み取り可能な命令を格納したコンピュータ読み取り可能な媒体において、前記方法は、
選択されたアプリケーションの意味上または構文上の概念を表すノンターミナルトークンを備えた複数の文脈自由文法にアクセスするステップと、
前記複数の文脈自由文法から単語フレーズを生成するステップと、
該単語フレーズから第１のＮグラム言語モデルを構築するステップと、
前記単語フレーズの少なくとも一つから情報検索クエリを生成するステップと、
当該生成されたクエリに基づいてタスク独立のコーパスを照会することにより、前記タスク独立のコーパスにおける関連するテキストを特定するステップと、
当該特定されたテキストから第２のＮグラム言語モデルを構築するステップと、
前記第１のＮグラム言語モデルと前記第２の言語モデルとを組み合わせて第３のＮグラム言語モデルを形成するステップと
を備えたことを特徴とするコンピュータ読み取り可能な媒体。
【請求項５】
前記第２のＮグラム言語モデルを構築するステップは、前記特定されたテキストのみを用いるステップを含むことを特徴とする請求項４に記載のコンピュータ読み取り可能な媒体。
【請求項６】
前記方法は、
前記複数の文脈自由文法によって前記タスク独立のコーパスをパージングして前記意味上または構文上の概念の各々の単語と一致する単語を特定するステップと、
当該特定された単語の各々を、前記特定された単語に対応するノンターミナルトークンで置き換えるステップとをさらに備え、
前記単語フレーズは、ノンターミナルトークンを含み、
前記第１のＮグラム言語モデルを構築するステップは、当該置き換えられたノンターミナルトークンを有するＮグラムモデルを構築するステップを備えたことを特徴とする請求項４に記載のコンピュータ読み取り可能な媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、言語のモデル化に関し、特に言語処理システムのための言語モデルの生成に関する。
【背景技術】
【０００２】
正確な音声認識には、単にユーザが発する正確な単語を選択する音響モデル以上のものが要求される。言い換えれば、音声認識装置はいずれの単語が発声されたかを選択あるいは決定しなければならず、全ての単語について発声された可能性が同じであれば、その音声認識装置は、通常、不満足な性能しか示さないであろう。言語モデルは、その語彙の中のいずれが一連の単語である可能性があるのかを特定する方法または手段を提供し、また、一般的には種々の一連の単語である可能性についての情報を提供する。
【０００３】
音声認識は、しばしばトップダウン型の言語処理であると考えられる。言語処理には、通常、２つの型、トップダウン型とボトムアップ型がある。トップダウン型言語処理では、認識するための最大の単位、例えば文からはじめ、それをより小さな単位、例えばフレーズに区分けする処理を行い、次に、さらにより小さい単位、例えば単語に区分けする。これに対し、ボトムアップ型言語処理は、単語から始まり、それからフレーズ及び／又は文を組み立てるように処理する。両方の型の言語処理とも、言語モデルとしての利点がある。
【０００４】
区分けのために通常用いられる手法のひとつは、形式文法（ｆｏｒｍａｌ  ｇｒａｍｍａｒ）を使用することである。形式文法は、アプリケーションが許容する単語のシーケンスを定義する。よく知られた文法のタイプのひとつに、「文脈自由文法（ｃｏｎｔｅｘｔ−ｆｒｅｅ  ｇｒａｍｍａｒ）」（ＣＦＧ）があり、これは、文構造に基づき、または意味的に文を特定する。ＣＦＧは、発声された言語（口語）においてほとんどの構造を表現するに十分な能力を有するだけでなく、十分に制限的でもあるので、効果的なパーザ（ｐａｒｓｅｒｓ）をも持つことができる。これにもかかわらず、ＣＦＧではより深い構造を得られる一方、その文法がほとんど依然として不完全であるため、強力な口語処理には未だ不適切である。ＣＦＧベースのシステムは、ユーザが話す文章が何かを知る場合だけならばよいが、これは、そのシステムの価値や有用性を減じることとなる。実際のほとんどのアプリケーションにおいて、ＣＦＧの欠点がカバーされないため、したがって、ＣＦＧの構造化された解析手法の有利な点は、無に帰すこととなる。アプリケーション開発者にとっても、ＣＦＧは、開発に高い労働集約性を要求する。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
第２の型の言語モデルは、Ｎグラム（Ｎ−ｇｒａｍ）モデルである。Ｎグラムは大量のデータでトレーニングされるため、ｎワード（ｎ−ｗｏｒｄ）従属性により、多くの場合、構文上のおよび意味上の浅い構造にシームレスに適用させることができる。しかし、この手法の前提条件として、十分な量のトレーニングデータが必要となる。Ｎグラムモデルの問題は、多くのデータが必要とされることであり、所望のアプリケーションに対し、そのモデルを十分に特定しないかもしれない。単語ベースのＮグラムモデルは、ｎワード従属性に制限されるため、ＣＦＧに比べると言語における、より長いコンストレイント（ｃｏｎｓｔｒａｉｎｔ）を含むことができない。
【０００６】
（ＮグラムとＣＦＧの組み合わせで構成される）統一化された言語（ｕｎｉｆｉｅｄ  ｌａｎｇｕａｇｅ）モデルもまた、進展した。統一化された言語モデルは、Ｎグラム及びＣＦＧの言語モデル双方の弱点を克服する可能性を潜在的に持っている。しかし、ドメインを特定したアプリケーションに対して、ドメインに依存しないトレーニングコーパス（ｃｏｒｐｕｓ）すなわち、統一化された言語モデルを含めドメインに依存しない言語モデルを改善するための明確な方法はない。
【０００７】
したがって、引き続き、言語モデルを生成するための新たな方法の開発が必要となる。技術が進歩し、より多くのアプリケーションにおいて音声認識や手書き認識が提供されるため、所定のアプリケーションに対し適切な言語モデルを生成することができる効果的な方法を、アプリケーション開発者に提供しなければならない。
【課題を解決するための手段】
【０００８】
タスク独立のコーパス（ｃｏｒｐｕｓ）から、言語を生成する方法が提供される。第１の形態においては、選択されたアプリケーションのためのタスク依存の統一化された言語モデルは、タスク独立のコーパスから生成される。タスク依存の統一化された言語モデルは、Ｎグラムモデルにおける組み込み型文脈自由文法のノンターミナルトークンを含む。この方法には、アプリケーションの意味上または構文上の概念を表すノンターミナルトークンを備える複数の文脈自由文法を取得する処理が含まれる。各々の文脈自由文法は、意味上または構文上の概念を形成するため、タスク独立のコーパスにおいて表された単語またはターミナルを含む。意味上又は構文上の概念及びフレーズの各々のワードオカレンスを特定するために、複数の文脈自由文法をもつタスク独立のコーパスが分析される。各々の特定されたワードオカレンスは、対応するノンターミナルトークンに置き換えられる。Ｎグラムモデルは、ノンターミナルトークンをもって組み立てられる。意味上又は構文上同一の概念を表す同一のノンターミナルの少なくともいくつかに対して、第２の複数の文脈自由文法が得られる。しかし、選択されたアプリケーションでは、第２の複数の文脈自由文法の各々を用いることがより適切である。
【０００９】
第２の形態は、タスク独立のコーパスから選択されたアプリケーションのためのタスク依存の統一化された言語モデルを生成するための方法である。タスク依存の統一化された言語モデルには、Ｎグラムモデルにおける組み込み型文脈自由文法のノンターミナルトークンを含む。この方法には、タスク依存の意味上又は構文上の概念を表すノンターミナルトークンを持つ文脈自由文法のセット及び所望のタスク依存の意味上又は構文上の概念のひとつと、誤りを許容するフレーズのためのノンターミナルトークンを持つ少なくともひとつの文脈自由文法とを有する複数の文脈自由文法を取得する処理が含まれる。複数の文脈自由文法を持つタスク独立のコーパスは分析され、ワードオカレンスが意味上又は構文上の概念及びフレーズの各々に対し特定される。各々の特定されたワードオカレンスは、対応するノンターミナルトークンに置き換えられる。Ｎグラムモデルは、次いでノンターミナルトークンをもって組み立てられる。
【００１０】
第３の形態は、タスク依存のコーパスから選択されたアプリケーションのための言語モデルを生成するための方法である。この方法には、選択されたアプリケーションの意味上又は構文上の概念を表すノンターミナルトークンを備える複数の文脈自由文保を取得する処理が含まれる。単語フレーズは、複数の文脈自由文法から生成される。文脈自由文法が用いられて、単語フレーズの少なくとも一つから情報検索クエリが定式化される。このタスク独立のコーパスは、定式化されたクエリに基づき照会され、タスク独立のコーパスにおけるテキストはそのクエリに基づき特定される。特定されたテキストを用いて言語モデルが構築される。
【００１１】
第４の形態は、タスク独立のコーパスから、選択されたアプリケーションのための言語モデルを生成するための方法である。この方法には、選択されたアプリケーションの意味上又は構文上の概念を表しているノンターミナルトークンを備える複数の文脈自由文法を取得する処理が含まれる。単語フレーズは、複数の文脈自由文法から生成される。第１と第２のＮグラム言語モデルは、それぞれ単語フレーズとタスク独立のコーパスから構築される。第１のＮグラム言語モデルと第２のＮグラム言語モデルは、組み合わされ、第３のＮグラム言語モデルを形成する。
【００１２】
第５の形態は、あるコーパスから、選択されたアプリケーションのための統一化された言語モデルを生成するための方法である。この方法には、選択されたアプリケーションの意味上又は構文上の概念を表しているノンターミナルトークンを備える複数の文脈自由文法を取得する処理が含まれる。単語の言語モデルは、そのコーパスから構築される。文脈自由文法の少なくともいくつかが終了する確率は、単語の言語モデルから同一のターミナルを得るための対応する確率の関数として正規化され、割り当てられる。
【図面の簡単な説明】
【００１３】
【図１】言語処理システムのブロック図である。
【図２】例示のコンピュータ環境のブロック図である。
【図３】例示の音声認識システムのブロック図である。
【図４】統一化された言語モデルを模式的に示す図である。
【図５】本発明の異なる形態についてのフローチャートである。
【図６】本発明の異なる形態についてのフローチャートである。
【図７】本発明の異なる形態についてのフローチャートである。
【図８】本発明の異なる形態についてのフローチャートである。
【図９】本発明の他の形態のブロック図である。
【発明を実施するための形態】
【００１４】
図１は、言語入力１２を受信して、処理し、出力１４を得る言語処理システム１０を一般的に示したものである。例えば、言語処理システム１０は、言語入力１２として、ユーザが発声した又は録音した言葉を受信する音声認識システム又はモジュールのような形態で実施することができる。言語処理システム１０では、口語を処理し、出力として、通常は、認識された単語がテキストの形態で得られる。
【００１５】
処理中、音声認識システム又はモジュール１０は、言語モデル１６にアクセスして、どの言葉が発声されたかを決定することができる。言語モデル１６は、例えば英語のような、特定の言語を符号化する。例示の実施例では、言語モデル１６は、ノンターミナルで意味上又は構文上の概念を指定する文脈自由文法を備えたＮグラム言語モデル、又は統一化された言語モデルおよび組み込まれたノンターミナルを有しているハイブリッドＮグラムモデルとすることができる。本発明を広範に示した形態は、入手がしばしば困難であるタスク依存のコーパスからよりも、むしろ、数個が既に準備されているタスク独立のコーパスから言語モデル１６を生成又は構築する方法である。
【００１６】
上述した音声認識システムに加え、他の言語処理システムにおいても言語モデル１６を使用することができることが、本技術分野の当業者には理解されるであろう。例えば、上述のタイプの言語処理システムは、手書き認識、光学式文字認識（ＯＣＲ）、スペルチェッカー、翻訳、標準ＰＣキーボードを用いた中国文字又は日本文字の入力またはテレフォンキーボードを用いた英単語の入力においても使用することができる。音声認識を特に参照して口述するが、本発明は、言語処理システムのこれらの及び他の形式で、人工言語や自然言語のモデルを構築する際に有用である。
【００１７】
本発明の詳細を説明する前に、実行環境を概観することが有用であろう。図２およびこれに関連した説明で、本発明を実施可能な好都合のコンピュータ環境について簡単に、一般的な説明を行う。必ずしも必要とはされないが、本発明は少なくとも一部では、例えばプログラムモジュールのようなパーソナルコンピュータで実行されるような、コンピュータ実行可能な命令の一般的コンテクストにおいて記述されるであろう。一般的に、プログラムモジュールは、ルーチンプログラム、オブジェクト、コンポーネント、データ構造などを含み、これらは、特定のタスクを実行したり、又は特定の抽象データタイプを実装する。プログラム及びモジュールによって実行されるタスクについては、ブロック図とフローチャートを用いて後述する。本技術分野の当業者は、プロセッサ実行可能な命令を、記述、ブロック図およびフローチャートから実現することができ、コンピュータ読み取り可能な任意の形式で記述することができるであろう。加えて、本発明はハンドヘルド装置、マルチプロセッサシステム、マイクロプロセッサベースあるいはプログラマブルなコンシューマ向け機器、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータなどを含む他のコンピュータシステムの構成で実施することができることが当業者には理解されるであろう。本発明はまた、分散コンピューティング環境でも実施することができ、そこでは、タスクは、通信ネットワークを介して接続された遠隔処理装置により実行される。分散コンピューティング環境では、プログラムモジュールは、ローカル及びリモートの双方のメモリ格納装置に置くことができる。図２に関連して、本発明を実施するための例示のシステムは、従来のパーソナルコンピュータ５０の形態の汎用コンピューティングデバイスを含む。これは、プロセッシングユニット５１、システムメモリ５２及びプロセッシングユニット５１とシステムメモリとの連結を含む種々のシステムコンポーネントを連結するシステムバス５３を有する。システムバス５３は、任意の種々のバス構造を用いたメモリバスまたはメモリコントローラ、ペリフェラルバス、およびローカルバスを含む任意の数タイプのバス構造とすることができる。このシステムメモリは、読取専用メモリ（ＲＯＭ）５４およびランダムアクセスメモリ（ＲＡＭ）５５を含む。基本入出力システム５６（ＢＩＯＳ）はＲＯＭ５４に格納され、例えばスタートアップ時にパーソナルコンピュータ５０内の部品間の情報転送を補助する基本ルーチンを含む。パーソナルコンピュータ５０は、ハードディスク（図示せず）との読み取り、書き込みのためのハードディスクドライブ５７、取外し可能な磁気ディスク５９との読み取りまたは書き込みのための磁気ディスクドライブ５８及びＣＤ  ＲＯＭその他光媒体のような取外し可能な光ディスクの読み取りまたは書き込みのための光ディスクドライブ６０をさらに含む。ハードディスクドライブ５７、磁気ディスクドライブ５８および光ディスクドライブ６０は、それぞれハードディスクドライブインタフェース６２、磁気ディスクドライブインタフェース６３および光ディスクドライブインタフェース６４によってシステムバス５３に接続されている。駆動装置���よび関連するコンピュータ読み取り可能な媒体により、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、その他パーソナルコンピュータ５０のためのデータの不揮発性記憶装置を提供する。
【００１８】
例示の環境ではハードディスク、取外し可能な磁気ディスク５９および取外し可能な光ディスク６１が利用されているが、コンピュータによりアクセスするデータを記憶することができる他の種類のコンピュータ読み取り可能な媒体もまた、例示の動作環境で使用可能であることが当業者に理解されるであろう。ここで、コンピュータ読み取り可能な媒体とは、例えば磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイ（ｂｅｒｎｏｕｌｌｉ）カートリッジ、ランダムアクセスメモリ（ＲＡＭｓ）、読取専用メモリ（ＲＯＭ）その他である。
【００１９】
複数のプログラムモジュールは、オペレーティングシステム６５、１つまたは２つ以上のアプリケーションモジュール６６、その他のプログラムモジュール６７およびプログラムデータ６８を含み、ハードディスク、磁気ディスク５９、光ディスク６１、ＲＯＭ５４またはＲＡＭ５５上に記憶される。ユーザは、入力デバイス、例えばキーボード７０、手書きタブレット７１、ポインティングデバイス７２およびマイクロホン９２を介して、コマンドと情報をパーソナルコンピュータ５０に入力することができる。他の入力デバイス（図示せず）には、ジョイスティック、ゲームパッド、サテライトディッシュ（ｓａｔｅｌｌｉｔｅ  ｄｉｓｈ）、スキャナその他が含まれる。以上の入力デバイスおよびその他の入力デバイスは、システムバス５３に連結しているシリアルポートインタフェース７６を介して、プロセッシングユニット５１に接続されることが多いが、他のインタフェース、例えば、サウンドカード、パラレルポート、ゲームポートまたはユニバーサルシリアルバス（ＵＳＢ）に接続することもできる。モニタ７７またはその他のタイプの表示デバイスもまた、ビデオアダプタ７８といったインタフェースを介してシステムバス５３に接続される。モニタ７７に加えて、パーソナルコンピュータは、通常その他の周辺出力デバイス、例えばスピーカ８３およびプリンタ（図示せず）を含む。
【００２０】
パーソナルコンピュータ５０は、リモートコンピュータ７９のような１つまたは２つ以上のリモートコンピュータとの論理接続を用いて、ネットワーク化された環境で動作することができる。リモートコンピュータ７９は、別のパーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピア（ｐｅｅｒ）デバイスまたはその他のネットワークノードとすることが可能であり、図２にはメモリ記憶デバイス８０のみ示されているが、パーソナルコンピュータ５０に関連する上述の要素の多くまたは全部を、通常、含む。図２に示された論理接続は、ローカルエリアネットワーク（ＬＡＮ）８１、および広域ネットワーク（ＷＡＮ）を含む。このようなネットワーク環境はオフィスではありふれたものであり、例えば企業内（ｅｎｔｅｒｐｒｉｓｅ−ｗｉｄｅ）コンピュータネットワークであるイントラネットおよびインターネットである。
【００２１】
ＬＡＮネットワーク環境で用いられる場合、パーソナルコンピュータ５０は、ネットワークインタフェースまたはアダプタ８３を介して、ローカルエリアネットワーク８１に接続される。ＷＡＮネットワーク環境で用いられる場合、パーソナルコンピュータ５０は、通常、インターネットのような広域ネットワーク８２にわたって通信を行うためのモデム８４またはその他の方法を含む。モデム８４は、内部または外部に置くことができ、シリアルポート７６を介してシステムバス５３に接続される。プログラムモジュールは、パーソナルコンピュータ５０に関連して、あるいはその一部として描かれたが、ネットワーク環境においては、リモートのメモリ記憶装置に記憶することができる。示されたネットワーク接続は例示であり、その他のコンピュータ間の通信リンクを図る方法を使用することができるということが当業者に理解されるであろう。
【００２２】
図３は、音声認識システム１００の例示の実施形態を示す。音声認識システム１００には、マイクロホン９２、アナログデジタル（Ａ／Ｄ）変換器、トレーニングモジュール１０５、特徴抽出モジュール１０６、語彙記憶モジュール１１０、セノン（ｓｅｎｏｎ）ツリーを含む音響モデル１１２、ツリーサーチエンジン１１４および言語モデル１６が含まれる。全体のシステム１００あるいは音声認識システム１００の一部は、図２に示す環境において実行することができる点が留意されるべきである。例えば、マイクロホン９２は、入力デバイスとして、適切なインタフェースおよびＡ／Ｄコンバータ１０４を介して、コンピュータ５０に接続できるのが望ましい。トレーニングモジュール１０５および特徴抽出モジュール１０６はコンピュータ５０内のハードウェアとするか、または図２に開示された任意の情報記憶装置に記憶され、プロセシングユニット５１またはその他の適合したプロセッサからアクセス可能なソフトウェアモジュールのいずれかとすることができる。加えて、語彙記憶モジュール１１０、音響モデル１１２および言語モデル１６もまた、図２に示される、いずれかのメモリデバイスに記憶されるのが望ましい。さらに、ツリーサーチエンジン１１４は、（１つまたは２つ以上のプロセッサを含む）プロセッシングユニット５１内で実行されるか、または専用の音声認識プロセッサにより実行され、パーソナルコンピュータが利用することもできる。
【００２３】
図示された実施形態においては、音声認識中に、ユーザがマイクロホン９２に対して発生した音声は、可聴音声信号の形式でシステム１００にインプットされる。マイクロホン９２は、可聴音声信号をアナログ電気信号に変換し、Ａ／Ｄコンバータ１０４に送られる。Ａ／Ｄコンバータ１０４は、アナログ音声信号をデジタル信号のシーケンスに変換し、特徴抽出モジュール１０６に送られる。ある実施形態では、特徴抽出モジュール１０６は、従来のアレイプロセッサであり、デジタル信号に関しスペクトル分析を実行し、周波数スペクトルの各周波数域に対する出力値を計算する。この信号は、ある例示の実施形態では、およそ１６ｋＨｚのサンプルレートでＡ／Ｄコンバータ１０４により、特徴抽出モジュール１０６に与えられる。
【００２４】
特徴抽出モジュール１０６は、Ａ／Ｄコンバータ１０４から受け取ったデジタル信号を、複数のデジタル信号を含むフレームに分割する。各フレームはおよそ１０ｍｓの長さである。次に、このフレームは、特徴抽出モジュール１０６によって、複数の周波数帯に対するスペクトル特性を反映した特徴ベクトルに符号化される。ディスクリートで半連続な隠れマルコフモデリングの場合、特徴抽出モジュール１０６はまた、ベクトルの量子化手法とトレーニングデータから導かれたコード表を用いて、特徴ベクトルを１つまたは２つ以上のコードのワードに符号化する。したがって、特徴抽出モジュール１０６は、発声された音声の各々に対する特徴ベクトル（またはコードのワード）をその出力として与える。特徴出力モジュール１０６は、ある特徴ベクトル（またはコードのワード）のレートまたは概ね全て１０ｍｓのレートで、特徴ベクトル（またはコードのワード）を送る。
【００２５】
出力である確率配分（ｐｒｏｂａｂｉｌｉｔｙ  ｄｉｓｔｒｉｂｕｔｉｏｎｓ）は、分析されているそのフレームの特徴ベクトル（またはコードのワード）を用いて、隠れマルコフモデルに対して計算される。これらの確率配分は、その後ビタビ（Ｖｉｔｅｒｂｉ）アルゴリズム又はこれに類似の処理手法を実行する際用いられる。
【００２６】
特徴抽出モジュール１０６からコードのワードを受信する際、ツリーサーチエンジン１１４は、音響モデル１１２に記憶された情報にアクセスする。モデル１１２は、音響モデル、例えば音声認識システム１００で検出されるための音声ユニットを表現している隠れマルコフモデルを格納する。一実施例において、音響モデル１１２には、隠れマルコフモデルにおける各マルコフ状態のセノンツリーが含まれる。隠れマルコフモデルは、例示の一実施例においては、音素を表す。音響モデル１１２におけるセノンに基づき、ツリーサーチエンジン１１４は、特徴抽出モジュール１０６から受信した特徴ベクトル（またはコードのワード）によって表された最も確実な音素、したがってシステムがユーザか受け取った音声を代表的に表現したものを決定する。
【００２７】
ツリーサーチエンジン１１４は、モジュール１１０に格納された語彙にもアクセスする。音響モデル１１２へのアクセスに基づいてツリーサーチエンジン１１４が受信した情報は、語彙格納モジュール１１０のサーチの際用いられ、特徴抽出モデル１０６から受信したコードのワードまたは特徴ベクトルを最も確実に表す単語を決定する。また、サーチエンジン１１４は、言語モデル１６にもアクセスする。言語モデル１６は、統一化された言語モデルあるいは一単語のＮグラムまたは文脈自由文法であり、入力された音声によって表された、最も確実な単語を特定する際使用される。最も確実な単語はテキスト出力で得られる。
【００２８】
音声認識システム１００において、ＨＭＭモデリングおよびセノンツリーが用いられる場合について述べたが、これはほんの一実施例であることが理解されるはずである。音声認識システム１００は多くの形態をとることができ、それらが必要とされるのは、言語モデル１６を用いること、およびユーザが発声したテキストを出力として提供することだけであることが当業者には理解されるであろう。
【００２９】
統計的なＮグラム言語モデルによって、ある単語までの所与の単語シーケンス（すなわち、所与の単語履歴Ｈ）をもつ単語についての確率が計算されることがよく知られている。Ｎグラム言語モデルでは、次の単語の確率に影響を与えるものとして、履歴Ｈにおいては（Ｎ−１）個前の単語までしか考慮しない。例えば、バイグラム（すなわち２−グラム）言語モデルでは、次の単語に影響するものとしては、その直前の単語を考慮する。したがって、Ｎグラム言語モデルにおいては、単語が見出される確率は以下のように表される。
【００３０】
【数１】
0005162697.tif 000002
【００３１】
ここで、ｗは対象とする単語：
ｗ１は、このシーケンス中において単語ｗのｎ−１個前に位置する単語；
ｗ２は、単語ｗのｎ−２個前に位置する単語；
ｗ（ｎ−１）は、単語ｗの１個前に位置する単語；
また、単語シーケンスの確率は、その履歴を与えられた各単語の確率の乗法演算に基づいて定められる。したがって、単語シーケンス（ｗ１・・ｗｍ）の確率は、以下のように表される。
【００３２】
【数２】
0005162697.tif 000003
【００３３】
Ｎグラムモデルは、原文のままのトレーニングデータのコーパス（フレーズ、文、文章の一部分、段落などの収集物）にＮグラムアルゴリズムを適用することによって得られる。Ｎグラムアルゴリズムは、例えば、カッツの手法（Ｋａｔｚ’ｓ  ｔｅｃｈｎｉｑｕｅ）のようによく知られた統計手法を使用することもできるし、またバイノミアル  ポステリア  ディストリビューション  バックオフ  テクニック（ｂｉｎｏｍｉａｌ  ｐｏｓｔｅｒｉｏｒ  ｄｉｓｔｒｉｂｕｔｉｏｎ  ｂａｃｋｏｆｆ  ｔｅｃｈｎｉｑｕｅ）を使用することもできる。これらの手法を用いて、アルゴリズムによって、ある単語ｗ（ｎ）が単語ｗ１、ｗ２・・、ｗ（ｎ−１）の次に来る確率が計算される。この確率の値は、集合してＮグラム言語モデルを形成する。標準的統計的なＮグラムモデルを構築するために、本発明の後述のいくつかの実施形態を利用することができる。言語モデルはまた、文脈自由文法を備えることが、本技術分野でもよく知られている。文脈自由文法では、ルールベースモデルが提供され文構造や口語の意味上または構文上の概念をキャプチャーすることができる。例えば、例示の目的で、会議の予定を組みまたは電子メールを送信することに関するソフトウェアアプリケーションまたはタスクのためのより多くの文脈自由文法のうちの文脈自由文法のセットの１つは、
【００３４】
【表１】
0005162697.tif 000004
【００３５】
を備えることができる。
【００３６】
この例では、“＜        ＞”は、意味上または構文上の概念を区分けするためのノンターミナルを示し、各ノンターミナルはターミナル（例えば、単語またはフレーズ）および、いくつかの例では階層構造におけるノンターミナルトークンを用いて定義される。
【００３７】
この種の文法では、正式な文構造や言語学の錦密な知識は要求されず、むしろ、特定のアプリケーションまたはタスクではどのような単語、フレーズ、文または文章の一部分が用いられるかという知識が要求される。
【００３８】
統一化された言語モデルもまた、本技術分野ではよく知られている。図４を参照すると、統一化された言語モデル１４０には、Ｎグラム言語モデル１４２と複数の文脈自由文法１４４との組み合わせが含まれる。さらに、Ｎグラム言語モデル１４２には、組み込まれた複数の文脈自由文法１４４の同一のノンターミナルのうちの少なくといくつかが含まれので、Ｎグラム言語モデル１４２は、単語を予測することに加え、ノンターミナルもまた予測することができる。一般的に、ノンターミナルについての確率は、以下に表すことができる。
【００３９】
【数３】
0005162697.tif 000005
【００４０】
ここで、（ｈ１，ｈ２，  ．．．  ｈｎ）は先行する単語またはノンターミナルとすることができる。基本的に、統一化された言語モデル１４０のＮグラム言語モデル１４２（ハイブリッドＮグラムモデルとしても知られている）には、単語と少なくともいくつかのノンターミナルを有するオーグメント（ａｕｇｍｅｎｔ）された語彙が含まれる。
【００４１】
使用にあたって、音声認識システムまたはモジュール１００は、言語モデル１６（本実施形態では、統一化された言語モデル１４０）にアクセスし、どの単語が話されたかを決定するであろう。Ｎグラム言語モデル１４２は、最初に単語とノンターミナルを予測するために用いられる。ノンターミナルが予測されると、複数の文脈自由文法１４４が用いられ、ノンターミナルの関数としてターミナルが予測される。しかし、特定の方法で統一化された言語モデル１４０が使用されるということは、本発明では重要なことではないことが理解されるはずである。
【００４２】
発明の背景で述べたように、アプリケーション開発者は、選択されたアプリケーションを適正な言語モデル１６が生成することを可能する効率的な方法を与えられるはずである。あるアプリケーションにおいては、標準的なＮグラム言語モデルは有効に働き、このモデルを開発する際の改良は有益であろう。一方その他のアプリケーションでは、統一化された言語モデル１４０が最も有効に働き、そのため、このようなモデルを構築する際の改良もまた有益であろう。
【００４３】
言語処理のために異なるアプリケーションが開発されるなら、タスク依存(ドメイン依存)の言語モデルは、その具体性が高くなることから、より大きな汎用的言語モデルに比べより正確な言語モデルを創作することができるため、より適切なものとなることができる。しかし、タスク依存の言語モデルは、容易に汎用的言語モデルを生成することができない。Ｎグラム言語モデルのような汎用的言語モデルを生成するために、トレーニングデータのタスク独立のコーパスを用いて、上述のようにＮグラムアルゴリズムに適用することができる。タスク独立のコーパスは既に準備されており、雑誌や新聞などの編集を備えて、ほんの少し命名することができる。タスク独立のコーパスは、いずれかのアプリケーション向けにはなっておらず、というよりむしろある言語において単語がどのように用いられているかについての多くの例示を与えてくれる。一方、タスク依存のコーパスは、通常、利用可能ではない。コーパスは苦労して収集しなければならず、しかも、それでも完全ではないかもしれない。
【００４４】
本発明を広範に示す実施形態には、タスク独立のコーパスから選択されたアプリケーションのためのタスクまたはドメイン依存の統一化された言語モデルを生成するための方法が含まれる。タスク依存の統一化された言語モデルには、Ｎグラム言語モデルにおける組み込み型文脈自由文法のノンターミナルトークンが含まれる。以上検討したように、タスク独立のコーパスは、文やフレーズなどを編集したものであり、いずれかの特定のアプリケーション向けのもではなく、むしろ一般的に非常に多様な例を通して、ある言語で単語がどのようにともされるかを示している。後述の種々の手法が開発され、タスク依存のアプリケーションに適した言語モデルを生成するためのタスク独立のコーパスが用いられている。
【００４５】
図５は、言語モデルを生成しまたは構築するための第１のメソッド１６０を示している。メソッド１６０は、意味上または構文上の概念を表現するノンターミナルトークンを備える複数の文脈自由文法を取得するためのステップ１６２を含む。ここで、意味上または構文上の概念には、種々のコマンド、オブジェクト、動作などに特定の単語が使われることを表現する単語または単語フレーズが含まれる。例えば、タスク独立のコーパスには、固有名を使用する方法についての種々の例証が含まれる。例えば、タスク独立のコーパスは、文：「ビル  クリントンは会議に出席した」および「ジョン  スミスは会議でランチに行った」などを含む。タスク独立のコーパスにおいて意味上または構文上の概念を形成するために用いられる単語は、タスク依存のアプリケーションのために用いられるものではないかもしれないが、タスク独立のコーパスは、意味上または構文上の概念のためのコンテクストを明らかにする使用に適した例を与える。ステップ１６２は、タスク独立のコーパスにおける意味上または構文上の概念を表すためのノンターミナルトークンをもつ文脈自由文法を取得することを表し、ターミナルを持つノンターミナルトークンは、タスク独立のコーパス中で表される。例として、上記の例の固有名を用いると、ＣＦＧは以下のようにすることができる。
【００４６】
【表２】
0005162697.tif 000006
【００４７】
通常、種々の意味上または構文上の概念を表現するノンターミナルトークンを備えた複数の文脈自由文法が用いられる。例えば、その他の意味上または構文上の概念としては、少し命名すると、地理上の場所、地域、タイトル、日付、時間、通貨量、パーセントの量がある。しかし、これらの意味上または構文上の概念は単なる例示に過ぎず、本発明を実施するために必要とされることもないし、このリストが、所望のアプリケーションに極めて依存する意味上または構文上の概念の全てのタイプを尽くしているというわけでもない。
【００４８】
ステップ１６４においては、タスク独立のコーパスは、意味上または構文上の概念のタスク独立の各コーパスにおいてワードオカレンスを特定するために、ステップ１６２で得られた複数の文脈自由文法によって分析される。
【００４９】
ステップ１６６において、特定されたワードオカレンスの各々は、対応するノンターミナルトークンと置き換えられる。Ｎグラムモデルは、次いでＮグラムアルゴリズムを用いてステップ１６８において構築され、Ｎグラムモデルにはノンターミナルトークンが組み込まれている。
【００５０】
ステップ１７０において、第２の複数の文脈自由文法は、選択されたアプリケーションにあわせて取得される。特に、第２の複数の文脈自由文法には、ステップ１６２の同一の意味上または構文上の概念を表すノンターミナルのうちの少なくともいくつかが含まれる。しかし、第２の複数の文脈自由文法の各々は、選択されたアプリケーションにより適合する。上述の例示の固有名に戻って参照すると、第２の複数の文脈自由文法はＣＦＧを含むであろう。：
【００５１】
【表３】
0005162697.tif 000007
【００５２】
メソッド１６０は、コンピュータ５０で実施され、文脈自由文法の各々およびタスク独立のコーパスはローカルまたはリモートの記憶デバイスのいずれかに記憶することができる。ノンターミナルトークンをもつＮグラムモデルおよびタスク依存の意味上または構文上の概念を表すノンターミナルトークンをもつ第２の複数の文脈自由文法は、音声認識部によってアクセスされるコンピュータ読み取り可能な媒体に記憶される。
【００５３】
図６は、タスク独立のコーパスから選択されたアプリケーションに対する統一化された言語モデルを生成するためのメソッド１８０を示しており、コーパスには、異なるコンテクストである可能性のある大量のフレーズが含まれる。タスク依存のアプリケーションのために文脈自由文法によってタスク独立の言語使用を簡易に分析すると、エラーが発生する可能性があり、Ｎグラムアルゴリズムのアプリケーションに関するＮグラムモデルまで広がるであろう。分析中のエラーの発生を抑えるために、本発明の本実施形態では、所望のタスク依存の意味上または構文上の概念の一つに対して誤りを許容する（ｔｈａｔ  ｃａｎ  ｂｅ  ｍｉｓｔａｋｅｎ）フレーズ（単語または複数の単語）のためのノンターミナルトークンを持つ少なくとも一つの文脈自由文法を用いる。特に、ステップ１８２においては、複数の文脈自由文法が得られる。複数の文脈自由文法には、タスク依存の意味上または構文上の概念（すなわち、選択されたアプリケーションに直接、関連する意味上または構文上の概念）を表すノンターミナルトークンを有する文脈自由文法のセット、および所望のタスク依存の意味上または構文上の概念の一つに対し誤りを許容するフレーズのためのノンターミナルトークンを有する少なくとも一の文脈自由文法が含まれる。例えば、タスク依存のアプリケーションは、Ｎグラムモデルにおける意味上の概念として週のうちの曜日をモデリングすることが要求されるかもしれない。以下の形態の文脈自由文法が、タスク独立のコーパスの分析（パージング）中使用することができる。
【００５４】
【表４】
0005162697.tif 000008
【００５５】
しかし、タスク独立のコーパスには、「ジョー  フライデイ」と呼ばれる人への参照が含まれるかもしれない。この例で「フライデイ」を姓とし、かつ曜日と分析されるというＮグラムモデルにおいてエラーを招くであろう事態を避けるため、複数の文脈自由文法は以下の形態
【００５６】
【表５】
0005162697.tif 000009
【００５７】
の文脈自由文法を含むことができる。
【００５８】
この方法では、週のうちの曜日というインスタンスは、「フライデイ」が個別の姓である場合のインスタンスから区別されて特定されるであろう。
【００５９】
ステップ１８４は、複数の文脈自由文法によってタスク独立のコーパスを分析し、各々の意味上または構文上の概念に対し、ワードオカレンスを特定することを示している。目的のアプリケーションに関する概念を表すノンターミナルに対し特定されたワードオカレンスの各々は、ステップ１８６において、対応する文脈自由文法によって定められた対応するノンターミナルトークンに置き換えられる。換言すれば、分析中のエラー（例えば、上記の例では<Person With Last Name Friday>）を回避するため導入された異質なノンターミナルで特定された単語シーケンスは対応するノンターミナルとは置き換えられない。Ｎグラムモデルは、ステップ１８８に示すように組み込まれたノンターミナルトークンをもって、構築することができる。ステップ１９０は、ステップ１７０に類似しており、選択されたアプリケーションに適した文脈自由文法の第２のセットを取得することを含む。
【００６０】
言語処理、例えば音声認識中に使用された場合、ノンターミナルトークンをもつＮグラムモデルおよびタスク依存のプリケーションに関連した複数の文脈自由文法は音声認識モジュール１００がアクセスすることができるコンピュータ読み取り可能な媒体上に格納される。しかし、以上の文脈自由文法は、タスク独立のコーパスを正式に分析するためにのみ使用されることから、所望のタスク依存の意味上または構文上の概念の一つに対し誤る可能性のあるフレーズに関連した文脈自由文法を含む必要はない。これらの文法に関連したフレーズが、選択されたアプリケーションにおいて話されることは普通ない。したがって、複数の文脈自由文法の範囲またはサイズは、音声認識中ではより小さくなり、これに対応して、コンピュータ５０で必要とされる記憶空間はタスク独立のコーパスを分析するために使用されるよりも小さくなる。
【００６１】
一実施形態では、Ｎグラムモデルを構築するステップ１８８には、所望であるタスク依存の意味上または構文上の概念の一つについて誤りを許容する、少なくともいくつかの関連するテキストをノンターミナルトークンのためのタスク独立のコーパスから除去することが含まれる。この方法では、タスク独立のコーパスのサイズをパージングされる前に縮小させ、メソッド１８０がより早く実行することができるようにする。
【００６２】
メソッド１８０には、所望であるタスク依存の意味上または構文上の概念の一つについてなされたフレーズ（単語または複数の単語）のための誤りを確認するため、パージングされたタスク独立のコーパスまたは結果得られたＮグラムモデルを検査する追加のステップが含まれることにも留意すべきである。次いで、正式な文脈自由文法が決定され、ステップ１８２における複数の文脈自由文法に含まれる。パージングされたタスク独立のコーパスまたはＮグラムモデルを再検査するために必要なものとして、１８４から１８８までのステップを実施し、誤りが訂正されたか否かを確かめることができる。必要であれば誤りが訂正され、適切なＮグラムモデルが得られるまで、このインタラクティブなプロセスを繰り返すことができる。
【００６３】
上記で検討したように、タスク独立のコーパスは汎用的なコーパスであり、事実、ほとんどのコーパスは、開発者が注目するタスクやアプリケーションには無関係であると思われる。それにもかかわらず、タスク独立のコーパスには、タスクまたはアプリケーションに関連するテキストが含まれるかもしれない。一般的に、本発明の他の形態には、情報検索システムにおいてクエリとして使用することができるフレーズ、文章または文章の一部分を形成するため、タスク依存の文脈自由文法を用いることが含まれる。情報検索システムは、タスク独立のコーパスを調べ、このクエリに類似する部分を特定する。タスク独立のコーパスのうちの特定されたテキストは、選択されたタスクまたはアプリケーションにより密接に関連する；したがって、特定されたテキストから導き出された言語モデルは、完全なタスク独立のコーパスに基づいた言語モデルよりも明確でありえる。加えて、たとえ明確なタスクまたはアプリケーションを知るものが文脈自由文法を記述しても、そのタスク又はアプリケーションために使用することができる種々の単語シーケンスの全ては知らないかもしれない。この手法は、タスク独立のコーパスの範囲を限定するが、タスクを特定した文章やフレーズなどのさらに多くの例を特定することができる。
【００６４】
図７は、上で検討した仕方でタスク独立のコーパスから言語モデルを生成するための方法２００を示している。ステップ２０２には、選択されたアプリケーションの意味上または構文上の概念を表しているノンターミナルトークンを備えた複数の文脈自由文法を取得することが含まれる。上述のように、普通、文脈自由文法は、意味上または構文上の概念の各々に対し選択されたアプリケーションの中では、どんなフレーズが使用されるかという知識を少なくともいくつかは持っている開発者により記述されるが、このようなフレーズについての知識量は申し分ないものではない。ステップ２０４において、単語フレーズは複数の文脈自由文法から生成される。単語フレーズには、ノンターミナルトークンが複数の単語を含む、関連する文脈自由文法によって定められた種々の組み合わせまたは置き換えのいくつかまたは全部が含まれる。
【００６５】
ステップ２０６において、少なくとも一つのクエリが、生成された単語フレーズのうちの少なくとも一つを用いて、情報検索システムのために公式化される。このクエリは、ＴＦ−ＩＤＦベクトルを使用する統計的「単語の集合」（“ｂａｇ  ｏｆ  ｗｏｒｄｓ”）手法を用いて生成することができる。クエリとタスク独立のコーパスのセグメントとの類似性は、コサインシミラリティメジャー（ｃｏｓｉｎｅ  ｓｉｍｉｌａｒｉｔｙ  ｍｅａｓｕｒｅ）を用いて、計算することができる。一般に、これらは、情報検索の分野でよく知られた手法である。これに替えて、クエリは、単語フレーズを組み合わせるために必要とされる（“ａｎｄ”や“ｏｒ”などの）ブール論理を含むことができる。しかし、本技術分野の精通者に理解されるように、各クエリは、単に、分離した単語フレーズとすることができる。
【００６６】
ステップ２０８において、タスク独立のコーパスは、公式化されたクエリに基づいて照会される。タスク独立のコーパスに対してクエリを生成し実行するための特定の情報検索手法は、本発明の本実施形態では重要ではない。むしろ、任意の適切なクエリ開発と情報検索手法を用いることができる。本発明の手法にしたがって、特定されたテキストから生成された言語モデルは、タスク独立のコーパスのより密接に関連したテキストを特定する情報検索手法によって、さらにうまく動作することを簡単に指摘しておくべきである。
【００６７】
タスク独立のコーパスにおいて特定されるテキストが、ステップ２１０に示される。言語モデルは、ステップ２１２に示すように特定されたテキストを用いて組み立てることができる。
【００６８】
ここで、図７に示された方法は、統一化された言語モデルにも、あるいはＮグラムにさえ限定されないが、というよりもむしろ、そのモデルがタスク独立のコーパスに基づいている言語処理システムにおいて用いられる、いかなるタイプの言語モデルを形成するときにも役立ち得るということに留意すべきである。とはいっても、方法２００は、Ｎグラムモデルを構築する際には特に有用である。Ｎグラム言語モデルまたはハイブリッドＮグラム言語モデルの場合には、ステップ２１２は、通常Ｎグラムアルゴリズムを使用する必要があるであろう。
【００６９】
図８は、図７の方法２００に類似する方法２２０を示し、同様のステップを識別するために同じ符号を付した。しかし、方法２２０は、文脈自由文法のノンターミナルトークンをもって、Ｎグラム言語モデルを生成するために使用することができる。上述のステップに加えて、方法２２０にはまた、ステップ２２２に示すように、各意味上または構文上の概念に対しワードオカレンスを特定するため、複数の文脈自由文法を持つタスク独立のコーパスの特定されたテキストをパージングすることが含まれる。次に、ステップ２２４には、特定されたワードオカレンスの各々を選択されたノンターミナルに対応するノンターミナルトークンで置き換えることが含まれる（すなわち、パージング中の誤りを回避するために導入されたノンターミナルを除去する）。ステップ２１２には、ノンターミナルトークンをもって、Ｎグラムモデルを組み立てることが含まれる。方法２００および２２０の双方において、関連するテキストがタスク独立のコーパスの中で特定される。必要ならば、特定されたテキストは、関連するテキストを分離し、より容易な処理を提供する際の補助として、抽出され、コピーされ、さもなければタスク独立のコーパスとは別に記憶することができる。
【００７０】
図９は、本発明の他の実施形態を示すブロック図である。一般に、本実施形態には、文脈自由文法より得られた単語フレーズからＮグラム言語モデルを形成し、このＮグラム言語モデルを、タスク独立のコーパスに基づいた他のＮグラム言語モデルに組み合わせることが含まれる。図９に示された実施例において、ブロック２４０は、選択されたタスクまたはアプリケーションについて取得された（例えば、開発者により著された）文脈自由文法を表している。文脈自由文法は、方法２００または２２０のステップ２０４と類似する仕方で、合成されたデータまたは単語フレーズ２４２を生成するため用いられる。次に、単語フレーズ２４２は、Ｎグラムアルゴリズム２４４に提供され、第１のＮグラム言語モデル２４４が構築される。
【００７１】
図９はまた、ブロック図の形式でステップ２０６、２０８および２１０を示しており、ここで、文脈自由文法は、少なくとも一つのフレーズから情報検索クエリを公式化するために使用され、公式化されたクエリに基づいてタスク独立のコーパスを検索し、クエリに基づきタスク独立のコーパスの中で関連するテキストを特定し、および特定されたテキストから第２のＮグラム言語モデルを構築する。ブロック２４８は、第２のＮグラム言語モデル２５０を得るためのＮグラムアルゴリズムのアプリケーションを示している。
【００７２】
第３のＮグラム言語モデル２５２は、第１のＮグラム言語モデル２４６と第２のＮグラム言語モデルを組み合わせて形成される。この組み合わせは、任意の既知のスムージング手法、例えば内挿法、削除補間法または任意の他の適当な手法を用いて実施される。必要であれば、第２の言語モデルは、特定されたテキストが正確であると信じるに足るか否かに基づいて重み付けすることができる。重み付けは、タスク独立のコーパスの中で特定されたテキストの量や使用されたクエリの数などに基づくことができる。
【００７３】
他の実施例では、意味上または構文上の概念を表現するノンターミナルトークンは、特定されたテキストまたはタスク独立のコーパスに挿入し、第２のＮグラム言語モデルにノンターミナルトークンを含めることができる。このオプションは、ブロック２６４への断続線と矢印２６６および２６８で示される。もちろん、このオプションが選ばれた場合、特定されたテキスト２１０は、直接Ｎグラムアルゴリズム２４８にではなく、むしろブロック２６４に提供されるであろう。特定されたテキストあるいはタスク独立のコーパスに挿入されたノンターミナルトークンは、ブロック２４０において取得された文脈自由文法、またはこれと替えて、上で検討した理由で他の文脈自由文法を含む文脈自由文法の別のセット２７０に基づくことができる。第３のＮグラム言語モデルがノンターミナルを持って構築されたとき、一般に、ブロック２４２における単語フレーズまたは合成データにはまた、同様にノンターミナルも含まれる。
【００７４】
文脈自由文法が合成データを生成するため用いられた場合、単語フレーズがノンターミナルおよびノンターミナルのターミナルによって形成される確率は、必要に応じ選択される；例えば、各々を等しい確率とすることができる。
【００７５】
タスク独立の統一化された言語モデルには、Ｎグラムにおける組み込み型文脈自由文法のノンターミナルトークンに加えて、ノンターミナルトークンを定める複数の文脈自由文法が含まれる。各文脈自由文法内では、標準の確率文脈自由文法が使用される。しかし、特定のタスクまたはアプリケーションに関連する実データなければ、簡単に各ターミナルの確率の見積もりを決定することはできない。換言すると、開発者は、複数の文脈自由文法を著すか、さもなければ取得することができる；しかし、各ターミナルの確率の見積もりは、容易には分からないかもしれない。たとえ、一様な確率の配分が用いられても、本発明の別の形態には、少なくともいくつかの文脈自由文法のターミナルに確率を、対応するタスク独立のコーパスにより構築されたＮグラム言語モデルから同じターミナルに対し取得された確率の関数として割り当てることが含まれる。文脈自由文法のターミナルへの確率の割当には、各文脈自由文法におけるＮグラム言語モデルからのターミナルの確率を、対応する文脈自由文法におけるターミナルの関数として正規化することが含まれるのが望ましい。換言すれば、文脈自由文法は、Ｎグラム言語モデルからのターミナルの認められるセットを拘束しまたは定める。したがって、Ｎグラム言語モデルからのターミナルの確率は、対応する文脈自由文法においてあらわされたターミナルと同じ確率空間において、適切に正規化される必要がある。
【００７６】
0005162697.tif 000010
【００７７】
【数４】
0005162697.tif 000011
【００７８】
である。
【００７９】
0005162697.tif 000012
【００８０】
【数５】
0005162697.tif 000013
【００８１】
ここで、＜／ｓ＞は、専用の文末の単語を表している。文脈自由文法のノンターミナル内で履歴を付与された単語の可能性を計算するため、３つの異なった方法が用いられる。
【００８２】
0005162697.tif 000014
【００８３】
【数６】
0005162697.tif 000015
【００８４】
一様なモデルでは、文脈自由文法のノンターミナルの下での経験上の単語の配分は獲得されない。既存のドメイン独立の単語の３−グラム確率を継承することがよりよい代替手段である。これらの確率は、同一の確率空間に適切に正規化されなければならない。本手法を示すため単語の３−グラムモデルを使用したとしても、いかなる単語ベースの言語モデルを、異なるＮによる単語レベルのＮグラムを含め、ここでは使用することができることに留意すべきである。また、本手法は単語の言語モデルがどのようにトレーニングされるか（特に、タスク独立のコーパスまたはタスク依存のコーパスのいずれを用いるか）にかかわらず適用することができる。これによって、得られる：
【００８５】
【数７】
0005162697.tif 000016
【００８６】
特定のＣＦＧのノンターミナルによってカバーされる単語シーケンスのモデル化を改善する別の方法は、各ノンターミナルｔに対し特定の単語の３−グラム言語モデルＰ（ｗn｜ｗn-2，ｗn-1）を用いることである。式(７)におけると同一のものが正規化を実施される。
【００８７】
自然言語があいまいであるため、Ｗに対して複数のセグメンテーションが可能となるかも知れない。したがって，Ｗの可能性は、全てのセグメンテーションに渡る合計値Ｓ（Ｗ）である：
【００８８】
【数８】
0005162697.tif 000017
【００８９】
本発明は、好ましい実施例に関して記述してきたが、本発明の精神と範囲内から出発することなく形式的、詳細な部分に変更を加えることができることが、本技術分野に精通した者には理解されるであろう。
【図１】
0005162697.tif 000018
【図２】
0005162697.tif 000019
【図３】
0005162697.tif 000020
【図４】
0005162697.tif 000021
【図５】
0005162697.tif 000022
【図６】
0005162697.tif 000023
【図７】
0005162697.tif 000024
【図８】
0005162697.tif 000025
【図９】
0005162697.tif 000026