【解決手段】発音系列拡張装置1は、学習コーパスの音声のトライフォンおよびモノフォンの音素列を生成する音素列生成手段10と、トライフォン発音辞書を生成するトライフォン発音辞書生成手段11と、トライフォンを1単語としたトライフォン言語モデルを生成するトライフォン言語モデル生成手段12と、学習コーパスの音声を音素単位で音声認識する音素認識手段13と、モノフォンの音素列である標準音素列と音素認識手段13で認識された実発話音素列とから統計的機械翻訳モデルを生成する統計的機械翻訳モデル生成手段14と、発音辞書に登録されている見出し語に対応する音素列を翻訳する翻訳手段15と、翻訳された音素列を見出し語に追加する拡張手段16と、を備える。
見出し語とその発音系列を示す音素列とを対応付けた発音辞書と、複数組音素の音響モデルと、音声とその書き起こしテキストとを対応付けた学習コーパスとにより、前記発音辞書における前記見出し語の発音系列を拡張する発音系列拡張装置であって、
前記音響モデルと前記発音辞書とにより、前記学習コーパスの音声の複数組音素の音素列を生成するとともに、当該複数組音素の中心音素である単一音素の音素列を生成する音素列生成手段と、
前記複数組音素を見出し語およびその発音系列とする複数組音素発音辞書を生成する複数組音素発音辞書生成手段と、
前記複数組音素の音素列から、当該複数組音素を1単語とした言語モデルである複数組音素言語モデルを生成する複数組音素言語モデル生成手段と、
前記複数組音素発音辞書と前記複数組音素言語モデルとにより、前記学習コーパスの音声を音素単位で音声認識する音素認識手段と、
前記音素列生成手段で生成された単一音素の音素列である標準音素列と、前記音素認識手段で認識された音素列である実発話音素列とを対訳データとして、統計的機械翻訳モデルを生成する統計的機械翻訳モデル生成手段と、
前記統計的機械翻訳モデルにより、前記発音辞書に登録されている前記見出し語に対応する音素列を翻訳する翻訳手段と、
この翻訳手段で翻訳された音素列を新たな発音系列を示す音素列として前記見出し語に追加する拡張手段と、
を備えることを特徴とする発音系列拡張装置。
【発明の概要】
【発明が解決しようとする課題】
【0007】
前記した従来の手法は、単語単位で発音変動を定めている。
しかし、話し言葉で発話された発音変動は、単語に依存して単語内に起こる変動ばかりではなく、異なる単語であっても、同様の発音しにくい音素列で起こるものがある。
例えば、「女川湾」の読みである「おながわわん」が発音しにくいため、「おながわん」と発音される場合がある。しかし、この発音変動は、「女川湾」に限定されるものではない。例えば、「志津川湾」の読みである「しづがわわん」についても、同様に、「しづがわん」と発音される場合がある。
これは、単語内の音素列「gawawa」が「gawa」に変動することで起こるものである。前記した非特許文献1,2の手法であれば、音素列「gawawa」を含んだ単語のすべてに対して、個別に手動でこの変動規則を設定しなければならず、膨大な手間を要するという問題がある。
【0008】
また、話し言葉で発話された発音変動は、単語境界を跨いでも起こり得る。
例えば、「北側は」のように、2つの単語「北側」と「は」との間を跨いで音素列「gawawa」が存在し、発音のしにくさから変動する場合がある。
このように、単語を跨いだ発音変動は、従来の手法では考慮されておらず、発音辞書には登録されないため、音声認識の精度を落とす要因となっていた。
【0009】
本発明は、このような問題に鑑みてなされたものであり、発音変動を音素列の変動として捉え、発音辞書の発音系列に対して、発話音声の発音系列(音素列)を拡張する発音系列拡張装置およびそのプログラムを提供することを課題とする。
【課題を解決するための手段】
【0010】
前記課題を解決するため、本発明に係る発音系列拡張装置は、見出し語とその発音系列を示す音素列とを対応付けた発音辞書と、複数組音素の音響モデルと、音声とその書き起こしテキストとを対応付けた学習コーパスとにより、前記発音辞書における前記見出し語の発音系列を拡張する発音系列拡張装置であって、音素列生成手段と、複数組音素発音辞書生成手段と、複数組音素言語モデル生成手段と、音素認識手段と、統計的機械翻訳モデル生成手段と、翻訳手段と、拡張手段と、を備える構成とした。
【0011】
かかる構成において、発音系列拡張装置は、音素列生成手段によって、音響モデルと発音辞書とにより、発音辞書の見出し語単位で音素のアライメント(強制アライメント)を行うことで、学習コーパスの音声の複数組音素の音素列を生成するとともに、当該複数組音素の中心音素である単一音素の音素列を生成する。
ここで、複数組音素とは、複数の音素で構成される音素列である。例えば、3つの音素で構成されるトライフォン(triphone)、5つの音素で構成されるクイントフォン(quintphone)等である。このトライフォン等の複数組音素は、中心音素が前後の音素に影響を受けることを考慮したもので、モノフォン(単一音素)の音素列よりも正確な発音を示す情報となる。
【0012】
そして、発音系列拡張装置は、複数組音素発音辞書生成手段によって、複数組音素を1単語として、見出し語およびその発音系列とすることで、複数組音素発音辞書を生成する。
また、発音系列拡張装置は、複数組音素言語モデル生成手段によって、複数組音素を1単語として、その出現頻度、接続のしやすさを統計的にモデル化、例えば、Nグラムモデルでモデル化することで、複数組音素言語モデルを生成する。
このように、複数組音素を単位とするため、単語に依存せずに、音素単位で音声認識可能な発音辞書および言語モデルが生成されることになる。
【0013】
そして、発音系列拡張装置は、音素認識手段によって、複数組音素発音辞書と複数組音素言語モデルとにより、学習コーパスの音声を音素単位で音声認識する。
このように、発音系列拡張装置は、音素単位で音声を認識するため、音声の前後の発音変動をより正確に表現した音素列を生成することができる。
【0014】
そして、発音系列拡張装置は、統計的機械翻訳モデル生成手段によって、音素列生成手段で生成された単一音素の音素列である標準音素列と、音素認識手段で認識された音素列である実発話音素列とを対訳データとして学習することで、標準音素列の任意のフレーズから実発話音素列の任意のフレーズへ翻訳するための確率モデルである統計的機械翻訳モデルを生成する。
これによって、正確な発音である標準音素列から、発音変動を伴った実発話音素列へ翻訳を行うためのモデルが生成されることになる。
【0015】
そして、発音系列拡張装置は、翻訳手段によって、統計的機械翻訳モデルにより、発音辞書に登録されている見出し語に対応する音素列が翻訳結果の文字列として翻訳される確率が最大となる文字列を求めることで、当該見出し語に対応する音素列を翻訳する。
これによって、発音辞書に登録されている正しい音素列に対して、発音変動を加味した音素列が生成されることになる。
【0016】
そして、発音系列拡張装置は、拡張手段によって、翻訳手段で翻訳された音素列を新たな発音系列を示す音素列として見出し語に追加する。
これによって、発音系列拡張装置は、発音辞書の見出し語に、実発話に基づく発音変動を考慮した音素列を新たな発音として追加することができる。
【0017】
なお、発音系列拡張装置は、コンピュータを、音素列生成手段、複数組音素発音辞書生成手段、複数組音素言語モデル生成手段、音素認識手段、統計的機械翻訳モデル生成手段、翻訳手段、拡張手段として機能させるための発音系列拡張プログラムで動作させることができる。
【発明の効果】
【0018】
本発明は、以下に示す優れた効果を奏するものである。
本発明によれば、発音辞書に対して、実発話に基づく発音変動を考慮して、発音系列を拡張することができる。また、本発明によれば、発音辞書における同様の発音変動が発生する見出し語に対して、発音系列を統計的な確率に基づいて拡張することができる。
また、本発明は、音素単位で発音変動を認識するため、単語内の発音変動のみならず、単語間に跨った発音変動にも対応して、発音辞書の発音系列を拡張することができる。
これによって、本発明で拡張された発音辞書を用いることで、今まで発音辞書に登録されていなかった標準的な発音以外の発音であっても、精度よく音声認識することが可能になる。
【発明を実施するための形態】
【0020】
以下、本発明の実施形態について図面を参照して説明する。
〔発音系列拡張装置の構成〕
まず、
図1を参照して、本発明の実施形態に係る発音系列拡張装置1の構成について説明する。
【0021】
発音系列拡張装置1は、発音辞書100に登録されている発音(発音系列)に、実発話による発音(発音系列)を対応付けて拡張し、拡張発音辞書103を生成するものである。この発音系列拡張装置1は、発音辞書100と、音響モデル101と、学習コーパス102とから、発音辞書100に登録されていない発音系列を拡張することで、拡張発音辞書103を生成する。
【0022】
発音辞書100は、拡張の元となる発音辞書で、所定の文字列である見出し語(ここでは、単語とする)ごとに、その発音系列を示す子音と母音との構成(音素列)を示した辞書である。
この発音辞書100は、従来の発音辞書として、人手を介して文字列(単語)とその発音系列とを対応付けた辞書であってもよいし、発音系列拡張装置1によって拡張された拡張発音辞書103をさらに拡張させたい場合は、拡張発音辞書103を発音辞書100として用いてもよい。
【0023】
音響モデル101は、大量の音声データから予め学習した音素ごとの音響特徴量(メル周波数ケプストラム係数等)を隠れマルコフモデル(HMM:Hidden Markov Model)によってモデル化したものである。この音響モデル101は、従来の音声認識において用いられるトライフォンHMMである。
【0024】
学習コーパス102は、予め大量の音声データ(音声コーパス)と、音声データの書き起こしテキスト(テキストコーパス)とを対応付けたデータである。この学習コーパス102は、例えば、ニュース番組、情報番組等におけるアナウンサ、リポータ等の約1000時間程度の音声(音声コーパス)と、その音声を書き起こしたテキスト(テキストコーパス)である。
なお、発音辞書100、音響モデル101および学習コーパス102は、それぞれ図示を省略した記憶手段に記憶されているものとする。
【0025】
拡張発音辞書103は、発音系列拡張装置1によって、発音辞書100が拡張された辞書である。すなわち、拡張発音辞書103は、発音辞書100に登録されている文字列の発音系列(音素列)に、さらに、実発話により表現される発音系列(音素列)が拡張された辞書である。
以下、発音系列拡張装置1の構成について詳細に説明する。
【0026】
図1に示すように、発音系列拡張装置1は、音素列生成手段10と、トライフォン発音辞書生成手段11と、トライフォン言語モデル生成手段12と、音素認識手段13と、統計的機械翻訳モデル生成手段14と、翻訳手段15と、拡張手段16と、を備える。
【0027】
音素列生成手段10は、発音辞書100と音響モデル101とに基づいて、学習コーパス102の音声(音声コーパス)を強制アライメントすることで、当該音声を、発音辞書100に登録されている文字列に対応する音素列に切り分けるものである。
すなわち、音素列生成手段10は、学習コーパス102の音声から、音響モデル101に対応する音響特徴量を抽出する。そして、音素列生成手段10は、音響モデル101のトライフォンHMMを用いて、音声の書き起こしテキスト(テキストコーパス)を事前知識とする音声認識を行うことで、音声を、発音辞書100に登録されている文字列(見出し語)に対応して切り分け(強制アライメント)、各文字列に対応する音素列をトライフォン(3組の音素)単位で抽出する。
【0028】
この音素列生成手段10は、生成したトライフォン10tを1つの単語として、図示を省略した記憶手段に記憶する。このトライフォン10tは、トライフォン発音辞書生成手段11およびトライフォン言語モデル生成手段12において利用される。
また、音素列生成手段10は、生成したトライフォンで表された音素列の中心音素を抽出し、標準音素列10mとする。この標準音素列10mは図示を省略した記憶手段に記憶され、統計的機械翻訳モデル生成手段14において利用される。
【0029】
ここで、
図2を参照して、音素列生成手段10が生成する音素列の例について説明する。なお、
図2中、「△」の記号は、単に空白を分かりやすく示すために用いた記号である。
図2(a)は、「警察と消防で見つかった」の音声から生成されたトライフォンで表された音素列の例を示している。ここで、トライフォンは、「○−○+○」というテキスト形式(トライフォンテキスト)で表され、前後の音素への影響(音素環境依存性)を考慮したものとなっている。
【0030】
図2(a)の例では、「k−e:+s」、「e−s+a」、「s−a+ts」等がトライフォンであって、ここでは、このトライフォンを1つの単語として扱う。
図2(a)中、「○+□」は、「(*−)○+□」のように「○□」の2音素で終わるバイフォン集合を示し、「○−□」は、「○−□(+*)」のように、「○□」の2音素で始まるバイフォン集合を示している。
【0031】
図2(b)は、(a)の中心音素を抽出した音素列である。すなわち、
図2(a)の音素列がトライフォンの音素列であるのに対し、
図2(b)の音素列は、学習コーパス102の音声を表したモノフォンの音素列(標準音素列)である。
図1に戻って、発音系列拡張装置1の構成について説明を続ける。
【0032】
トライフォン発音辞書生成手段(複数組音素発音辞書生成手段)11は、音素列生成手段10で生成された複数のトライフォン10tから、1つのトライフォン10tを1つの単語とみなした発音辞書(トライフォン発音辞書〔複数組音素発音辞書〕11t)を生成するものである。
ここでは、トライフォン発音辞書生成手段11は、
図3に示すように、左の列に見出し語(単語)、右の列に音素列(発音系列)を配置したトライフォン発音辞書11tを生成する。なお、トライフォン発音辞書11tの左の列の見出し語および右の列の音素列は、どちらも、音素列生成手段10で生成される同じトライフォンである。
【0033】
このように、トライフォン発音辞書11tの見出し語と音素列とはテキストデータとして同一のものであるため、必ずしも対として記憶する必要はない。しかし、トライフォン発音辞書11tを従来の発音辞書と同じ形式とすることで、後記する音素認識手段13において、従来の発音辞書と同様に扱うことが可能になる。
このトライフォン発音辞書生成手段11は、生成したトライフォン発音辞書11tを、図示を省略した記憶手段に記憶する。このトライフォン発音辞書11tは、音素認識手段13において利用される。
【0034】
トライフォン言語モデル生成手段(複数組音素言語モデル生成手段)12は、音素列生成手段10で生成された複数のトライフォン10tから、言語モデル(トライフォン言語モデル〔複数組音素言語モデル〕12t)を生成するものである。このトライフォン言語モデル12tは、音素列生成手段10で生成された複数のトライフォン10tから、トライフォン10tを単語とみなして、その文字列の出現頻度、接続のしやすさを統計的にモデル化したものである。例えば、トライフォン言語モデル生成手段12は、Nグラムモデルで言語モデルを生成する。
【0035】
一般的な言語モデルの生成が単語の出現頻度等をモデル化したものであるのに対し、トライフォン言語モデル12tは、トライフォン10tの出現頻度等をモデル化したものである。よって、トライフォン言語モデル生成手段12は、その対象となる素材(単語またはトライフォン)が異なるのみで、生成手法は従来の言語モデルの手法と同じであるため、ここでは、詳細な説明を省略する。
このトライフォン言語モデル生成手段12は、生成したトライフォン言語モデル12tを、図示を省略した記憶手段に記憶する。このトライフォン言語モデル12tは、音素認識手段13において利用される。
【0036】
音素認識手段13は、音響モデル101と、トライフォン発音辞書11tと、トライフォン言語モデル12tとを用いて、学習コーパス102の音声から音素を認識するものである。
この音素認識手段13は、学習コーパス102の音声から音響特徴量を抽出し、音響モデル101とトライフォン発音辞書11tとからトライフォンの候補をリストアップし、トライフォン言語モデル12tに基づく接続確率が最大となるトライフォンの音素列を認識結果とする。そして、音素認識手段13は、認識結果であるトライフォンの音素列の中心音素を抽出する。
すなわち、一般的な音声認識が単語単位で認識するのに対し、音素認識手段13は、トライフォン単位で認識し、実発話のモノフォンの音素列を生成する。
【0037】
このように、音素認識手段13は、トライフォンによる音素環境依存を考慮したものであるため、精度よく音素を認識することができる。
この音素認識手段13は、認識した音素列(実発話音素列13m)を、図示を省略した記憶手段に記憶する。この実発話音素列13mは、統計的機械翻訳モデル生成手段14において利用される。
【0038】
統計的機械翻訳モデル生成手段14は、元の発音辞書100を用いて生成された標準音素列10mを原言語とし、トライフォン発音辞書11tおよびトライフォン言語モデル12tを用いて生成された実発話音素列13mを目的言語とする翻訳モデル(統計的機械翻訳モデル)を生成するものである。
【0039】
ここで、統計的機械翻訳モデルは、ベイズの定理により、原言語fが目的言語eに翻訳される確率が最大となって翻訳結果e^(eハット)が生成されるモデルとして、以下の式(1)で定式化されている。
【0041】
この式(1)で、Pr(e|f)は、原言語fが目的言語eに翻訳される条件付き確率を示す。また、Pr(f|e)は、翻訳モデル(フレーズ翻訳モデル)であって、目的言語eが原言語fに翻訳される条件付き確率を示す。また、Pr(e)は、目的言語eの言語モデルであって、目的言語eの事前確率を示す。
ここでは、統計的機械翻訳モデル生成手段14は、フレーズ翻訳モデル生成手段141と、モノフォン言語モデル生成手段142と、を備える。
【0042】
フレーズ翻訳モデル生成手段141は、音素列生成手段10で生成されたモノフォンの音素列である標準音素列10mと、音素認識手段13で生成されたモノフォンの音素列である実発話音素列13mとを対訳データとして、標準音素列10mのあるフレーズ(原言語フレーズ)が、実発話音素列13mのあるフレーズ(目的言語フレーズ)に翻訳される翻訳モデル(フレーズ翻訳モデル)を生成するものである。すなわち、フレーズ翻訳モデル141mは、前記式(1)の翻訳モデルPr(f|e)を生成するものである。
【0043】
なお、対訳データを用いて、翻訳モデルを生成する手法は一般的な手法を用いることができる。例えば、P.Koehnらによる“Moses: Open Source Toolkit for Statistical Machine Translation”(Proceedings of the ACL 2007 Demo and Poster Sessions, pages 177-180)に記載されているようなMoses等のツールを用いることができる。
【0044】
このフレーズ翻訳モデル生成手段141は、例えば、フレーズ翻訳モデル141mとして、
図4に示すように、「原言語フレーズ」が「目的言語フレーズ」に翻訳される「確率[%]」をテーブル情報(フレーズテーブルFT)として生成する。
例えば、
図4では、原言語フレーズの「KaQkok」が目的言語フレーズの「Kakok」に翻訳される確率は、60.20(%)であることを示している。
なお、
図4のフレーズテーブルFTの「例」の欄は、参考までに、各フレーズを音素列として含む単語を示しており、実際にテーブル内に含まれるものではない。
【0045】
このフレーズ翻訳モデル生成手段141は、生成したフレーズ翻訳モデル141mを、図示を省略した記憶手段に記憶する。このフレーズ翻訳モデル141mは、統計的機械翻訳モデル14mの一部として、翻訳手段15において利用される。
【0046】
モノフォン言語モデル生成手段(単一音素言語モデル生成手段)142は、音素認識手段13で生成されたモノフォンの音素列である目的言語の実発話音素列13mから、言語モデル(モノフォン言語モデル142m)を生成するものである。このモノフォン言語モデル142mは、音素認識手段13で生成された実発話音素列13mから、モノフォンを1つの単語とみなして、その出現頻度、接続のしやすさを統計的にモデル(例えば、Nグラムモデル)化したものである。すなわち、モノフォン言語モデル生成手段142は、前記式(1)の言語モデルPr(e)を生成するものである。
【0047】
ここでは、モノフォン言語モデル生成手段142は、予め所定数(例えば、42個)の音素を単語とする単語辞書(不図示)を参照し、学習テキストとして実発話音素列13mを入力して、モノフォン言語モデル142mを生成する。このモノフォン言語モデル生成手段142が使用する単語辞書の単語は、例えば、
図5に示すような音素とする。
図5中、「sil」は無音、「sp」はショートポーズを示す。
【0048】
一般的な言語モデルの生成が単語の出現頻度等をモデル化したものであるのに対し、モノフォン言語モデル142mは、モノフォンの音素の出現頻度等をモデル化したものである。よって、モノフォン言語モデル生成手段142は、その対象となる素材(単語または音素)が異なるのみで、生成手法は従来の言語モデルの手法と同じであるため、ここでは、詳細な説明を省略する。
【0049】
このモノフォン言語モデル生成手段142は、生成したモノフォン言語モデル142mを、図示を省略した記憶手段に記憶する。このモノフォン言語モデル142mは、統計的機械翻訳モデル14mの一部として、翻訳手段15において利用される。
【0050】
翻訳手段15は、元の発音辞書100に登録されている見出し語の発音系列(音素列)を、統計的機械翻訳モデル生成手段14で生成された統計的機械翻訳モデル14mに基づいて翻訳するものである。
すなわち、翻訳手段15は、前記式(1)により、見出し語の発音(原言語fの音素列に相当)が、フレーズ翻訳モデル141mであるPr(f|e)と、モノフォン言語モデル142mであるPr(e)との同時確率が最大となる音素列を、見出し語の翻訳文(目的言語eの音素列に相当)として生成する。
この翻訳手段15は、元の発音辞書100に登録されている見出し語ごとに、対応する発音系列の翻訳文を生成し、拡張手段16に出力する。
【0051】
拡張手段16は、元の発音辞書100に登録されている見出し語の発音系列に、翻訳手段15で翻訳された新たな発音(翻訳文)である音素列を拡張するものである。
すなわち、拡張手段16は、元の発音辞書100に登録されている見出し語に対応する翻訳文が翻訳手段15から入力されるたびに、その翻訳文(音素列)と、元の発音辞書100に登録されている発音系列(音素列)とを比較する。そして、拡張手段16は、翻訳文と元の発音系列とが一致しない場合、当該見出し語に対して、翻訳文を新たな発音系列として追加する。
ここでは、拡張手段16は、元の発音辞書100の見出し語に対する発音系列(元の発音系列および新たな発音系列)を、新たな発音辞書として拡張発音辞書103に登録する。もちろん、拡張手段16は、元の発音辞書100に新たな発音系列のみを追加することとしてもよい。
【0052】
ここで、
図6を参照して、発音系列拡張装置1によって拡張発音辞書103に追加された音素列の例について説明する。
図6に示すように、拡張発音辞書103は、「見出し語」、「元の音素列」、「追加音素列」で構成される。「見出し語」および「元の音素列」は、元の発音辞書100に登録されているものと同じで、「追加音素列」が、発音系列拡張装置1によって追加されたものである。
【0053】
例えば、
図6では、見出し語「女川湾」に元の音素列「onagagawaN」が登録されており、発音系列拡張装置1によって、追加音素列「onagawaN」が追加された例を示している。また、同様に、見出し語「志津川湾」に元の音素列「shizugagawaN」が登録されており、発音系列拡張装置1によって、追加音素列「shizugawaN」が追加されている。
このように、発音系列拡張装置1は、発音のしにくさによって、単語内の音素列「gawawa」が「gawa」に発音変動する場合、個別に手動でこの変動規則を設定する必要がない。
【0054】
また、
図6では、見出し語「ホームグラウンド」に元の音素列「ho:mugurauNdo」が登録されており、発音系列拡張装置1によって、追加音素列「ho:murauNdo」が追加された例を示している。
このように、発音系列拡張装置1は、長い単語中の発音しにくい奥舌性子音の「g」の欠落についても発音辞書に追加することができる。
【0055】
なお、発音系列拡張装置1が生成する拡張発音辞書103は、一般的な音声認識装置、例えば、大語彙連続音声認識装置において使用することができる。その場合、例えば、
図7に示すように、大語彙連続音声認識装置200は、発音系列拡張装置1が生成する拡張発音辞書103に加え、既存の音響モデル101と言語モデル104とにより、入力音声を音声認識し認識結果を出力する。
【0056】
以上説明したように発音系列拡張装置1を構成することで、発音系列拡張装置1は、発音変動を、学習コーパス102を用いて発音辞書に追加することができる。
なお、この実施形態では、音素列生成手段10、トライフォン発音辞書生成手段11およびトライフォン言語モデル生成手段12において、複数組音素としてトライフォンを例に説明した。この複数組音素は、トライフォンに限定されることはなく、その他、組数を増やした音素(例えば、5つの音素で構成されるクイントフォン)であっても構わない。
また、発音系列拡張装置1は、図示を省略したコンピュータを、前記した各手段として機能させるプログラム(発音系列拡張プログラム)で動作させることができる。
【0057】
〔発音系列拡張装置の動作〕
次に、
図8を参照(構成については適宜
図1参照)して、本発明の実施形態に係る発音系列拡張装置1の動作について説明する。
【0058】
まず、発音系列拡張装置1は、学習コーパス102の音声(音声コーパス)から、トライフォンの音素列と、モノフォンの音素列とを生成する。
すなわち、発音系列拡張装置1は、音素列生成手段10によって、発音辞書100と音響モデル101とに基づいて、学習コーパス102の音声(音声コーパス)を強制アライメントし、発音辞書100に登録されている文字列に対応するトライフォンの音素列を生成する(ステップS1)。
【0059】
さらに、音素列生成手段10は、ステップS1で生成されたトライフォンの中心音素を抽出してモノフォンの音素列を生成する(ステップS2)。
このステップS2で生成されたモノフォンの音素列は、後のステップS6で使用する原言語の音素列(標準音素列10m)である。
【0060】
そして、発音系列拡張装置1は、トライフォン発音辞書生成手段11によって、ステップS1で生成されたトライフォンの音素列を、トライフォンごとに、見出し語およびその発音系列とする発音辞書(トライフォン発音辞書11t)を生成する(ステップS3)。
【0061】
さらに、発音系列拡張装置1は、トライフォン言語モデル生成手段12によって、ステップS1で生成されたトライフォンの音素列から、トライフォンを1つの単語とみなした言語モデル(トライフォン言語モデル12t)を生成する(ステップS4)。
【0062】
そして、発音系列拡張装置1は、音素認識手段13によって、ステップS3,S4でそれぞれ生成されたトライフォン発音辞書11tおよびトライフォン言語モデル12tを用いて、学習コーパス102の音声(音声コーパス)からモノフォンの音素を認識する(ステップS5)。
このステップS5で生成されたモノフォンの音素列は、後のステップS6で使用する目的言語の音素列(実発話音素列13m)である。
【0063】
そして、発音系列拡張装置1は、統計的機械翻訳モデル生成手段14によって、ステップS2で生成されたモノフォンの音素列(標準音素列10m)を原言語、ステップS5で認識されたモノフォンの音素列(実発話音素列13m)を目的言語とする統計的機械翻訳モデルを生成する。
すなわち、発音系列拡張装置1は、統計的機械翻訳モデル生成手段14のフレーズ翻訳モデル生成手段141によって、標準音素列10mと実発話音素列13mとを対訳データとして、標準音素列10mのあるフレーズが、実発話音素列13mのあるフレーズに翻訳される翻訳モデル(フレーズ翻訳モデル141m)を生成する(ステップS6)。
【0064】
そして、発音系列拡張装置1は、統計的機械翻訳モデル生成手段14のモノフォン言語モデル生成手段142によって、実発話音素列13mから、モノフォンを1つの単語とみなして、言語モデル(モノフォン言語モデル142m)を生成する(ステップS7)。
【0065】
このステップS7で生成されたモノフォン言語モデル142mと、先のステップS6で生成されたフレーズ翻訳モデル141mとにより、前記式(1)で示す統計的機械翻訳モデル14mが構成されることになる。
その後、発音系列拡張装置1は、翻訳手段15によって、元の発音辞書100に登録されている見出し語の発音系列(音素列)を順次読み出し、ステップS6,S7で生成された統計的機械翻訳モデル14mに基づいて翻訳する(ステップS8)。
【0066】
そして、発音系列拡張装置1は、拡張手段16によって、ステップS8で読み出した見出し語に対応する発音系列と、ステップS8で翻訳した発音系列とが異なる場合、翻訳した発音系列を当該見出し語の発音系列(音素列)として新たに追加する(ステップS9)。
【0067】
そして、発音系列拡張装置1は、発音辞書100に登録されている見出し語に対して、翻訳を完了していない場合(ステップS10でNo)、ステップS8に戻って動作を続ける。
一方、すべての見出し語に対して、翻訳を完了した場合(ステップS10でYes)、発音系列拡張装置1は、動作を終了する。
以上の動作によって、発音系列拡張装置1は、発音変動のある発話音声の発音系列(音素列)を発音辞書に追加し、拡張することができる。
【0068】
(単語間の発音変動について)
以上の説明において、発音辞書100の見出し語として、単語を例として説明した。しかし、発音系列拡張装置1は、音素を単位として発音変動の音素列を新たな発音系列とするため、必ずしも対象とする見出し語は単語である必要はなく、任意の文字列(複数の単語、文章等)であればよい。
これによって、発音系列拡張装置1は、単語内の発音変動のみならず、単語間の発音変動にも対応することができる。
【0069】
この単語間の発音変動について、
図9を参照(適宜
図1参照)して説明する。
以下、音声認識において使用される、入力記号、出力記号および遷移確率を持った有限状態マシンである重み付き有限状態トランスデューサ(WFST)の表記を用いて説明する。
例えば、3単語(「ある」「の」「です」)で構成される単語トライグラム「あるのです」の音素列が発音辞書100に登録されているとする。
【0070】
図9(a)に、単語トライグラム「あるのです」をWFSTの表記で示す。なお、WFSTの矢印上の「入力信号/出力信号(遷移確率)」のうち、遷移確率の記載は省略する。また、「eps」は入出力がない遷移を示す(以下、同様)。
この単語トライグラムを、従来のように単語のみを登録した発音辞書を用いてWFSTで表記すると、
図9(b)のような遷移で表すことができる。
すなわち、この単語トライグラムは、
図9(c)に示すような音素列の遷移として表される。
【0071】
一方、発音辞書に任意の文字列(ここでは、「あるんです」)を登録しておけば、発音系列拡張装置1は、
図9(d)に示すように、「arunodesu」という音素列の「unode」に対して、「uNde」が遷移先のバリエーションとして追加されることになる。
このように、本発明に係る発音系列拡張装置1は、単語内の発音変動のみならず、単語間に跨った発音変動に対しても、音声認識可能な発音辞書を生成することができる。