(57)【要約】【課題】従来よりも認識誤りが低減される辞書を作成する辞書作成装置、及び辞書作成プログラムを提供する。【解決手段】音声認識に用いる複合語を新たな語彙として辞書に登録する辞書作成装置１００であって、統計的言語モデルおよび統計的音響モデルを用いて音声を音声認識し、正解候補単語列を生成する音声認識部２１と、正解単語列および前記正解候補単語列に含まれる単語２つ組の頻度を計数し、前記辞書に登録する複合語の複数の複合語候補を抽出する複合語頻度計数部２４と、各々の複合語候補を前記複合語とした場合におけるエントロピーを計算するエントロピー計算部２５と、前記エントロピーを最も減少させる複合語候補を選択する複合語選択部２６と、選択した複合語候補を前記辞書の新たな語彙として登録する言語モデル更新部２７とを備えることを特徴とする。【選択図】図１
2014219569.tif 000002
【特許請求の範囲】
【請求項１】
音声認識に用いる複合語を新たな語彙として辞書に登録する辞書作成装置であって、
音声とその音声を誤りなく文字化した正解単語列とが蓄積された音声言語資源記憶部と、
前記辞書、前記音声中の単語間のつながり度合いを示す統計的言語モデル、および前記音声中の単語と波形パターンとの関係を示す統計的音響モデルが記憶された記憶部と、
前記統計的言語モデルおよび前記統計的音響モデルを用いて前記音声を音声認識し、前記音声の正解候補の単語列を示す正解候補単語列を生成する音声認識部と、
前記正解単語列および前記正解候補単語列を発話時刻に合わせて整列する整列部と、
前記正解単語列および前記正解候補単語列に含まれる単語２つ組それぞれの頻度を計数し、前記計数した頻度の高さに応じて前記単語２つ組を前記辞書に登録する複合語の複数の複合語候補として抽出する複合語頻度計数部と、
前記複合語頻度計数部が抽出した複数の前記複合語候補を用いて、各々の複合語候補を前記複合語とした場合における前記音声の音声認識の難しさを示す指標であり、値が高い程に音声認識が難しいことを示すエントロピーを計算するエントロピー計算部と、
各々の複合語候補を前記複合語とした場合の前記エントロピーを最も減少させる複合語候補を選択する複合語選択部と、
前記複合語選択部が選択した複合語候補を前記辞書の新たな語彙として登録する辞書登録部と、
を備えることを特徴とする辞書作成装置。
【請求項２】
前記エントロピー計算部は、
前記統計的言語モデルにより得られる言語スコアと前記統計的音響モデルにより得られる音響スコアとを用いて前記エントロピーを計算する、
ことを特徴とする請求項１に記載の辞書作成装置。
【請求項３】
前記音声言語資源記憶部は、放送音声およびその正解単語列を逐次的に蓄積し、
前記辞書登録部は、複合語を新たな語彙として漸次登録する、
ことを特徴とする請求項１または請求項２に記載の辞書作成装置。
【請求項４】
音声認識に用いる複合語を新たな語彙として辞書に登録する辞書作成装置としてコンピュータを機能させる辞書作成プログラムであって、
前記コンピュータは、
音声とその音声を誤りなく文字化した正解単語列とが蓄積された音声言語資源記憶部と、前記辞書、前記音声中の単語間のつながり度合いを示す統計的言語モデル、および前記音声中の単語と波形パターンとの関係を示す統計的音響モデルが記憶された記憶部とを有し、
前記コンピュータを、
前記統計的言語モデルおよび前記統計的音響モデルを用いて前記音声を音声認識し、前記音声の正解候補の単語列を示す正解候補単語列を生成する音声認識手段と、
前記正解単語列および前記正解候補単語列を発話時刻に合わせて整列する整列手段と、
前記正解単語列および前記正解候補単語列に含まれる単語２つ組それぞれの頻度を計数し、前記計数した頻度の高さに応じて前記単語２つ組を前記辞書に登録する複合語の複数の複合語候補として抽出する複合語頻度計数手段と、
抽出した複数の前記複合語候補を用いて、各々の複合語候補を前記複合語とした場合における前記音声の音声認識の難しさを示す指標であり、値が高い程に音声認識が難しいことを示すエントロピーを計算するエントロピー計算手段と、
各々の複合語候補を前記複合語とした場合の前記エントロピーを最も減少させる複合語候補を選択する複合語選択手段と、
前記選択した複合語候補を前記辞書の新たな語彙として登録する辞書登録手段として機能させるための辞書作成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声認識で用いる辞書（語彙）を作成する辞書作成装置、及び辞書作成プログラムに関する。
【背景技術】
【０００２】
従来、音声認識では、ｎ−ｇｒａｍに代表される統計的言語モデルを用いて入力された音声から正解候補の単語列（正解候補単語列）を生成している。そして、統計的言語モデルでは、正解候補単語列の言語的な尤もらしさを計算している。また、統計的言語モデルの一つであるｎ−ｇｒａｍモデルでは、前接する単語列（文脈）に基づいて後続単語を予測することにより言語的な尤もらしさを計算している。
【０００３】
例えば、単語列ｗ＝ｗ１，ｗ２，ｗ３，ｗ４が与えられたとき、ｎ−ｇｒａｍモデルの一つであるバイグラムを用いた場合の単語列の尤もらしさは、以下の（式１）のように計算される。ここで、Ｐ（ｗ２｜ｗ１），Ｐ（ｗ３｜ｗ２），Ｐ（ｗ４｜ｗ３）がそれぞれバイグラムである。バイグラムの値は確率であり、大量のテキストデータから最尤法により推定される。
【０００４】
【数１】
2014219569.tif 000003
【０００５】
ここで、音声認識では、ｎ−ｇｒａｍに代表される統計的言語モデルにおける単語の予測しやすさを向上させるために、単語列中において連続する単語組を１つの複合語として連結し、連結した複合語を音声認識用の辞書（語彙）に登録することが行われている。前記の例でいえば、ｗ２，ｗ３をそれぞれ独立した１語として扱うのではなく、ｗｃ＝ｗ２，ｗ３のようにまとめて１語として扱うことに相当する。複合語ｗｃを用いた単語列ｗ´＝ｗ１，ｗｃ，ｗ４の尤もらしさは以下の（式２）のように計算できる。
【０００６】
【数２】
2014219569.tif 000004
【０００７】
Ｐ´（ｗ´）−Ｐ（ｗ）が正値（＞０）であれば、与えられた単語列が言語的により尤もらしいということになり、バイグラムによる単語予測精度が向上したとみなせる。ただし、Ｐ´（ｗ´）−Ｐ（ｗ）は常に正値であるとは限らず、複数の複合語の候補の中から、言語的な尤もらしさを向上させるように、複合語となる単語組を選択する必要がある。
【０００８】
従来、辞書に登録される複合語は、テキストデータから言語的な基準を用いて作成されている。複合語を作成する際の言語的な基準は、大きく分けて以下の２つが存在する。
［１］複合語を構成する単語組の頻度（出現頻度）による基準
［２］複合語を構成する前後でのエントロピーの差による基準
ここで、エントロピーとは、所与の言語モデルから計算される単語列の複雑さを示す指標、または、音声認識の難しさを示す指標である。エントロピーが高いほど、単語列の複雑さが増し、当該言語モデルによる音声認識が難しくなる。
【０００９】
これらは、いずれも旧来より複合語を構成するための基準として用いられているので、ここでは簡単に説明する。第１の基準（複合語を構成する単語組の頻度（出現頻度）による基準）によれば、テキストデータに数多く出現する単語列が、追加登録すべき複合語の候補として優先的に抽出される。また、第２の基準（複合語を構成する前後でのエントロピーの差による基準）によれば、複雑さの低い単語列（音声認識の容易な単語列）が、追加登録すべき複合語の候補として優先的に抽出される。
【００１０】
また、前記２つの基準を組み合わせて、高精度かつｎ−ｇｒａｍの予測性能が最も高くなるような単語の組を順次求める技術が提案されている（例えば、特許文献１及び非特許文献１参照）。その手順は、次に示す通りである。
【００１１】
〔１〕テキストデータにおける隣接する単語２つからなる組み（単語２つ組）の頻度を計算する。
〔２〕高頻度上位Ｍ個の単語２つ組を複合語候補として選択する。
〔３〕単語２つ組（複合語候補）を複合語とみなしたときのエントロピーと、複合語とみなさなかったときのエントロピーとを計算する。
手順〔３〕では、例えば、単語２つ組ｗａ，ｗｂとその前後の単語ｗ１，ｗ２とを考慮した、学習データ中に存在する単語４つ組（ｗ１，ｗａ，ｗｂ，ｗ２）を考える。この単語４つ組に対するエントロピーＨ１は、以下の（式３）により求められる。
【００１２】
【数３】
2014219569.tif 000005
【００１３】
ここで、すべての単語ｗ１，ｗａ，ｗｂ，ｗ２が同時に生起する同時分布Ｐ（ｗ１，ｗａ，ｗｂ，ｗ２）は、以下の（式４）により近似することができる。
【００１４】
【数４】
2014219569.tif 000006
【００１５】
一方、単語２つ組ｗａ，ｗｂを複合語ｗｃとみなした場合のエントロピーＨ２は、以下の（式５）により求められる。
【００１６】
【数５】
2014219569.tif 000007
【００１７】
また、同時分布Ｐ（ｗ１，ｗｃ，ｗ２）は、（式４）と同様に、以下の（式６）により近似することができる。
【００１８】
【数６】
2014219569.tif 000008
【００１９】
単語４つ組に対するエントロピーＨ１と単語２つ組ｗａ，ｗｂを複合語ｗｃとみなした場合のエントロピーＨ２との差ΔＨ（ｗｃ）≡Ｈ２−Ｈ１は、以下の（式７）として計算できる。
【００２０】
【数７】
2014219569.tif 000009
【００２１】
Ｍ個の単語２つ組の中から、以下の（式８）を満たすものを複合語とする。ここで、（式８）における「ａｒｇｍａｘ ｆ（ｔ）」は、変数ｔに関する関数ｆ（ｔ）に対して、ｆ（ｔ）が最大になる変数ｔを求めることを示す。以下、この手続きを所望の数の複合語が得られるまで繰り返す。
【００２２】
【数８】
2014219569.tif 000010
【先行技術文献】
【特許文献】
【００２３】
【特許文献１】特開２００７−１７１７２４号公報（段落００３２〜００５４、図２）
【非特許文献】
【００２４】
【非特許文献１】小林彰夫ほか、「対談音声のための複合語とクラスを利用した言語モデル」、日本音響学会講演論文集、２００６年３月、2-1-1、p.71-p.72
【発明の概要】
【発明が解決しようとする課題】
【００２５】
しかしながら、従来から用いられていた言語的な２つの基準や、特許文献１及び非特許文献１に記載されていたこの２つの基準の組み合わせは、ｎ−ｇｒａｍ等の言語モデルを推定するためのテキストデータから得られた統計量に基づいている。その為、従来技術は、音声認識のように入力音声から単語列を推定するようなアプリケーションに適しているとは限らない。
【００２６】
つまり、音声認識では、入力音声が与えられたとき、言語的な尤もらしさだけではなく、音響的な尤もらしさも考慮して音声認識結果を出力する。したがって、言語的な尤もらしさのみを考慮した従来技術では、音声認識性能を改善しうる複合語を作成できるとは限らない。これは、従来技術では、音声認識した際の予測単語の誤りやすさが考慮されていないことを意味する。
【００２７】
本発明はかかる点に鑑みてなされたものであって、音声認識の統計的言語モデルにおける単語の予測精度が向上し、従来の統計的言語モデルよりも認識誤りが低減される辞書作成装置、及び辞書作成プログラムを提供することを課題とする。
【課題を解決するための手段】
【００２８】
前記課題を解決するために本発明の一態様による辞書作成装置は、音声認識に用いる複合語を新たな語彙として辞書に登録する辞書作成装置であって、音声言語資源記憶部と、記憶部と、音声認識部と、整列部と、複合語頻度計数部と、エントロピー計算部と、複合語選択部と、辞書登録部とを備える構成とした。
【００２９】
この辞書作成装置は、音声言語資源記憶部に音声とその音声を誤りなく文字化した正解単語列とが蓄積される。また、辞書作成装置は、記憶部に前記辞書、前記音声中の単語間のつながり度合いを示す統計的言語モデル、および前記音声中の単語と波形パターンとの関係を示す統計的音響モデルが記憶される。
【００３０】
また辞書作成装置は、音声認識部が、前記統計的言語モデルおよび前記統計的音響モデルを用いて前記音声を音声認識し、前記音声の正解候補の単語列を示す正解候補単語列を生成する。次に、辞書作成装置は、整列部が前記正解単語列および前記正解候補単語列を発話時刻に合わせて整列させる。そして、辞書作成装置は、複合語頻度計数部が前記正解単語列および前記正解候補単語列に含まれる単語２つ組それぞれの頻度を計数し、前記計数した頻度の高さに応じて前記単語２つ組を前記辞書に登録する複合語の複数の複合語候補として抽出する。
【００３１】
さらに、辞書作成装置は、エントロピー計算部が前記複合語頻度計数部によって抽出した複数の前記複合語候補を用いて、各々の複合語候補を前記複合語とした場合における前記音声の音声認識の難しさを示す指標であり、値が高い程に音声認識が難しいことを示すエントロピーを計算する。また、辞書作成装置は、複合語選択部が各々の複合語候補を前記複合語とした場合の前記エントロピーを最も減少させる複合語候補を選択する。そして、辞書作成装置は、辞書登録部が前記複合語選択部によって選択した複合語候補を前記辞書の新たな語彙として登録する。
【００３２】
このような構成を備える辞書作成装置は、音声の正解単語列と音声認識部によって音声を音声認識した結果である正解候補単語列とから複合語候補を抽出する。また、辞書作成装置は、抽出した複合語候補を用いて複合語候補を複合語とした場合のエントロピーを計算し、計算したエントロピーを用いて辞書に登録する複合語を選択する。
【００３３】
また、本発明の一態様による辞書作成装置は、前記エントロピー計算部が、前記統計的言語モデルにより得られる言語スコアと統計的音響モデルにより得られる音響スコアとを用いて前記エントロピーを計算する構成とした。
【００３４】
このような構成を備える辞書作成装置は、統計的言語モデルにより得られる言語スコアと統計的音響モデルにより得られる音響スコアとを用いて辞書に登録する複合語を選択する基準であるエントロピーを計算する。
【００３５】
また、本発明の一態様による辞書作成装置は、前記音声言語資源記憶部に、放送された音声、及びその音声の正解単語列が逐次蓄積される構成とした。これは例えば、人手による音声認識結果の誤り修正機能（正解単語列の作成機能）を備えた字幕作成装置（音声および正解単語列を出力とする）を前記音声言語資源記憶部の前段に接続することで実現される。
【００３６】
このような構成を備える辞書作成装置は、複合語を辞書に登録するための基準であるエントロピーの計算に放送された音声及びその正解単語列をリアルタイム（実時間）で反映させる。
【００３７】
また、本発明の一態様による辞書作成プログラムは、音声認識に用いる複合語を新たな語彙として辞書に登録する辞書作成装置としてコンピュータを機能させる辞書作成プログラムであって、前記コンピュータが音声言語資源記憶部と、記憶部とを有し、前記コンピュータを、音声認識手段と、整列手段と、複合語頻度計数手段と、エントロピー計算手段と、複合語選択手段と、辞書登録手段として機能させる。
【００３８】
この辞書作成プログラムを実行するコンピュータは、音声言語資源記憶部に音声とその音声を誤りなく文字化した正解単語列とが蓄積される。また、コンピュータは、記憶部に前記辞書、前記音声中の単語間のつながり度合いを示す統計的言語モデル、および前記音声中の単語と波形パターンとの関係を示す統計的音響モデルが記憶される。
【００３９】
また、辞書作成プログラムを実行するコンピュータは、音声認識手段が前記統計的言語モデルおよび前記統計的音響モデルを用いて前記音声を音声認識し、前記音声の正解候補の単語列を示す正解候補単語列を生成する。次に、コンピュータは、整列手段が前記正解単語列および前記正解候補単語列を発話時刻に合わせて整列させる。そして、コンピュータは、複合語頻度計数手段が前記正解単語列および前記正解候補単語列に含まれる単語２つ組それぞれの頻度を計数し、前記計数した頻度の高さに応じて前記単語２つ組を前記辞書に登録する複合語の複数の複合語候補として抽出する。
【００４０】
さらに、辞書作成プログラムを実行するコンピュータは、エントロピー計算手段が抽出した複数の前記複合語候補を用いて、各々の複合語候補を前記複合語とした場合における前記音声の音声認識の難しさを示す指標であり、値が高い程に音声認識が難しいことを示すエントロピーを計算する。また、コンピュータは、複合語選択手段が各々の複合語候補を前記複合語とした場合の前記エントロピーを最も減少させる複合語候補を選択する。そして、コンピュータは、辞書登録手段が前記選択した複合語候補を前記辞書の新たな語彙として登録する。
【００４１】
このような機能を実現する辞書作成プログラムは、音声の正解単語列と音声認識手段によって音声を音声認識した結果である正解候補単語列とから複合語候補を抽出する。また、辞書作成プログラムは、抽出した複合語候補を用いて複合語候補を複合語とした場合のエントロピーを計算し、計算したエントロピーを用いて辞書に登録する複合語を選択する。
【発明の効果】
【００４２】
本発明の一態様によれば、音声の正解単語列と音声を音声認識した結果である正解候補単語列とから複合語を辞書に登録するための基準であるエントロピーを計算するので、音響的な要素を考慮して辞書に登録する複合語を決定することができる。その為、音声認識の統計的言語モデルにおける単語の予測精度が向上し、従来の統計的言語モデルよりも認識誤りが低減される。
【００４３】
また、本発明の一態様によれば、複合語を辞書に登録するエントロピー計算に、音声認識で使用する統計的言語モデルと統計的音響モデルとを利用することができる。
【００４４】
また、本発明の一態様によれば、音声と正解単語列が逐次的に取得され得る場合、複合語を漸次認識辞書に追加することで、音声内容に追随した辞書を構成することが可能である。
【図面の簡単な説明】
【００４５】
【図１】実施形態に係る辞書作成装置の構成を示す機能ブロック図である。
【図２】実施形態に係るエントロピー計算部の処理手順を示すフローチャートである。
【図３】実施形態に係るエントロピー計算部における言語スコア計算の処理手順を示すフローチャートである。
【図４】実施形態に係る言語モデル更新部の処理手順を示すフローチャートである。
【発明を実施するための形態】
【００４６】
［本発明の概要］
最初に本発明の概要を説明する。従来法では、テキストデータを用い、複合語を作成する前後におけるテキストコーパスの変化を求め、この変化に基づいて（この変化を基準として）辞書に登録する複合語を決定していた。
【００４７】
本発明では、テキストデータを使う代わりに音声データとその正解単語列（音声の書き起こし）を用い、音声認識結果である正解の重畳された複数の正解候補単語列を対象として複合語の作成前後のエントロピーの変化を求め、この変化に基づいて（この変化を基準として）辞書に登録する複合語を決定する。
【００４８】
音声認識結果には、統計的音響モデルにより単語列の音響的な尤もらしさが確率（対数音響スコア）として付与されている。その為、従来法がテキストデータの情報しか利用しないことにより音響的な要素を考慮しないで辞書に登録する複合語を決定するのに対して、本発明は音響的な要素を考慮して辞書に登録する複合語を決定する。
【００４９】
≪本発明における複合語を辞書に登録するための基準≫
まず、以下で用いる用語の記載方針について説明する。一般的に行列や集合等は太字で示すことになっており、数式中では行列や集合等を太字で表している。しかしながら、明細書において太字で表わすことができない部分については太字ではない通常の文字を用いて代用する。また、明細書において表すことのできない特定の記号については、括弧書きで記号の名称を記載している。
【００５０】
次に、本発明における複合語を辞書に登録するための基準について説明する。
ベイズの定理によれば、音声入力ｘが与えられたとき、音響的かつ言語的に尤もらしい単語列ｗ（ハット）は、以下の（式９）により求めることができる。
【００５１】
【数９】
2014219569.tif 000011
【００５２】
ここで、Ｐ（ｘ｜ｗ）は、単語列（文仮説）に対する音響的な尤もらしさであり、対数音響スコア（以下、省略して「音響スコア」と呼ぶ場合がある）はＨＭＭ（Hidden Markov Model）および混合Ｇａｕｓｓ分布（ＧＭＭ：Gaussian Mixture Model）に代表される統計的音響モデル（以下、省略して「音響モデル」と呼ぶ場合がある）に基づいて計算される。
【００５３】
一方、Ｐ（ｗ）は、単語列ｗに対する言語的な尤もらしさであり、対数言語スコア（以下、省略して「言語スコア」と呼ぶ場合がある）は、単語ｎ−ｇｒａｍモデル等の統計的言語モデル（以下、省略して「言語モデル」と呼ぶ場合がある）により計算される。以下の説明では、言語モデルとしてｎ−ｇｒａｍを用いる場合を想定する。
【００５４】
音声認識では、前記したベイズの定理に基づいて、以下の（式１０）を文仮説の評価関数と定め、以下の（式１１）により正解候補となる単語列の集合から最良の単語列ｗ（ハット）を選択する。
【００５５】
【数１０】
2014219569.tif 000012
【００５６】
【数１１】
2014219569.tif 000013
【００５７】
ここで、ｆａｍ（ｘ｜ｗ）は、音響モデルによる仮説ｗの音響スコア、ｆｌｍ（ｗ）は、言語モデルによる仮説の言語スコア、λｌｍは、音響スコアに対する言語スコアの重みであり、ｆ（ｗ｜ｘ）が、仮説ｗに対するスコアとなる。
ベイズの定理における仮説ｗの事後確率は、以下の（式１２）により計算される。
【００５８】
【数１２】
2014219569.tif 000014
【００５９】
いま、Ｎ個の音声が与えられたとする。ｎ番目の音声ｘｎ（ｎ＝１，・・・，Ｎ）に対して、正解単語列ｗｎ，０∈Ｗｎおよび音声認識結果である複数の正解候補単語列ｗｎ，ｋ∈Ｗｎ（ｋ＝１，・・・）が得られたとする。ｘｎが与えられたときの仮説集合に対する条件付きエントロピーＨは、以下の（式１３）となる。また、Ｎ個の音声全体のエントロピーを以下の（式１４）とする。ここで、（式１３）及び（式１４）の単語列の条件付き確率Ｐ（ｗｎ，ｋ｜ｘｎ）は、（式１２）により、音響スコアと言語スコアから計算される。
【００６０】
【数１３】
2014219569.tif 000015
【００６１】
【数１４】
2014219569.tif 000016
【００６２】
音響モデル及び言語モデルによる正解単語列の予測精度が高ければ、正解単語列のスコアは大きくなり、他の誤りを含む仮説のスコアは小さくなる。これは、仮説の識別に関連する不確実性が小さいということを意味し、結果として条件付きエントロピーの値も小さくなる。したがって、条件付きエントロピーがなるべく小さくなるように複合語を作成すれば、音響モデルと言語モデルを組み合わせたときの単語予測精度が改善する。
【００６３】
いま、単語列の集合Ｗｎ（ｎ＝１，・・・，Ｎ）に含まれる単語列の特定の単語２つ組を複合語ｗｃとしたときのＮ個の音声全体のエントロピーをＨ（ｗｃ）、複合語を作成する前のエントロピーをＨ（ｗｃ（バー））とすれば、以下の（式１５）よりエントロピーの差分が得られる。
【００６４】
【数１５】
2014219569.tif 000017
【００６５】
そして、複合語の候補が複数与えられた場合、以下の（式１６）となる複合語ｗｃ（ハット）を選べば、ｗｃ（ハット）は複合語の候補の中で、単語の予測精度が最も高くなる組である。すなわち、（式１５）のエントロピーの差分を複合語の選択基準として、（式１６）に該当する複合語を辞書に登録する。
【００６６】
【数１６】
2014219569.tif 000018
【００６７】
従来法では、テキストコーパスから求めたエントロピーの変化を用いているが、これは、音声認識において言語モデルの言語スコア（から導出されるエントロピー）のみを使っていることに等しい。一方、本発明では、対数音響スコアを考慮したエントロピーを用いるため、より音声認識にふさわしい複合語の選択基準となる。
以上で、本発明の概要についての説明を終了する。
【００６８】
［実施形態］
以下、本発明の実施するための形態を、適宜図面を参照しながら詳細に説明する。
各図は、本発明を十分に理解できる程度に、概略的に示してあるに過ぎない。よって、本発明は、図示例のみに限定されるものではない。なお、各図において、共通する構成要素や同様な構成要素については、同一の符号を付し、それらの重複する説明を省略する。
【００６９】
≪実施形態に係る辞書作成装置の構成≫
図１は、本発明の実施形態に係る辞書作成装置１００の構成を示す機能ブロック図である。辞書作成装置１００は、言語モデル学習データ記憶部１１と、語彙・言語モデル記憶部１２と、音響モデル記憶部１３と、音声言語資源記憶部１４と、音声認識部２１と、正解単語列整列部２２と、整列部２３と、複合語頻度計数部２４と、エントロピー計算部２５と、複合語選択部２６と、言語モデル更新部２７とを備える。
【００７０】
ここで、言語モデル学習データ記憶部１１、語彙・言語モデル記憶部１２、音響モデル記憶部１３、及び音声言語資源記憶部１４は、ＨＤＤ（Hard Disk Drive）等の一般的な記録媒体である。
【００７１】
また、音声認識部２１、正解単語列整列部２２、整列部２３、複合語頻度計数部２４、エントロピー計算部２５、複合語選択部２６、及び言語モデル更新部２７は、ＣＰＵ（Central Processing Unit）がＨＤＤ等に格納されたプログラムをＲＡＭ（Random Access Memory）に展開することにより実現するプログラム実行処理や、専用回路等により実現される。これらの機能がプログラム実行処理により実現される場合、「○○部」を「○○手段」と呼ぶ場合がある。
【００７２】
（言語モデル学習データ記憶部）
言語モデル学習データ記憶部１１は、音声認識に用いられる言語モデルを作成するための学習データが記憶される。学習データは、ニュース原稿あるいはニュース書き起こしなどのテキストデータを事前に形態素解析により形態素（自立語や付属語などの単語）単位に分割し、また、係り受け解析により文節区切りを付与したものである。ここで、形態素とは、これ以上に細かくすると意味がなくなってしまう最小の文字列をいい、形態素解析とは、文章を形態素のレベルまで分解して解析することである。また、係り受け解析とは、文章を文節に区切ると共に、ある文節に含まれる着目している単語が、他の文節に含まれる単語にどのように係るかを、品詞毎に予め定められた可能性に基づいて解析することである。例えば、日本語の「今日の天気は晴れです」という文章に対して単語区切りと文節区切りとが付与されたテキストデータでは、「（今日／の／）（天気／は／）（晴れ／です）」等のように区切られている。なお、記号（  ）は文節区切りを示し、記号／は、単語区切りを示している。
【００７３】
（語彙・言語モデル記憶部）
語彙・言語モデル記憶部１２は、言語モデル（統計的言語モデル）を作成するための辞書（語彙）、及び統計的言語モデルが記憶される。
辞書（語彙）は、単語（日本語ならば、自立語、付属語）を基礎としているが、音声認識における単語認識率を向上させるために２つ以上の連続した単語列（複合語）を含んで構成される。統計的言語モデルは、大量の音声データを利用して統計的計算手法によって求められた、音声中の単語間のつながり度合いを示す確率モデルの一種（接続確率）である。
なお、詳細は後記する選択された複合語の更新前の状態の語彙・言語モデル記憶部を符号１２ａで表し、複合語の更新後の語彙・言語モデル記憶部を符号１２ｂで表す場合がある。
【００７４】
（音響モデル記憶部）
音響モデル記憶部１３は、音響モデル（統計的音響モデル）が記憶される。
統計的音響モデルは、大量の音声の波形パターンに基づいて求められた、音声中の波形パターンと単語との関係を示す確率モデルの一種である。
【００７５】
（音声言語資源記憶部）
音声言語資源記憶部１４には、放送などの音声（音声信号や音声信号を符号化した音声データを含む）とこの音声に付随する正解単語列とが蓄積されている。音声は、所定期間を一つの単位（例えば、番組単位やコーナー単位）としており、複数（例えば、１万個）の発話で構成されている。正解単語列は、音声を文字化したものであり、例えば、音声を書き起こしたものや、事前に音声認識したものに単語の挿入、置換、脱落等の誤り修正を行ったものであってよい。その為、正解単語列は、音声に対して誤りを含まないものである。なお、音声言語資源記憶部１４には、音声及びこの音声に付随する正解単語列が、例えばＮ個蓄積されている。また、人手による誤り修正機能を備えた音声認識に基づく字幕作成装置から得られる音声および正解単語列を逐次記憶部に蓄積することも可能である。
【００７６】
（音声認識部）
音声認識部２１には、音声言語資源記憶部１４に蓄積される音声が入力される。音声認識部２１は、語彙・言語モデル記憶部１２に記憶される語彙、言語モデル及び音響モデル記憶部１３に記憶される音響モデルを用いて、音声言語資源記憶部１４に蓄積される音声を音声認識し、音声認識結果である複数の正解候補単語列を生成する。
正解候補単語列とは、入力された音声に対して尤もらしい単語列であり、音声に対して音声認識の誤りを含む可能性のある単語列である。具体的には、音声認識部２１は、一つの発話に対しておおむね１００〜５００個程度の正解候補の単語を生成する。これにより、例えば、音声が１万個の発話で構成されていた場合に、１万個×１００〜５００個＝１００万〜５００万個程度の音声認識結果である正解候補単語列が生成される。
また、音声認識部２１は、正解候補単語列を構成する単語の発話時刻に合わせて正解候補単語列を整列する。この際、音声認識部２１は、この正解候補単語列に対して、言語モデルによる言語スコアと音響モデルによる音響スコアとを付加する。なお、生成された正解候補単語列の中に正解単語列が含まれていてもよい。音声認識部２１は、生成した正解候補単語列を整列部２３に出力する。
【００７７】
（正解単語列整列部）
正解単語列整列部２２には、音声言語資源記憶部１４に蓄積される音声とこの音声の正解単語列とが入力される。正解単語列整列部２２は、音声及び正解単語列と語彙・言語モデル記憶部１２に記憶される言語モデル及び音響モデル記憶部１３に記憶される音響モデルとを用いて、正解単語列を構成する単語の発話時刻に合わせて正解単語列を整列する。この際、正解単語列整列部２２は、整列後の正解単語列に対して、言語モデルによる言語スコアと音響モデルによる音響スコアとを付加する。これにより、整列後の正解単語列には、何分何秒に何という単語が話されたかという情報と、音声認識部２１が言語モデル及び音響モデルを用いて正解の単語列を音声認識した場合の言語スコア及び音響スコアとが付加される。正解単語列整列部２２は、整列した正解単語列を整列部２３に出力する。
【００７８】
（整列部）
整列部２３には、音声認識部２１で生成された正解候補単語列と正解単語列整列部２２で発話時刻に合わせて整列された正解単語列とが統合されて単語列集合として入力される。以降では、単語列集合は、辞書（語彙）に登録する複合語を作成するための基準の計算（エントロピー計算）に用いられる。
整列部２３は、語彙・言語モデル記憶部１２ｂに記憶される複合語を含む新たな辞書（語彙）で学習された言語モデルと音響モデル記憶部１３に記憶される音響モデルとで単語列集合の各単語列を単語の発話時刻に合わせて整列する。この際、整列部２３は、整列された単語列の各単語に対して、音響モデルによる音響スコア、及び言語モデルによる言語スコアをそれぞれ付加する。なお、初期状態では、複合語が得られていないため、語彙・言語モデル記憶部１２ａに記憶される言語モデルと語彙・言語モデル記憶部１２ｂに記憶される言語モデルとは同一である。したがって、初期状態では、前段の音声認識部２１および正解単語列整列部２２において、すでに整列済みであるため、整列部２３では整列を行わない。整列部２３は、整列を行った単語列集合を複合語頻度計数部２４に出力する。
【００７９】
（複合語頻度計数部）
複合語頻度計数部２４には、整列部２３で整列された単語列集合が入力される。複合語頻度計数部２４は、単語列集合に含まれる特定の単語２つ組の頻度を計数する。また、複合語頻度計数部２４は、計数後、特定の単語２つ組を頻度の降順に並べ、上位となる高頻度Ｍ個の単語２つ組を複合語候補として算出する。複合語頻度計数部２４は、単語列集合及び算出した上位となる高頻度Ｍ個の複合語候補をエントロピー計算部２５に出力する。
【００８０】
（エントロピー計算部）
エントロピー計算部２５には、単語列集合及び複合語頻度計数部２４で算出された高頻度Ｍ個の複合語候補が入力される。エントロピー計算部２５は、単語列集合及び高頻度Ｍ個の複合語候補を用いて、複合語を作成する前後のエントロピーをそれぞれ計算し、エントロピーの変化を求める。ここで、エントロピーとは、前記した通り、所与の言語モデルから計算される単語列の複雑さを示す指標、または、音声認識の難しさを示す指標であり、エントロピーが高いほど、単語列の複雑さが増し、当該言語モデルによる音声認識が難しくなる。エントロピー計算部２５の処理の詳細は後記する処理手順で説明する。エントロピー計算部２５は、計算したエントロピーの変化を複合語選択部２６に出力する。
【００８１】
（複合語選択部）
複合語選択部２６には、エントロピー計算部２５が計算したエントロピーの変化が入力される。複合語選択部２６は、前段のエントロピー計算部２５の結果を受けて、Ｍ個の複合語候補の中から、エントロピーの変化が最も大きくなる候補（複合語を作成した後のエントロピーが複合語を作成する前のエントロピーに比べて最も減少する複合語候補）を複合語として選択する。複合語選択部２６は、選択した複合語を言語モデル更新部２７に出力する。
【００８２】
（言語モデル更新部）
言語モデル更新部２７（辞書登録部）には、複合語選択部２６から選択した複合語が入力される。言語モデル更新部２７は、前段で得られた複合語を新たに語彙・言語モデル記憶部１２の辞書（語彙）に追加し、言語モデルの学習に用いた言語モデル学習データを用いて言語モデルを再学習し、語彙・言語モデル記憶部１２の言語モデルを更新する。言語モデル更新部２７の処理の詳細は後記する処理手順で説明する。言語モデル更新部２７は、言語モデルを再学習したことを整列部２３に出力する。
【００８３】
そして、整列部２３は、複合語が更新された複合語更新後の語彙・言語モデル記憶部１２ｂに記憶された言語モデルを用いて新たに整列を行う。以下、所望の数の複合語が得られるまで、整列部２３、複合語頻度計数部２４、エントロピー計算部２５、複合語選択部２６、及び言語モデル更新部２７の処理を繰り返す。上記の処理終了後、語彙・言語モデル記憶部１２ｂに記憶された言語モデルを音声認識に用いる。
以上で、実施形態に係る辞書作成装置１００の構成についての説明を終了する。
【００８４】
≪実施形態に係る辞書作成装置の処理手順≫
以下では、実施形態に係る辞書作成装置１００の主要部（エントロピー計算部２５、及び言語モデル更新部２７）の処理手順について説明する。
【００８５】
（エントロピー計算部の処理手順）
図２を参照して、エントロピー計算部２５の処理手順について説明する。
いま、Ｎ個の音声が与えられたとする。ｎ番目の音声ｘｎ（ｎ＝１，・・・，Ｎ）に対して、単語列集合（正解単語列ｗｎ，０∈Ｗｎおよび音声認識結果である複数の正解候補単語列ｗｎ，ｌ∈Ｗｎ（ｌ＝１，・・・））が得られたとする。なお、正解単語列ｗｎ，０及び正解候補単語列ｗｎ，ｌについての（１）言語モデルによる言語スコアｆｌｍ（ｗｎ，ｌ）、ならびに（２）音響モデルによる音響スコアｆａｍ（ｗｎ，ｌ｜ｘｎ）は、すでに前段（音声認識部２１や正解単語列整列部２２）で計算済みであり、各々の単語列の各単語に付加されている。また、複合語頻度計数部２４で算出された高頻度Ｍ個の複合語候補が得られたとする。
【００８６】
ステップＳ１０のループ処理は、複合語頻度計数部２４が算出した上位となる高頻度Ｍ個の複合語候補について順次処理（例えば、頻度の降順）を行うことを意味する。
エントロピー計算部２５は、第ｍ番目（最初は高頻度１番目）の複合語候補に対して、複合語を作成する前後での言語スコアの変更分をあらかじめ計算しておく（ステップＳ２０）。スコアの変更分は、複合語を構成する語ｗａ，ｗｂおよび複合語候補ｗｃに関わる部分のみにおける計算である。ステップＳ２０の言語スコア計算を詳細化したフローチャートを図３に示す。
【００８７】
図３を参照し、エントロピー計算部２５における言語スコア計算の処理手順について説明する。
エントロピー計算部２５は、第ｍ番目の複合語候補を複合語として構成することにより変更となる単語列の頻度を、言語モデル学習データ記憶部１１に記憶された学習データから算出する（ステップＳ２１）。具体的には、以下に示す（１）〜（６）の頻度を求める。
（１）複合語となる単語２つ組（ｗａ，ｗｂ）の頻度Ｃ（ｗａ，ｗｂ）
（２）ｗａの左側（前方）に接続する単語ｗ１∈｛Ｖ｝との２つ組（ｗ１，ｗａ）の頻度Ｃ（ｗ１，ｗａ）
（３）ｗａの右側（後方）に接続する単語ｗ２∈｛Ｖ｝との２つ組（ｗａ，ｗ２）の頻度Ｃ（ｗａ，ｗ２）
（４）（ｗａ，ｗｂ）の左側（前方）に接続する単語ｗ１との３つ組（ｗ１，ｗａ，ｗｂ）の頻度Ｃ（ｗ１，ｗａ，ｗｂ）
（５）ｗｂの右側（後方）に接続する単語ｗ２∈｛Ｖ｝との２つ組（ｗｂ，ｗ２）の頻度Ｃ（ｗｂ，ｗ２）
（６）（ｗａ，ｗｂ）の右側（後方）に接続する単語ｗ２との３つ組（ｗａ，ｗｂ，ｗ２）の頻度Ｃ（ｗａ，ｗｂ，ｗ２）
【００８８】
続いて、エントロピー計算部２５は、ステップＳ２１で求めた頻度から、複合語に関わる言語スコア（バイグラム）の値を計算する（ステップＳ２２）。以下に具体的な処理を記述する。
【００８９】
まず、複合語ｗｃを得た後のバイグラムＰ´（ｗｃ｜ｗ１）は、以下の（式１７）となる。
【００９０】
【数１７】
2014219569.tif 000019
【００９１】
ｗｃを履歴としたときのバイグラムＰ´（ｗ２｜ｗｃ）は、以下の（式１８）となる。
【００９２】
【数１８】
2014219569.tif 000020
【００９３】
一方、複合語ｗｃを得た後のｗａのバイグラムＰ´（ｗａ｜ｗ１）は、以下の（式１９）となる。
【００９４】
【数１９】
2014219569.tif 000021
【００９５】
ｗａを履歴としたときのバイグラムＰ´（ｗ２｜ｗａ）は、以下の（式２０）となる。
【００９６】
【数２０】
2014219569.tif 000022
【００９７】
ｗｂを履歴としたときのバイグラムＰ´（ｗ２｜ｗｂ）は、以下の（式２１）となる。
【００９８】
【数２１】
2014219569.tif 000023
【００９９】
続いて、エントロピー計算部２５は、前記した複合語を作成したときの言語スコア（バイグラム）の変更分を言語スコアテーブルが記憶される言語スコアテーブル記憶部１５に格納し（言語スコアテーブル作成）、後段の処理（図４の言語モデル更新Ｓ１３０）で参照できるようにする（ステップＳ２３）。そして、処理は図２のステップＳ３０に進む。
【０１００】
ステップＳ３０のループ処理は、与えられたＮ個の音声（音声データ）について順次処理を行い、結果として全ての音声についてループ内の処理を行うことを意味する。
エントロピー計算部２５は、第ｎ番目（最初は第１番目）の音声に対して、単語２つ組を複合語にする前と複合語にした後との言語スコアの差分を計算する（ステップＳ４０）。本実施形態では、言語モデルとしてバイグラムを使っており、単語２つ組（ｗａ，ｗｂ），複合語候補ｗｃとする。
複合語ｗｃを作成する前後における言語モデルの言語スコアの差分は、以下の（式２２）となる。
【０１０１】
【数２２】
2014219569.tif 000024
【０１０２】
（式２２）においては、ｆｌｍ（ｗ｜・）を以下の（式２３）とする。ここで、δｕ，ｗは単語列ｗに含まれる単語２つ組（ｕ，ｗ）の個数を返す関数である。
【０１０３】
【数２３】
2014219569.tif 000025
【０１０４】
複合化した単語列ｗの言語スコアは、以下の（式２４）により計算できる。
【０１０５】
【数２４】
2014219569.tif 000026
【０１０６】
続いて、エントロピー計算部２５は、複合語を構成する前後における音響モデルの音響スコアの差分を計算する（ステップＳ５０）。音響スコアの差分は、以下の（式２５）となる。
【０１０７】
【数２５】
2014219569.tif 000027
【０１０８】
ここで、ｘ［ｓ，ｅ］は、入力音声の内、始端時刻ｓ，終端時刻ｅとなる部分（音声の一部分）とする。σ（ｖ）は、単語ｖ（式２５ではｗａ，ｗｂ等と表記）の発話始端時刻とする。τ（ｖ）は、発話終端時刻とする。ｆａｍ（ｘ［ｓ，ｅ］｜ｖ）は、単語ｖが与えられたときの音響スコアとする。その場合、複合語化した単語列の音響スコアは、以下の（式２６）となる。
【０１０９】
【数２６】
2014219569.tif 000028
【０１１０】
続いて、エントロピー計算部２５は、以下の（式２７）及び（式２８）を用いて、ｎ番目の音声ｘに対する単語列集合中のすべての単語列から、第ｍ番目の複合語を作成する前のエントロピー及び作成後のエントロピーを計算する（ステップＳ６０）。
【０１１１】
【数２７】
2014219569.tif 000029
【０１１２】
【数２８】
2014219569.tif 000030
【０１１３】
続いて、エントロピー計算部２５は、計算したｎ番目の音声ｘに対する第ｍ番目の複合語を作成する前のエントロピーＨｎｍ（ｗ｜ｘ）と作成した後のエントロピーＨ（バー）ｎｍ（ｗ｜ｘ）との差分を以下の（式２９）により求める（ステップＳ７０）。
【０１１４】
【数２９】
2014219569.tif 000031
【０１１５】
第ｎ番目の音声ｎに対してステップＳ７０までの処理が終了すると、ｎに「１」を加算して、次の音声ｘｎ＋１についてもステップＳ４０〜ステップＳ７０までの処理を行う。このステップＳ３０におけるループ処理は、与えられたＮ個の音声（全ての音声）について行う。つまり、ｍ番目の複合語候補に対するエントロピーＨｍ（ｗ｜ｘ）は、Ｎ個の音声（全ての音声）で積算することにより以下の（式３０）で求められる。
【０１１６】
【数３０】
2014219569.tif 000032
【０１１７】
そして、このステップＳ３０におけるループ処理により、ｍ番目の複合語候補に対するエントロピーの差分ΔＨｍは、Ｎ個の音声（全ての音声）で積算することで以下の（式３１）となる。
【０１１８】
【数３１】
2014219569.tif 000033
【０１１９】
与えられたＮ個の音声に対してステップＳ３０のループ処理が終了すると、ｍに「１」を加算して、次の第ｍ＋１番目の複合語候補ｍ＋１についてもステップＳ２０〜ステップＳ７０までの処理を行う。このステップＳ１０におけるループ処理は、与えられた高頻度Ｍ個の複合語候補について行う。そして、エントロピー計算部２５は、高頻度Ｍ個の複合語候補についてのエントロピーの差分ΔＨｍを複合語選択部２６に出力する。
【０１２０】
（言語モデル更新部の処理手順）
図４を参照して、言語モデル更新部２７の処理手順について説明する。
最初に、言語モデル更新部２７は、語彙・言語モデル記憶部１２に記憶される元の語彙｛Ｖ｝に、複合語選択部２６が選択した複合語ｗｃを加え（｛Ｖ｝←｛Ｖ｝∪｛ｗｃ｝））語彙を更新する（ステップＳ１１０）。
【０１２１】
続いて、言語モデル更新部２７は、言語モデル学習データ記憶部１１に記憶される学習データに含まれる複合語作成前の単語２つ組を複合語に置き換え、学習データを更新する（ステップＳ１２０）。具体的には、言語モデル更新部２７は、学習データであるテキストデータの単語区切り（形態素区切り）を更新する。ここで、単語区切りの更新とは、日本語の場合を想定すると、更新前のテキストデータに含まれる「自立語Ａ＋自立語Ｂ」や「自立語Ａ＋付属語Ｃ」といった単語ペアを、「複合語ＡＢ」や「複合語ＡＣ」に変化させることである。
【０１２２】
続いて、言語モデル更新部２７は、エントロピー計算部２５がステップＳ２０（図３参照）で行った言語スコア計算により得た言語スコアテーブル（言語スコアテーブル記憶部１５に記憶）を参照して、選択した複合語に該当する言語スコア（バイグラム）を置き換える。また、言語モデル更新部２７は、統計的な処理により言語モデルを作成し、語彙・言語モデル記憶部１２に記憶される言語モデルを更新する（ステップＳ１３０）。そして、言語モデル更新部２７は、言語モデルを更新したことを整列部２３に出力する。
以上で、実施形態に係る辞書作成装置１００の処理手順についての説明を終了する。
【０１２３】
以上のように、本実施形態に係る辞書作成装置１００は、音声の正解単語列と音声認識部２１によって音声を音声認識した結果である正解候補単語列とから複合語を辞書に登録するための基準であるエントロピーを計算するので、音響的な要素を考慮して辞書に登録する複合語を決定することができる。その為、音声認識の統計的言語モデルにおける単語の予測精度が向上し、従来の統計的言語モデルよりも認識誤りが低減される。
【０１２４】
［変形例］
以上、本発明の実施形態について説明したが、本発明はこれに限定されるものではなく、その趣旨を変えない範囲で実施することができる。
【０１２５】
例えば、実施形態の辞書作成装置１００は、日本語を辞書に登録する場合を想定して説明したが、英語などの他の言語についても適用可能である。
【０１２６】
また、実施形態の辞書作成装置１００は、言語モデルとしてｎ−ｇｒａｍモデルの一つであるバイグラムを用いた場合を想定して説明したが、トライグラムなどを用いたり、他の言語モデルを用いてもよい。
【符号の説明】
【０１２７】
１１    言語モデル学習データ
１２    語彙・言語モデル記憶部（記憶部）
１３    音響モデル記憶部（記憶部）
１４    音声言語資源記憶部
１５    言語スコアテーブル記憶部
２１    音声認識部（音声認識手段）
２２    正解単語列整列部（正解単語列整列手段）
２３    整列部（整列手段）
２４    複合語頻度計数部（複合語頻度計数手段）
２５    エントロピー計算部（エントロピー計算手段）
２６    複合語選択部（複合語選択手段）
２７    言語モデル更新部（辞書登録部（辞書登録手段））
１００  辞書作成装置
【図１】
2014219569.tif 000034
【図２】
2014219569.tif 000035
【図３】
2014219569.tif 000036
【図４】
2014219569.tif 000037