(57)【特許請求の範囲】
【請求項１】
発音記号列を隠れマルコフモデルの状態を並べたＨＭＭ状態列へ変換する発音変換部と、
隠れマルコフモデルの状態間の類似度を定める類似度行列を用いて、前記ＨＭＭ状態列を、特定の発音に類似する度合いを表すスコアベクトル列に変換するＨＭＭ変換部と、
探索ネットワークに含まれる経路のうち、前記スコアベクトル列に対するスコアが他の経路より良い経路を探索し、探索した経路に対応する発音記号列を出力する探索部と、
を備える情報処理装置。
【請求項２】
前記探索ネットワークは、重み付き有限状態トランスデューサである、
請求項１に記載の情報処理装置。
【請求項３】
前記探索ネットワークは、出力する発音記号列の制約を含む第１重み付き有限状態トランスデューサを用いて生成される重み付き有限状態トランスデューサである、
請求項１に記載の情報処理装置。
【請求項４】
前記探索ネットワークは、前記第１重み付き有限状態トランスデューサ、隠れマルコフモデルを表す第２重み付き有限状態トランスデューサ、および、コンテキスト依存の発音記号からコンテキスト非依存の発音記号へ変換する第３重み付き有限状態トランスデューサを合成した重み付き有限状態トランスデューサである、
請求項３に記載の情報処理装置。
【請求項５】
前記第１重み付き有限状態トランスデューサは、発音記号の種類の数をＮ（Ｎは１以上の整数）とするとき、長さがＭ（Ｍは１以上の整数）の発音記号列の種類の数がＮＭ未満となる発音記号列のみを受理する、
請求項３に記載の情報処理装置。
【請求項６】
前記第１重み付き有限状態トランスデューサは、長さＭ（Ｍは１以上の整数）以上の発音記号列について、処理対象とする言語の語彙に含まれる単語から構成される単語列に現れる長さＭまたはＭ以上の発音記号列から構成される発音記号列のみを受理する、
請求項３に記載の情報処理装置。
【請求項７】
前記第１重み付き有限状態トランスデューサは、長さＭ（Ｍは１以上の整数）以上の発音記号列について、処理対象とする言語の語彙に含まれる単語のうち、使用頻度が一定値以上の単語から構成される単語列に現れる長さＭまたはＭ以上の発音記号列から構成される発音記号列のみを受理する、
請求項３に記載の情報処理装置。
【請求項８】
前記探索ネットワークは、隠れマルコフモデルを表す第２重み付き有限状態トランスデューサ、および、コンテキスト非依存の発音記号で表すことができるコンテキスト依存の発音記号のうち、一部のコンテキスト依存の発音記号のみを受理する第３重み付き有限状態トランスデューサを合成した重み付き有限状態トランスデューサである、
請求項１に記載の情報処理装置。
【請求項９】
前記探索部は、前記スコアベクトル列に含まれるスコアベクトルのｉ次元目（ｉは１以上の整数）の値を隠れマルコフモデルの状態ｉの出力確率であるとみなして経路を探索する、
請求項１に記載の情報処理装置。
【請求項１０】
情報処理装置と認識装置とを備える認識システムであって、
前記情報処理装置は、
追加される単語の発音記号列を隠れマルコフモデルの状態を並べたＨＭＭ状態列へ変換する発音変換部と、
隠れマルコフモデルの状態間の類似度を定める類似度行列を用いて、前記ＨＭＭ状態列を、特定の発音に類似する度合いを表すスコアベクトル列に変換するＨＭＭ変換部と、
探索ネットワークに含まれる経路のうち、前記スコアベクトル列に対するスコアが他の経路より良い経路を探索し、探索した経路に対応する発音記号列を出力する探索部と、を備え、
前記認識装置は、
前記探索部により出力された発音記号列を、前記単語の発音記号列として設定し、前記単語を認識対象として登録する登録部を備える、
認識システム。
【請求項１１】
発音記号列を隠れマルコフモデルの状態を並べたＨＭＭ状態列へ変換する発音変換ステップと、
隠れマルコフモデルの状態間の類似度を定める類似度行列を用いて、前記ＨＭＭ状態列を、特定の発音に類似する度合いを表すスコアベクトル列に変換するＨＭＭ変換ステップと、
探索ネットワークに含まれる経路のうち、前記スコアベクトル列に対するスコアが他の経路より良い経路を探索し、探索した経路に対応する発音記号列を出力する探索ステップと、
を含む情報処理方法。
【請求項１２】
コンピュータを、
発音記号列を隠れマルコフモデルの状態を並べたＨＭＭ状態列へ変換する発音変換部と、
隠れマルコフモデルの状態間の類似度を定める類似度行列を用いて、前記ＨＭＭ状態列を、特定の発音に類似する度合いを表すスコアベクトル列に変換するＨＭＭ変換部と、
探索ネットワークに含まれる経路のうち、前記スコアベクトル列に対するスコアが他の経路より良い経路を探索し、探索した経路に対応する発音記号列を出力する探索部、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、情報処理装置、情報処理方法、プログラムおよび認識システムに関する。
【背景技術】
【０００２】
音声認識のエラーの予測、および、発音変動のモデリングなどを目的として、２つの発音記号列の類似度を得る技術が提案されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Stefan  Petrik  and  Gernot  Kubin,  “Reconstructing  Medical  Dictations  from  Automatically  Recognized  and  Non-literal  Transcripts  with  Phonetic  Similarity  Matching”,  in  Proc.  ICASSP,  2007
【非特許文献２】Daniel  Povey  et  al.,  “Generating  Exact  Lattices  in  the  WFST  Framework,”  in  Proc.  ICASSP,  2012
【非特許文献３】Paul  R.  Dixon  et  al.,“A  Specialized  WFST  Approach  for  Class  Models  and  Dynamic  Vocabulary,”  in  Proc.  INTERSPEECH,  2012
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来技術では、例えば２つの発音記号列が与えられたときの両者の類似度を計算することはできるが、ある１つの発音記号列が与えられたときに、この発音記号列に類似する発音記号列を得ることはできない。
【課題を解決するための手段】
【０００５】
実施形態の情報処理装置は、発音変換部と、ＨＭＭ変換部と、探索部と、を備える。発音変換部は、発音記号列を隠れマルコフモデルの状態を表すＨＭＭ状態列へ変換する。ＨＭＭ変換部は、隠れマルコフモデルの状態間の類似度を定める類似度行列を用いて、ＨＭＭ状態列を、特定の発音に類似する度合いを表すスコアベクトル列に変換する。探索部は、探索ネットワークに含まれる経路のうち、スコアベクトル列に対するスコアが他の経路より良い経路を探索し、探索した経路に対応する発音記号列を出力する。
【図面の簡単な説明】
【０００６】
【図１】実施形態の情報処理装置のブロック図。
【図２】実施形態における変換処理のフローチャート。
【図３】受理できる音素の制約を表すＷＦＳＴの一例を示す図。
【図４】受理できる音素の制約を表すＷＦＳＴの一例を示す図。
【図５】類似発音記号列を得る処理の具体例を示す図。
【図６】実施形態の認識システムのブロック図。
【図７】実施形態にかかる情報処理装置のハードウェア構成図。
【発明を実施するための形態】
【０００７】
以下に添付図面を参照して、この発明にかかる情報処理装置の好適な実施形態を詳細に説明する。
【０００８】
例えば、音声認識による誤認識の発生しやすい単語を見つけるために、与えられた発音記号列に類似する発音記号列を求めることが有効な場合がある。他にも、音素記号列による単語の綴りを検索する機能、および、文書検索装置における外来語の正規化機能などに対して、ある発音記号列に類似する発音記号列を得る技術が適用されうる。しかし上記のように、２つの発音記号列が与えられたときの両者の類似度を計算する従来の技術では、発音記号列に類似する発音記号列を得ることはできない。
【０００９】
（第１の実施形態）
第１の実施形態では、与えられた発音記号列に類似する発音記号列（類似発音記号列）を得ることを可能とする。第１の実施形態の情報処理装置は、音声に対応する発音記号列を出力する音声認識装置の機能の一部を利用する。また第１の実施形態の情報処理装置は、発音記号列を音声認識装置に入力するスコアベクトル列へ変換する処理において、類似度行列を導入する。これらの機能により、発音記号列を入力すると類似発音記号列を得ることが可能となる。
【００１０】
（定義）
発音記号とは発音を表す記号である。例えば、音声記号、音素記号、および、音節記号が、発音記号に相当する。発音記号はこれらに限られず、発音を表すことができればどのような記号を用いても良い。例えば、国際音声記号、ＳＡＭＰＡ（Speech  Assessment  Methods  Phonetic  Alphabet）、および、Ｘ−ＳＡＭＰＡ（Extended  SAM  Phonetic  Alphabet）などを発音記号として用いても良い。使用する発音に対して数字を割り当てておき、それらの数字を発音記号として用いることもできる。日本語であれば、ひらがなやカタカナを発音記号として用いても良い。
【００１１】
発音ＨＭＭは、発音に対応付けられている隠れマルコフモデル（Hidden  Markov  Model、ＨＭＭ）である。発音が音素の場合は、音素ＨＭＭと呼ばれることがある。本実施形態で使用するＨＭＭは、状態遷移が左から右に進む（left-to-right）ＨＭＭで、分岐した状態は含まないものとする。ただし、遷移の分岐はあっても良い。
【００１２】
重み付き有限状態トランスデューサ（Weighted  Finite  State  Transducer、ＷＦＳＴ）は、遷移に入力記号、出力記号、および、重みが割り当てられている有限状態オートマトンである。
【００１３】
（装置構成）
図１は、本実施形態の情報処理装置１００の構成例を示すブロック図である。図１に示すように、情報処理装置１００は、発音変換部１０１と、ＨＭＭ変換部１０２と、探索部１０３と、を備えている。
【００１４】
発音変換部１０１は、発音記号列を、ＨＭＭの状態を並べたＨＭＭ状態列へ変換する。例えば発音変換部１０１は、発音記号列を、発音記号列を構成する発音記号ごとにＨＭＭ状態列へ変換し、変換したＨＭＭ状態列を入力された発音記号列と同じ順で結合することにより、ＨＭＭ状態列を得る。
【００１５】
各発音記号に対応するＨＭＭ状態列には、音声認識に用いるために公知の方法で学習されたＨＭＭの状態を並べた情報（発音ＨＭＭなど）を用いることができる。ＨＭＭがモノフォンで学習されている場合は、各発音記号に対応するＨＭＭの状態を並べるだけで良い。ＨＭＭがバイフォン、トライフォン、または、４個以上の前後のコンテキストを考慮した発音に対応付けられている場合は、発音変換部１０１は、同じ個数の前後のコンテキストを考慮して、発音記号をＨＭＭ状態列へ変換する。
【００１６】
前後のコンテキストを考慮する場合、ＨＭＭ状態列への変換には、発音記号列の始端の前と終端の後の発音記号が必要になる。そこで、始端の前と終端の後の発音記号は無音とする。ここでは、無音を「ｓｉｌ」と表すものとする。例えばトライフォンの場合、発音記号列として「ａ、ｂ、ｃ」が入力されると、発音変換部１０１は、発音記号列が「ｓｉｌ、ａ、ｂ、ｃ、ｓｉｌ」であるとしてＨＭＭ状態列へ変換する。この例では、発音変換部１０１は、「ｓｉｌ−ａ＋ｂ」、「ａ−ｂ＋ｃ」、「ｂ−ｃ＋ｓｉｌ」の３つのトライフォンに対応するＨＭＭを発音ＨＭＭの集合から取り出し、それらを順につなぐことで、ＨＭＭ状態列を作成する。
【００１７】
ＨＭＭ変換部１０２は、ＨＭＭ状態列をスコアベクトル列へ変換する。例えばＨＭＭ変換部１０２は、ＨＭＭの状態間の類似度を定める類似度行列を用いてＨＭＭ状態列をスコアベクトル列に変換する。ＨＭＭの各状態に１から順に番号が振ってあるとする。状態の番号がｘの場合、類似度行列のｘ列目の列ベクトルが、その状態ｘに対応するスコアベクトルとなる。ＨＭＭ変換部１０２にはＨＭＭ状態列が入力される。ＨＭＭ変換部１０２は、入力されたＨＭＭ状態列の各状態に対してスコアベクトルを求め、求めたスコアベクトルを対応する状態と同じ順で並べたスコアベクトル列を出力する。類似度行列の詳細は後述する。
【００１８】
探索部１０３は、探索ネットワークに含まれる経路のうち、スコアベクトル列に対するスコア、すなわち、経路上のスコアとスコアベクトル列から得られるスコアを足した値が他の経路より良い経路を探索し、探索した経路に対応する発音記号列を出力する。探索ネットワークは、ＨＭＭの状態がノードまたはアークに対応付けられているネットワークであり、例えばＷＦＳＴでは遷移（アーク）の入力記号に対応する。経路上のスコアとは、ＷＦＳＴにおいては、その経路を構成する遷移の重みの合計値に対応する。探索ネットワークの経路上のスコアがない、例えば、ＷＦＳＴの遷移の重みがすべて０である場合は、スコアベクトル列から得られるスコアのみを考慮して他の経路より良い経路を探索する。探索部１０３は、公知の音声認識方法で用いられるデコーダに含まれる探索部（以下、探索部Ｓという）により構成しても良い。
【００１９】
音声認識で用いられるデコーダは、主に音響スコア計算部と探索部Ｓを含む。音響スコア計算部は、音声から得られる特徴ベクトル列をスコアベクトル列へ変換する。スコアベクトル列は、入力された音声が特定の発音に類似する度合いを表すスコア（音響スコア、出力確率など）を表すベクトルの列である。探索部Ｓは、音響スコア計算部により計算されたスコアベクトル列を用いて、入力された音声に近い、探索ネットワーク中の経路を探索し、得られた経路に対応する単語列や発音記号列を出力する。
【００２０】
本実施形態では、探索ネットワークがＷＦＳＴで表されているものとする。この場合、探索部１０３（＝探索部Ｓ）は、スコアベクトル列から得られるＷＦＳＴと探索ネットワークとして与えられるＷＦＳＴとを合成したＷＦＳＴに含まれる経路のうち、スコアが良い経路を見つける処理を行う。ＷＦＳＴを探索ネットワークとして用い、最良経路のみを見つけるのであれば、公知であるビタビアルゴリズムを実行すれば良い。ＷＦＳＴを用いるこのような探索部１０３は、例えば、非特許文献２に示されている。
【００２１】
探索ネットワークとして用いるＷＦＳＴの出力記号が発音記号であれば、探索部１０３は、入力されるスコアベクトル列に応じた発音記号列を出力する。探索部１０３は、ＨＭＭ変換部１０２から渡されるスコアベクトルのｉ次元目（ｉは１以上の整数）の値が状態番号ｉのＨＭＭの状態の出力確率（または対数出力確率）であるとみなして処理を行う。
【００２２】
ＨＭＭ変換部１０２から渡されるスコアベクトルのｉ次元目の値は、類似度行列から得られる類似度を示すため、確率に基づいた値ではない。しかし、探索部１０３は、この値を出力確率（スコア）であるとみなせば、公知の音声認識の探索部Ｓと同様の処理で、スコアが他の経路より良い経路を探索することが可能となる。従って、探索部１０３は正しく動作する。
【００２３】
本実施形態では、スコアベクトル列が音声から変換されるのではなく、発音記号列から変換される。このため、情報処理装置１００は、公知の音声認識方法で用いられるデコーダのうち、音響スコア計算部は備えなくても良く、探索部Ｓと同様の機能を備える探索部１０３を備えていればよい。なお、情報処理装置１００を音声認識装置に適用する場合は、音声認識装置が備える探索部Ｓと探索部１０３を共通化するように構成してもよい。
【００２４】
発音変換部１０１、ＨＭＭ変換部１０２、および、探索部１０３は、例えば、ＣＰＵ（Central  Processing  Unit）などの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現しても良いし、ＩＣ（Integrated  Circuit）などのハードウェアにより実現しても良いし、ソフトウェアおよびハードウェアを併用して実現しても良い。
【００２５】
（変換処理のフロー）
次に、このように構成された第１の実施形態にかかる情報処理装置１００による変換処理について図２を用いて説明する。図２は、第１の実施形態における変換処理の一例を示すフローチャートである。変換処理は、入力された発音記号列を類似発音記号列に変換する処理である。
【００２６】
発音記号列が入力されると、発音変換部１０１は、入力された発音記号列をＨＭＭ状態列に変換する（ステップＳ１０１）。発音変換部１０１は、上記のように、例えば事前に学習された発音ＨＭＭの集合を参照し、各発音記号に対応するＨＭＭ状態列を求め、求めたＨＭＭ状態列を対応する発音記号の順序で並べることにより、ＨＭＭ状態列を生成して出力する。
【００２７】
ＨＭＭ変換部１０２は、発音変換部１０１により変換されたＨＭＭ状態列を、類似度行列を用いてスコアベクトル列に変換する（ステップＳ１０２）。探索部１０３は、スコアベクトル列を用いて、探索ネットワークに含まれる経路のうち、スコアベクトル列に対するスコアが他の経路より良い経路を探索し、探索した経路に対応する発音記号列を出力する（ステップＳ１０３）。
【００２８】
このように、本実施形態では、音声認識で用いられる音響スコア計算部が算出するスコアベクトル列の代わりに、同様の値を含むスコアベクトル列を、類似度行列を用いて求める。そして、このスコアベクトル列を用いて、従来の音声認識の探索部と同様の方法により、最良の発音記号列を探索する。これにより、入力された発音記号列を類似発音記号列に変換可能となる。
【００２９】
（発音ＨＭＭの集合）
次に、発音ＨＭＭの集合の詳細について説明する。本実施形態では、発音記号ごとにＨＭＭが存在し、各発音記号のＨＭＭを含む集合を、発音ＨＭＭの集合と呼ぶこととする。１つの発音記号に複数のＨＭＭが割り当てられることがある。これは、前後のコンテキストを考慮する場合に発生する。例えば、トライフォンを用いる場合である。トライフォンを用いる場合、発音が音素であり、前後１つの音素コンテキストが考慮される。このため、中心音素が同じであっても、前後の音素が異なると、異なるＨＭＭが対応付けられることがある。
【００３０】
なお、トライフォンより長い音素コンテキストを考慮しても良いし、トライフォンより短い音素コンテキストを考慮するようにしても良い。ただし、このようなコンテキストを考慮したＨＭＭを用いる場合は、発音記号列をＨＭＭ状態列へ変換するときに、発音記号列内の各音素の前後のコンテキストを考慮しながらＨＭＭ状態列を作成することとなる。これについては前述したとおりである。発音ＨＭＭの集合は、一般的に知られている音声認識の発音ＨＭＭの作成方法によって作成することができる。
【００３１】
（類似度行列）
次に、類似度行列の詳細について説明する。類似度行列は、発音ＨＭＭの各状態間の類似度を表す行列である。音声認識で用いられる発音ＨＭＭでは、異なる発音記号に割り当てられているＨＭＭ間で状態が共有されることがある。この場合の類似度行列は、共有後の状態間の類似度を表す行列となる。ＨＭＭの状態の数（状態が共有される場合は、共有後の状態の数）をＫ（Ｋは２以上の整数）とすると、類似度行列はＫ×Ｋの行列となる。
【００３２】
各状態に１から順に状態番号を振ると、類似度行列のｐ行目ｑ列目の成分は、状態ｐと状態ｑの類似度を計算することによって得ることができる。なお、類似度行列が大きくなるが、共有前の状態間で類似度行列を作成しても良い。この場合、共有後の状態が同じになる状態の類似度は完全一致を表す値となる。
【００３３】
類似度には、例えば、コサイン類似度を用いることができる。ＨＭＭの各状態にベクトルを割り当てると、状態間の類似度は、コサイン類似度を用いて計算することができる。
【００３４】
各状態に割り当てるベクトルは、例えば次のようにして計算することができる。まず、類似度を計算するための音声データが、特徴ベクトル列に変換される。特徴ベクトル（特徴量）はどのような情報であってもよい。例えば、ＭＦＣＣ（Mel  Frequency  Cepstral  Coefficient）、フィルタバンク特徴量、および、ＳＡＴＣ（Subband  Average  Time  Cepstrum：帯域別平均時間ケプストラム）などの特徴量を適用することができる。
【００３５】
音声データは、例えばすべての音素ＨＭＭを含む音声データなど、ＨＭＭの各状態間の類似度を適切に求められるデータであればよい。音声データが長さＬｓの特徴ベクトル列に変換されたとする。長さＬｓの特徴ベクトル列を発音ＨＭＭの集合に含まれる各ＨＭＭの状態に与えることにより、状態ごとにＬｓ個の出力確率（または対数出力確率）が得られる。このＬｓ個の出力確率（または対数出力確率）を成分とするＬｓ次元のベクトルが、ＨＭＭの状態を表すベクトル（状態に割り当てられるベクトル）となる。
【００３６】
各状態に割り当てるベクトルの算出、および、算出されたベクトル等を用いた状態間の類似度の算出（類似度行列の算出）は、変換処理を実行する前までに事前に算出される。算出された類似度行列は、情報処理装置１００が備える記憶媒体などに記憶されてもよい。なお発音ＨＭＭの集合、および、ＷＦＳＴも情報処理装置１００が備える記憶媒体などに記憶されてもよい。
【００３７】
（探索部で使用するＷＦＳＴ）
ＷＦＳＴを用いる音声認識では、一般的に、ＨＭＭを表すＷＦＳＴ（以下、Ｈとする）、コンテキスト依存の発音をコンテキスト非依存の発音に変換するＷＦＳＴ（以下、Ｃとする）、単語の発音を表すＷＦＳＴ（以下、Ｌとする）、および、単語のつながりを表すＷＦＳＴ（以下、Ｇとする）を合成および最適化したＷＦＳＴが用いられる。本実施形態では、ＬおよびＧは不要である。代わりに、受理できる音素（出力する発音記号列）の制約を表すＷＦＳＴ（以下、Ｒとする）を導入する。従って、探索部１０３が用いるＷＦＳＴは、Ｈ・Ｃ・Ｒとなる。ここで記号「・」は、ＷＦＳＴの合成演算を表す。合成演算には、公知の方法を適用できる。
【００３８】
Ｈ・Ｃ・Ｒに公知の決定化処理や最小化処理を実施することで小さくしたＷＦＳＴを探索部１０３が用いるようにしても良い。なお、コンテキスト非依存の発音記号に対してＨＭＭが割り当てられている場合、Ｃは不要である。探索部１０３は、前述したように公知の音声認識で用いられるデコーダの探索部Ｓで実現できる。同様に、Ｎ番目に良い認識結果を取得する方法も知られている。従って、入力した発音記号列に対してＮ番目に類似する発音記号列も、同様の方法で実現することができる。その場合、Ｒを導入しなくとも、類似発音記号列を得ることができる。探索部１０３が用いるＷＦＳＴをＨ・Ｃとし、２番目以降に類似する発音記号列を処理結果として出力するだけで良いからである。
【００３９】
一方、出力する発音記号列に制約をかける場合は、Ｒを用いる必要がある。例えば、子音の後には必ず母音がくるという制約をかければ、その制約を満たす発音記号列のうち、入力された発音記号列に類似する発音記号列が、出力される発音記号列となる。もし、入力される発音記号列に子音が連続する箇所があれば、その制約を満たすように子音の一部が母音に置き換わった発音記号列が出力される。
【００４０】
図３は、このようなＲ（受理できる音素の制約を表すＷＦＳＴ）の一例を示す図である。図３では簡略化のため、母音として、「ａ」、「ｉ」、「ｕ」の３つ、子音として「ｂ」、「ｋ」、「ｔ」の３つのみを記載している。また、初期状態および終了状態とも状態１であるとしている。状態１から状態１への自己遷移には母音である「ａ」、「ｉ」、「ｕ」が入力記号および出力記号に割り当てられている。状態１から状態２への遷移には子音である「ｂ」、「ｋ」、「ｔ」が入力記号および出力記号に割り当てられている。状態２から状態１への遷移には母音である「ａ」、「ｉ」、「ｕ」が入力記号および出力記号に割り当てられている。
【００４１】
子音が割り当てられている状態２から出ていく遷移は存在しないため、子音の後には母音しかこないという制約が実現できている。なお、重みの記載は省略している。制約をかけるだけであるので、重みは不要であるからである。
【００４２】
制約は図３のような例に限られるものではなく、どのような制約であってもよい。例えば、長さがＭ（Ｍは１以上の整数）以上の発音記号列について、処理対象とする言語の語彙に含まれる単語から構成される単語列に現れる長さがＭまたはＭ以上の発音記号列から構成される発音記号列のみを受理するという制約を表すＲを用いてもよい。また、長さがＭ以上の発音記号列について、処理対象とする言語の語彙に含まれる単語のうち、使用頻度が一定値以上の単語から構成される単語列に現れる長さがＭまたはＭ以上の発音記号列から構成される発音記号列のみを受理するという制約を表すＲを用いてもよい。また、発音記号の種類の数をＮ（Ｎは１以上の整数）とするとき、長さがＭの発音記号列の種類の数がＮＭ未満となる発音記号列のみを受理するという制約を表すＲを用いてもよい。このような制約を表すＲを用いると、対象となる言語で使用できない発音記号列を、それに類似し、使用できる発音記号列へ変換することができる。
【００４３】
一例として、対象とする言語が使用する発音記号が「ａ」、「ｂ」、「ｃ」の３つのみであるとする。さらに、Ｍ＝２とするとき、その言語で出現する発音記号の組み合わせは、「ａｂ」、「ｂｃ」、「ｃａ」、「ａａ」のみであるとする。図４は、この場合のＲ（受理できる音素の制約を表すＷＦＳＴ）の一例を示す図である。状態１が初期状態、状態２から４が終了状態である。このＲでは、例えば、発音記号列「ａａａｂｃ」は受理されるが、発音記号列「ｃａｃ」は受理されない。最初の「ｃ」で状態１から４に、次の「ａ」で状態４から２へ遷移できるが、最後の「ｃ」を入力記号に持つ遷移は状態２には存在しないためである。なお、Ｍより短い「ａ」、「ｂ」、「ｃ」は全て受理される。
【００４４】
制約によっては、ＣとＲとを合成したＷＦＳＴを直接作成することもできる。この場合、探索部１０３が用いるＷＦＳＴはＨ・Ｃとなる。例えば、発音記号が音素であって、コンテキスト依存音素がトライフォンである場合を考える。この場合、Ｃはトライフォンをコンテキスト非依存の音素、すなわち、モノフォンに変換するＷＦＳＴとなる。このＷＦＳＴの入力記号はトライフォンであり、出力記号はモノフォンである。制約がトライフォンの単位で表せる場合、制約を満たさないトライフォンを入力記号に持つ遷移をＣから除去する。言い換えると、制約を満たすトライフォンのみでＣを構成するということである。このようにすると、Ｒを導入することなく、情報処理装置１００が出力する発音記号列に制約をかけることができる。
【００４５】
（具体例）
図５を一例として参照しつつ、類似発音記号列を得る処理の具体例について説明する。この例では、発音記号列は音素列であるとする。また、４つの音素を含む音素列５０１が入力されるものとする。
【００４６】
音声認識では、各音素に対して「left-to-right」の３状態のＨＭＭを割り当てることが多い。そこで、この例でも同じＨＭＭを用いる。そうすると、１音素につき３つの状態が割り当てられることとなり、１２個の状態から成るＨＭＭ状態列が得られる。音声認識で用いられる音素ＨＭＭでは、異なる音素に割り当てられているＨＭＭ間で状態を共有することがある。図５の丸の中に記載している番号は、この共有後の状態の番号である。また、理解を容易にするために、ＨＭＭに遷移を表す矢印を記載しているが、実際には、各状態に割り当てられている共有後の状態番号を保持しておくだけで良い。この例では、発音変換部１０１は、音素列５０１を、「２，７，６，１，４，５，２，９，６，３，７，５」という数列に変換する。この数列がＨＭＭ状態列に相当する。
【００４７】
次に、ＨＭＭ変換部１０２は、類似度行列を用いて、ＨＭＭ状態列（数列）をスコアベクトル列に変換する。ＨＭＭ変換部１０２は、類似度行列の各列ベクトルから、数列に含まれる各番号に対応する列ベクトルを順次抽出して並べることにより、スコアベクトル列を求める。図５の例では、ＨＭＭ変換部１０２は、２列目の列ベクトル、７列目の列ベクトル、６列目の列ベクトル・・・というようにＨＭＭ状態列に含まれる各状態と同じ順で、各状態の状態番号に対応する列ベクトルを並べることで、スコアベクトル列を得る。スコアベクトル内の数値ｉは、類似度行列のｉ列目の列ベクトルであることを示している。
【００４８】
このように作成されたスコアベクトル列を探索部１０３に入力すると、音声認識と同じ処理によって、ＷＦＳＴで規定される制約に従った類似の音素列を得ることができる。音素列５０２は、このようにして求められた音素列５０１に類似する音素列の例である。この例では、音素列５０１に含まれる最初の２つの音素列が認識できないという制約を持つＷＦＳＴ（Ｒ）を用いているとした。この場合、例えばこの２つの音素列に最も近いと思われる音素列「ｄｏ」が代わりに出力される。
【００４９】
このように、第１の実施形態にかかる情報処理装置では、発音記号列を入力すると類似発音記号列を得ることが可能となる。
【００５０】
（第２の実施形態）
第２の実施形態では、類似の発音記号列を得る処理を利用する認識装置の例を説明する。音声は、公知の音声認識技術により単語列へ変換することができる。このとき、似た発音の２つの音声をそれぞれ異なる単語列へ変換することは、まったく似ていない発音の２つの音声をそれぞれ異なる単語列へ変換することに比べ難しい。逆に、音声認識装置に登録されている単語の発音記号列が正しい発音記号列から少しだけ異なっていても、その単語は認識されうる。
【００５１】
認識できる語彙に新たな単語を追加することができる音声認識装置が知られている。追加する単語の発音は発音記号列によって指定される。このような音声認識装置のうち、ＷＦＳＴを用いる装置が知られている（例えば、非特許文献３）。
【００５２】
また、このような音声認識装置において新たに追加された単語を認識するためにサブワードを認識できる経路をＷＦＳＴに含める方法がある。サブワードは単語を構成する要素である。例えば音素、音節、および、それらを繋げた要素などがサブワードに相当する。サブワードが発音記号であれば、入力された音声に対応する発音記号列が得られる。得られた発音記号列が新たに追加された単語の発音記号列と一致すれば、認識結果として、新たに追加された単語が出力される。
【００５３】
任意の発音記号列を出力できるようにサブワードを認識するための経路を構成するとＷＦＳＴが大きくなる。このため、サブワードを認識するための経路によって認識できる発音記号列に何らかの制約をつける場合がある。このような制約をつけると、ＷＦＳＴを小さくできる一方、制約を外れる発音記号列をもつ単語を認識できなくなる。
【００５４】
例えば、音声認識の対象とする言語において使用される頻度が高い発音記号列のみを認識するように制約をかけたサブワードを認識するための経路で構成されるＷＦＳＴは、制約をかけないサブワードを認識するための経路で構成されるＷＦＳＴに比べて小さくすることができる。このとき、制約を満たさない発音記号列をもつ単語が追加されても、その単語は決して認識されない。そこで、第１の実施形態で述べた情報処理装置１００を用いることで、制約を満たさない発音記号列を、制約を満たす発音記号列に変換する。そして、変換後の発音記号列を、追加する単語の発音記号列とする。前述したように、ある発音記号列で表される単語は、それに似た発音記号列でも認識される可能性がある。そのため、このように変換された発音記号列で追加された単語は、変換前の発音記号列にしたがった音声が入力されると、音声認識装置によって認識されうる。
【００５５】
（装置構成）
図６は、本実施形態の認識システムの構成例を示すブロック図である。図６に示すように、認識システムは、情報処理装置１００と、音声認識装置２００と、語彙変換部３００と、を備えている。
【００５６】
情報処理装置１００は、第１の実施形態と同様の機能を備えるため、同一の符号を付し説明を省略する。本実施形態では、情報処理装置１００は、制約を満たさない発音記号列が割り当てられる可能性がある追加語彙に含まれる単語の発音記号列を、制約を満たす類似発音記号列へ変換する処理に利用される。
【００５７】
音声認識装置２００は、フロントエンド２０１と、デコーダ２１０とを備えている。フロントエンド２０１は、入力された音声から音声区間を検出する処理、および、検出した区間に対する特徴量（特徴ベクトル）を抽出する処理などを実行する。デコーダ２１０は、基礎ＷＦＳＴと追加ＷＦＳＴと、フロントエンド２０１から渡される特徴ベクトルを用いて、入力された音声に最も近いと考えられる単語列を認識結果として出力する。
【００５８】
基礎ＷＦＳＴは、音声認識で用いられる公知のＷＦＳＴにサブワードを認識するための経路を含んだＷＦＳＴである。追加ＷＦＳＴは、基礎ＷＦＳＴでは認識できない追加語彙を認識するためのＷＦＳＴである。追加ＷＦＳＴは、追加語彙に基づき語彙変換部３００によって作成される。
【００５９】
語彙変換部３００は、発音が変換された後の追加語彙に基づき追加ＷＦＳＴを作成する。例えば語彙変換部３００は、追加語彙を変換し、サブワードとクラスを入力記号とし、単語を出力記号とする経路を含む追加ＷＦＳＴを生成する。
【００６０】
デコーダ２１０は、音響スコア計算部２１１と、探索部２１２と、合成部２１３と、を備えている。音響スコア計算部２１１は、音声から得られる特徴ベクトル列をスコアベクトル列へ変換する。合成部２１３は、基礎ＷＦＳＴと追加ＷＦＳＴとを用いて、少なくとも探索部２１２が必要とする部分を含むＷＦＳＴを合成し、探索部２１２から参照できるようにする。探索部２１２は、上記探索部Ｓおよび探索部１０３と同様に、音響スコア計算部２１１により計算されたスコアベクトル列を用いて、入力された音声に近い、探索ネットワーク（合成部２１３により合成されたＷＦＳＴ）中の経路を探索し、得られた経路に対応する単語列や発音記号列を出力する。
【００６１】
なお、新たに追加された単語を認識可能とする方法は、図６に示す方法に限られるものではなく、従来から用いられているあらゆる方法を適用できる。例えば、非特許文献３の方法の他、Ｌに追加単語を追加する方法、および、Ｌには追加単語を追加せずＧに追加単語に関する経路を埋め込む方法などを適用してもよい。
【００６２】
基礎ＷＦＳＴに含まれるサブワードを認識するための経路によって認識できる発音記号列に制約がある場合、情報処理装置１００は、その制約を表すＲによって制約をかけたＨ・Ｃ・Ｒを用いて発音記号列を変換する。または、情報処理装置１００は、制約付きのＣを直接作成し、Ｈ・Ｃを用いて発音記号列を変換する。なお、コンテキスト非依存の発音記号に対してＨＭＭが割り当てられている場合、Ｃは不要である。
【００６３】
情報処理装置１００が利用するＷＦＳＴの作成に使用されるＨの元となる発音ＨＭＭの集合には、基礎ＷＦＳＴの作成に使用されるＨの元となる発音ＨＭＭの集合を用いる。これにより、音声認識装置が区別しにくい類似発音記号列を得ることができる。
【００６４】
以上のように、サブワードを認識するための経路によってかけられる制約と情報処理装置１００の出力にかけられる制約を一致させることで、任意の発音記号列の単語を認識することができるようになる。
【００６５】
図６のシステム構成は一例であり、これに限られるものではない。例えば、音声認識装置２００が、情報処理装置１００および語彙変換部３００の少なくとも一方の機能を備えるように構成してもよい。音声認識装置２００の探索部２１２と、情報処理装置１００の探索部１０３は同様の機能を備えるため、１つに共通化してもよい。
【００６６】
このように、第２の実施形態にかかる認識システムでは、音声認識装置が認識できない発音記号列が割り当てられている単語であっても、認識可能な類似発音記号列へ変換することで認識できるようになる。
【００６７】
以上説明したとおり、第１から第２の実施形態によれば、発音記号列に類似する発音記号列を得ることが可能となる。
【００６８】
次に、第１または第２の実施形態にかかる情報処理装置１００のハードウェア構成について図７を用いて説明する。図７は、第１または第２の実施形態にかかる情報処理装置１００のハードウェア構成例を示す説明図である。
【００６９】
図７に示されるように、情報処理装置１００は、ＣＰＵ（Central  Processing  Unit）１、操作部２、表示部３、ＲＯＭ（Read  Only  Memory）４、ＲＡＭ（Random  Access  Memory）５、記憶部６、および、バス７等を備えている。各部はバス７により接続されている。
【００７０】
ＣＰＵ１は、ＲＡＭ５の所定領域を作業領域として、ＲＯＭ４または記憶部６に予め記憶された各種制御プログラムとの協働により各種処理を実行し、情報処理装置１００を構成する各部の動作を統括的に制御する。またＣＰＵ１は、ＲＯＭ４または記憶部６に予め記憶された所定のプログラムとの協働により後述する各機能部の機能を実現させる。
【００７１】
操作部２は、マウスやキーボード等の入力デバイスであって、ユーザから操作入力された情報を指示信号として受け付け、その指示信号をＣＰＵ１に出力する。
【００７２】
表示部３は、ＬＣＤ（Liquid  Crystal  Display）等の表示装置により構成され、ＣＰＵ１からの表示信号に基づいて、各種情報を表示する。
【００７３】
ＲＯＭ４は、情報処理装置１００の制御にかかるプログラムや各種設定情報等を書き換え不可能に記憶する。
【００７４】
ＲＡＭ５は、ＳＤＲＡＭ等の揮発性の記憶媒体であって、ＣＰＵ１の作業エリアとして機能する。具体的には、発音変換時、ＨＭＭ変換時、探索時に使用される各種変数やパラメータの値等を一時記憶するバッファ等の役割を果たす。
【００７５】
記憶部６は、フラッシュメモリ等の半導体による記憶媒体や、磁気的または光学的に記録可能な記憶媒体を有し、発音記号列変換装置の制御にかかるプログラムや各種設定情報等を書き換え可能に記憶する。また記憶部６は、発音ＨＭＭの集合や、類似度行列、ＷＦＳＴに係る各種の情報を予め記憶したり、入力された発音記号列に対して行った演算結果を記録したりする。
【００７６】
本実施形態の各装置の一部または全部は、異なるハードウェア上で動作するよう構成してもよいし、同じハードウェア上で動作するよう構成してもよい。
【００７７】
第２の実施形態の音声認識装置２００および語彙変換部３００も、情報処理装置１００と同様のハードウェア構成とすることができる。音声認識装置２００は、音声データを取得するために、さらに録音部を備えていても良い。録音部は、例えば、マイクロフォンや通信装置によって実現することができる。
【００７８】
第１または第２の実施形態にかかる各装置（情報処理装置、音声認識装置等）で実行されるプログラムは、ＲＯＭ４等に予め組み込まれて提供される。
【００７９】
第１または第２の実施形態にかかる装置で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ（Compact  Disk  Read  Only  Memory）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Compact  Disk  Recordable）、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成しても良い。
【００８０】
さらに、第１または第２の実施形態にかかる装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、第１または第２の実施形態にかかる装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【００８１】
第１または第２の実施形態にかかる装置で実行されるプログラムは、コンピュータを上述した装置の各部として機能させうる。このコンピュータは、ＣＰＵがコンピュータ読取可能な記憶媒体からプログラムを主記憶装置上に読み出して実行することができる。
【００８２】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００８３】
１００  情報処理装置
１０１  発音変換部
１０２  ＨＭＭ変換部
１０３  探索部
２００  音声認識装置
２０１  フロントエンド
２１０  デコーダ
２１１  音響スコア計算部
２１２  探索部
２１３  合成部
３００  語彙変換部
【図１】
0006495850.tif 000002
【図２】
0006495850.tif 000003
【図３】
0006495850.tif 000004
【図４】
0006495850.tif 000005
【図５】
0006495850.tif 000006
【図６】
0006495850.tif 000007
【図７】
0006495850.tif 000008