"音響特徴量に関する統計量である音響モデルに関連付けられた音素の列である音素列を表わす音素列データと、前記音素列データに関連付けられた単語表記を表わす単語表記データと、前記単語表記データに関連付けられ前記単語表記の出現確率を表わす単語出現確率値を複数の言語モデルの各々に対応して保持する単語出現確率値データとを記憶する統合辞書記憶部と、入力音声を分析して音響特徴量を出力する音響分析部と、前記音響分析部から出力された前記音響特徴量と前記音響モデルとの関係により前記音素列ごとの音響スコアを算出するとともに、前記音素列に対応する前記単語表記データについて所定言語モデルに対応する前記単語出現確率値を前記統合辞書記憶部から取得して前記単語表記ごとの言語スコアを算出し、算出された前記音響スコアおよび前記言語スコアにより、正解の単語表記を探索して出力する正解単語探索部と、を具備することを特徴とする音声認識装置。請求項1に記載の音声認識装置であって、前記統合辞書記憶部が記憶する前記単語出現確率値データは、どの言語モデルが選択されているかを表わす言語モデル選択制御データを含むものであり、設定に応じて前記言語モデル選択制御データを更新する統合辞書管理部を具備し、前記正解単語探索部は、前記言語モデル選択制御データによって選択されていることが示されている前記所定言語モデルに対応する前記単語出現確率値を前記統合辞書記憶部から取得して前記単語表記ごとの言語スコアを算出する、ことを特徴とする音声認識装置。請求項2に記載の音声認識装置であって、言語モデルごとの重み値を記憶する重み値記憶部を具備し、前記統合辞書管理部は、前記単語出現確率値データにおける複数の言語モデルに対応する前記単語出現確率値を、前記重み値記憶部から取得した前記重み値で加重平均することにより、前記複数の言語モデルを合成して得られる新たな単語出現確率値を算出し、算出された前記単語出現確率値で前記単語出現確率値データを更新する、ことを特徴とする音声認識装置。請求項2または3のいずれか一項に記載の音声認識装置であって、前記統合辞書管理部は、前記複数の言語モデルの各々に対応して、前記単語表記データと前記単語出現確率値と前記単語表記データの各々に対応する発音データとを取得し、前記単語表記データごとに前記発音データを前記音素列データに展開して前記統合辞書記憶部に書き込み、展開された前記音素列データに関連付けて前記単語表記データを前記統合辞書記憶部に書き込み、前記単語表記データに関連付けた前記単語出現確率値を前記言語モデルに対応させて前記統合辞書記憶部の前記単語出現確率値データに書き込むとともに、言語モデル間で単語表記が共通の単語が存在する場合には単一の前記単語表記データに関連付けるように言語モデルごとの前記単語出現確率値を前記単語出現確率値データに書き込み、言語モデル間で発音データが共通の単語が存在する場合には単一の音素列データに関連付けるように言語モデルごとの前記単語出現確率値を前記単語出現確率値データに書き込む、ことを特徴とする音声認識装置。請求項1から4までのいずれか一項に記載の音声認識装置であって、前記統合辞書記憶部は、前記音素列データにおける単語始端から単語途中音素までの部分音素列に対応して、言語モデルごとに、前記部分音素列を共有する全ての前記単語表記データに関連付けられた前記単語出現確率値の最大値を、前記部分音素列に対応する単語内確率値として保持する単語内確率値データをも記憶するものであり、前記正解単語探索部は、前記単語内確率値が所定閾値より低い場合には対応する前記部分音素列を共有する単語表記データを探索対象から除外する、ことを特徴とする音声認識装置。音響特徴量に関する統計量である音響モデルに関連付けられた音素の列である音素列を表わす音素列データと、前記音素列データに関連付けられた単語表記を表わす単語表記データと、前記単語表記データに関連付けられ前記単語表記の出現確率を表わす単語出現確率値を複数の言語モデルの各々に対応して保持する単語出現確率値データとを記憶する統合辞書記憶部と、入力音声を分析して音響特徴量を出力する音響分析部と、前記音響分析部から出力された前記音響特徴量を前記音響モデルとの関係により前記音素列ごとの音響スコアを算出するとともに、前記音素列に対応する前記単語表記データについての所定の言語モデルに対応する前記単語出現確率値データを前記統合辞書記憶部から取得して前記単語表記ごとの言語スコアを算出し、算出された前記音響スコアおよび前記言語スコアにより、正解の単語表記を探索して出力する正解単語探索部と、を具備する音声認識装置としてコンピューターを機能させるためのプログラム。しかしながら、従来の技術は次のような課題を持っている。例えば特許文献1に記載されている技術では、複数の音声認識処理を並行して稼動させるため、計算量およびメモリ消費量が並列度に比例して大きくなり、装置規模が増大するという問題がある。また、特許文献2に記載されている技術では、複数の言語モデルをひとつに統合する際に、それぞれの言語モデルに同じ表記の単語が語彙として登録されている場合でも、各言語モデルに対応したそれらの単語表記を別のものとして識別し、それぞれの単語に別の単語N-gramを付与する。そのため、正解単語探索の対象となる木構造化辞書データにおいては同じ単語が複数箇所で展開され、冗長であり、使用メモリの増加や音声認識処理時間の増加をもたらすという問題がある。また、非特許文献1に記載されている技術では、複数の言語モデルの中から1つの言語モデルを認識前に選択してから、音声認識処理を実行する。このため、言語モデルを動的に切り替えたり調整したりすることができない。また、非特許文献2に記載されている技術では、複数の文法ごとの木構造化辞書が独立にメモリに展開され、同じ単語が複数個所でメモリを占有する。このため、使用メモリの増加や音声認識処理時間の増加をもたらすという問題がある。本発明は、上記の課題認識に基づいて行なわれたものであり、例えば情報番組のように、1つの番組の中で時間とともに発話内容のジャンルあるいはドメインが推移していく場合に、複数の言語モデルを切り替える等の調整を行ないながら認識処理を行い、且つ複数の言語モデルに対応した辞書データの使用メモリ量の増加を抑えることのできる音声認識装置を提供するものである。また、本発明は、複数の言語モデルから1つを選択して使用する場合や、複数の言語モデルを重み付き線形結合させて使用する場合に、オンラインで動作している音声認識処理を中断遅滞させることなく、認識処理することのできる音声認識装置を提供するものである。[1]上記の課題を解決するため、本発明の一態様による音声認識装置は、音響特徴量に関する統計量である音響モデルに関連付けられた音素の列である音素列を表わす音素列データと、前記音素列データに関連付けられた単語表記を表わす単語表記データと、前記単語表記データに関連付けられ前記単語表記の出現確率を表わす単語出現確率値を複数の言語モデルの各々に対応して保持する単語出現確率値データとを記憶する統合辞書記憶部と、入力音声を分析して音響特徴量を出力する音響分析部と、前記音響分析部から出力された前記音響特徴量と前記音響モデルとの関係により前記音素列ごとの音響スコアを算出するとともに、前記音素列に対応する前記単語表記データについて所定言語モデルに対応する前記単語出現確率値を前記統合辞書記憶部から取得して前記単語表記ごとの言語スコアを算出し、算出された前記音響スコアおよび前記言語スコアにより、正解の単語表記を探索して出力する正解単語探索部とを具備する。ここで、統合辞書記憶部は、複数の言語モデルに共通の領域に音素列データと単語表記データを記憶する。また、単語表記データは、日本語の場合には漢字カナ混じりによる表記に対応している。単語出現確率値データは、ユニグラム、バイグラム、トライグラム等の単語連鎖に基づく確率値である。単語の連鎖数が2以上の場合には、直前の単語列に基づく条件付確率を用いる。なお、単語出現確率値データは、単語出現確率値を言語モデルごとに保持する。[2]また、本発明の一態様は、上記の音声認識装置において、前記統合辞書記憶部が記憶する前記単語出現確率値データは、どの言語モデルが選択されているかを表わす言語モデル選択制御データを含むものであり、設定に応じて前記言語モデル選択制御データを更新する統合辞書管理部を具備し、前記正解単語探索部は、前記言語モデル選択制御データによって選択されていることが示されている前記所定言語モデルに対応する前記単語出現確率値を前記統合辞書記憶部から取得して前記単語表記ごとの言語スコアを算出するものである。[3]また、本発明の一態様は、上記の音声認識装置において、言語モデルごとの重み値を記憶する重み値記憶部を具備し、前記統合辞書管理部は、前記単語出現確率値データにおける複数の言語モデルに対応する前記単語出現確率値を、前記重み値記憶部から取得した前記重み値で加重平均することにより、前記複数の言語モデルを合成して得られる新たな単語出現確率値を算出し、算出された前記単語出現確率値で前記単語出現確率値データを更新するものである。この構成により、複数の言語モデルを所望の比率で混合して新たな言語モデルを合成し、認識処理に用いることができる。また、混合比率重み値が変更された場合には、その合成された言語モデルを自動的に更新することができる。[4]また、本発明の一態様は、上記の音声認識装置において、前記統合辞書管理部は、前記複数の言語モデルの各々に対応して、前記単語表記データと前記単語出現確率値と前記単語表記データの各々に対応する発音データとを取得し、前記単語表記データごとに前記発音データを前記音素列データに展開して前記統合辞書記憶部に書き込み、展開された前記音素列データに関連付けて前記単語表記データを前記統合辞書記憶部に書き込み、前記単語表記データに関連付けた前記単語出現確率値を前記言語モデルに対応させて前記統合辞書記憶部の前記単語出現確率値データに書き込むとともに、言語モデル間で単語表記が共通の単語が存在する場合には単一の前記単語表記データに関連付けるように言語モデルごとの前記単語出現確率値を前記単語出現確率値データに書き込み、言語モデル間で発音データが共通の単語が存在する場合には単一の音素列データに関連付けるように言語モデルごとの前記単語出現確率値を前記単語出現確率値データに書き込むものである。この構成により、複数の言語モデルを統合して、各言語モデルに依存した音素列データおよび単語表記データに関して、言語モデル間で共通の静的に統合された木構造データをメモリ上に展開し、それらの単語表記データから、言語モデル別の単語出現確率値を関連付けるようにできる。[5]また、本発明の一態様は、上記の音声認識装置において、前記統合辞書記憶部は、前記音素列データにおける単語始端から単語途中音素までの部分音素列に対応して、言語モデルごとに、前記部分音素列を共有する全ての前記単語表記データに関連付けられた前記単語出現確率値の最大値を、前記部分音素列に対応する単語内確率値として保持する単語内確率値データをも記憶するものであり、前記正解単語探索部は、前記単語内確率値が所定閾値より低い場合には対応する前記部分音素列を共有する単語表記データを探索対象から除外するものである。[6]また、本発明の一態様は、音響特徴量に関する統計量である音響モデルに関連付けられた音素の列である音素列を表わす音素列データと、前記音素列データに関連付けられた単語表記を表わす単語表記データと、前記単語表記データに関連付けられ前記単語表記の出現確率を表わす単語出現確率値を複数の言語モデルの各々に対応して保持する単語出現確率値データとを記憶する統合辞書記憶部と、入力音声を分析して音響特徴量の統計データを出力する音響分析部と、前記音響分析部から出力された前記音響特徴量を前記音響モデルとの関係により前記音素列ごとの音響スコアを算出するとともに、前記音素列に対応する前記単語表記データについての所定の言語モデルに対応する前記単語出現確率値データを前記統合辞書記憶部から取得して前記単語表記ごとの言語スコアを算出し、算出された前記音響スコアおよび前記言語スコアにより、正解の単語表記を探索して出力する正解単語探索部とを具備する音声認識装置としてコンピューターを機能させるためのプログラムである。本発明によれば、複数の言語モデルを切り替えることなどにより、高精度な音声認識を実現し、且つ、複数の言語モデルに対応した辞書データのメモリ使用量を抑制することができる。また、本発明によれば、単語の出現確率値のテーブルを更新する際にも、認識処理を遅延させたり中断させたりすることがない。次に、図面を参照しながら、本発明の一実施形態について説明する。図1は、同実施形態による音声認識装置の機能構成を示すブロック図である。図示するように、音声認識装置1は、音響分析部2と、正解単語探索部3と、統合辞書記憶部4と、言語モデル記憶部6-1,6-2,,6-Mと、発音辞書記憶部7-1,7-2,,7-Mと、統合辞書管理部8と、音響モデル記憶部9と、重みベクトル記憶部10重み値記憶部と、手動設定部11と、自動設定部12とを含んで構成される。なお、言語モデル記憶部6-1と発音辞書記憶部7-1が対として用いられる。なお、言語モデル記憶部6-2と発音辞書記憶部7-2が対として用いられ、以下も同様である。一例としては、音声認識装置1は、放送番組の音声から放送用の字幕テキストを制作する目的で使用される。この場合、入力音声は、放送番組の音声そのもの、あるいは放送番組の音声を字幕制作専用アナウンサーが認識処理のために言い直した音声いわゆる、リスピーク音声である。音響分析部2は、入力音声を読み込み、パワーや周波数特性などの音響特徴量を抽出する。また、音響分析部2は、音響特徴量を抽出すると同時に、入力音声における声の発話始端と発話終端を逐次検出する。発話始端および発話終端の検出自体は、既存の技術により行なうことができる。例えば、音響分析部2は、話者クラスタごとのスピーチに対する音響モデルと非スピーチに対する音響モデルとを参照しながら、スピーチに対する最大の累積尤度と非スピーチに対する累積尤度との比を逐次算出し、算出された比の値と予め設定された閾値とを比較することにより、発話始端および発話終端を検出する。正解単語探索部3は、音響分析部2において抽出された音響特徴量を元に、統合辞書記憶部4から読み出した辞書データを用いて、正解単語を探索し、その結果得られたテキストを認識結果テキストとして出力する。具体的には、正解単語探索部3は、音響分析部2から出力された音響特徴量と、音響モデル記憶部9に記憶されている音響モデルとの関係により、音素列ごとの音響スコアを算出する。また、正解単語探索部3は、音素列に対応する単語表記データについての、選択されている言語モデルに対応する単語出現確率値を前記統合辞書記憶部から取得して単語表記ごとの言語スコアを算出する。そして、正解単語探索部3は、算出された音響スコアおよび言語スコアにより、正解の単語表記を探索して出力する。なお、正解単語探索部3は、制御フラグによって選択が示されている言語モデルに対応する単語出現確率値を統合辞書記憶部から取得して、言語スコア算出に使用する。統合辞書記憶部4は、複数の言語モデルおよび複数の発音辞書の情報を統合した統合辞書のデータを記憶する。具体的には、統合辞書記憶部4は、単語始端ノードおよび単語終端ノードに関するデータと、音素列データと、単語表記データと、単語終端N-gramテーブルと、単語内N-gramテーブルとを記憶する。また、統合辞書記憶部4は、それらのデータ間の関連付けを行なうリンクの情報を記憶する。これらのデータの詳細については、後述する。言語モデル記憶部6-1,6-2,,6-Mは、言語モデルのデータを記憶するものであり、それぞれ、言語モデル1,言語モデル2,,言語モデルMに対応している。各々の言語モデルのデータは、単語表記データと単語出現確率値のデータとを関連付けて保持している。なお、本実施形態において単語出現確率値はバイグラムの確率値であるが、任意の数の単語連鎖に基づく確率値であってもよい。発音辞書記憶部7-1,7-2,,7-Mは、発音辞書のデータを記憶するものであり、それぞれ、言語モデル1,言語モデル2,,言語モデルMに対応している。各々の発音辞書のデータは、単語表記データと発音データとを関連付けて保持している。発音データは、音素列と等価である。統合辞書管理部8は、複数の言語モデルのデータ、即ち、言語モデル記憶部6-1,6-2,,6-Mおよび発音辞書記憶部7-1,7-2,,7-Mから読み出したデータを統合し、言語モデル間で共通の音素列データおよび単語表記データをメモリ上に展開するとともに、言語モデルごとに確率値を保持する単語終端N-gramテーブルおよび単語内N-gramテーブルに、値を書き込む。この言語モデルの統合および展開の処理の詳細については、後述する。また、統合辞書管理部8は、音響分析部2が検出した発話始端および発話終端のタイミングに基づいて、発話終端と次の発話始端の間の発話間ポーズにおいて、必要な場合に統合辞書記憶部4を更新する。具体的には、重みベクトル記憶部10の重みベクトルが変更されていた場合には、統合辞書管理部8は、変更後の重みベクトルを用いて、単語終端N-gramテーブルおよび単語内N-gramテーブルの値を再計算し、これらのテーブルを更新する。このテーブル更新処理の詳細については、後述する。また、統合辞書管理部8は、手動設定または自動設定により言語モデルケースの選択を制御するための制御フラグを更新する。このフラグの更新により、正解単語探索部3が使用する言語モデルを瞬時に切り替えることができる。なお、複数の言語モデルの重み付き合成結果である言語モデル後述するケースXが選択される場合にも、同様に、統合辞書管理部8が上記の制御フラグを更新することにより行なう。音響モデル記憶部9は、音響特徴量に関する統計量を、音素に関連付けた形式で記憶する。音響モデル記憶部9内の音響特徴量の統計量とは、例えば、音素のパワーや周波数特性などの平均値および分散値ベクトルで表現される場合には分散共分散行列である。音響特徴量としては、例えば、隠れマルコフモデルHMMを用いる。重みベクトル記憶部10は、複数の言語モデルを合成するための、各言語モデルの寄与度を表わす重み値のベクトルを記憶する。重みベクトルの詳細については、後述する。手動設定部11は、利用者からの手動設定により、重みベクトルの値を設定する。手動設定部11は、言語モデルに対する各重み係数の値を直接入力できるようにしてもよいし、あらかじめ何通りかの重み係数の組み合わせ例えば、後述するケース1、ケース2、、ケースXを設定しておき、そのうちのひとつを選択できるようにしておいてもよい。自動設定部12は、音声認識結果のテキストを分析することによって話題を推定し、特定された話題に応じて言語モデルを切り替える設定を行なう。話題を推定すること自体は、既存技術を利用して行なうことができる。例えば、認識結果テキスト中の単語ごとの出現頻度をカウントし、すべての単語の出現頻度を特徴ベクトルとして、コサイン尺度等によるベクトル間の類似度を用いて話題を推定できる。自動設定部12は、随時、話題を推定し、推定結果に応じて、予め準備された候補の中から重みベクトルを選択したり、重みベクトルを新たに生成したりする。図2は、統合辞書記憶部4が記憶する辞書データに含まれる、音素列探索用データの構成例を示す概略図である。図示するように、統合辞書記憶部4が記憶する辞書データは、ノードと有向リンクを表わすデータを含んで構成される。各ノードは例えば構造体データとして表わされる。また、有向リンクは、リンクの終点の記憶領域へのポインタ等を用いて表わされる。同図において、符号20は、単語始端に対応する単語始端ノードである。また、31から40までは、音素に対応する音素ノードである。また、51から57までは、日本語の漢字仮名交じりで表わされる単語表記に対応する単語表記ノードである。また、70は単語終端に対応する単語終端ノードである。なお、音素ノード31~40と音素ノード間のリンクとが、正解単語探索部3による探索対象空間である音素列を表わしており、これを音素列データと呼ぶ。統合辞書記憶部4が記憶する単語表記データは、単語表記ノードに対応し、単語表記を表わすものである。また、単語表記データは、音素列データ中の終端の音素ノードからリンクによって関連付けられている。例えば、単語表記ノード51に対応する単語朝は、音素列/asa/で発音されるため、/a/の音素ノード31と、/s/の音素ノード32と、/a/の音素ノード34とを直列するネットワークに関連付けられて居る。また例えば、単語表記ノード53に対応する単語明日は、音素列/asu/で発音されるため、/a/の音素ノード31と、/s/の音素ノード32とを、上記の単語表記ノード51単語朝との間で共有する。そして、/s/の音素ノード32から枝分かれして/u/の音素ノード35に至るネットワーク音素ノード31、32、35と直列するネットワークに、単語表記ノード53単語明日は関連付けられる。なお、音素列/asa/には、単語表記ノード51単語朝だけでなく、単語表記ノード52単語麻も同様に、関連付けられる。また、音素ノード31~40の各々は、音響モデル記憶部9内の音響特徴量の統計量への関連付けが行なわれている。この関連付けは、各音素ノードがリンク情報図2では図示省略を保持することによって実現される。また、音素ノード31~40の各々は、単語内N-gramテーブルのエントリーへの関連付けのためのリンク情報図2ではこのリンク情報の図示を省略を保持している。この関連付けは、ポインタや音素ノード識別情報の値によって行なう。なお、単語内N-gramテーブルについては、後述する。また、単語表記ノード51~57の各々は、単語終端N-gramテーブルのエントリーへのリンク情報図2ではこのリンク情報の図示を省略を保持している。単語終端N-gramテーブルについては、後述する。図3は、統合辞書記憶部4が記憶する辞書データに含まれる、音素列探索用データの構成例を示すもう一つの概略図である。図3に示すデータと図2で説明したデータとは、概念的な構成において同一である。図3において、符号21は、単語始端ノードである。また、41から43までは、音素ノードである。また、58から61までは、単語表記ノードである。また、71は、単語終端ノードである。なお、音素ノード41~43と音素ノード間のリンクとが、正解単語探索部3による探索対象空間である音素列を表わしており、これを音素列データと呼ぶ。この例では、単語表記w1と単語表記w2とは、ともに音素列/n1n2/に関連付けられている。つまり、w1とw2は同音異義語である。また、単語表記w3と単語表記w4とは、ともに音素列/n1n3/に関連付けられている。つまり、w3とw4は同音異義語である。後で単語内N-gramテーブルおよび単語終端N-gramテーブルについて説明する際に、また図3内のデータに言及する。図4は、重みベクトル記憶部10が記憶するデータの構成を示す概略図である。図示するように、重みベクトル記憶部10は、ケースごとに、各言語モデルの重みの値を記憶する。図示する例では、ケース1のベクトルは1.0,0.0,,0.0である。つまり、ケース1では、言語モデル1の重みを1.0とし、その他の言語モデルの重みをすべて0.0とする。また、ケース2では、言語モデル2の重みを1.0とし、その他の言語モデルの重みをすべて0.0とする。また、ケースXでは、言語モデル1および2の重みをそれぞれ0.5ずつとし、その他の言語モデルの重みをすべて0.0とする。つまり、ケース1あるいはケース2の場合には、実質的に、複数の言語モデルのうち一つの言語モデルを単独で使用することを意味する。また、ケースXのように、重みベクトルを用いて、複数の言語モデルの任意の重み付き線形結合による統計量を、言語モデルとして使用することもできる。言語モデルに対する重みベクトルの意味は、次の通りである。即ち、任意の言語モデルm∈{1,2,,M}に対する重み係数をλmとし、入力音声に含まれるn-1番目の単語wn-1からn番目の単語wnへの単語連鎖バイグラムの言語モデルmに基づく出現確率をPmwn|wn-1とすると、これらM個の言語モデルから重み付き線形結合で構成される言語モデルケースXの単語連鎖の出現確率は、それぞれの重み係数を各言語モデルの出現確率に乗じて足し合わせることで、下の式1のように計算できる。なお、ここで、下の式2で表わされる条件を前提とする。つまり、あるケースに対する重み値の総和は1であり、各々の重み値は非負である。なお、ここでは、1つの直前単語から次単語への2単語連鎖の出現確率、すなわちバイグラム確率について説明したが、さらにもう1つ前の直前単語も条件に加えた、3単語連鎖の出現確率、すなわちトライグラム確率についても、同様に重みを用いて計算できる。前述の手動設定部11あるいは自動設定部12は、ケース1、ケース2、、ケースXの中から重みベクトルを選択するか、あるいはケースXのベクトル値を適宜変更することによって、重みを決定する。また、ケース1やケース2のように、選択された重みベクトルにおいてある特定の言語モデルの重みのみが1.0である場合には、元の言語モデルを単純に選択することと同じ作用を得られる。図5は、統合辞書記憶部4内に記憶される単語終端N-gramテーブル単語出現確率値データの構成例を示す概略図である。ここに図示する例は、バイグラム確率を用いる場合のデータである。なお前述の通り、図2および図3で説明した単語表記ノードから、この単語終端N-gramテーブルのエントリーへのリンクによる関連付けが行なわれている。図示するように、単語終端N-gramテーブルは、言語モデルのケースごとに、単語N-gramの確率値単語出現確率値を保持している。例えば、ケース1では、直前単語w1に対して次単語w2およびw4それぞれに接続する場合の確率値として、それぞれ、0.8および0.2を保持している。このとき、直前単語w1に対して、次単語への接続の確率の総和は1.0である。即ち、直前単語w1-次単語w2の接続確率0.8と、直前単語w1-次単語w4の接続確率0.2との和は1.0である。同様に、ケース1では、直前単語w2から次単語への接続確率の総和も1.0である。また、この単語終端N-gramテーブルは、ケース2やケースX等においても、同様に単語のN-gramここでは、バイグラムによる確率値を保持している。ケースXについて、詳細に説明する。図4にも示した通り、ケースXにおける重み値が言語モデル1と言語モデル2の各々に対して0.5である場合、図5のケースXにおける直前単語w1-次単語w2の接続確率は、ケース1における確率0.8に重み0.5を乗じた値と、ケース2における確率0.0に重み0.5を乗じた値との和、即ち0.4である。同様に、ケースXにおける直前単語w1-次単語w3の接続確率は、ケース1における確率0.0に重み0.5を乗じた値と、ケース2における確率0.4に重み0.5を乗じた値との和、即ち0.2である。同様に、ケースXにおける直前単語w1-次単語w4の接続確率は、ケース1における確率0.2に重み0.5を乗じた値と、ケース2における確率0.6に重み0.5を乗じた値との和、即ち0.4である。そして、他の直前単語についても同様である。つまり、単語終端N-gramテーブルは、単語表記データに関連付けられ、直前の単語または直前の単語連鎖を前提とした当該単語表記の条件付出現確率を表わす単語出現確率値を、複数の言語モデルの各々に対応して保持する。また、単語終端N-gramテーブルは、言語モデルケースの選択を制御するための制御フラグ言語モデル選択制御データを有している。図示する例では、ケース1が選択されているために、ケース1に対応する制御フラグの値は○である。また、選択されていないケース2やケースXに対応する制御フラグの値は×である。音声認識処理の実行中は、この制御フラグが○で示されている言語モデルのデータを参照するようにすることにより、音素列データの木構造を言語モデルごとにメモリ上に複数展開したり、言語モデルごとの木構造全体を切り替えたりすることなく、言語モデルを切り替えることと等価な処理を行うことが可能となる。また、制御フラグの更新のみにより、迅速な言語モデルの変更が可能となる。図6は、統合辞書記憶部4内に記憶される単語内N-gramテーブル単語内確率値データの構成例を示す概略図である。図示するように、単語内N-gramテーブルは、直前単語ごとに、音素ノードに対応する確率値単語内確率値を保持している。なお前述の通り、各音素ノードから、この単語内N-gramテーブルのエントリーへのリンクによる関連付けが行なわれている。また、単語内N-gramテーブルは、前述の単語終端N-gramテーブルと同様に、言語モデルケースの選択を制御するための制御フラグ言語モデル選択制御データを有している。選択されているケースにおいては、制御フラグの値は○である。また、選択されていないケースにおいては、制御フラグの値は×である。つまり、統合辞書記憶部4は、音素列データにおける単語始端から単語途中音素単語途中音素とは、単語表記ノードへの直接リンクを持たない音素までの部分音素列に対応して、言語モデルごとに、部分音素列を共有する全ての単語表記データに関連付けられた単語出現確率値の最大値を、部分音素列に対応する単語内確率値として保持する単語内N-gramテーブルを記憶する。部分音素列音素ノードを共有する単語表記データの意味については、次に説明する。図6に示すデータ例は、図3で説明した音素列の木構造に対応している。図3で示したように、音素ノードn1は、単語表記ノード58~61の各々に対応する単語w1とw2とw3とw4である。つまり、音素ノードn1は、単語w1とw2とw3とw4を共有している。一般に音素ノードpにおける共有単語この音素ノードを含む複数の単語の集合をspとすると、s1={w1,w2,w3,w4},s2={w1,w2,s3={w3,w4}である。言い換えれば、音素ノードpを共有する全ての単語表記ノードの集合が、spである。単語内N-gramテーブルが保持する確率値は、ある直前単語を前提として、ある音素ノードが共有する共有単語集合に含まれる単語を次単語としたときの接続確率の最大値である。即ち、直前単語wn-1に後続する音素ノードpにおける共有単語集合sp音素ノードpを含む複数の単語の集合の連鎖出現確率の最大値は、下の式3で表わされる。なお、式3において、Pmwn|wn-1は、ケースmいずれか単独の言語モデルあるいは重み付け線形和における、単語wn-1から単語wnへの接続確率であり、前述の単語終端N-gramテーブルがその確率値を保持している。なお、ここでは一つの直前単語から次単語への2単語連鎖の出現確率、すなわちバイグラム確率の最大値について説明したが、さらにもう一つ前の直前単語も条件に加えた、3単語連鎖の出現確率、すなわちトライグラム確率の最大値や、直前単語によらずに1単語単独の出現確率、すなわちユニグラム確率の最大値等を用いるようにしても良い。これら、トライグラム確率やユニグラム確率等を用いる場合にも、単語内N-gramテーブルが保持する値の算出方法は、同様である。例えば、ケース1図4に示す例では言語モデル1のみを使用において、直前単語がw1であるとき、音素ノードn1の共有単語の集合はs1={w1,w2,w3,w4であるので、直前単語w1-次単語w1の接続確率0.0と、直前単語w1-次単語w2の接続確率0.8と、直前単語w1-次単語w3接続確率0.0と、直前単語w1-次単語w4の接続確率0.2の最大値は0.8である。よって、直前単語w1-音素ノードn1の確率値は0.8である。他の直前単語、および他の音素ノードについても同様である。このような単語内N-gramテーブルを用いることにより、音声認識処理を行う場合に、単語終端まで言語モデルの適用対数言語スコアの加算を遅らせるのではなく、探索途中の各音素ノードで、その音素を共有する単語への連鎖出現確率の最大値に基づいて、可能性の低い単語の探索を打ち切る即ち、探索空間における枝刈りを行なうことが可能となる。つまり、その音素を共有する単語への連鎖出現確率の最大値が、所定の閾値よりも低い場合には、当該共有単語集合のどれもが、正解単語である可能性が閾値よりも低いため、安全に探索空間の枝刈りを行なうことができる。なお、単語内N-gramテーブルに、可能性のある全ての音素ノードについて予め確率値を書き込んでおいても良いが、データ量が膨大になることを避けるために、次のような工夫をしても良い。第1の工夫は、音素の列のツリーにおいてそれ以上分岐が起きない音素ノード以降つまり、その音素ノードに共通する単語の発音が1種類のみの場合では音素ノード間で確率値が不変なので確率値の登録を省略する。第2の工夫は、計算頻度の高い、単語始端に近い音素ノードに関してのみ確率値を事前計算して単語内N-gramテーブルに登録しておく。そして、計算頻度の低い、単語終端に近い音素ノードについては認識時に必要になった時だけ確率値を計算する。次に、音声認識装置1による処理の手順について説明する。図7は、音声認識装置1による動作の手順を示すフローチャートである。まず、ステップS1において、統合辞書管理部8が、言語モデル記憶部6-1~6-Mから各言語モデルのデータを読み出すとともに、発音辞書記憶部7-1~7-Mから発音辞書データを読み出す。また、統合辞書管理部8は、音響モデル記憶部9から音響モデルのデータを読み出す。そして、統合辞書管理部8は、音素ノードの木構造を展開するなどの処理により、統合辞書データを作成し、統合辞書記憶部4にそのデータを書き込む。このときに作成されるデータとしては、図2および図3で示した音素ノードの木構造とそれに関連付けられた単語表記ノードのデータ、図5で示した単語終端N-gramテーブル、そして、図6で示した単語内N-gramテーブルが含まれる。統合辞書管理部8による統合辞書作成処理の詳細については、後述する。次に、ステップS2において、自動設定部12が、重みベクトルの初期値として、ケース1のベクトルを使用するよう設定する。つまり、言語モデル1に対する重み係数が1.0に設定され、その他の言語モデルに対する重み係数が0.0に設定される。また、このとき、単語終端N-gramテーブルおよび単語内N-gramテーブルの制御フラグが、特定のケースを選択するように設定される。次に、ステップS3において、統合辞書管理部8が、重みベクトルが初期値以外の値に手動設定されているか否かを調べる。そして、重みベクトルの手動設定がある場合ステップS3:YESには次のステップS4に進み、手動設定がない場合ステップS3:NOにはステップS5に飛ぶ。次に、ステップS4に進んだ場合には、統合辞書管理部8が、変更後の重みベクトルの値に従って、単語終端N-gramテーブルおよび単語内N-gramテーブルが保持する確率値を再計算し、更新する。次に、ステップS5において、音響分析部2が、入力音声の分析を行い、音響特徴量を抽出する。具体的には、音響分析部2は、所定の時間長の入力音声に基づき、その時間長に対応して、音響特徴量の離散的な時系列を求める。またこのとき、音響分析部2は、既に述べた方法で発話始端および発話終端の検出も同時に行なう。次に、ステップS6において、音響分析部2は、ステップS5で検出された発話始端および発話終端のタイミングに応じて、現時点での入力音声が発話間ポーズ無音、非スピーチであるか否かを判定する。そして、発話間ポーズである場合ステップS6:YESには次のステップS7に進み、発話間ポーズでない場合ステップS6:NOにはステップS11に飛ぶ。次に、ステップS7において、統合辞書管理部8は、前回以後、自動設定部12によって重みベクトルが自動設定されたかどうか調べる。そして、自動設定されていた場合ステップS7:YESにはステップS8に進み、自動設定されていなかった場合ステップS7:NOにはステップS9に進む。次に、ステップS8に進んだ場合には、変更された重みベクトルを用いるように、使用する重みベクトルの設定を更新する。このステップの処理のあとは、ステップS10に進む。次に、ステップS9に進んだ場合には、統合辞書管理部8は、前回以後、手動設定部11によって重みベクトルが設定変更されたかどうか調べる。そして、変更されていた場合ステップS9:YESにはステップS10に進み、変更されていなかった場合ステップS9:NOにはステップS11に飛ぶ。次に、ステップS10に進んだ場合には、統合辞書管理部8が、変更後の重みベクトルの値に従って、単語終端N-gramテーブルおよび単語内N-gramテーブルが保持する確率値を再計算し、更新する。そして、ステップS11において、正解単語探索部3が、音響分析部2によって得られた音響特徴量を元に、統合辞書記憶部4に記憶されている統合辞書データN-gramテーブルを含むを用いて、正解単語を探索し、各正解候補のスコア尤度を算出する。正解単語探索部3は、例えば、単語単位の確率値の対数の時系列方向の和をスコアとして算出する。そして、ステップS12において、単語終端に達したとき、あるいは文の終端に達したとき、あるいは発話終端に達したときなど、適切なタイミングに達した場合には、正解単語探索部3は、最尤単語列を認識結果テキストとして逐次出力する。次に、ステップS13において、音響分析部2は、入力音声の終了であるか否かを判定する。入力終了の場合ステップS13:YESにはこのフローチャート全体の処理を終了する。まだ入力終了ではない場合ステップS13:NOには、次の入力音声を分析するためにステップS5へ戻る。つまり、音声認識装置1は、入力音声が終了するまで、音声認識処理を繰り返す。<正解単語探索処理の詳細>ここで、正解単語探索部3の処理の詳細について説明する。正解単語探索部3は、上述した手順において、統合辞書記憶部4の統合辞書を探索し、探索が単語表記ノード符号51~60に達した時、その単語に対応する確率値を単語終端N-gramテーブルから読み出して、その対数を取り、その単語を含む系列正解候補の音響スコアにその対数値を加算する。なお、確率値の対数値の系列方向の加算が、確率値の積によるスコアと同じ意味を持つことは言うまでもない。また、単語終端N-gramテーブルについての説明でも述べたように、バイグラム確率の最大値によって正解単語を探索する方法に限らず、トライグラム確率の最大値や、ユニグラム確率の最大値を用いる方法を採用しても良い。また、4以上の連鎖数のN-gramを用いても良い。なお、制御フラグで○で示されているケース選択されている単独の言語モデルあるいはこれらの重み付け線形和に関して、単語終端N-gramテーブルに記載のない次単語については、次のように連鎖出現確率を扱う。即ち、当該ケースにおける語彙に、その次単語が含まれない場合にはその次単語への接続確率を0.0とする。そして、当該ケースにおける語彙に、その次単語が含まれる場合には、連鎖数がひとつ下のN-gramつまり、トライグラムを用いている場合にはひとつ下のバイグラム。バイグラムを用いている場合にはひとつ下のユニグラムを利用したバックオフ言語モデルの確率値を用いるようにする。また、正解単語探索部3は、上述した手順における探索時に、各音素ノードでは、入力音声がどの音素に近いのかを評価するため、音素ノードに関連付けされている音響モデルを用いて、仮説候補単語に対する音響スコアを算出する。正解単語探索部3は、この音響スコアPO|Wを、下の式4によって算出する。ここでWは入力音声O中の単語列である。また、wnは入力音声O中のn番目の単語である。また、Onはこのn番目の単語に対応する入力音声の音響特徴量のベクトル列時系列である。また、正解単語探索部3は、単語単位だけではなく、複数単語からなるフレーズや文を音声認識するために、各単語の単語終端ノードから次単語の単語始端ノードへの遷移をたどる。これにより、正解単語探索部3は、次々に連続した単語の探索を行なうことができるようになっている。例えば、秋の朝ねという文発声を音声認識する際には、正解単語探索部3は、図2の単語始端ノード20から、音素ノード31~40のそれぞれに関連付けられた音響モデルによって音響スコアの計算を行い、可能性の高いつまり、音響スコアが所定の閾値より高い音素ノードのみを正解候補として保持して、可能性の低いつまり、音響スコアが所定の閾値より低い音素ノード以降の探索を打ち切る。つまり、音素ノードの枝刈りを行なう。そして、正解単語探索部3は、音響スコアと言語スコアの和が最大となる秋→の→朝→ねという単語列を認識結果として採用することで、音声認識処理を完了する。なお、ここで言語スコアとは、単語連鎖の出現確率単語N-gramの対数を取った値である。正解単語探索部3は、音素を共有する単語への連鎖出現確率の最大値を保持する単語内N-gramテーブルを参照することにより、上記のような探索空間の枝刈りを行なうことができる。言い換えれば、正解単語探索部3は、単語内確率値が所定閾値より低い場合には対応する部分音素列を共有する単語表記データを探索対象から除外する。つまり、単語終端まで言語モデルの適用対数言語スコアの加算を遅らせるのではなく、探索途中の各音素ノードで、その音素を共有する単語への連鎖出現確率の最大値に基づいて、可能性の低い単語の探索を打ち切ることが可能となる。言い換えれば、正解単語探索部3は、単語終端まで言語モデルの適用対数言語スコアの加算を遅らせるのではなく、探索途中の各音素ノードで、その音素を共有する単語への連鎖出現確率の最大値を仮に加算言語スコアを先読みする。<統合辞書管理処理の詳細>次に、統合辞書管理部8の処理の詳細について説明する。統合辞書管理部8は、初期図7のステップS1において、M個の言語モデルおよびそれらに対応するM個の発音辞書を順次読み込み、木構造に展開し、図2および図3で示した統合辞書を生成する。また、それらM個の言語モデルに対応して、さらにこれらのM個の言語モデルの重み付け線形和のケースに対応して、単語終端N-gramテーブルおよび単語内N-gramテーブルを生成する。このとき、統合辞書管理部8は、M個の言語モデル間で、共通の単語表記による単語や、共通の音素列つまり、同一の発音による単語が含まれる場合には、これらを重複して音素列の木構造に展開することを行なわず、共通の音素列間で木構造のデータを共用できるようにする。具体的手順の例として、統合辞書管理部8は、例えば言語モデル1の語彙の全単語を木構造に展開し終えた後で、言語モデル2も中に、同一の単語表記や同一の発音音素列の単語を含む場合には、これらを再度別ノードとして展開することをしない。つまり、同一の単語表記が言語モデル1と言語モデル2の両方に存在する場合には、既存の言語モデル1用に作成した単語表記ノードから関連付けられている先の、単語終端N-gramテーブルのエントリーに対応させて、言語モデル2ケース2用の確率値を書き込む。また、同一の発音で新たな単語表記が言語モデル2の中に存在した場合には、言語モデル1用に作成した音素列のネットワークをそのまま用いて、それに関連付けられた単語表記ノードのみを新たに作成する。統合辞書管理部8は、言語モデル3以後についても同様の方法で、統合辞書データを作成していく。言い換えれば、統合辞書管理部8は、複数の言語モデルの各々に対応して、言語モデル記憶部6-1~6-Mから単語表記データと単語出現確率値とを取得するとともに、発音辞書記憶部7-1~7-Mから単語表記データの各々に対応する発音データを取得する。そして、統合辞書管理部8は、単語表記データごとの発音データを音素列データの木構造に展開して統合辞書記憶部4に書き込む。そして、統合辞書管理部8は、展開された木構造の音素列データに関連付けて単語表記データを統合辞書記憶部4に書き込む。そして、統合辞書管理部8は、単語表記データに関連付けた単語出現確率値を言語モデルに対応させて統合辞書記憶部4の単語終端N-gramテーブルに書き込む。但し、統合辞書管理部8は、言語モデル間で単語表記が共通の単語が存在する場合には単一の単語表記データすなわち、単一のメモリ領域だけを占めるに関連付けるように言語モデルごとの単語出現確率値を単語終端N-gramテーブルに書き込み、言語モデル間で発音データ即ち、音素列が共通の単語が存在する場合には単一の音素列データつまり、単一のメモリ領域だけを占める音素ノードの連鎖に関連付けるように言語モデルごとの単語出現確率値を単語終端N-gramテーブルに書き込む。これにより、統合辞書管理部8は、言語モデルごとの木構造をメモリ上に展開する必要がなく、冗長性を廃した木構造を有する辞書に、複数の言語モデルを静的に統合することが可能となる。つまり、複数の言語モデルを切り替えて使用しながらも、消費するメモリ量を大幅に削減することが可能となり、装置のハードウェア規模を削減することが出来る。重みベクトル記憶部10に記憶されている重みベクトルが手動設定部11または自動設定部12によって変更された場合には、統合辞書管理部8は、必要に応じて単語終端N-gramテーブルおよび単語内N-gramテーブルに記憶されている確率値を再計算して更新する。図7のステップS4およびS10における処理がこれに相当する。図4に示した、ケース1およびケース2の重みベクトルはその値が不変であるので、ベクトル値そのものの変更によって単語終端N-gramテーブルおよび単語内N-gramテーブルの更新が必要になることはない。単語終端N-gramテーブルおよび単語内N-gramテーブルにおける制御フラグで選択を切り替えるだけで、ケースの切り替えを行うことができる。一方で、ケースXでは重みベクトルの値が変更され得るため、変更された場合には、統合辞書管理部8が、変更後のベクトル値を用いて単語終端N-gramテーブルおよび単語内N-gramテーブル内の確率値を再計算する。言い換えれば、統合辞書管理部8は、単語終端N-gramテーブルおよび単語内N-gramテーブルにおける、複数の言語モデルに対応する単語出現確率値を、重みベクトル記憶部10から取得した重み値を用いて加重平均することにより、複数の言語モデルを合成して得られる新たな言語モデルケースXに相当の単語出現確率値を算出し、算出された単語出現確率値で単語終端N-gramテーブルおよび単語内N-gramテーブルを更新する、なお、このテーブル更新のきっかけとなるのは、初期において重みベクトルが設定されていたとき、または発話間ポーズにおいて重みベクトルが変更されていたときである。図7のステップS4は、入力音声の読み込みを開始する前の処理であるため、テーブル更新に関する特別の時間制約はない。一方で、ステップS10の処理は、発話間ポーズ中の処理であるため、次の発話始端の前にテーブル更新処理を終える必要がある。そのため、統合辞書管理部8は、発話間ポーズの時間内に確率値の再計算が完了しない場合には、そのときには単語終端N-gramテーブルおよび単語内N-gramテーブルを更新せず、バックグラウンド処理で確率値の再計算を継続する。この場合、次の発話では、正解単語探索部3は、更新前の単語終端Ngramテーブルおよび単語内Ngramテーブルの値をそのまま利用して正解単語を探索することとなる。また、次の発話間ポーズのときに、統合辞書管理部8は、再計算された確率値を用いてこれらのテーブルを更新する。このような制御により、音声認識処理が中断あるいは遅滞されることを防ぐことができる。以上述べた音声認識装置1の構成により、次の効果が得られる。複数の言語モデルを切り替えたり、重みベクトルによる線形和を取って合成したりするためことができるため、複数の話題にまたがる入力音声に対しても認識精度が上がる。複数の言語モデルを統合する際に、音素列および単語に関する情報が重複することなくメモリ上に展開するため、メモリ消費を抑制することができる。ひいては、装置規模を小さくすることができる。また、制御フラグの切り替えのみで、認識に使用する言語モデルを切り替えることができるため、認識処理中にオンラインで迅速に話題の変化に追従できる。また、単語内N-gramテーブルを用いた探索を行なう際に、可能性の低い候補を枝刈り処理できるため、正解単語の探索のための計算量を減らすことができる。このように、使用メモリ量を抑えつつ、リアルタイムに、高精度な音声認識を実現できる。なお、上述した実施形態における音声認識装置の機能を、コンピューターで実現するようにしても良い。その場合、各機能を実現するためのプログラムをコンピューター読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピューターシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいうコンピューターシステムとは、OSや周辺機器等のハードウェアを含むものとする。また、コンピューター読み取り可能な記録媒体とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらにコンピューター読み取り可能な記録媒体とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。以上、実施形態を説明したが、本発明はさらに次のような変形例でも実施することが可能である。例えば、重み付き線形結合による言語モデルを使用する場合、単語連鎖の出現確率に対する重みベクトルが変更されると、統合辞書管理部8は、入力音声に対する前記正解単語探索において探索対象となった木構造化単語辞書上の単語内音素および単語終端のみについて、単語終端N-gramテーブルおよび単語内N-gramテーブルの出現確率の再計算および更新を行い、他の単語内音素および単語終端については更新を行なわないようにする。これにより、重みベクトルの変更に対してオンラインで迅速に対応でき、認識処理の遅延や中断を防ぐことができる。以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。"