(57)【要約】【課題】  単語のテキストとユーザによる単語の発音とを、音声認識レキシコンに追加するための表音記述に変換する方法およびコンピュータ可読媒体を提供することである。【解決手段】  最初に、複数の可能な表音記述が少なくとも２つ生成される。ある表音記述は、ユーザによる単語の発音を表す音声信号を復号することによって形成される。少なくとも１つの他の表音記述は、単語のテキストから生成される。音声ベースおよびテキストベースの表音記述を含む複数の可能なシーケンスは整列され、それらとユーザの発音との対応に基づいて単一のグラフ中でスコア付けされる。次いで、最高スコアを有する表音記述が、音声認識レキシコンへの入力に選択される。【選択図】  図６
2005258443.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータによって読取り可能な命令を含むコンピュータ可読媒体であって、前記命令は実行されると、
単語のテキストを参照せずに前記単語の音声ベースの表音記述を生成するステップと、
前記単語のテキストに基づいて前記単語のテキストベースの表音記述を生成するステップと、
前記音声ベースの表音記述と前記テキストベースの表音記述とを音ごとに整列して単一のグラフを形成するステップと、
前記単一のグラフから表音記述を選択するステップと
を実施することを特徴とするコンピュータ可読媒体。
【請求項２】
ユーザによる前記単語の発音に基づいて前記音声ベースの表音記述を生成するステップをさらに含むことを特徴とする請求項１に記載のコンピュータ可読媒体。
【請求項３】
前記ユーザによる前記単語の発音を表す音声信号を復号して前記単語の音声ベースの表音記述を生成するステップをさらに含むことを特徴とする請求項２に記載のコンピュータ可読媒体。
【請求項４】
音声信号を復号するステップは、前記音声信号から音節状単位のシーケンスを識別するステップを含むことを特徴とする請求項２に記載のコンピュータ可読媒体。
【請求項５】
音声信号を復号して音節状単位のシーケンスを識別する前に、相互情報を用いて音節状単位のセットを生成するステップをさらに含むことを特徴とする請求項４に記載のコンピュータ可読媒体。
【請求項６】
相互情報を用いて音節状単位を生成するステップは、
訓練辞書中の下位単語単位の対について相互情報の値を計算するステップと、
前記相互情報の値に基づいて下位単語単位の対を選択するステップと、
前記選択された下位単語単位の対を音節状単位にマージするステップと
を含むことを特徴とする請求項５に記載のコンピュータ可読媒体。
【請求項７】
前記テキストベースの表音記述を生成するステップは、文字−音規則を使用するステップを含むことを特徴とする請求項２に記載のコンピュータ可読媒体。
【請求項８】
前記単一のグラフから表音記述を選択するステップは、音声サンプルを前記単一のグラフ中の表音単位の音響モデルと比較するステップを含むことを特徴とする請求項１に記載のコンピュータ可読媒体。
【請求項９】
コンピュータ実行可能命令を有するコンピュータ可読媒体であって、前記命令は、
単語の表音的な発音が音声認識レキシコンに追加される場合に前記単語のテキストを受け取るステップと、
前記単語を発音する人物によって生成された音声信号の表現を受け取るステップと、
前記単語のテキストを、表音単位による少なくとも１つのテキストベースの表音シーケンスに変換するステップと、
前記音声信号の表現から表音単位による音声ベースの表音シーケンスを生成するステップと、
前記少なくとも１つのテキストベースの表音シーケンスと前記音声ベースの表音シーケンスとの表音単位を探索構造中に配置するステップであって、前記探索構造は前記テキストベースの表音シーケンス中の表音単位と前記音声ベースの表音記述中の表音単位との間の遷移を可能にする構造であるステップと、
前記探索構造から表音的な発音を選択するステップと
を実施するための命令であることを特徴とするコンピュータ可読媒体。
【請求項１０】
前記表音単位を探索構造中に配置するステップは、前記音声ベースの表音シーケンスと前記少なくとも１つのテキストベースの表音シーケンスとを整列して、相互の代替となる表音単位を識別するステップを含むことを特徴とする請求項９に記載のコンピュータ可読媒体。
【請求項１１】
前記音声ベースの表音シーケンスと前記少なくとも１つのテキストベースの表音シーケンスとを整列するステップは、２つの表音シーケンス間の最短距離を計算するステップを含むことを特徴とする請求項１０に記載のコンピュータ可読媒体。
【請求項１２】
前記表音的な発音を選択するステップは、表音単位の音響モデルと前記音声信号の表現との比較に部分的に基づくことを特徴とする請求項１０に記載のコンピュータ可読媒体。
【請求項１３】
表音単位による音声ベースの表音シーケンスを生成するステップは、
表音単位による複数の可能な表音シーケンスを生成するステップと、
少なくとも１つのモデルを使用して、可能な各表音シーケンスにつき確率スコアを生成するステップと、
最高スコアを有する可能な表音シーケンスを、表音単位による音声ベースの表音シーケンスとして選択するステップとを含むことを特徴とする請求項９に記載のコンピュータ可読媒体。
【請求項１４】
少なくとも１つのモデルを使用するステップは、音響モデルおよび言語モデルを使用するステップを含むことを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項１５】
言語モデルを使用するステップは、音節状単位に基づく言語モデルを使用するステップを含むことを特徴とする請求項１４に記載のコンピュータ可読媒体。
【請求項１６】
表音的な発音を選択するステップは、探索構造を通るパスを少なくとも１つのモデルに基づいてスコア付けするステップを含むことを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項１７】
前記少なくとも１つのモデルは音響モデルを含むことを特徴とする請求項１６に記載のコンピュータ可読媒体。
【請求項１８】
前記探索構造は、前記テキストベースの表音シーケンスと前記音声ベースの表音シーケンスの両方に見られる表音単位についての単一パスを含むことを特徴とする請求項１０に記載のコンピュータ可読媒体。
【請求項１９】
単語の音響記述を音声認識レキシコンに追加する方法であって、
単語のテキストに基づいてテキストベースの表音記述を生成するステップと、
前記単語のテキストを参照せずに音声ベースの表音記述を生成するステップと、
前記テキストベースの表音記述と前記音声ベースの表音記述とを構造中で整列するステップであって、前記構造は表音単位を表すパスを含み、前記テキストベースの表音記述からの表音単位についての少なくとも１つのパスは前記音声ベースの表音記述からの表音単位についてのパスに接続されるステップと、
前記構造を通るパスシーケンスを選択するステップと、
前記選択されたパスシーケンスに基づいて前記単語の音響記述を生成するステップと
を含むことを特徴とする方法。
【請求項２０】
パスシーケンスを選択するステップは、前記構造中のパスのスコアを生成するステップを含むことを特徴とする請求項１９に記載の方法。
【請求項２１】
パスのスコアを生成するステップは、ユーザによる単語の発音を前記構造中の表音単位に関するモデルと比較するステップを含むことを特徴とする請求項２０に記載の方法。
【請求項２２】
前記単語のテキストに基づいて複数のテキストベースの表音記述を生成するステップをさらに含むことを特徴とする請求項２０に記載の方法。
【請求項２３】
前記音声ベースの表音記述を生成するステップは、ユーザによる前記単語の発音を含む音声信号を復号するステップを含むことを特徴とする請求項２２に記載の方法。
【請求項２４】
音声信号を復号するステップは、音節状単位の言語モデルを使用するステップを含むことを特徴とする請求項２３に記載の方法。
【請求項２５】
前記音節状単位の言語モデルを構築するステップをさらに含み、前記言語モデルは、
訓練辞書中の音節状単位の対について相互情報の値を計算するステップと、
前記相互情報の値に基づいて音節状単位の対を選択するステップと、
前記訓練辞書中で前記選択された対を削除し、前記削除済みの選択された対を新しい音節状単位で置き換えるステップとによって構築されることを特徴とする請求項２４に記載の方法。
【請求項２６】
前記訓練辞書中の音節状単位の残りの対について相互情報の値を再計算するステップと、
前記再計算された相互情報の値に基づいて新しい音節状単位の対を選択するステップと、
前記訓練辞書中で前記新しい音節状単位の対を削除し、前記新しい音節状単位の対を第２の新しい音節状単位で置き換えるステップとをさらに含むことを特徴とする請求項２５に記載の方法。
【請求項２７】
前記訓練辞書を使用して音節状単位の言語モデルを生成するステップをさらに含むことを特徴とする請求項２６に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は音声認識に関する。より詳細には、本発明は、音声ベースとテキストベースの表音記述(phonetic descriptions)を組み合わせて発音を生成することによって、新しい単語の発音を改善することに関する。
【背景技術】
【０００２】
音声認識では、人間の音声がテキストに変換される。この変換を行うために、音声認識システムは、その音声信号を生み出した可能性が最も高い音響単位シーケンスを識別する。実施しなければならない計算量を削減するために、ほとんどのシステムは、この探索を、対象言語の単語を表す音響単位シーケンスに限定する。
【０００３】
音響単位シーケンスと単語との間のマッピングは、少なくとも１つのレキシコン（辞書と呼ばれることもある）に記憶されている。レキシコンのサイズに関係なく、音声信号中のいくつかの単語は、レキシコンに含まれていない。音声認識システムは、これらの語彙外（ＯＯＶ、ｏｕｔ−ｏｆ−ｖｏｃａｂｕｌａｒｙ）単語が存在することを知らないので、これらの単語を認識することができない。例えば、口述中に、ユーザは口述した単語がシステムによって認識されないのに気付くことがある。これは、そのシステムでは特定の単語に対してユーザの発音とは異なる発音が規定されているために起こる可能性がある。すなわち、ユーザはその単語を外国のアクセントで発音している場合がある。また、その単語が語彙中にまったくない場合もある。代わりに、認識システムは、語彙外単語に代えて他の単語を認識せざるを得ず、その結果、認識エラーが生じる。
【０００４】
過去の音声認識システムの１つでは、ユーザは、単語の綴りと、ユーザの声によるその単語の音響サンプルまたは発音とを提供することによって、音声認識システムによって認識されなかった単語を追加することができる。
【０００５】
単語の綴りは、文字−音規則を使用して表音記述のセットに変換される。入力された単語は、文脈自由文法（ＣＦＧ）の唯一のエントリとして記憶される。次いで、表音記述中の音の音響モデルに音響サンプルを適用することによってスコア付けされる。各表音記述の総スコアは、言語モデルスコアを含む。ＣＦＧでは、言語モデル確率は、ＣＦＧ中の各ノードにおけるブランチの数で１を割った数に等しい。しかし、入力された単語はＣＦＧ中の唯一のエントリなので、開始ノードからの１つのブランチしかない（そしてＣＦＧ中の唯一の他のノードは終了ノードである）。この結果、文字−音規則からのどんな表音記述も、言語モデル確率は常に１である。
【０００６】
別の復号パスで、音節状単位中(syllable-like units)の音についての音響モデルと、音節状単位ｎグラム言語モデルとに基づいて、音響モデルと言語モデルの最良のスコアの組合せを提供する音節状単位のシーケンスを識別することによって、音響サンプルは表音記述に変換される。
【０００７】
次いで、文字−音ＣＦＧを介して識別された表音シーケンスのスコアと、音節状単位ｎグラム復号を介して識別された最も可能性の高い(most likely)音節状単位シーケンスのスコアとが比較される。次いで、最高スコアを有する表音シーケンスが、その単語に対する表音シーケンスとして選択される。
【０００８】
このように、この従来技術のシステムによれば、文字−音の復号と音節状単位の復号が、２つの別々の並行パスで実施される。これはいくつかの理由で理想的とは言えなかった。
【０００９】
第１に、２つのパスが共通の言語モデルを使用しないので、２つのパス間のスコアを常に有意義に比較できるわけではない。具体的には、ＣＦＧの言語モデルは常に確率１を提供するので、文字−音の表音記述のスコアは通常、音節状単位記述よりも高いことになり、音節状単位記述は、通常は１よりもずっと低いｎグラム言語モデルに依拠する。（音節状単位の言語モデル確率は約１０〜４である。）
このため、この従来技術システムは、音響サンプルが音節状単位パスからの表音記述の方によりよくマッチするときでも、文字−音規則からの表音シーケンスの方を優先する傾向がある。
【００１０】
第２の精度問題は、「ｖｏｉｃｅｘｍｌ」などの結合語の発音を生成することに関して生じる。従来技術システムでＣＦＧパスとｎグラム音節パスとが相互に独立していることに留意するのは重要である。したがって、「ｖｏｉｃｅｘｍｌ」などの結合語は発音エラーをもたらす可能性がある。というのは、選択される発音はＣＦＧ発音とｎグラム音節発音のどちらかでなければならない。しかし、ＣＦＧエンジンで使用される文字−音（ＬＴＳ、ｌｅｔｔｅｒ−ｔｏ−ｓｏｕｎｄ）規則は、「ｖｏｉｃｅ」のような比較的予測可能な単語に対してはうまく機能するが、「ｘｍｌ」のような、正しい発音がその綴り方にほとんど関係しない予測不可能な単語に対してはうまく機能しない傾向がある。
【００１１】
対照的に、ｎグラム音節モデルは一般に、「ｘｍｌ」のような単語の発音を生成する際には適度にうまく機能する。というのは、綴りに関係なく、音響サンプル中の音または音節のどんなシーケンスをも取り込もうとするからである。しかし、「ｖｏｉｃｅ」のような予測可能な単語に対しては、ＣＦＧエンジンほどうまく機能しない。
【００１２】
これらの理由で、２つの復号システムからの表音記述が２つの別々のパスで評価された場合、例えば予測可能な単語を頭文字と結合した「ｖｏｉｃｅｘｍｌ」などの結合語から、発音エラーが生じる可能性がある。
【発明の開示】
【発明が解決しようとする課題】
【００１３】
「ｖｏｉｃｅｘｍｌ」などの結合語の発音を改善するための音声認識システムは、非常に有用であろう。
【課題を解決するための手段】
【００１４】
本方法およびコンピュータ可読媒体は、単語のテキストとユーザによる単語の発音とを、音声認識レキシコンに追加するための表音記述に変換する。最初に、複数の可能(possible)な表音記述が少なくとも２つ生成される。ある表音記述は、ユーザによる単語の発音を表す音声信号を復号することによって形成される。少なくとも１つの他の表音記述は、単語のテキストから生成される。音声ベースおよびテキストベースの表音記述を含む複数の可能なシーケンスは整列(align)されて、発音グラフが生成される。次いで発音グラフは、ユーザの発音音声を再使用して、再びスコア付けされる。次いで、最高スコアを有する表音記述が、音声認識レキシコンへの入力に選択される。
【００１５】
本発明の一態様は、音節状単位（ＳＬＵ、ｓｙｌｌａｂｌｅ−ｌｉｋｅ  ｕｎｉｔ）を使用して音響発音を表音記述に復号することである。音節状単位は一般に、単一音素よりも大きいが、単語よりも小さい。本発明は、言語特有の言語規則を必要としない相互情報ベースのデータ駆動型手法を使用してこれらの音節状単位を定義する手段を提供する。これらの音節状単位に基づく言語モデルを構築して、これを音声復号プロセスで使用することができる。
【００１６】
本発明の別の態様では、ユーザは、綴りに対応する通常の発音とは大きく異なる、単語の可聴発音を入力することができる。例えば、英単語のテキストを入力する一方で、外国語単語を可聴発音することができる。本発明のこの態様によれば、レキシコンに追加された新しい単語の表音記述をレキシコンから取り出して、これを、例えば英単語の外国語訳語を含む可聴信号に変換することができる。
【発明を実施するための最良の形態】
【００１７】
図１に、本発明を実施するのに適したコンピューティングシステム環境の例１００を示す。コンピューティングシステム環境１００は、適したコンピューティング環境の一例にすぎず、本発明の使用または機能の範囲についてどんな制限を意味するものでもない。またコンピューティング環境１００は、この例示的な動作環境１００に示すコンポーネントのいずれか１つまたは組合せに関してどんな依存や要件を有するものとも解釈すべきではない。
【００１８】
本発明は、その他多くの汎用または専用コンピューティングシステム環境または構成でも機能する。本発明で使用するのに適すると考えられる周知のコンピューティングシステム、環境、および／または構成の例には、限定しないがパーソナルコンピュータ、サーバコンピュータ、ハンドヘルドデバイスまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な民生用電子機器、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、電話システムや、これらのシステムまたはデバイスのいずれかを含む分散コンピューティング環境などが含まれる。
【００１９】
本発明は、プログラムモジュールなど、コンピュータによって実行されるコンピュータ実行可能命令の一般的なコンテキストで述べることができる。一般に、プログラムモジュールは、特定のタスクを実施するか特定の抽象データ型を実現するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。本発明は分散コンピューティング環境で実施することもでき、その場合、タスクは通信ネットワークを介してリンクされたリモート処理デバイスによって実施される。分散コンピューティング環境では、プログラムモジュールは、メモリ記憶デバイスを含めたローカルとリモートの両方のコンピュータ記憶媒体に位置することができる。
【００２０】
図１を参照すると、本発明を実施するための例示的なシステムは、コンピュータ１１０の形の汎用コンピューティングデバイスを含む。コンピュータ１１０のコンポーネントには、限定しないが処理ユニット１２０と、システムメモリ１３０と、システムメモリを含めた様々なシステムコンポーネントを処理ユニット１２０に結合するシステムバス１２１とを含めることができる。システムバス１２１は、様々なバスアーキテクチャのいずれかを用いた、メモリバスまたはメモリコントローラ、周辺バス、ローカルバスを含めて、いくつかのタイプのバス構造のいずれかとすることができる。限定ではなく例として、このようなアーキテクチャには、ＩＳＡ（Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＭＣＡ（Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＥＩＳＡ（Ｅｎｈａｎｃｅｄ  ＩＳＡ）バス、ＶＥＳＡ（Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ）ローカルバス、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス（メザニンバスとも呼ばれる）が含まれる。
【００２１】
コンピュータ１１０は通常、様々なコンピュータ可読媒体を備える。コンピュータ可読媒体は、コンピュータ１１０からアクセスできる任意の利用可能な媒体とすることができ、揮発性と不揮発性の媒体、着脱式と固定式の媒体の両方が含まれる。限定ではなく例として、コンピュータ可読媒体には、コンピュータ記憶媒体および通信媒体を含めることができる。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、その他のデータなどの情報を記憶するための任意の方法または技術で実現された、揮発性と不揮発性、着脱式と固定式の両方の媒体が含まれる。コンピュータ記憶媒体には、限定しないがＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたはその他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）またはその他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置またはその他の磁気記憶デバイスが含まれ、あるいは、所望の情報を記憶するのに使用できコンピュータ１１０からアクセスできるその他の任意の媒体が含まれる。通信媒体は通常、搬送波やその他のトランスポート機構などの被変調データ信号中に、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータを組み入れるものであり、任意の情報送達媒体が含まれる。用語「被変調データ信号」は、信号中の情報が符号化される形で１つまたは複数の特性が設定または変更される信号を意味する。限定ではなく例として、通信媒体には、有線ネットワークや直接有線接続などの有線媒体と、音響、無線周波数、赤外線、その他の無線媒体などの無線媒体とが含まれる。以上の任意の組合せもコンピュータ可読媒体の範囲に含めるべきである。
【００２２】
システムメモリ１３０は、読取り専用メモリ（ＲＯＭ）１３１やランダムアクセスメモリ（ＲＡＭ）１３２など、揮発性および／または不揮発性メモリの形のコンピュータ記憶媒体を含む。ＲＯＭ１３１には通常、起動中などにコンピュータ１１０内の要素間で情報を転送するのを助ける基本ルーチンを含むＢＩＯＳ（ｂａｓｉｃ  ｉｎｐｕｔ／ｏｕｔｐｕｔ  ｓｙｓｔｅｍ）１３３が記憶されている。ＲＡＭ１３２は通常、処理ユニット１２０がすぐにアクセス可能な、かつ／または処理ユニット１２０が現在作用している、データおよび／またはプログラムモジュールを含む。限定ではなく例として、図１には、オペレーティングシステム１３４、アプリケーションプログラム１３５、その他のプログラムモジュール１３６、プログラムデータ１３７を示す。
【００２３】
コンピュータ１１０は、その他の着脱式／固定式、揮発性／不揮発性コンピュータ記憶媒体を備えることもできる。例にすぎないが図１には、固定式かつ不揮発性の磁気媒体に対して読み書きするハードディスクドライブ１４１と、着脱式な不揮発性の磁気ディスク１５２に対して読み書きする磁気ディスクドライブ１５１と、ＣＤ  ＲＯＭやその他の光媒体など着脱式な不揮発性の光ディスク１５６に対して読み書きする光ディスクドライブ１５５を示す。この例示的な動作環境で使用できるその他の着脱式／固定式、揮発性／不揮発性コンピュータ記憶媒体には、限定しないが磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、固体ＲＡＭ、固体ＲＯＭなどが含まれる。ハードディスクドライブ１４１は通常、インターフェース１４０などの固定式メモリインターフェースを介してシステムバス１２１に接続され、磁気ディスクドライブ１５１および光ディスクドライブ１５５は通常、インターフェース１５０などの着脱式メモリインターフェースでシステムバス１２１に接続される。
【００２４】
以上に論じ図１に示したドライブおよびそれらに関連するコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、その他のデータの記憶域をコンピュータ１１０に提供する。例えば図１には、ハードディスクドライブ１４１がオペレーティングシステム１４４、アプリケーションプログラム１４５、その他のプログラムモジュール１４６、プログラムデータ１４７を記憶しているのが示されている。これらのコンポーネントは、オペレーティングシステム１３４、アプリケーションプログラム１３５、その他のプログラムモジュール１３６、プログラムデータ１３７と同じものとすることもでき、異なるものとすることもできることに留意されたい。ここでは、オペレーティングシステム１４４、アプリケーションプログラム１４５、その他のプログラムモジュール１４６、プログラムデータ１４７が少なくとも異なるコピーであることを示すために、異なる番号を付けてある。
【００２５】
ユーザは、キーボード１６２、マイクロホン１６３、マウスやトラックボールやタッチパッド等のポインティングデバイス１６１などの入力デバイスを介して、コンピュータ１１０にコマンドおよび情報を入力することができる。その他の入力デバイス（図示せず）には、ジョイスティック、ゲームパッド、衛星受信アンテナ、スキャナなどを含めることができる。これらおよびその他の入力デバイスは、システムバスに結合されたユーザ入力インターフェース１６０を介して処理ユニット１２０に接続されることが多いが、パラレルポート、ゲームポート、ユニバーサルシリアルバス（「ＵＳＢ」）など、その他のインターフェースおよびバス構造で接続されてもよい。モニタ１９１または他のタイプの表示デバイスも、ビデオインターフェース１９０などのインターフェースを介してシステムバス１２１に接続される。モニタに加えて、コンピュータは通常、スピーカ１９７やプリンタ１９６など、その他の周辺出力デバイスも備えることができ、これらは出力周辺インターフェース１９５を介して接続することができる。
【００２６】
コンピュータ１１０は、リモートコンピュータ１８０など１つまたは複数のリモートコンピュータへの論理接続を用いて、ネットワーク化された環境で動作することができる。リモートコンピュータ１８０は、パーソナルコンピュータ、ハンドヘルドデバイス、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、またはその他の一般的なネットワークノードとすることができ、通常はパーソナルコンピュータ１１０に関して上述した要素の多くまたはすべてを備える。図１に示す論理接続は、ローカルエリアネットワーク（ＬＡＮ）１７１およびワイドエリアネットワーク（ＷＡＮ）１７３を含むが、その他のネットワークを含むこともできる。このようなネットワーキング環境は、オフィス、企業全体のコンピュータネットワーク、イントラネット、インターネットでよくみられる。
【００２７】
ＬＡＮネットワーキング環境で使用されるときは、コンピュータ１１０は、ネットワークインターフェースまたはアダプタ１７０を介してＬＡＮ１７１に接続される。ＷＡＮネットワーキング環境で使用されるときは、コンピュータ１１０は通常、インターネットなどのＷＡＮ１７３を介した通信を確立するためのモデム１７２またはその他の手段を備える。モデム１７２は内蔵でも外付けでもよく、ユーザ入力インターフェース１６０またはその他の適切な機構を介してシステムバス１２１に接続することができる。ネットワーク化された環境では、コンピュータ１１０に関して示したプログラムモジュールまたはその一部をリモートのメモリ記憶デバイスに記憶することができる。限定ではなく例として、図１には、リモートアプリケーションプログラム１８５がリモートコンピュータ１８０上にあるものとして示す。図示のネットワーク接続は例示的なものであり、コンピュータ間で通信リンクを確立するための他の手段を使用してもよいことは理解されるであろう。
【００２８】
図２は、代替の例示的なコンピューティング環境であるモバイルデバイス２００のブロック図である。モバイルデバイス２００は、マイクロプロセッサ２０２と、メモリ２０４と、入出力（Ｉ／Ｏ）コンポーネント２０６と、リモートコンピュータまたは他のモバイルデバイスと通信するための通信インターフェース２０８とを備える。一実施形態では、前述のコンポーネントは、適したバス２１０を介して相互に通信するように結合される。
【００２９】
メモリ２０４は、モバイルデバイス２００への全般的な電力が遮断されてもメモリ２０４に記憶された情報が失われないように、電池バックアップモジュール（図示せず）付きランダムアクセスメモリ（ＲＡＭ）などの不揮発性電子メモリとして実現される。メモリ２０４の一部は、プログラム実行用のアドレス指定可能メモリとして割り振られることが好ましく、メモリ２０４の別の部分は、ディスクドライブへの記憶をシミュレートするなど、記憶のために使用されることが好ましい。
【００３０】
メモリ２０４は、オペレーティングシステム２１２、アプリケーションプログラム２１４、ならびにオブジェクトストア２１６を含む。動作中、オペレーティングシステム２１２は、プロセッサ２０２によってメモリ２０４から実行されることが好ましい。オペレーティングシステム２１２は、好ましい一実施形態では、Ｍｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎから市販されているＷＩＮＤＯＷＳ（登録商標）ＣＥブランドのオペレーティングシステムである。オペレーティングシステム２１２は、モバイルデバイス用に設計されていることが好ましく、アプリケーション２１４が公開アプリケーションプログラミングインターフェースおよびメソッドのセットを介して利用することのできるデータベース機能を実装する。オブジェクトストア２１６中のオブジェクトは、少なくとも部分的には公開アプリケーションプログラミングインターフェースおよびメソッドへの呼出しに応答して、アプリケーション２１４およびオペレーティングシステム２１２によって維持される。
【００３１】
通信インターフェース２０８は、モバイルデバイス２００が情報を送受信するのを可能にする多くのデバイスおよび技術を表す。デバイスのいくつかの例としては、有線および無線モデム、衛星受信機、放送チューナが挙げられる。モバイルデバイス２００はまた、コンピュータに直接に接続して、コンピュータとデータを交換することもできる。そのような場合、通信インターフェース２０８は、赤外線トランシーバ、あるいはシリアルまたはパラレル通信接続とすることができ、これらはすべてストリーミング情報を伝送することができる。
【００３２】
入出力コンポーネント２０６には、タッチセンシティブ画面、ボタン、ローラ、マイクロホンなどの様々な入力デバイスと、オーディオ生成器、振動デバイス、表示装置を含めた様々な出力デバイスが含まれる。ここに挙げたデバイスは例であり、すべてがモバイルデバイス２００上にある必要はない。また、本発明の範囲内で、その他の入出力デバイスがモバイルデバイス２００に付属しているかまたはモバイルデバイス２００と共に提供されてもよい。
【００３３】
図３に、本発明に特に関係のある音声認識モジュールのより詳細なブロック図を提供する。図３では、入力音声信号が、必要ならマイクロホン３００によって電気信号に変換される。次いで電気信号は、アナログデジタルすなわちＡ／Ｄ変換器３０２によって一連のデジタル値に変換される。いくつかの実施形態では、Ａ／Ｄ変換器３０２は、アナログ信号を１６ｋＨｚで、１サンプルあたり１６ビットでサンプリングし、それにより毎秒３２キロバイトの音声データを生み出す。
【００３４】
デジタルデータはフレーム構築ユニット３０４に提供され、フレーム構築ユニット３０４は、デジタル値を値のフレームにグループ化する。一実施形態では、各フレームは２５ミリ秒の長さであり、前のフレームの開始から１０ミリ秒後に開始する。
【００３５】
デジタルデータのフレームは特徴抽出器３０６に提供され、特徴抽出器３０６は、デジタル信号から特徴を抽出する。特徴抽出モジュールの例には、線形予測符号化（ＬＰＣ）、ＬＰＣ派生ケプストラム、知覚線形予測（ＰＬＰ）、聴覚モデル特徴抽出、メル周波数ケプストラム係数（ＭＦＣＣ）特徴抽出を実施するためのモジュールが含まれる。本発明はこれらの特徴抽出モジュールに限定されず、本発明のコンテキスト内でその他のモジュールを使用してもよいことに留意されたい。
【００３６】
特徴抽出器３０６は、１フレームにつき単一の多次元特徴ベクトルを生成することができる。特徴ベクトル中の次元または値の数は、使用される特徴抽出のタイプによって決まる。例えば、メル周波数ケプストラム係数ベクトルは一般に、１２個の係数に加えて、累乗を表す１つの係数を有し、総計１３次元である。一実施形態では、特徴ベクトルは、メル周波数係数に加えて時間に関する累乗の１次および２次導関数をとることによって、メル係数から計算される。したがって、このような特徴ベクトルの場合、各フレームは、特徴ベクトルを形成する３９個の値に関連する。
【００３７】
音声認識の間、特徴抽出器３０６によって生成された特徴ベクトルのストリームは、デコーダ３０８に提供され、デコーダ３０８は、特徴ベクトルのストリーム、システムレキシコン３１０、もしあればアプリケーションレキシコン３１２、ユーザレキシコン３１４、言語モデル３１６、音響モデル３１８に基づいて、最も可能性が高くまたは確からしい単語シーケンスを識別する。
【００３８】
ほとんどの実施形態で、音響モデル３１８は、隠れ状態のセットからなる隠れマルコフモデルであり、入力信号の１フレームにつき１つの状態がある。各状態には、入力特徴ベクトルが特定の状態にマッチする尤度(likelihood)を記述する確率分布のセットが関連する。いくつかの実施形態では、確率の混合（通常は１０個のガウス確率）が各状態に関連する。隠れマルコフモデルはまた、隣接する２つのモデル状態間で遷移するための確率、ならびに、特定の言語単位の状態間で許容される遷移も含む。言語単位のサイズは、本発明の様々な実施形態で異なるものとすることができる。例えば、言語単位はセノン（ｓｅｎｏｎｅ）、音素、ダイフォン、トライフォン、音節、さらには単語全体とすることができる。
【００３９】
システムレキシコン３１０は、特定言語に有効な言語単位（通常は単語または音節）のリストからなる。デコーダ３０８はシステムレキシコン３１０を使用して、可能な言語単位の探索を、実際にその言語の一部である言語単位に限定する。システムレキシコン３１０はまた、発音情報（すなわち、各言語単位から、音響モデル３１８によって使用される音響ユニットのシーケンスへのマッピング）も含む。オプションのアプリケーションレキシコン３１２もシステムレキシコン３１０と同様だが、例外として、アプリケーションレキシコン３１２は、特定のアプリケーションによって追加される言語単位を含み、システムレキシコン３１０は、音声認識システムと共に提供された言語単位を含む。ユーザレキシコン３１４もまたシステムレキシコン３１０と同様だが、例外として、ユーザレキシコン３１４は、ユーザによって追加された言語単位を含む。本発明によれば、新しい言語単位を、特にユーザレキシコン３１４に追加するための方法および装置が提供される。
【００４０】
言語モデル３１６は、特定の言語単位シーケンスが特定言語中で現れることになる尤度または確率のセットを提供する。多くの実施形態で、言語モデル３１６はノースアメリカンビジネスニュース（ＮＡＢ、Ｎｏｒｔｈ  Ａｍｅｒｉｃａｎ  Ｂｕｓｉｎｅｓｓ  Ｎｅｗｓ）などのテキストデータベースに基づくが、これについては刊行物に、より詳細に記述されている（例えば、「CSR-III Text Language Model, University of Penn., 1994」を参照。）。言語モデル３１６は、文脈自由文法、トライグラムなどの統計ｎグラムモデル、またはこの両方の組合せとすることができる。一実施形態では、言語モデル３１６は、シーケンスの３単語セグメントの組合せ確率に基づいて単語シーケンスの確率を決定するコンパクトなトライグラムモデルである。
【００４１】
音響モデル３１８、言語モデル３１６、レキシコン３１０、３１２、３１４に基づいて、デコーダ３０８は、すべての可能な言語単位シーケンスから最も可能性の高い言語単位シーケンスを識別する。この言語単位シーケンスが、音声信号のトランスクリプトを表す。
【００４２】
このトランスクリプトは出力モジュール３２０に提供され、出力モジュール３２０は、トランスクリプトを１つまたは複数のアプリケーションに送信することに関連するオーバーヘッドに対処する。一実施形態では、図３の音声認識エンジンと１つまたは複数のアプリケーションとの間に存在する中間層があれば、出力モジュール３２０はその中間層と通信する。
【００４３】
本発明によれば、単語のテキストをユーザインターフェース３２１において入力し、この単語をマイクロホン３００に向かって発音することによって、新しい単語をユーザレキシコン３１４に追加することができる。発音された単語は、Ａ／Ｄ変換器３０２、フレーム構築３０４、特徴抽出機３０６によって特徴ベクトルに変換される。単語を追加するプロセスの間は、これらの特徴ベクトルはデコーダ３０８ではなくレキシコン更新ユニット３２２に提供される。更新ユニット３２２は、新しい単語のテキストもユーザインターフェース３２１から受け取る。新しい単語の特徴ベクトルおよびテキストに基づいて、レキシコン更新ユニット３２２は、以下にさらに述べるプロセスによってユーザレキシコン３１４および言語モデル３１６を更新する。
【００４４】
図４に、ユーザレキシコン３１４および言語モデル３１６を更新するのに使用される、レキシコン更新ユニット３２２中のコンポーネントのブロック図を提供する。図５に、ユーザレキシコン３１４を更新するために図４のコンポーネントによって実施される方法の流れ図を提供する。
【００４５】
ステップ５０２で、ユーザは、マイクロホン３００に向かって単語を発音してユーザ供給の音響サンプル４０１を生成することによって、新しい単語を入力する。ユーザ供給の音響サンプル４０１は、前述のように特徴ベクトル４０３に変換され、特徴ベクトル４０３はレキシコン更新ユニット３２２に提供される。具体的には、特徴ベクトル４０３は音節状単位（ＳＬＵ）エンジン４０５に提供され、図５のステップ５０４で、特徴ベクトル４０３によって表すことのできる最も可能性の高い音節状単位シーケンスが生成される。ＳＬＵエンジン４０５は、ＳＬＵ辞書４０９および音響モデル３１８を備えているかまたはそれらにアクセスし、それにより、通常は最高の確率スコアに基づいて、最も可能性の高いＳＬＵシーケンスを生成する。次いでＳＬＵエンジン４０５は、最も可能性の高い音節状単位シーケンスを表音単位シーケンスに変換し、この表音単位シーケンスは整列モジュール４１４に提供される。ＳＬＵ辞書４０９については、後で図７に対応する記述でより詳細に述べる。
【００４６】
場合により、ユーザによる新しい単語の発音が通常の発音とは大きく異なる可能性があることに留意するのは重要である。例えば、話者は、ある英単語をその外国語訳語で置き換えて発音する場合がある。この特徴により、例えば音声認識レキシコンは、ある言語で単語のテキストまたは綴りを記憶し、この第１の言語とは異なる第２の言語で音響記述を記憶することができることになる。
【００４７】
ステップ５０６で、ユーザは、新しい単語のテキストを入力して、ユーザ提供のテキストサンプル４０２を生成する。ステップ５０６は、ステップ５０２の前、後、またはステップ５０２と同時に実施できることに留意されたい。ユーザ提供のテキストサンプル４０２は文法モジュール４０４に提供され、ステップ５０８で、文法モジュール４０４はテキストを、可能なテキストベースの表音シーケンスのリストに変換する。具体的には、文法モジュール４０４は、ユーザ提供のテキストサンプル４０２について文脈自由文法などの文法を構築する。文法モジュール４０４は、レキシコン４０６および文字−音（ＬＴＳ）エンジン４０８を備えているか、またはそれらにアクセスする。文法モジュール４０４はまず、システムレキシコン３１０、オプションのアプリケーションレキシコン３１２、ユーザレキシコン３１４を含むレキシコン４０６を探索して、ユーザ提供のテキストサンプル４０２に対する可能な表音記述、発音、またはシーケンスがあればそれらを取り出す。
【００４８】
ＬＴＳエンジン４０８は、特に単語がレキシコン４０６中で見つからなかったときは、ユーザ提供のテキストサンプル４０２を１つまたは複数の可能な表音シーケンスに変換する。この変換は、当該の特定言語に適した発音規則の集合４１０を利用して実施される。ほとんどの実施形態で、表音シーケンスは一連の音素で構築される。他の実施形態では、表音シーケンスはトライフォンのシーケンスである。このように文法モジュール４０４は、レキシコン４０６およびＬＴＳエンジン４０８から、１つまたは複数の可能なテキストベースの表音シーケンス４１２を生成する。
【００４９】
再び図４を参照するが、ＳＬＵエンジン４０５からの最良の表音シーケンス４０７と、文法モジュール４０４からの可能な表音シーケンス４１２のリストは、整列モジュール４１４に提供される。ステップ５１０で、整列モジュール４１４は、音声認識エラー率（例えば置換エラー、削除エラー、挿入エラーによる）を計算するための周知の整列モジュールおよび／または方法と同様にして、表音シーケンス４０７と４１２を整列する。いくつかの実施形態では、整列は、２つのシーケンスストリング（例えば正しい参照と認識仮説）の間の最短距離を用いて実施することができる。整列モジュール４１４は、整列した表音シーケンスのリスト、グラフ、または表を生成する。
【００５０】
ステップ５１１で、整列モジュール４１４は、整列した表音シーケンスを単一グラフ中に配置する。このプロセスの間、相互に整列する同一の表音単位は、単一パス上に結合される。相互に整列する異なる表音単位は、グラフ中の平行する代替パス上に配置される。
【００５１】
単一グラフは、再スコア付けモジュール４１６に提供される。ステップ５１２で、特徴ベクトル４０３を再び使用して、単一グラフを通るパスで表される表音単位の可能な組合せが再スコア付けされる。一実施形態によれば、再スコア付けモジュール４１６は、ビタビ探索を実施して、ユーザによる単語の発音によって生成された特徴ベクトル４０３を、パスに沿った各表音単位ごとに音響モデル３１８に記憶されたモデルパラメータと比較することによって生成された音響モデルスコアを使用して、グラフを通る最良のパスを識別する。このスコア付けは、音声認識中にデコーダ３０８によって実施されるスコア付けと同様である。
【００５２】
スコア選択更新モジュール４１８は、単一グラフを通る最高スコアの表音シーケンスまたはパスを選択する。選択されたシーケンスは、ステップ５１４でユーザレキシコン３１４を、およびステップ５１６で言語モデル３１６を更新するために提供される。
【００５３】
図６に、本発明がどのように単語の発音を処理または学習するかについての例を示す。ブロック６０２は、ユーザによる単語「ｖｏｉｃｅｘｍｌ」の発音を示し、ブロック６０３は、「ｖｏｉｃｅｘｍｌ」について入力されたテキストを表す。単語「ｖｏｉｃｅｘｍｌ」は、前述のように結合語の発音を生成する際の本発明の利点を例示するものである。単語「ｖｏｉｃｅｘｍｌ」の第１の部分、すなわち「ｖｏｉｃｅ」は、図４のＬＴＳエンジン４０８などのＬＴＳエンジンが通常は正確に処理することのできる、比較的予測可能な単語または単語セグメントである。しかし、この単語の第２の部分、すなわち「ｘｍｌ」は、ＬＴＳエンジンが処理において精度問題を有する可能性のある、予測不可能なまたは非定型的な単語または頭字語である。しかし、ＳＬＵエンジン４０５など通常のＳＬＵエンジンは、一般に「ｘｍｌ」などの単語または単語セグメントをうまく処理することができる。というのは、ＳＬＵエンジンはユーザの音響的な発音に依拠するからである。
【００５４】
ブロック６０４は、図４のＳＬＵエンジン４０５および図５のステップ５０４などによって生成された最も可能性の高い表音シーケンスを示す。したがって、単語「ｖｏｉｃｅｘｍｌ」の音響または口述バージョンの最良の発音は、以下のようになる。
ｏｗ−ｓ−ｅｈ−ｋ−ｓ−ｅｈ−ｍ−ｅｈ−ｌ
【００５５】
この場合、ユーザが表音単位「ｖ」をはっきりと発音しなかったか、ＳＬＵモデルが表音単位「ｖ」をうまく予測しなかったかのどちらかである。その結果、予測されたであろう表音単位「ｖ」は、表音シーケンスの最初からドロップされた。
【００５６】
ブロック６０９で、単語「ｖｏｉｃｅｘｍｌ」の綴りまたはテキストバージョンに対する可能な表音シーケンス６０６および６０８のリストが、ＬＴＳエンジン４０８によって生成される。これらには以下の表音単位シーケンスが含まれる。
ｖ−ｏｙ−ｓ−ｅｈ−ｋ−ｓ−ｍ−ａｘ−ｌ
ｖ−ｏｗ−ｓ−ｇ−ｚ−ｍ−ａｘ−ｌ
【００５７】
ブロック６０４および６０９からの表音シーケンスは、整列モジュール４１４によって、ブロック６１０に示す整列構造に結合される。一般にこの整列は、動的プログラミングと、様々な整列を仮定した場合の表音シーケンス間の差に基づく費用関数とを使用して実施される。ブロック６１０では、整列された表音単位は同じ垂直列に見られる。いくつかの列には「−」があることに留意されたいが、これは、関連する表音単位を有さない空のパスを表し、その列が任意選択であるかまたはスキップ可能であることを意味する。
【００５８】
ブロック６１２は、整列構造から形成することのできる可能な表音シーケンスを含む、整列構造６１０から構築された単一グラフを示す。ブロック６１２は、表音単位がノード間のパス上に配置された探索構造を表す。構造内では、ＳＬＵエンジンから識別された表音単位すなわち音声ベースの表音単位と、ＬＴＳエンジンによって識別された表音単位すなわちテキストベースの表音単位との間で遷移が許容される。ブロック６１２はまた、選択されたパスが「スキップ」を含むことができることも示し、その場合、そのパス中の特定の列からは表音単位が含まれない。
【００５９】
前述のように、表音シーケンスまたはパスは、ユーザによる単語の発音と、音響モデルとを使用して選択される。ブロック６１４は、本発明による選択された表音シーケンスまたはパスを示す。これを以下に提供する。
ｖ−ｏｙ−ｓ−ｅｈ−ｋ−ｓ−ｅｈ−ｍ−ｅｈ−ｌ
【００６０】
この最終的なパスは、ＬＴＳエンジンによって予測された表音シーケンスで開始するが、ＳＬＵエンジンによって予測された表音シーケンスで終了することに留意されたい。従来技術の下では、これは可能ではないだろう。このように本発明は、音声ベースのＳＬＵエンジンとテキストベースのＬＴＳエンジンの両方からの可能な表音シーケンスを組み込んだ単一グラフから表音シーケンスを選択して、単語のより正確な発音を生成する。
【００６１】
音節状単位（ＳＬＵ）セット
図７に、本発明のいくつかの実施形態で使用することのできる音節状単位（ＳＬＵ）のセットまたは辞書４０９を構築する方法を示す。一般に図７の方法はデータに基づく手法であり、これは言語特有の言語規則を必要としないので、この方法は有利な可能性がある。したがって、図７に示す手法はどんな言語でも使用することができ、また、他の手法、特に言語規則に基づく手法で必要な可能性のある熟練した語学者を必要としないので、実施が比較的安価である。
【００６２】
図７の方法は、相互情報（ＭＩ）を利用してＳＬＵセットを構築し、博士論文に記述されているアルゴリズムに類似するアルゴリズム（例えば、「Modeling Out-of-vocabulary Words For Robust Speech Recognition" by Issam Bazzi, 2000」を参照。）を使用するが、この論文のアルゴリズムは異なるコンテキストで使用されていた。本発明では、大規模な表音辞書、例えばおそらく表音記述を伴う５００００個以上の単語の訓練辞書が与えられた場合に、所定サイズまたは限られたサイズの、例えば１００００単位の文節状単位のセットが構築される。
【００６３】
ブロック７０２で、最初のＳＬＵセットＳ０は、音のセットＰ＝｛ｐ１，ｐ２，．．．ｐｎ｝に等しく（英語の音声認識システムでは通常４０個の音がみられる）、したがってＳ０＝｛ｓ１，ｓ２，．．．ｓｍ｝＝｛ｐ１，ｐ２，．．．ｐｎ｝であり、ｍおよびｎはそれぞれＳＬＵおよび音の数であり、最初はｍ＝ｎである。
【００６４】
現在の反復における任意のＳＬＵの対を（ｕ１，ｕ２）とする。ブロック７０４で、辞書中のエントリにみられる言語単位の対（ｕ１，ｕ２）の相互情報を、以下の式で計算する。
【００６５】
【数１】
2005258443.tif 000003
【００６６】
上式で、ＭＩ（ｕ１，ｕ２）は、音節状単位の対（ｕ１，ｕ２）の相互情報であり、Ｐｒ（ｕ１，ｕ２）は（ｕ１，ｕ２）の同時確率であり、Ｐｒ（ｕ１）およびＰｒ（ｕ２）はそれぞれｕ１およびｕ２のユニグラム確率である。
【００６７】
ユニグラム確率Ｐｒ（ｕ１）およびＰｒ（ｕ２）は、以下の式を使用して計算される。
【００６８】
【数２】
2005258443.tif 000004
【００６９】
上式で、Ｃｏｕｎｔ（ｕ１）およびＣｏｕｎｔ（ｕ２）はそれぞれ、音節状単位ｕ１およびｕ２が訓練辞書中でみられる回数であり、Ｃｏｕｎｔ（＊）は、訓練辞書中の音節状単位インスタンスの総数である。（ｕ１，ｕ２）の同次確率は、以下の式で計算することができる。
【００７０】
【数３】
2005258443.tif 000005
【００７１】
上式で、Ｃｏｕｎｔ（ｕ１，ｕ２）は、対（ｕ１，ｕ２）が訓練辞書中で共に（すなわち隣接して）現れる回数である。
【００７２】
ブロック７０６で、最大相互情報を有する対（ｕ１，ｕ２）が選択または識別される。ブロック７０８で、最大相互情報を有する対（ｕ１，ｕ２）は、新しい、より長い音節状単位ｕ３にマージされる。新しい音節状単位ｕ３は、訓練辞書の単語の中で対（ｕ１，ｕ２）に置き換わる、または取って代わる。
【００７３】
ブロック７１０で、反復を終了するかどうかが判定される。いくつかの実施形態では、ＳＬＵの最大長さを制御するパラメータを使用することができる。例えば、最大の音節状単位長さを４音に設定することができる。選択された長さに達した場合は、選択された対をマージするのをアボートし、その代わり、最大相互情報を有する次の対をチェックする。利用可能な対がそれ以上ない場合、またはＳＬＵ（ｍ）の数が所望の数に達した場合、または最大相互情報が一定しきい値を下回った場合は、図７の方法はブロック７１２に進み、ＳＬＵセットＳが出力される。そうでない場合は、方法はブロック７０４に戻り、新しい単位ｕ３が生成されて、影響を受ける単位のユニグラムおよびバイグラムカウントが再計算された後で、音節状単位の相互情報が再計算される。一実施形態では、音節状単位の対は、各反復につき１つだけマージされる。しかし他の実施形態では、Ｂａｚｚｉの論文などのように速度が問題になる場合、選択された数の対（例えば５０個の対）を各反復でマージすることもできる。
【００７４】
図７のアルゴリズムが終了すると、入力または訓練辞書は、最終的なＳＬＵセットにセグメント化される。次いで、セグメント化された辞書から音節状単位ｎグラムを訓練し、本発明によって実施することができる。このデータ駆動型手法は、規則ベースの文節法手法よりもわずかによい精度を達成することがわかっている。しかしより重要なのは、この手法は、言語特有の言語規則が必要ないので、どんな言語でもコード変更なしに使用できることである。
【００７５】
特定の実施形態を参照して本発明を述べたが、本発明の趣旨および範囲を逸脱することなく形式および詳細に変更を加えることができることは、当業者なら理解するであろう。
【図面の簡単な説明】
【００７６】
【図１】本発明を実施することのできる一般的なコンピューティング環境のブロック図である。
【図２】本発明を実施することのできる一般的なモバイルコンピューティング環境のブロック図である。
【図３】本発明による音声認識システムのブロック図である。
【図４】本発明の一実施形態のレキシコン更新コンポーネントのブロック図である。
【図５】本発明による音声認識レキシコンに単語を追加する方法の流れ図である。
【図６】本発明を特定の単語に対して実施した場合を例示する流れ図である。
【図７】音節状単位のセットを構築するための流れ図である。
【符号の説明】
【００７７】
１２０  処理ユニット
１３０  システムメモリ
１３４  オペレーティングシステム
１３５  アプリケーションプログラム
１３６  その他のプログラムモジュール
１３７  プログラムデータ
１４０  固定式不揮発性メモリインターフェース
１４４  オペレーティングシステム
１４５  アプリケーションプログラム
１４６  その他のプログラムモジュール
１４７  プログラムデータ
１５０  着脱式不揮発性メモリインターフェース
１６０  ユーザ入力インターフェース
１６１  ポインティングデバイス
１６２  キーボード
１６３  マイクロホン
１７０  ネットワークインターフェース
１７１  ローカルエリアネットワーク
１７２  モデム
１７３  ワイドエリアネットワーク
１８０  リモートコンピュータ
１８５  リモートアプリケーションプログラム
１９０  ビデオインターフェース
１９１  モニタ
１９５  出力周辺インターフェース
１９６  プリンタ
１９７  スピーカ
２０２  プロセッサ
２０４  メモリ
２０８  通信インターフェース
２１４  アプリケーション(群)
２１６  オブジェクトストア
３００  マイクロホン
３０４  フレーム構築
３０６  特徴抽出器
３０８  デコーダ
３１０  システムレキシコン
３１２  アプリケーションレキシコン
３１４  ユーザレキシコン
３１６  言語モデル
３１８  音響モデル
３２０  出力モジュール
３２１  ユーザインターフェース
３２２  レキシコンおよび言語モデル更新ユニット
３１０  システム
３１２  アプリケーション
３１４  ユーザ
３１４  更新されたユーザレキシコン
３１６  更新された言語モデル
３１８  音響モデル
３２２  レキシコン更新ユニット
４０１  ユーザ供給の音響サンプル
４０２  ユーザ供給のテキストサンプル
４０３  特徴ベクトル
４０４  文法モジュール
４０５  ＳＬＵエンジン
４０６  レキシコン
４０７  最良の表音シーケンス
４０８  ＬＴＳエンジン
４０９  ＳＬＵ辞書
４１０  規則
４１２  可能な表音シーケンスのリスト
４１４  整列モジュール
４１６  再スコア付けモジュール
４１８  選択更新モジュール
【図１】
2005258443.tif 000006
【図２】
2005258443.tif 000007
【図３】
2005258443.tif 000008
【図４】
2005258443.tif 000009
【図５】
2005258443.tif 000010
【図６】
2005258443.tif 000011
【図７】
2005258443.tif 000012
【外国語明細書】
2005258443000001.pdf