(57)【要約】【課題】少ない計算量で入力音声の話題を高精度に推定し、また話題の変化にも追従しながら、話題の推定結果に応じた最適な言語モデルを選択する。【解決手段】話題特徴量記憶部は、言語表現の出現頻度の特徴を表わす話題特徴量データを話題毎に記憶する。フィードバック特徴量生成部は、音声認識結果データに基づいて言語表現の出現頻度の特徴を表わすフィードバック特徴量データを生成する。類似度計算部は、フィードバック特徴量データと話題特徴量記憶部から読み出した話題特徴量データとに基づく類似度を計算し、類似度に基づいて音声認識結果データの話題を推定する。言語モデル切替制御部は、類似度計算部によって推定された話題に対応する言語モデルを使用して入力音声を音声認識処理するよう言語モデルを切り替える。【選択図】図１
2013050605.tif 000002
【特許請求の範囲】
【請求項１】
言語表現の出現頻度の特徴を表わす話題特徴量データを話題毎に記憶する話題特徴量記憶部と、
音声認識装置から出力された音声認識結果データに基づいて前記音声認識結果データに含まれる言語表現の出現頻度の特徴を表わすフィードバック特徴量データを生成するフィードバック特徴量生成部と、
前記フィードバック特徴量データと前記話題特徴量記憶部から読み出した前記話題特徴量データとに基づく類似度を計算するとともに、計算された前記類似度に基づいて前記音声認識結果データの話題を推定する類似度計算部と、
前記類似度計算部によって推定された前記話題に対応する言語モデルを使用して入力音声を音声認識処理するよう言語モデルを切り替える言語モデル切替制御部と、
を具備することを特徴とする言語モデル切替装置。
【請求項２】
話題毎の学習テキストを記憶する学習テキスト記憶部と、
前記学習テキスト記憶部から読み出した前記学習テキストに含まれる前記言語表現をカウントすることによって言語表現毎の出現頻度を算出する話題特徴量生成部と、
前記話題特徴量生成部が算出した言語表現毎の出現頻度に、言語表現ごとのＩＤＦ値を反映させ、ＩＤＦ値反映済の出現頻度に基づく前記話題特徴量データを前記話題特徴量記憶部に書き込むＩＤＦ反映部と、
をさらに具備することを特徴とする請求項１に記載の言語モデル切替装置。
【請求項３】
話題毎の言語モデルを記憶する言語モデル記憶部を備え、前記言語モデル切替制御部によって切り替えられた言語モデルを用いて前記入力音声の音声認識処理を行い、前記音声認識結果データを出力する音声認識装置と、
請求項１または請求項２に記載の言語モデル切替装置と、
を具備して構成される音声認識システム。
【請求項４】
前記音声認識装置から出力される前記音声認識結果データを修正する修正装置をさらに具備し、
前記修正装置によって修正された音声認識結果データを出力するとともに、
前記フィードバック特徴量生成部は、前記修正装置によって修正された音声認識結果データに基づいて前記フィードバック特徴量データを生成する、
ことを特徴とする請求項３に記載の音声認識システム。
【請求項５】
前記類似度計算部は、話題毎に定められ話題毎の優先度に対応する所定の優先度数値を予め記憶し、前記類似度を計算する際に話題毎に前記優先度数値を加味する、
ことを特徴とする請求項３または請求項４に記載の音声認識システム。
【請求項６】
言語表現の出現頻度の特徴を表わす話題特徴量データを話題毎に記憶する話題特徴量記憶部と、
音声認識装置から出力された音声認識結果データに基づいて前記音声認識結果データに含まれる言語表現の出現頻度の特徴を表わすフィードバック特徴量データを生成するフィードバック特徴量生成部と、
前記フィードバック特徴量データと前記話題特徴量記憶部から読み出した前記話題特徴量データとに基づく類似度を計算するとともに、計算された前記類似度に基づいて前記音声認識結果データの話題を推定する類似度計算部と、
前記類似度計算部によって推定された前記話題に対応する言語モデルを使用して入力音声を音声認識処理するよう言語モデルを切り替える言語モデル切替制御部と、
を具備する言語モデル切替装置としてコンピューターを機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声認識処理に用いるための言語モデルを切り替える言語モデル切替装置およびそのプログラムに関する。
【背景技術】
【０００２】
従来技術による音声認識処理は、入力音声から音響特徴量の列を抽出し、その音響特徴量の列を元に、音響特徴量と音素との間の統計的関係を表す音響モデルと、単語等の言語表現の要素の列の条件付出現確率を表す言語モデルとを用いて、最尤の言語表現列（単語列等）を認識結果として出力する。このとき、言語モデルとしては、一般的な語彙に基づく言語モデルを使うこともでき、特定の話題（タスク）に適合する言語モデルを使うこともできる。
【０００３】
例えば、特許文献１には、複数のタスクの言語モデルを予め構築しておき、認識対象の音声の内容に応じて、それらのタスクの中から適切なタスクの言語モデルを選択し、音声認識の向上を図る構成が記載されている。また、特許文献１には、言語モデルを選択する手法として、カルバック(Ｋｕｌｌｂａｃｋ)のダイバージェンスを用いる方法が開示されている。
【０００４】
また、非特許文献１には、単語の出現確率に基づいて話題を推定する技術が記載されている。
また、非特許文献２には、音声認識結果のスコアに基づいて話題を推定する技術が記載されている。
また、特許文献２には、パープレキシティーの符号反転や逆数を用いて話題を推定する技術が記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第３２４０６９１号公報
【特許文献２】国際公開第２００８／００４６６６号パンフレット
【非特許文献】
【０００６】
【非特許文献１】Ian R. LANE，Tatsuya KAWAHARA，Tomoko MATSUI，Satoshi NAKAMURA,「Dialogue Speech Recognition by Combining Hierarchical Topic Classification and Language Model Switching」，IEICE transactions on information and systems E88-D(3)，pp. 446-454，2005-03-01，社団法人電子情報通信学会
【非特許文献２】磯部  俊洋，伊藤  克亘，武田  一哉，「複数の認識器を選択的に用いる音声認識システムのためのスコア補正法」，電子情報通信学会論文誌  Vol. J90-D，No. 7，pp. 1773-1780，２００７年，社団法人電子情報通信学会
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１では、言語モデルを選択する手法として、カルバック(Ｋｕｌｌｂａｃｋ)のダイバージェンスを用いる方法が開示されているのみである。このため、より精度の高い方法で言語モデルを選択することが求められる。
【０００８】
また、実世界のスピーチにおいては、話題は一定ではなく逐次移り変わっていく。例えば放送番組等においては、時事ニュースの後に、スポーツに関する話題、さらにその後に芸術に関する話題と、全く異なる話題に移り変わっていくこともある。例えば、このような放送番組において、リアルタイムに字幕を付与することを目的として番組音声の音声認識処理をするためには、その話題ごとに適切な言語モデルを用いて音声認識処理を行うことが求められる。
【０００９】
本発明は、上記の事情を考慮してなされたものであり、予め準備する必要のあるデータを最小限としながら、少ない計算量で入力音声の話題を高精度に推定し、また話題の変化にも追従しながら、話題の推定結果に応じた最適な言語モデルを選択することのできる言語モデル切替装置、およびそのプログラムを提供する。
【課題を解決するための手段】
【００１０】
［１］上記の課題を解決するため、本発明の一態様による言語モデル切替装置は、言語表現の出現頻度の特徴を表わす話題特徴量データを話題毎に記憶する話題特徴量記憶部と、音声認識装置から出力された音声認識結果データに基づいて前記音声認識結果データに含まれる言語表現の出現頻度の特徴を表わすフィードバック特徴量データを生成するフィードバック特徴量生成部と、前記フィードバック特徴量データと前記話題特徴量記憶部から読み出した前記話題特徴量データとに基づく類似度を計算するとともに、計算された前記類似度に基づいて前記音声認識結果データの話題を推定する類似度計算部と、前記類似度計算部によって推定された前記話題に対応する言語モデルを使用して入力音声を音声認識処理するよう言語モデルを切り替える言語モデル切替制御部とを具備することを特徴とする。
【００１１】
この構成により、フィードバック特徴量生成部は、音声認識装置から出力される音声認識結果データを元に、逐次、フォードバック特徴量データを生成する。そして、類似度計算部は、逐次、フォードバック特徴量データと話題特徴量データとに基づいて類似度を計算する。類似度計算部は、類似度の高い話題を、そのときの音声認識結果データが属する話題として推定する。これにより、言語モデル切替装置は、入力音声を認識するために用いる言語モデルとして、逐次、話題にあった言語モデルを選択することができる。また、入力音声が、その推定された話題に対応する言語モデルを用いて認識処理されるよう、言語モデルの切替制御を行う。
【００１２】
［２］また、本発明の一態様は、上記の言語モデル切替装置において、話題毎の学習テキストを記憶する学習テキスト記憶部と、前記学習テキスト記憶部から読み出した前記学習テキストに含まれる前記言語表現をカウントすることによって言語表現毎の出現頻度を算出する話題特徴量生成部と、前記話題特徴量生成部が算出した言語表現毎の出現頻度に、言語表現ごとのＩＤＦ値を反映させ、ＩＤＦ値反映済の出現頻度に基づく前記話題特徴量データを前記話題特徴量記憶部に書き込むＩＤＦ反映部とをさらに具備するものである。
【００１３】
言語表現とは、例えば単語など、文等を構成する所定の単位である。
ＩＤＦ値を反映させる具体的な方法として、例えば、言語表現毎の出現頻度の数値に、ＩＤＦ値を乗算する。ＩＤＦ値を反映させることにより、各話題に共通するありふれた言語表現（典型的には、助詞や助動詞など）の出現頻度が相対的に特徴量に大きな影響を与えることがなくなる。
【００１４】
［３］また、本発明の一態様は、話題毎の言語モデルを記憶する言語モデル記憶部を備え、前記言語モデル切替制御部によって切り替えられた言語モデルを用いて前記入力音声の音声認識処理を行い、前記音声認識結果データを出力する音声認識装置と、上記の言語モデル切替装置とを具備して構成される音声認識システムである。
【００１５】
［４］また、本発明の一態様は、上記の音声認識システムにおいて、前記音声認識装置から出力される前記音声認識結果データを修正する修正装置をさらに具備し、前記修正装置によって修正された音声認識結果データを出力するとともに、前記フィードバック特徴量生成部は、前記修正装置によって修正された音声認識結果データに基づいて前記フィードバック特徴量データを生成するものである。
【００１６】
修正装置を設けることにより、より一層、音声認識の精度が上がり、ひいては話題推定の精度が上がる。よって、入力音声にマッチした適切な言語モデルを選択することとなる。
【００１７】
［５］また、本発明の一態様は、上記の音声認識システムにおいて、前記類似度計算部は、話題毎に定められ話題毎の優先度に対応する所定の優先度数値を予め記憶し、前記類似度を計算する際に話題毎に前記優先度数値を加味するものである。
【００１８】
優先度数値は、例えば、話題毎の定数として予め設定される。そして例えば、類似度計算部は、類似度を計算する際に、フィードバック特徴量と話題特徴量とで所定の演算を行った結果に、この優先度数値を加算して類似度とする。フィードバック特徴量と話題特徴量がそれぞれ言語表現の出現頻度を表わすベクトルであるとき、例えば、類似度計算部は、両ベクトルのコサイン類似度の値にこの優先度数値を加算して類似度とする。
【００１９】
［６］また、本発明の一態様は、言語表現の出現頻度の特徴を表わす話題特徴量データを話題毎に記憶する話題特徴量記憶部と、音声認識装置から出力された音声認識結果データに基づいて前記音声認識結果データに含まれる言語表現の出現頻度の特徴を表わすフィードバック特徴量データを生成するフィードバック特徴量生成部と、前記フィードバック特徴量データと前記話題特徴量記憶部から読み出した前記話題特徴量データとに基づく類似度を計算するとともに、計算された前記類似度に基づいて前記音声認識結果データの話題を推定する類似度計算部と、前記類似度計算部によって推定された前記話題に対応する言語モデルを使用して入力音声を音声認識処理するよう言語モデルを切り替える言語モデル切替制御部とを具備する言語モデル切替装置としてコンピューターを機能させるプログラムである。
【発明の効果】
【００２０】
本発明によれば、話題推定の精度を向上させ、適切な言語モデルに切り替えることができる。これにより、音声認識装置における音声認識の精度が向上する。
【００２１】
例えば、放送番組のリアルタイム字幕付与に、このような音声認識システムを用いることにより、字幕データ生成の精度が向上する。また、学習が容易で、かつ、少ない計算量で高速に話題推定結果を出力できるようにすることが可能となる。
【図面の簡単な説明】
【００２２】
【図１】本発明の第１の実施形態による言語モデル切替装置の機能構成を示すブロック図である。
【図２】同実施形態による話題ベクトル記憶部が記憶するデータの構成例を示す概略図である。
【図３】同実施形態によるＩＤＦ記憶部が記憶するデータの構成例を示す概略図である。
【図４】同実施形態による言語モデル切替の処理手順を示すフローチャートである。
【図５】同実施形態による言語モデル切替装置を用いて構成した音声認識システムの機能構成を示すブロック図である。
【図６】同実施形態による音声認識装置内部の機能構成を示すブロック図である。
【図７】本発明の第２の実施形態による音声認識システムの機能構成を示すブロック図である。
【図８】同実施形態における修正装置の機能構成を示すブロック図である。
【図９】本発明の第３の実施形態による言語モデル切替装置の機能構成を示すブロック図である。
【発明を実施するための形態】
【００２３】
［第１の実施形態］
次に、図面を参照しながら、本発明の実施形態について説明する。
本実施形態は話題別に適応化された、複数個の言語モデルが用意されている場合において、音声認識結果を利用して現在進行中の話題を推定し、その話題にマッチした言語モデルに逐次切り替える機能を持つ。そのために、認識結果内で観測された単語出現頻度の分布に基づくベクトルと、言語モデルの適応に用いた話題別の学習テキスト内で観測された単語出現頻度の分布に基づくベクトルの類似度を利用することによって逐次話題を推定する。また、前記のベクトルにＩＤＦ（Inverse document frequency）値を乗ずることによって、話題に依存しない助詞等の影響を抑制し、話題推定精度を高める。
【００２４】
図１は、第１の実施形態による言語モデル切替装置の機能構成を示すブロック図である。図示するように、言語モデル切替装置１は、フィードバックベクトル生成部２１（フィードバック特徴量生成部）と、類似度計算部２２と、言語モデル切替制御部２３と、話題ベクトル記憶部２４（話題特徴量記憶部）と、ＩＤＦ記憶部２５と、話題ベクトル学習部３０とを含んで構成される。話題ベクトル学習部３０は、さらに、学習テキスト記憶部３１と、話題ベクトル生成部３２（話題特徴量生成部）と、ＩＤＦ乗算部３３（ＩＤＦ反映部）とを含んで構成される。なお、ＩＤＦは、Inverse Document Frequencyの略であり、逆文書頻度を表す。
【００２５】
フィードバックベクトル生成部２１は、音声認識装置から出力された音声認識結果データに基づいて音声認識結果データに含まれる単語（言語表現）の出現頻度の特徴を表わすフィードバックベクトル（フィードバック特徴量データ）を生成する。
類似度計算部２２は、フィードバックベクトル生成部２１が生成したフィードバックベクトルと、話題ベクトル記憶部２４から読み出した話題ベクトルとに基づく類似度を計算するとともに、計算された類似度に基づいて音声認識結果データの話題を推定する。
言語モデル切替制御部２３は、類似度計算部２２によって推定された話題に対応する言語モデルを使用して入力音声を音声認識処理するよう言語モデルを切り替える制御を行う。
【００２６】
話題ベクトル記憶部２４は、単語（言語表現）の出現頻度の特徴を表わす話題ベクトル（話題特徴量データ）を話題毎に記憶する。
ＩＤＦ記憶部２５は、単語ごとのＩＤＦ値を予め記憶しておく。
【００２７】
話題ベクトル学習部３０は、話題毎に準備した学習テキストを用いて、話題推定用に用いられる話題ベクトルを生成する。
【００２８】
学習テキスト記憶部３１は、話題毎の学習テキストを記憶する。
話題ベクトル生成部３２は、学習テキスト記憶部３１から読み出した学習テキストに含まれる単語等の言語表現をカウントすることによって言語表現毎の出現頻度（話題特徴量データ）を算出する。
ＩＤＦ乗算部３３は、話題ベクトル生成部３２が算出した言語表現毎の出現頻度に、言語表現ごとのＩＤＦ値を反映させ、ＩＤＦ値反映済の出現頻度に基づく話題ベクトル（話題特徴量データ）を話題ベクトル記憶部２４に書き込む。
【００２９】
なお、話題ベクトル学習部３０の処理は、音声認識の準備の段階で事前に行うものである。そして、この準備が完了して、話題ベクトル記憶部２４に話題ベクトルの情報が書き込まれた後、音声認識の実行中に、フィードバックベクトル生成部２１と類似度計算部２２と言語モデル切替制御部２３の処理をオンラインで実行するものである。
【００３０】
まず、話題ベクトル学習部３０の処理について説明する。
学習テキスト記憶部３１は、学習に使用するための大量のテキストを記憶する。これらのテキストは、Ｍ個の話題別に分類されている。
【００３１】
話題ベクトル生成部３２は、学習テキスト記憶部３１から話題ごとにテキストを読み出し、それぞれの話題のテキストにおける単語（言語表現）の出現頻度（ユニグラム，unigram）を算出する。具体的には、話題ベクトル生成部３２は、第ｍ番目(１≦ｍ≦Ｍ)の文書（話題）のテキストを読み込み、そのテキストに含まれる単語の出現頻度に基づき、ベクトルＵＮＩｍ＝（ｗｍ１，・・・，ｗｍｉ，・・・，ｗｍＶ）を生成する。ｗｍｉは、Ｍ個の文書において出現頻度の高い単語上位Ｖ個のうちの、第ｉ位の単語の、第ｍ番目の文書における出現頻度である。Ｖの値は、学習テキストのサイズに応じて適宜決定すればよいが、例えば、Ｖ＝１００００とする。これにより、話題ベクトル生成部３２は、Ｍ個のベクトルＵＮＩ１，ＵＮＩ２，・・・，ＵＮＩＭを生成する。
【００３２】
ＩＤＦ乗算部３３は、話題ベクトル生成部３２が生成したベクトルの各要素に、ＩＤＦ値を乗算する。ＩＤＦ値は、次の式（１）によって計算される値である。
【００３３】
【数１】
2013050605.tif 000003
【００３４】
なお、式（１）において、Ｍは総文書数、ｗは単語、ｄｆ（ｗ）はＭ個の文書のうち単語ｗが出現する文書数である。そして、ＩＤＦ（ｗ）は、単語ｗのＩＤＦ値である。但し、単語ｗがどの文書にも出現しない場合は、ｄｆ（ｗ）＝０とする代わりに、１未満の適切な数値をｄｆ（ｗ）の値として使用する。なお、ＩＤＦ乗算部３３は、単語毎のＩＤＦ値を予め記憶しているＩＤＦ記憶部２５から、必要な単語のＩＤＦ値を読み出して使用する。
【００３５】
ＩＤＦ記憶部２５は、一例としては、単語と、その単語のＩＤＦ値を対応付けた表形式のデータを記憶する。学習テキストが与えられれば、上記の式（１）によって、各単語のＩＤＦ値を計算することが可能である。不図示のＩＤＦ値計算部が、予め各単語のＩＤＦ値を計算し、ＩＤＦ記憶部２５に書き込んでおくようにする。
【００３６】
上記のように、話題ベクトル生成部３２が生成したベクトルのそれぞれの要素に、ＩＤＦ乗算部３３がＩＤＦ値の乗算を行う。ＩＤＦ乗算部３３は、ＩＤＦ値を乗算した結果である、Ｍ個のベクトルＵＮＩ１，ＵＮＩ２，・・・，ＵＮＩＭを、話題ベクトル記憶部２４に書き込む。
【００３７】
図２は、話題ベクトル記憶部２４が記憶するデータの構成例を示す概略図である。図示するように、このデータは、表形式のデータであり、話題番号と話題ベクトルとを対応付けたものである。例えば、図示するデータ例の第１行目は、話題番号１に対応して、話題ベクトルＵＮＩ１を格納している。図示するデータ例における表は、Ｍ行からなり、各行はＭ個の話題の各々に対応している。
【００３８】
図３は、ＩＤＦ記憶部２５が記憶するデータの構成例を示す概略図である。図示するように、このデータは、表形式のデータであり、単語とその単語のＩＤＦ値とを対応付けたものである。例えば、図示するデータの第１行目は、第１番目の単語ｗ（１）と、その単語のＩＤＦ値であるＩＤＦ１とを対応付けて格納している。図示するデータ例では、表の行数はＶ行であるが、さらにこれら以外の単語についても、単語とＩＤＦ値のペアを記憶させるようにしても良い。
【００３９】
図１に戻り、フィードバックベクトル生成部２１は、音声の認識結果を取り込み、この認識結果に基づくフィードバックベクトルＸｍｉを生成する。なお、言語モデル切替装置１と、音声認識結果を出力する音声認識装置との関係については、後述する。具体的には、フィードバックベクトル生成部２１は、入力音声の第ｉ番目の発話Ｓｉの終端前に出力されたＮ単語を元に、単語の出現頻度（ユニグラム頻度）をカウントし、先に生成されている話題ベクトルにおける単語順と同じ単語順で、フィードバックベクトルＸｍｉを生成する。なお、この単語数Ｎは、適宜決定すれば良いが、例えば４０とする。また、話題ベクトルＵＮＩｍを生成したときと同様に、フィードバックベクトル生成部２１は、ＩＤＦ記憶部２５から読み出した単語毎のＩＤＦ値を、生成するベクトルＸｍｉの対応する要素に乗算する。
【００４０】
類似度計算部２２は、話題ベクトル記憶部２４から読み出す話題ベクトルＵＮＩｍ（１≦ｍ≦Ｍ）の各々と、フィードバックベクトル生成部２１から渡されるフィードバックベクトルＸｍｉとの間の類似度ｓｉｍ（ＵＮＩｍ，Ｘｍｉ）を計算する。そして、この類似度を最大にするｍが、発話Ｓｉが属する話題であると推定し、その話題番号を出力する。
【００４１】
つまり、類似度計算部２２が推定する話題番号ｍｉ（ハット）は、下の式（２）によって表される。
【００４２】
【数２】
2013050605.tif 000004
【００４３】
なお、式（２）において、αｍは、言語モデルの優先度を制御可能とするためのパラメータ（優先度数値）であり、αｍ（１≦ｍ≦Ｍ）の値を予め設定してメモリに記憶させるようにしておく。つまり、類似度計算部２２は、話題毎に定められ話題毎の優先度に対応する所定の優先度数値を予め記憶し、類似度を計算する際に話題毎に優先度数値を加味する。なお、言語モデルの優先度を用いず、全ての話題を平等に扱う場合には、単にαｍの値を全て等しくすれば良い。また、類似度を計算する方法は様々であるが、一例としては、コサイン類似度（コサイン尺度）を用いる。コサイン類似度は、下の式（３）で計算される。
【００４４】
【数３】
2013050605.tif 000005
【００４５】
なお、式（３）において、ＵＮＩｍ・Ｘｍｉは、ベクトルＵＮＩｍとＸｍｉの内積である。
【００４６】
言語モデル切替制御部２３は、類似度計算部２２によって出力された番号ｍｉ（ハット）を用いて、入力音声を、どの言語モデルを使用した音声認識装置に振り向けるかを切り替える制御を行う。つまり、言語モデル切替制御部２３は、認識結果のフィードバックに基づいて推定された話題に適合する音声認識装置に、入力音声を仕向ける制御を行う。そして、ここで選択された音声認識装置が入力音声中の次の発話の認識処理を行う。
【００４７】
図４は、言語モデル切替の処理手順を示すフローチャートである。このフローチャートに沿って、言語モデル切替装置１の動作について説明する。
ステップＳ１において、フィードバックベクトル生成部２１は、外部の音声認識装置から、認識結果を受信する。
ステップＳ２において、フィードバックベクトル生成部２１は、受信した認識結果に置いて発話終端（ポーズ）が検出されたか否かを判断する。発話終端が検出された場合には次のステップＳ３に進み、その他の場合にはさらに認識結果を受信するためにステップＳ１に戻る。
【００４８】
ステップＳ３においては、フィードバックベクトル生成部２１は、認識結果のうち、最新のＮ単語を、一時的にメモリに格納する。
ステップＳ４において、フィードバックベクトル生成部２１は、メモリに格納したＮ単語に基づいて、各単語（上位Ｖ単語）のユニグラム頻度をカウントする。
また、ステップＳ５において、フィードバックベクトル生成部２１は、カウントしたユニグラム頻度の値の各々に、その単語のＩＤＦ値をＩＤＦ記憶部２５から読み出し、乗算する。この処理で生成されたフィードバックベクトルを、フィードバックベクトル生成部２１は類似度計算部２２に渡す。
【００４９】
そして、ステップＳ６において、類似度計算部２２は、フィードバックベクトル生成部２１から渡されたフィードバックベクトルと、話題ベクトル記憶部２４から読み出す各話題の話題ベクトルとの間の類似度を計算する。そして、類似度に基づいて、認識結果にマッチしている話題を決定する。この際には、式（２）で既に説明した話題ごとの優先度に対応する値αｍをも反映させる。そして、選択する言語モデルの番号を出力する。また、類似度計算部によって出力された言語モデルの番号に従って、言語モデル切替制御部２３は、使用する言語モデルを切り替える制御を行う。
【００５０】
ステップＳ７において、フィードバックベクトル生成部２１は、次の発話があるか否かを判断する。発話がある場合にはステップＳ１に戻り、次の発話についての処理を行う。発話がない場合にはこのフローチャート全体の処理を終了する。
【００５１】
図５は、言語モデル切替装置１を適用した音声認識システムの機能構成を示すブロック図である。図示するように、音声認識システム１００は、言語モデル切替装置１と、Ｍ個を並列に配置した音声認識装置７−１〜７−Ｍを含んで構成される。音声認識装置７−１〜７−Ｍは、それぞれ話題に対応しており、それぞれが異なる言語モデルを内部に保持している。また、図示する例では、入力音声はテレビ放送等の音声であり、そして、音声認識システム１００が出力する認識結果のデータを用いて、字幕データ生成装置５００がその放送用の字幕データをリアルタイムに作成する。字幕データ生成装置５００が生成した字幕データは、入力音声信号や映像信号とともに符号化され、不図示の送信装置から放送信号として送信される。
【００５２】
音声認識システム１００において、音声認識装置７−１〜７−Ｍのうちの選択されたいずれかが一時点では稼動する。そして、言語モデル切替装置１は、稼動している音声認識装置から、認識結果のデータをフィードバックとして受け入れる。言語モデル切替装置１は、前述の処理によりフィードバックベクトルを生成し話題を推定するとともに、推定結果に基づいて入力音声を振り向ける先の言語モデルを切り替える。つまり、言語モデル切替装置１は、入力音声が音声認識装置７−１〜７−Ｍのいずれかに入力されるように切り替える。音声の入力を受けた音声認識装置は、その装置に固有の言語モデルを用いて音声認識処理を行い、認識結果を出力する。
【００５３】
図６は、音声認識装置７−１の内部の機能構成を示すブロック図である。図示するように、音声認識装置７−１は、音響分析部７１と、正解単語探索部７２と、音響モデル記憶部７７と、言語モデル記憶部７８−１とを含んで構成される。言語モデル記憶部７８−１は、第１番目の話題に対応する言語モデルを記憶している。
【００５４】
音響分析部７１は、入力音声のパワーや周波数特性などの音響特徴量を抽出する。音響特徴量の一例としては、メル周波数ケプストラム（ＭＦＣＣ）を用いる。正解単語探索部は、音響特徴量の列（時系列）を入力として、音響モデル記憶部７７から読み出す音響モデルおよび言語モデル記憶部７８−１から読み出す言語モデルを用いて、正解単語を探索し、統計的な処理の結果として、最尤単語列を認識結果のデータとして出力する。なお、音響モデルは、音響特徴量と音素との間の統計的確率などの数値を含む。また、言語モデルは、大量のテキストを用いて学習される統計モデルであり、実体は、単語の出現確率や単語どうしの接続確率などの数値をテーブル化したデータベースである。言語モデルのフォーマットの一例としては、ＡＲＰＡ形式を用いる。この形式を用いることにより、元のテキストを統計的に解析して得られるＮグラム（n-gram）の出現確率を参照できることに加えて、元のテキストに現れなかったＮグラムの出現確率を、（Ｎ−１）グラムから推定することもできる。
【００５５】
なお、音声認識処理７−２〜７−Ｍの構成も、言語モデルの内容を除いては、音声認識処理７−１と同様である。音声認識処理７−２〜７−Ｍの各々において、言語モデル記憶部は、それぞれの話題に応じた言語モデルを記憶している。そして音声認識処理７−２〜７−Ｍの各々は、その言語モデルを利用して、入力音声の認識処理を行い、認識結果のデータを出力する。
【００５６】
つまり、音声認識システム１００においては、各音声に錦装置が話題毎の言語モデルを記憶する言語モデル記憶部を備え、言語モデル切替制御部２３によって切り替えられた言語モデルを用いて入力音声の音声認識処理を行い、音声認識結果データを出力する。
これにより、話題推定の精度および音声認識の精度が向上する。従って、字幕データ生成装置５００が生成する字幕データの精度も上がる。これにより、字幕データ生成の際に人手による修正等を削減できる。
【００５７】
［第２の実施形態］
次に、第２の実施形態について説明する。図７は、本実施形態による音声認識システムの機能構成を示すブロック図である。図示するように、音声認識システム２００は、修正装置９を含んで構成されている。そして、音声認識装置７−１〜７−Ｍから出力される認識結果を、この修正装置９が修正し、音声認識システム２００は、修正済みの認識結果データを出力する。そして、字幕データ生成装置５００は、この修正済みの認識結果を取り込んで字幕データの生成を行う。また、言語モデル切替装置１は、修正装置９からの出力である修正済み認識結果を取り込み、この修正済み認識結果のデータに基づいて前述したフィードバックベクトルの生成処理を行う。音声認識システム２００のその他の構成は、図５により説明した音声認識システム１００と同様である。
【００５８】
図８は、修正装置９の機能構成を示すブロック図である。図示するように、修正装置９は、認識結果受信部９１０と、認識結果記憶部９２０（認識結果単語列データ記憶部）と、テキスト記憶部９３０と、テキストＮグラム取得部９４０と、テキストＮグラム記憶部９５０（テキスト単語列データ記憶部）と、テキスト区間推定部９６０と、誤り修正部９８０と、テキスト出力部９９０とを備えて構成される。
【００５９】
認識結果受信部９１０は、音声認識装置７−１，７−２，・・・，７−Ｍのうち、そのとき選択されて稼動しているものから音声認識結果を逐次受信して認識結果記憶部９２０に書き込む。なお、認識結果受信部９１０は、音声認識結果を単語単位で受信し、受信した単語を逐次、認識結果記憶部９２０に書き込む。
認識結果記憶部９２０は、認識結果受信部９１０が受信した音声認識結果に基づいて得られる認識結果Ｎグラム（認識結果単語列データ）を記憶する。
【００６０】
テキスト記憶部９３０は、予め与えられるテキストデータを記憶する。
テキストＮグラム取得部９４０は、テキスト記憶部９３０に記憶されているテキストデータを元に、テキストＮグラム（テキスト単語列データ）を取得し、テキストＮグラム記憶部９５０に書き込む。
テキストＮグラム記憶部９５０は、テキストデータに基づいて得られるテキストＮグラムを記憶する。
テキスト区間推定部９６０は、認識結果記憶部９２０に書き込まれた認識結果Ｎグラムの長さ（単語数）が予め定められた所定値Ｎ（Ｎは正整数）以上であるか否かを判定するとともに、その長さがＮ以上であると判定されると、テキストＮグラム記憶部９５０に記憶されている複数のテキストＮグラムのそれぞれと、長さＮの認識結果Ｎグラムとのマッチング処理を行って、そのテキストＮグラムと認識結果Ｎグラムとの間の類似度を算出し、算出された類似度に基づいて、類似度の高いテキストＮグラムを修正候補として選択する。
【００６１】
誤り修正部９８０は、認識結果記憶部９２０に記憶された認識結果Ｎグラム内における、テキスト区間推定部９６０によって修正候補として選択されたテキストＮグラムとの間の不一致区間について、選択された修正候補であるテキストＮグラムに基づく修正を行う。つまり、誤り修正部９８０は、認識結果の誤りと推定された部分を、テキストＮグラムを用いて修正する。また、そのテキストＮグラムは与えられたテキストデータから取得されたものであるので、誤り修正部９８０は、つまり、テキストデータの中のテキスト区間推定部９６０によって推定された区間を用いて認識結果を修正する。
【００６２】
テキスト出力部９９０は、認識結果記憶部９２０に記憶されている認識結果Ｎグラムのうちの前方の少なくとも一部分（例えば、単語数が（Ｎ／２）に相当する部分）を出力するとともに、その認識結果Ｎグラムのうち出力した部分を認識結果記憶部９２０から削除する。
【００６３】
テキスト記憶部９３０が記憶するテキストデータは、放送番組の台本から起こしたテキストデータや、放送番組の電子的台本データのテキストや、ニュース番組で使用するニュース原稿のテキストデータなどといったデータである。これらの各テキストファイルは、ファイル名などによってコンテンツＩＤと関連付けられている。
【００６４】
テキストＮグラム記憶部９５０が記憶するデータは、表形式のデータであり、コンテンツＩＤとＮグラムＩＤとテキストＮグラムとを互いに関連付けたデータである。
認識結果記憶部９２０が記憶する認識結果データは、単語毎に区切られて保持されている。認識結果記憶部９２０は、ＦＩＦＯ（First-in, First-out）式に、単語列の前から順に削除（つまり先に書き込まれた単語から先に削除）できるように構成されている。
【００６５】
修正装置９の動作は次に述べる通りである。
まず予め、テキスト記憶部９３０のデータを元に、テキストＮグラムを生成する。
具体的には、テキストＮグラム取得部９４０は、テキスト記憶部９３０からテキストを読み込む。このテキストは、前述の通り、放送番組の台本や、ニュース番組の原稿であり、発話の情報源となるテキストである。そして、テキストＮグラム取得部４０は、読み込んだテキストに対して形態素解析処理を行う。そして、その結果、単語単位に分割されたテキストを得る。さらにテキストＮグラム取得部９４０は、単語単位に分割されたテキストを元に、単語Ｎグラムを取得する。ここで、単語Ｎグラムの長さは、予め設定されており、例えば長さ４とする。具体的には、テキストＮグラム取得部９４０は、当該テキストに関して、第１単語から始まるＮグラム、第２単語から始まるＮグラム（以下同様）を順次取得する。また、テキストＮグラム取得部９４０は、得られたＮグラムの各々にＮグラムＩＤを付与する。ＮグラムＩＤとしては、例えば、１から始まる整数値を順次用いる。そして、テキストＮグラム取得部９４０は、各テキストＮグラムの出現順に、ＮグラムＩＤを付与する。つまりＮグラムＩＤは、コンテンツごとに、元のテキストデータにおけるそのテキストＮグラムの位置を表わす。また、テキストＮグラム取得部９４０は、ＮグラムＩＤと単語Ｎグラムとを関連付けて、テキストＮグラム記憶部９５０に書き込む。
【００６６】
なお、テキスト記憶部９３０が複数のコンテンツのテキストを記憶する場合には、テキストＮグラム取得部９４０は、それらのコンテンツの各々について、上述した、テキストＮグラム抽出の処理を行う。
【００６７】
そして、修正装置９は、認識結果データを受信し、その認識結果データを修正する処理を行う。
具体的には、認識結果受信部９１０が、音声認識装置から認識結果のデータを受信する。認識結果受信部９１０は、単語単位で、あるいは所定数のまとまった単語の単位で、その単語列のデータを受信する。そして、認識結果受信部９１０は、受信したデータを逐次、認識結果記憶部９２０に書き込む。
【００６８】
テキスト区間推定部９６０は、認識結果記憶部９２０に所定の長さの単語列（Ｎ単語）が既に格納されているか否かを判断する。ここで所定の長さＮとは、予め設定された長さであり、例えばＮ＝４である。なお、ここで認識結果記憶部９２０から取り出す単語の長さと、テキストＮグラム取得部９４０が取得した単語Ｎグラムの長さとは、等しい。具体的には、認識結果記憶部９２０は前述の通りＦＩＦＯとして構成されているので、テキスト区間推定部９６０は、そのＦＩＦＯの先頭からの単語数が所定の長さ以上であるか否かを判断する。そして、所定の長さの単語列が既に格納されている場合には、テキスト区間推定部９６０は、認識結果記憶部９２０から先頭のＮ単語の列を読み出す。なお、この読み出された単語列を、便宜上、認識結果Ｎグラムと呼ぶ。そして、テキスト区間推定部９６０は、この認識結果Ｎグラムと、テキストＮグラム記憶部９５０に記憶されている当該コンテンツのテキストＮグラムとの間で、ＤＰ（Dynamic Programming，動的計画法）マッチングの処理を行う。テキスト区間推定部９６０は、このＤＰマッチングの処理により、認識結果Ｎグラムと各々のテキストＮグラムとの間の類似度を算出する。具体的には、テキスト区間推定部９６０は、マッチング対象の両Ｎグラムに基づき、一致精度、一致率、脱落率、挿入率、編集距離などといった数値のいずれかを算出し、これに基づき類似度として用いる。なお、一致精度または一致率を用いる場合には、これらの数値が大きいほど、類似度が高い（より類似している）ことを表す。また、脱落率や挿入率や編集距離を用いる場合には、これらの数値が小さいほど、類似度が高い（より類似している）ことを表す。
【００６９】
なお、複数のコンテンツＩＤに相当するテキストＮグラムがテキストＮグラム記憶部５０に記憶されている場合、テキスト区間推定部９６０がマッチングの対象とするテキストＮグラムのコンテンツＩＤは、適宜与えられる。例えば、利用者が選択したコンテンツのＩＤをテキスト区間推定部９６０に渡すようにしても良いし、前回までのマッチングにおいて類似度の高いテキストＮグラムが属するコンテンツを現在のコンテンツと推定するようにしても良い。
【００７０】
次に、テキスト区間推定部９６０は、上で求めた類似度に基づき、ひとつのテキストＮグラムを修正候補単語列として選択しメモリに一時的に格納する。ここでテキスト区間推定部６０が選択するテキストＮグラムは、現在対象としている認識結果Ｎグラムとの間で最も類似度の高いテキストＮグラムである。そして、選択されメモリに格納されたテキストＮグラムについて、テキスト区間推定部９６０は、類似度が所定の閾値よりも高いか否かを判定する。なお、この類似度に関する閾値は、予め設定される。
【００７１】
このテキストＮグラムと認識結果Ｎグラムとの間の類似度が所定の閾値よりも高い場合には、誤り修正部９８０は、メモリに格納されたテキストＮグラムを用いて、認識結果Ｎグラムの修正を行なう。具体的には、誤り修正部９８０は、上のＤＰマッチング処理の結果に基づき、認識結果Ｎグラムと選択されたテキストＮグラムとの間の不一致区間を抽出し、不一致区間において置換と判定された単語の部分を修正する。例えば、認識結果Ｎグラムが「京都市−の−河浦−市長」で、選択されたテキストＮグラムが「京都市−の−川村−市長」の場合、ＤＰマッチング処理においては「河浦」と「川村」が対応し、これらの両単語は置換関係である。従って、誤り修正部９８０は認識結果記憶部２０に記憶されている認識結果Ｎグラム内の「河浦」を「川村」に変更する修正を行なう。
類似度が所定の閾値よりも高くない場合には、このような修正処理を行わない。
【００７２】
そして、テキスト出力部９９０が、認識結果記憶部９２０に記憶されている認識結果Ｎグラムのうち、前の半分の単語列に相当するテキストを出力する。例えば、単語列の長さＮが４の場合、テキスト出力部９９０は、前半の２単語に相当する分を出力する。つまり、誤り修正部９８０がその部分を修正している場合には、修正済みのテキストがテキスト出力部９９０によって出力される。そして、テキスト出力部９９０は、出力済みの単語列を認識結果記憶部９２０から削除する。この処理は、テキスト出力部９９０が全体の単語長の半分だけ認識結果Ｎグラムを前にシフトすることと同等である。
【００７３】
以上の一連の処理が終わると、また、さらなる音声認識結果のデータを受信し、必要な修正処理を繰り返す。
このように、修正装置９は、認識結果データに含まれる誤りを訂正し、精度の高い認識結果データを出力する。
【００７４】
［第３の実施の形態］
次に、第３の実施形態について説明する。図９は、本実施形態による言語モデル切替装置の機能構成を示すブロック図である。図示するように、言語モデル切替装置２は、フィードバックベクトル生成部２１と、類似度計算部２２と、言語モデル切替制御部２３と、話題ベクトル記憶部２４と、ＩＤＦ記憶部２５とを含んで構成される。この言語モデル切替装置２は、図１により説明した言語モデル切替装置１と異なり、話題ベクトル学習部３０を有しない。しかしながら、予め行われた話題ベクトル学習処理によって生成された話題ベクトルを、既に話題ベクトル記憶部２４に記憶しているため、類似度計算部２２は、話題ベクトル記憶部２４から読み出す話題ベクトルと、フィードバックベクトル生成部２１から渡されるフィードバックベクトルとの間の類似度を計算できる。その他の点に関しては、この言語モデル切替装置２は、既に説明した言語モデル切替装置１と同様の構成を備えている。
【００７５】
この構成により、フィードバックベクトル生成部２１は、修正装置９によって修正された音声認識結果データをフィードバックとして受け入れ、この修正済みの音声認識結果データに基づいてフィードバックベクトルを生成する、これにより、より一層、話題推定の精度および音声認識の精度が向上する。
【００７６】
なお、上述した実施形態における言語モデル切替装置、音声認識装置、字幕データ生成装置の機能をコンピューターで実現するようにしても良い。その場合、これら機能を実現するためのプログラムをコンピューター読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピューターシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピューターシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【００７７】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【００７８】
例えば、上記の実施形態では、Ｍ個の音声認識装置７−１〜７−Ｍを設け、その各々が音響分析部７１と正解単語探索部７２と音響モデル記憶部７７と言語モデル記憶部（７８−１〜７８−Ｍ）とを備えるようにした。その代わりに、各音声認識装置のうち、音響分析部７１と正解単語探索部７２と音響モデル記憶部７７とを共用とし、言語モデル記憶部（７８−１〜７８−Ｍ）のみを切り替えるよう設計しても良い。
【００７９】
また例えば、修正装置９は、予め蓄えたテキストを用いて、音声認識結果を自動的に修正するように構成した。その代わりに、人が音声認識結果を目で見ながら手動ないしは半手動で、修正・編集するように修正装置を構成してもよい。
【００８０】
［実験による精度測定］
本発明の第１の実施形態による言語モデル切替装置を実際に構成し、その精度を測定した。また、比較対象として、従来技術（パープレキシティーの符号反転を用いたもの）による言語モデルの選択の精度も測定した。評価データとして、２０１０年９月から１０月に放送されたＮＨＫの情報番組「あさイチ」６番組分のリスピーク音声（５８ｋ単語）を利用した。リスピーク音声とは、番組音声を特定の話者が聞き取り、言い直して発声された音声である。
【００８１】
言語モデルとしては、大量の放送番組の書き起こし等（４１２Ｍ単語）によって学習した語彙サイズ９３ｋのトライグラム（trigram）モデルをベース（「Base」と呼ぶ）とし、さらに、線形補間によって、「一般」、「料理」、「園芸」という３つの話題に対応した３種類の言語モデルを構築した。これらの言語モデルを、それぞれ、「General」、「Cooking」、「Gardening」と呼ぶ。「General」は、番組毎の関連テキスト（平均１７ｋ単語）によって構築した言語モデルと「Base」を線形補間したものである。「Cooking」は、料理番組の放送済み字幕（６．３Ｍ単語）によって構築した言語モデルと「General」を線形補間したものである。「Gardening」は、園芸番組の放送済み字幕（０．５５Ｍ単語）によって構築した言語モデルと「General」を線形補間したものである。
【００８２】
なお、「料理」と「園芸」の話題に関連するテキストは、放送済みの字幕テキストを電子番組ガイド（ＥＰＧ）の分類区分を用いて分類し、これより話題ベクトルモデルを構築した。また、「一般」を推定するユニグラム（unigram）モデルについては、「Base」の学習テキストより構築した。なお、これらの語彙サイズＶは１０ｋとした。また、話題推定で用いる認識結果の単語数Ｎは４０とした。なお、各言語モデルの線形補間係数や、認識装置の優先度（式（２）におけるαｍ）は、開発用のデータを別途用意して音声認識精度が最大となるように決定した。
【００８３】
実験の結果、言語モデルの切り替え精度は次の通りとなった。料理の話題の区間においては、従来技術による精度が５８．２％、本発明による精度が８７．２％。園芸の話題の区間においては、従来技術による精度が６３．４％、本発明による精度が９０．６％。いずれも、従来技術よりも大きく改善されている。なお、一般の話題の区間に関しては、料理や園芸を含む多様な話題が一部混在していたため、評価対象から除外した。
【００８４】
また、音声認識精度（単語誤り率）は次の通りとなった。一般の話題の区間においては、従来技術による単語誤り率が９．４％、本発明による単語誤り率が９．１％。料理の話題の区間においては、従来技術による単語誤り率が１０．２％、本発明による単語誤り率が９．８％。園芸の話題の区間においては、従来技術による単語誤り率が７．２％、本発明による単語誤り率が５．４％。全体の区間においては、従来技術による単語誤り率が９．６％、本発明による単語誤り率が９．３％。
【００８５】
上記のように、実験により、本発明の効果が確認された。
【産業上の利用可能性】
【００８６】
本発明は、音声認識処理全般に広く利用可能である。特に、放送音声の自動認識に用いることもできる。さらに、特に、放送音声を自動認識して放送用の字幕データをリアルタイムにあるいは準リアルタイムに生成するシステムに利用することが可能である。
【符号の説明】
【００８７】
１，２  言語モデル切替装置
７−１，７−２，・・・，７−Ｍ  音声認識装置
９  修正装置
２１  フィードバックベクトル生成部（フィードバック特徴量生成部）
２２  類似度計算部
２３  言語モデル切替制御部
２４  話題ベクトル記憶部（話題特徴量記憶部）
２５  ＩＤＦ記憶部
３０  話題ベクトル学習部
３１  学習テキスト記憶部
３２  話題ベクトル生成部（話題特徴量生成部）
３３  ＩＤＦ乗算部（ＩＤＦ反映部）
１００，２００  音声認識システム
５００  字幕データ生成装置
【図１】
2013050605.tif 000006
【図２】
2013050605.tif 000007
【図３】
2013050605.tif 000008
【図４】
2013050605.tif 000009
【図５】
2013050605.tif 000010
【図６】
2013050605.tif 000011
【図７】
2013050605.tif 000012
【図８】
2013050605.tif 000013
【図９】
2013050605.tif 000014