(57)【要約】【課題】処理負荷を軽減できる生成装置、認識システム、有限状態トランスデューサの生成方法、および、データを提供する。【解決手段】生成装置は、受付部と、生成部と、を備える。受付部は、１以上の発音記号と単語との対応を表すモデルを受け付ける。生成部は、予め定められた種類の第１発音記号を入力記号とする第１遷移の遷移先の第１状態から出る遷移として、第１遷移の入力記号の一部または全部を表す特定記号以外の第２発音記号を入力記号とする第２遷移と、特定記号または無音を表す第３発音記号を入力記号とする第３遷移と、を少なくとも含む第１有限状態トランスデューサを、モデルに基づいて生成する。【選択図】図１
2018013590.tif 000002
【特許請求の範囲】
【請求項１】
１以上の発音記号と単語との対応を表すモデルを受け付ける受付部と、
予め定められた種類の第１発音記号を入力記号とする第１遷移の遷移先の第１状態から出る遷移として、前記第１遷移の入力記号の一部または全部を表す特定記号以外の第２発音記号を入力記号とする第２遷移と、前記特定記号または無音を表す第３発音記号を入力記号とする第３遷移と、を少なくとも含む第１有限状態トランスデューサを、前記モデルに基づいて生成する生成部と、
を備える生成装置。
【請求項２】
前記発音記号は、音素であり、
前記第１発音記号は、予め定められた種類の特定音素であり、
前記特定記号は、前記第１遷移の入力記号である前記特定音素の発音を表す、
請求項１に記載の生成装置。
【請求項３】
前記発音記号は、１以上の音素を含む音節であり、
前記第１発音記号は、予め定められた種類の特定音素を最後に含む音節であり、
前記特定記号は、前記第１遷移の入力記号に含まれる最後の前記特定音素の発音を表す、
請求項１に記載の生成装置。
【請求項４】
前記第３遷移の遷移先は前記第１状態である、
請求項１に記載の生成装置。
【請求項５】
前記生成部は、０より大きい重みを前記第３遷移に付した前記第１有限状態トランスデューサを生成する、
請求項４に記載の生成装置。
【請求項６】
前記生成部は、前記第３遷移の遷移先である第２状態から出る遷移として、前記第１発音記号または前記第３発音記号を入力とし前記第２状態に遷移する第４遷移と、前記第２発音記号を入力とする第５遷移と、を含む前記第１有限状態トランスデューサを生成する、
請求項１に記載の生成装置。
【請求項７】
前記生成部は、０より大きい重みを前記第４遷移に付した前記第１有限状態トランスデューサを生成する、
請求項６に記載の生成装置。
【請求項８】
前記第１発音記号の種類は母音である、
請求項１に記載の生成装置。
【請求項９】
前記第１有限状態トランスデューサと、言語モデルに基づいて生成される第２有限状態トランスデューサと、音響モデルに基づいて生成される第３有限状態トランスデューサと、を合成した第４有限状態トランスデューサを生成する合成部をさらに備える、
請求項１に記載の生成装置。
【請求項１０】
前記モデルは、１以上の発音記号と単語との対応を表すレキシコン、または、１以上の発音記号を単語に変換する有限状態トランスデューサである、
請求項１に記載の生成装置。
【請求項１１】
生成装置と認識装置とを備える認識システムであって、
前記生成装置は、
１以上の発音記号を単語に変換するモデルを受け付ける受付部と、
予め定められた種類の第１発音記号を入力記号とする第１遷移の遷移先の第１状態から出る遷移として、前記第１発音記号以外の第２発音記号を入力記号とする第２遷移と、前記第１発音記号または無音を表す第３発音記号を入力記号とする第３遷移と、を少なくとも含む第１有限状態トランスデューサを、前記モデルに基づいて生成する生成部と、を備え、
前記認識装置は、
前記第１有限状態トランスデューサを用いて、入力された音声に対応する単語を認識する探索部を備える、
認識システム。
【請求項１２】
１以上の発音記号と単語との対応を表すモデルを受け付ける受付ステップと、
予め定められた種類の第１発音記号を入力記号とする第１遷移の遷移先の第１状態から出る遷移として、前記第１発音記号以外の第２発音記号を入力記号とする第２遷移と、前記第１発音記号または無音を表す第３発音記号を入力記号とする第３遷移と、を少なくとも含む第１有限状態トランスデューサを、前記モデルに基づいて生成する生成ステップと、
を含む有限状態トランスデューサの生成方法。
【請求項１３】
有限状態トランスデューサを用いて入力された音声に対応する単語を認識する認識装置で用いられる前記有限状態トランスデューサを表すデータであって、
予め定められた種類の第１発音記号を入力記号とする第１遷移の遷移先の第１状態から出る遷移として、前記第１発音記号以外の第２発音記号を入力記号とする第２遷移と、前記第１発音記号または無音を表す第３発音記号を入力記号とする第３遷移と、を少なくとも含む
データ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、生成装置、認識システム、有限状態トランスデューサの生成方法、および、データに関する。
【背景技術】
【０００２】
話し言葉音声には、発話速度が通常より速い音声や遅い音声が含まれる。このような音声を認識する方法の１つとして、発話速度の分類器と複数の発話速度依存のモデルを用いる方法が知られている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】F.  Martinez,  D.  Tapias,  J.  Alvarez,  "Towards  speech  rate  independence  in  large  vocabulary  continuous  speech  recognition,"  in  Proc  of  Acoustics,  Speech  and  Signal  Processing,  Vol.  2,  pp.  725-728,  1998
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来技術では、発話速度を判定する処理などのために処理負荷が増加する問題があった。また、複数のモデルを使用するため、より多くの記憶領域が必要となる問題があった。
【課題を解決するための手段】
【０００５】
実施形態の生成装置は、受付部と、生成部と、を備える。受付部は、１以上の発音記号と単語との対応を表すモデルを受け付ける。生成部は、予め定められた種類の第１発音記号を入力記号とする第１遷移の遷移先の第１状態から出る遷移として、第１遷移の入力記号の一部または全部を表す特定記号以外の第２発音記号を入力記号とする第２遷移と、特定記号または無音を表す第３発音記号を入力記号とする第３遷移と、を少なくとも含む第１有限状態トランスデューサを、モデルに基づいて生成する。
【図面の簡単な説明】
【０００６】
【図１】本実施形態にかかる認識システムのブロック図。
【図２】ゆっくり発話に対応するＷＦＳＴ  Ｌの例を示す図。
【図３】ゆっくり発話に対応するＷＦＳＴ  Ｌの例を示す図。
【図４】ゆっくり発話に対応するＷＦＳＴ  Ｌの例を示す図。
【図５】ゆっくり発話に対応するＷＦＳＴ  Ｌの例を示す図。
【図６】発音記号として音節を用いる場合のＷＦＳＴ  Ｌの例を示す図。
【図７】本実施形態における生成処理のフローチャート。
【図８】本実施形態における認識処理のフローチャート。
【図９】構成１の生成方法を表す疑似コードの例を示す図。
【図１０】構成１の生成方法を表す疑似コードの例を示す図。
【図１１】構成２の生成方法を表す疑似コードの例を示す図。
【図１２】構成２の生成方法を表す疑似コードの例を示す図。
【図１３】本実施形態にかかる装置のハードウェア構成図。
【発明を実施するための形態】
【０００７】
以下に添付図面を参照して、この発明にかかる生成装置の好適な実施形態を詳細に説明する。
【０００８】
本実施形態の生成装置は、通常より遅い音声（以下、ゆっくり発話という）に対応した重み付き有限状態トランスデューサ（ＷＦＳＴ：Weighted  Finite  State  Transducer）を生成する。また、本実施形態の認識装置は、生成されたＷＦＳＴを用いて音声認識を行う。これにより、１つのモデルで通常の発話とゆっくり発話を認識可能となる。発話速度を判定する必要がない、１つのモデルで音声認識を実行できるため、処理負荷を軽減可能となり、また、モデルを記憶するための記憶領域を削減可能となる。
【０００９】
ゆっくり発話に対応したＷＦＳＴは、例えば、発音と単語の対応を表すレキシコンから得られるＷＦＳＴ  Ｌの適切な位置に直前に現れる発音記号を任意の回数受理できるループを埋め込んだＷＦＳＴである。適切な位置とは、ゆっくりと発話できる発音記号ｐの直前、または、直後である。また、埋め込まれたループが認識できる音素はｐとなる。
【００１０】
（定義）
ＷＦＳＴとは、遷移に入力記号、出力記号、および、重みが割り当てられている有限状態オートマトンである。発音記号とは、発音を表す記号であって、ＷＦＳＴ  Ｌの入力記号として用いることができる記号である。例えば、音素や音節が発音記号に該当する。ゆっくり発話できる発音記号とは、音声認識装置が認識する言語において、ゆっくり発話できる発音に対応する発音記号である。例えば、母音や撥音が、ゆっくり発話できる発音記号に該当する。
【００１１】
ＷＦＳＴにおける経路は、次の条件を満たす１つ以上の遷移から構成される。その条件とは、経路を構成するｉ番目（ｉは１以上の整数）の遷移をｅｉとするとき、遷移ｅｉの次状態と、遷移（ｅｉ＋１）の前状態とが同じであることである。
【００１２】
経路の入力とは、経路を構成する遷移の入力記号を連結した入力記号列である。同様に、経路の出力とは、経路を構成する遷移の出力記号を連結した出力記号列である。すなわち、遷移ｅの入力記号をｉｎ（ｅ）、出力記号をｏｕｔ（ｅ）とするとき、経路π＝ｅ１ｅ２ｅ３．．．ｅｎの入力は、ｉｎ（ｅ１）ｉｎ（ｅ２）ｉｎ（ｅ３）...ｉｎ（ｅｎ）となる。なお、ｎは遷移の数を表す。同様に出力は、ｏｕｔ（ｅ１）ｏｕｔ（ｅ２）ｏｕｔ（ｅ３）...ｏｕｔ（ｅｎ）となる。遷移ｅの前状態をｐ（ｅ）、次状態をｎ（ｅ）で表す。εは入力記号または出力記号が空であることを表す。
【００１３】
図１は、本実施形態にかかる認識システムの構成の一例を示すブロック図である。図１に示すように、本実施形態の認識システムは、ＷＦＳＴ生成装置１００（生成装置の一例）と、音声認識装置２００（認識装置の一例）と、を備えている。
【００１４】
ＷＦＳＴ生成装置１００は、音声認識装置２００を動作させるために必要となるＷＦＳＴを生成する装置である。音声認識装置２００は、ＷＦＳＴ生成装置１００が出力するＷＦＳＴを用いて、入力される音声を単語列へと変換する。
【００１５】
音声認識装置２００は、例えば以下の４つのＷＦＳＴを合成したＷＦＳＴを使用する。
・隠れマルコフモデル（ＨＭＭ）などの音響モデルの構造を表すＷＦＳＴ  Ｈ
・コンテキスト依存音素をコンテキスト非依存音素へ変換するＷＦＳＴ  Ｃ
・コンテキスト非依存音素を単語へ変換するＷＦＳＴ  Ｌ
・単語の並びを表す言語モデルであるＷＦＳＴ  Ｇ
【００１６】
ここでは発音記号が音素であるとした。なお以下では、ＷＦＳＴ  Ｈ、ＷＦＳＴ  Ｃ、ＷＦＳＴ  Ｌ、および、ＷＦＳＴ  Ｇを、それぞれ単にＨ、Ｃ、Ｌ、および、Ｇと記載する場合がある。音声認識装置２００は、これら４つのＷＦＳＴを合成および最適化したＷＦＳＴ  ＨＣＬＧを用いて音声認識を行う。なお、４つのＷＦＳＴのうち一部に対してのみ音声認識処理前の合成および最適化を行い、残りは音声認識処理中に合成してもよい。
【００１７】
また、音響モデルから得られる音素が、コンテキスト依存音素ではなく、コンテキスト非依存音素である場合、すなわち、Ｈの出力記号がコンテキスト非依存音素である場合は、Ｃは不要である。音響モデルにＨＭＭを用いず他の方法を用いる場合は、ＨやＣの代わりに、それに対応するＷＦＳＴを音響モデルに基づくＷＦＳＴとして用いる。他の方法とは、例えば、コネクショニスト時系列分類法（ＣＴＣ：Connectionist  Temporal  Classification）を適用したリカレントニューラルネットワーク（ＲＮＮ）である。
【００１８】
本実施形態のＷＦＳＴ生成装置１００は、Ｌとして、ゆっくり発話に対応したＷＦＳＴを生成する。従来のＬの代わりに、本実施形態により生成されたＬを用いれば、ＷＦＳＴを用いる様々な音声認識装置２００でゆっくり発話に対応可能となる。
【００１９】
ＷＦＳＴ生成装置１００は、変換部１０１、１０２、１０３、１０４と、合成部１１０とを備える。変換部１０１、１０２、１０３、１０４は、それぞれ、音響モデル、音素一覧、レキシコン、および、言語モデルをＷＦＳＴ（それぞれＨ、Ｃ、Ｌ、Ｇ）に変換する。合成部１１０は、変換部１０１、１０２、１０３、１０４がそれぞれ出力したＷＦＳＴを合成してＨＣＬＧを生成し、必要に応じて最適化する。Ｃが不要な場合、変換部１０２は備えなくてもよい。また、この場合、合成部１１０は、変換部１０１、１０３、１０４がそれぞれ出力したＷＦＳＴを合成してＨＬＧを生成し、必要に応じて最適化してもよい。
【００２０】
音響モデルは、音をサブワードへと変換するためのモデルである。レキシコンは、サブワードを単語へ変換するためモデルである。言語モデルは、単語の並びの尤もらしさまたは制約を表すモデルである。言語モデルは、統計的言語モデルであってもよいし、文法によって表されていてもよい。ここで文法とは、例えば認識できる単語の並びを記述した情報を意味する。
【００２１】
なお、ＷＦＳＴ生成装置１００が出力するＷＦＳＴは１つである必要はない。ＷＦＳＴ生成装置１００が複数のＷＦＳＴを出力する場合は、それらを動的に合成するよう音声認識装置２００を構成すればよい。
【００２２】
次に、図１の各装置の構成の詳細について説明する。まずＷＦＳＴ生成装置１００について説明する。
【００２３】
変換部１０１が音響モデルをＷＦＳＴに変換する方法、変換部１０２が音素一覧をＷＦＳＴに変換する方法、および、変換部１０４が言語モデルをＧに変換する方法は、従来から用いられているあらゆる方法を適用できる。
【００２４】
変換部１０３は、受付部１５１と、生成部１５２と、を備える。受付部１５１は、１以上の発音記号と単語との対応を表すモデルを受け付ける。モデルは、例えば、１以上の発音記号と単語との対応を表すレキシコン、または、従来の方法で生成されるＷＦＳＴ  Ｌである。
【００２５】
生成部１５２は、受け付けられたモデルに基づき、予め定められた種類の発音記号（第１発音記号）を入力記号とする遷移（第１遷移）の遷移先の状態（第１状態）から出る遷移として、以下のような遷移を含むＬを生成する。
（Ｔ１）特定記号以外の発音記号（第２発音記号）を入力とする遷移（第２遷移）
（Ｔ２）特定記号または無音を表す発音記号（第３発音記号）を入力とする遷移（第３遷移）
【００２６】
予め定められた種類の発音記号（第１発音記号）は、例えば、母音や撥音などの、ゆっくり発話できる特定音素の発音を表す発音記号である。特定記号は、第１遷移の入力記号である特定音素の発音を表す記号である。
【００２７】
このようなＬは、例えば以下のように言い換えることができる。
（１）単語ｗを出力し、ｗの発音記号列ｐを入力とする経路πを含む。ここで、ｐのｉ番目の発音ｐｉがゆっくり発話できる発音記号（第１発音記号）であるとする。
（２）πを構成する遷移のうち、入力記号がｐｉである遷移（第１遷移）の次状態ｑ（第１状態）から出て行く遷移は少なくとも次の２つの遷移を含む。
（Ｔ１’）入力記号がｐｉ＋１の遷移（第２遷移）
（Ｔ２’）入力記号がｘの遷移（第３遷移）
ここでｘはｐｉまたは無音を表す発音記号である。
【００２８】
次に、音声認識装置２００について説明する。音声認識装置２００は、フロントエンド２０１とデコーダ２１０とを備えている。
【００２９】
フロントエンド２０１は、入力された音声から音声区間を検出する処理、および、音声の特徴量を抽出する処理などを実行する。デコーダ２１０は、探索部２１２を備えている。
【００３０】
探索部２１２は、ＷＦＳＴ生成装置１００から入力されたＷＦＳＴ  ＨＣＬＧを用いて、フロントエンド２０１からの入力に対応する単語または単語列を認識する。例えば探索部２１２は、特徴量と音響モデルを用いて、ＷＦＳＴ上の各経路に対する音の一致度を示す音響スコアと、それらの経路の重みを考慮し、入力された音声に最も近いと考えられる経路上の単語列を認識結果として出力する。
【００３１】
次に、本実施形態によって生成されるＬについて説明する。ゆっくり発話に対応するＬの構成はいくつか考えられる。ここでは１つの単語のみがＬに含まれる場合に決定性のＷＦＳＴ（deterministic  ＷＦＳＴ）になる構成を例に説明する。冗長なＷＦＳＴはいくつも考えることができるが、公知の方法である決定化（determinization）や最小化（minimization）により変形することで同じ構成にできるため、説明を省略する。なお、ゆっくり発話できるが、音声認識装置２００に入力される可能性が低い発音記号については、ゆっくり発話できる発音記号に含めなくてもよい。
【００３２】
（構成１）
図２は、ゆっくり発話に対応する最も単純なＬの例を示す図である。説明を簡単にするため、発音記号列が「ｒｅｌｍ」である単語「ｒｅａｌｍ」のみを表すＬを例示している。ゆっくり発話できる発音記号は「ｅ」であるとしている。この例での残りの発音記号「ｒ」、「ｌ」、「ｍ」は、ゆっくり発話する発音記号とはしていない。図中の丸はＷＦＳＴの状態を表し、矢印は遷移を表す。太線の丸は初期状態を表し、二重丸は終了状態を表す。丸の中の数字は状態番号を表す。「：」の左側が入力記号を表し、「：」と「／」の間が出力記号を表し、「／」の右側が重みを表す。状態番号が２の状態の自己遷移の重み「ｗ１」は、ゆっくり発話が認識された時の重みで、実数である。重みが小さいほど良い経路であるとすると、「ｗ１」の値が大きいほどゆっくり発話は認識されにくくなる。また、ゆっくりと発話されるほど認識されにくくなる。例えば、このＬに入力記号列「ｒｅｌｍ」が入力されると、単語「ｒｅａｌｍ」が出力され、その重みは０となる。少しゆっくりと発話した結果、「ｒｅｅｌｍ」が入力されると、重みはｗ１となる。さらにゆっくりと発話した結果、「ｒｅｅｅｌｍ」が入力されると、重みは２ｗ１となる。
【００３３】
自己遷移に重みをつけた理由は、ゆっくり発話に対応する入力記号列と、別の単語のゆっくり発話でない入力記号列が同じであった場合に、両者を区別しやすくするためである。例えば、発音記号列が「ｋｉｎ」の単語「ｋｉｎ」と、発音記号列が「ｋｉｉｎ」の単語「ｋｅｅｎ」の２つがＬに含まれると仮定する。また、ゆっくり発話できる発音記号は「ｉ」であるとする。図３は、この場合のゆっくり発話に対応するＬの例を示す図である。
【００３４】
このＬに発音記号列「ｋｉｉｎ」が入力されると、単語「ｋｉｎ」と「ｋｅｅｎ」が出力される。しかし、単語「ｋｅｅｎ」に対応する経路の重みが０であり、単語「ｋｉｎ」に対応する経路の重みがｗ１であるため、ｗ１が０でなければ２つの単語は重みが異なることになる。重みが小さいほうが良い経路である場合に、もし、ｗ１が０より大きく、言語モデルによる影響がないとすると、音声認識装置２００は単語「ｋｅｅｎ」を出力することになる。なお、ｗ１を０にすることもできるが、その場合、いずれの単語が認識結果として出力されるかは、言語モデルによって決められることとなる。
【００３５】
ゆっくり発話に対応する発音記号に関して、同じ発音記号が連続する場合は、最後の発音記号が割り当てられている遷移の次状態にのみ自己遷移を付ければよい。図３では、単語「ｋｅｅｎ」に対応する経路上にある状態番号が６の状態に自己遷移を付けた。同じ発音記号のうち最初や途中の発音記号に自己遷移を付けることもできるが、冗長なだけである。Ｌが受理できる発音記号列に変わりはなく、決定化すれば後ろに移動するためである。また、決定化に必要な処理時間も長くなる。
【００３６】
例えば図２の場合、生成部１５２が生成する遷移や状態は以下のように対応する。
第１発音記号：「ｅ」
第１遷移：状態番号が１の状態から状態番号が２の状態への遷移
第１状態：状態番号が２の状態
第２発音記号：「ｌ」
第２遷移：状態番号が２の状態から状態番号が３の状態への遷移
第３発音記号：「ｅ」
第３遷移：状態番号が２の状態から状態番号が２の状態への自己遷移
【００３７】
（構成２）
図４は、ゆっくり発話として認識されたときにｗ１とは異なる重みｗ２を適用することができるように構成したＬの例を示す図である。図２の構成では、ｗ１が０より大きい場合、ゆっくり発話すればするほど自己遷移に付与されたｗ１の影響を受け、当該単語は認識されにくくなる。一方、図４の構成で、ｗ１を０とし、ｗ２を０以外の値にすれば、ゆっくり発話に対して重みｗ２のみが適用され、少しゆっくりと発話した場合と、とてもゆっくりと発話した場合とで重みの差が生じなくなる。このようにすることで、ゆっくり発話でない発話とゆっくり発話とを区別しつつ、ゆっくり発話の発話速度への依存をなくすことができる。
【００３８】
なお、発音記号列にゆっくり発話できる同じ発音記号列が連続して現れる場合は、構成１と同様に、最後の発音記号に対して、ゆっくり発話に対応する経路を作ればよい。状態番号が３の状態の自己遷移を用いないこともできる。この場合、非常にゆっくりとした発話には対応することができないが、従来手法よりはゆっくりとした発話に対応することができる。
【００３９】
構成２の場合、生成部１５２は、さらに第３遷移の遷移先の状態（第２状態）から出る遷移として、以下のような遷移を含むＬを生成する。
（Ｔ３）第１発音記号または第３発音記号を入力とし、第２状態に遷移する遷移（第４遷移）
（Ｔ４）第２発音記号を入力とする遷移（第５遷移）
【００４０】
例えば図４の場合、生成部１５２が生成する遷移や状態は以下のように対応する。
第１発音記号：「ｅ」
第１遷移：状態番号が１の状態から状態番号が２の状態への遷移
第１状態：状態番号が２の状態
第２発音記号：「ｌ」
第２遷移：状態番号が２の状態から状態番号が４の状態への遷移
第３発音記号：「ｅ」
第３遷移：状態番号が２の状態から状態番号が３の状態への遷移
第２状態：状態番号が３の状態
第４遷移：状態番号が３の状態から状態番号が３の状態への自己遷移
第５遷移：状態番号が３の状態から状態番号が４の状態への遷移
【００４１】
なお、上記で説明したＬ（図２、図３、図４）は、１つの単語に対応する発音のみを受理できる。Ｌは、任意の数の単語から成る単語列を受理するように構成してもよい。音声認識装置２００が任意の数の単語から成る単語列を認識する場合は、Ｌの終了状態から初期状態に入力記号と出力記号が共にεで重みが０の遷移を追加すればよい。言い換えると、「ｃｌｏｓｕｒｅ」と呼ばれる演算をＬに適用すればよい。
【００４２】
また、図２と図３においてｗ１が、図４においてｗ１とｗ２が０である場合、Ｌは、ＷＦＳＴではなく単に有限状態トランスデューサ（ＦＳＴ：Finite  State  Transducer）として表すことも可能である。
【００４３】
（区切り発声）
構成１と構成２は、ゆっくり発話できる発音を伸ばす場合（長音化する場合）のゆっくり発話に対応する構成例である。ゆっくり発話の種類はこれに限られるものではない。例えば、音素や音節を区切って発話することでゆっくり発話とすることもできる。例えば日本語では、音節単位に区切って発話することができる。言い換えると、音節の間に無音を挿入するということである。このような発話に対応するためには、ゆっくり発話できる発音記号の後に、同じ発音記号を入力記号とする遷移を追加するのではなく、無音を表す発音記号「ｓｉｌ」を入力記号とする遷移を追加すればよい。図２であれば、状態番号が２の状態の自己遷移の入力記号を「ｅ」にするのではなく「ｓｉｌ」にする。図３であれば、状態番号が２の状態と状態番号が６の状態の自己遷移の入力記号を「ｉ」ではなく「ｓｉｌ」にする。図４であれば、状態番号が３の状態への遷移の入力記号と、状態番号が３の状態の自己遷移の入力記号を「ｅ」から「ｓｉｌ」に置き換える。
【００４４】
入力記号を置き換えるのではなく、置き換えた遷移を追加することで、発音を伸ばす場合、および、音節等で区切る場合の両方に対応するように構成することも可能である。図５は、このように構成した場合のＬの一例を示す図である。図５のＬは、発音記号列が「ａｋａ」である日本語の単語「赤」のみを受理する場合の例を表している。状態番号が２の状態と状態番号が３の状態を同じ状態にし、さらに、状態番号が６の状態と状態番号が７の状態を同じ状態にするよう構成してもよい。その場合は、１つの発音記号をゆっくり発話するときに、伸ばす発話と区切る発話が混在していても当該単語を認識することができる。
【００４５】
なお、単語間に無音が存在することを前提に処理される場合がある。これは例えばＬに、前状態が初期状態、次状態が終了状態、入力記号が「ｓｉｌ」である遷移を追加することで実現できる。このような場合は、状態番号が５の状態から状態番号が７の状態への遷移と、状態番号が７の状態の自己遷移はなくてもよい。
【００４６】
（発音記号が音素より長い単位の場合）
発音記号として音素より長い単位を選択することもできる。例えば、発音記号として音節を用いることができる。この場合、ゆっくり発話に対応できる音節は、ゆっくり発音できる音素が最初または最後にくる音節となる。音節ｘの最初の音素がゆっくり発音できる音素であれば、その音素のみからなる音節が音節ｘの前に繰り返し現れてもよいようにＬを構成する。同様に、音節ｘの最後の音素がゆっくり発音できる音素であれば、その音素のみからなる音節が音節ｘの後に繰り返し現れてもよいようにＬを構成する。ここで、音節は音素の組み合わせで表現できるものとしている。つまり、音節は１以上の長さの音素列で表現されるということである。音素列ではなく別の記号や文字で音節を表してもよいが、その場合は、ゆっくり発話できる音節とその音節のうちゆっくり発話できる部分を表す音節とが対応付けられている必要がある。
【００４７】
発音記号として音節を用いる場合、予め定められた種類の発音記号（第１発音記号）は、予め定められた種類の特定音素（母音や撥音など）を最後に含む音節である。特定記号は、第１遷移の入力記号に含まれる最後の特定音素の発音を表す記号である。
【００４８】
図６は、日本語において発音記号として音節を用いる場合のＬの一例を示す図である。また図６は、構成１と同様の構成方法を発音記号が音節の場合に適用した例を示す。最初の音節「ａ」は音素を用いる場合と同じであるので、状態番号が１の状態の自己遷移の入力記号は「ａ」となる。一方、２番目の音節「ｋａ」の最後の音素は「ａ」である。したがって、状態番号が２の状態の自己遷移の入力記号は「ｋａ」ではなく、「ａ」となる。この例では、音節を音素列で表現したが、音節を音素を表現する文字とは異なる文字で表してもよい。例えば日本語の平仮名で音節を表す場合は、「ｋａ」の代わりに日本語の平仮名の「か」を用い、「ａ」の代わりに日本語の平仮名の「あ」を用いて音節を表現してもよい。また、実際の文字の代わりにそれらに対応する番号で表してもよい。
【００４９】
次に、このように構成された本実施形態にかかるＷＦＳＴ生成装置１００による生成処理について図７を用いて説明する。図７は、本実施形態における生成処理の一例を示すフローチャートである。
【００５０】
まず、各変換部（変換部１０１、１０２、１０３、１０４）が、それぞれ変換処理の元とするモデルの入力を受け付ける（ステップＳ１０１）。各変換部は、受け付けたモデルをＷＦＳＴに変換する（ステップＳ１０２）。各変換部は、変換したＷＦＳＴを合成部１１０に出力する（ステップＳ１０３）。
【００５１】
例えば変換部１０１は音響モデルを受け付け、音響モデルをＨに変換して出力する。変換部１０２は音素一覧を受け付け、音素一覧をＣに変換して出力する。変換部１０３はレキシコンを受け付け、レキシコンをＬに変換して出力する。変換部１０４は言語モデルを受け付け、言語モデルをＧに変換して出力する。
【００５２】
合成部１１０は、各変換部から出力されたＷＦＳＴを合成し、必要に応じて最適化する（ステップＳ１０４）。合成部１１０は、例えばＨ、Ｃ、Ｌ、および、Ｇを合成してＨＣＬＧを生成する。
【００５３】
次に、このように構成された本実施形態にかかる音声認識装置２００による認識処理について図８を用いて説明する。図８は、本実施形態における認識処理の一例を示すフローチャートである。
【００５４】
まず、フロントエンド２０１が、認識対象となる音声の入力を受け付ける（ステップＳ２０１）。フロントエンド２０１は、音声を解析し、音声の特徴量を抽出する（ステップＳ２０２）。探索部２１２は、合成部１１０により合成されたＷＦＳＴを用いて、抽出された特徴量に適合する認識結果（単語列）を探索して出力する（ステップＳ２０３）。
【００５５】
次に、変換部１０３（受付部１５１、生成部１５２）によるＷＦＳＴ  Ｌの生成方法の詳細について説明する。
【００５６】
（構成１の生成方法１）
図９は、構成１の生成方法を表す疑似コードの例を示す図である。図９は、発音記号と単語との対応を表すモデルとして、レキシコンを受け付ける場合の、生成部１５２によるＬの生成方法の例を示す。
【００５７】
レキシコンは、２つ組（発音記号列，単語）の集合である。発音記号列ｐのｉ番目の発音記号をｐｉとする。発音記号列の長さを｜ｐ｜とする。単語ｒに関して、ｒｉは、ｉ＝１の場合は当該単語を表し、それ以外の場合は空を表す記号εを表すものとする。すなわち、ｒ＝ｒ１ｒ２ｒ３・・・＝ｒ１εε・・・＝ｒ１である。例えば２つ組が（ｒｅｌｍ，ｒｅａｌｍ）のとき、ｐ１＝ｒ、ｐ２＝ｅ、ｐ３＝ｌ、ｐ４＝ｍ、ｒ１＝ｒｅａｌｍ、ｒ２＝ε、ｒ３＝ε、ｒ４＝εである。
【００５８】
Ｓはゆっくり発話できる発音記号の集合である。例えば、発音記号が音素の場合、Ｓには少なくともすべての母音が含まれる。ｑｉｎｉｔｉａｌはＬの初期状態である。ＦはＬの終了状態の集合である。ＥはＬを構成する遷移の集合である。Ｅへの遷移の追加によって遷移が作成されるものとする。図９の処理が始まる時点では、ＥとＦは空集合であるとする。
【００５９】
１行目は、レキシコンに含まれるすべての２つ組（発音記号列，単語）に対して、２行目から１０行目を処理することを表す。
２行目では、初期状態をｑｐに代入する。
３行目は、整数ｉを１から発音記号列ｐの長さまで１ずつ増やしながら４行目から１０行目を処理することを表す。
４行目では、新しい状態を生成し、それをｑｎに代入する。
５行目は、ｉがｐの長さと等しいとき６行目を処理することを表す。
６行目では、ｑｎを終了状態とする。すなわち、終了状態の集合Ｆにｑｎを追加する。
７行目では、前状態がｑｐ、次状態がｑｎ、入力記号がｐｉ、出力記号がｒｉ、および、重みが０の遷移を、遷移の集合Ｅに追加する。
８行目は、ｉ番目の発音記号ｐｉがゆっくり発話できる発音記号であり、かつ、ｉがｐの長さと等しい、または、発音記号ｐｉが次の発音記号ｐｉ＋１とは異なる場合に、９行目を処理することを表す。
９行目では、前状態がｑｎ、次状態がｑｎ、入力記号がｐｉ、出力記号がε、および、重みがｗ１である自己遷移を、遷移の集合Ｅに追加する。
１０行目では、ｑｎをｑｐに代入する。
【００６０】
（構成１の生成方法２）
図１０は、構成１の生成方法を表す疑似コードの他の例を示す図である。図１０は、発音記号と単語との対応を表すモデルとして、従来の方法で生成されたＷＦＳＴ  Ｌなどの既存のＬを受け付ける場合の、生成部１５２によるＬの生成方法の例を示す。
【００６１】
例えば生成部１５２は、ある状態ｑに関し、入ってくる遷移の入力記号σがＳに含まれるとき、状態ｑに入力記号がσである自己遷移を追加する。説明を簡単にするため、図１０の疑似コードでは各状態に入ってくる遷移が１つのみであると仮定している。したがって、各単語につき受理状態が１つ存在する。さらに、初期状態を除く各状態から出て行く遷移も１つのみであると仮定している。
【００６２】
すなわち、Ｌは、図９の８行目と９行目を除いた疑似コードに従って作成されていると仮定している。図１０の処理が始まる時点では、Ｅは従来法で生成したＬを構成する遷移の集合であり、Ｅ’は空集合であるとする。
【００６３】
図１０の１行目は、Ｌに含まれる遷移の集合Ｅに含まれる各遷移ｅに関して２行目から３行目を処理することを表す。
２行目は、次の２つの条件をいずれも満たすときに３行目を処理することを表す。１つ目の条件は、ｅの入力記号がゆっくり発話できる発音記号であることである。２つ目の条件は、ｅの次の遷移ｅ’の入力記号と異なっているか、または、ｅの次状態が終了状態であることである。
３行目では、ｅの次状態に自己遷移を追加する。その遷移の入力記号はｅの入力記号であり、出力記号はε、重みはｗ１である。
４行目では、３行目で作成した遷移をＥに追加する。
【００６４】
（構成２の生成方法１）
図１１は、構成２の生成方法を表す疑似コードの例を示す図である。図１１は、発音記号と単語との対応を表すモデルとして、レキシコンを受け付ける場合の、生成部１５２によるＬの生成方法の例を示す。
【００６５】
図１１の処理が始まる時点では、ＥとＦは空集合であるとする。
１行目は、レキシコンに含まれるすべての２つ組（発音記号列，単語）に対して、２行目から１６行目を処理することを表す。
２行目では、状態の集合Ｑｐに初期状態のみから成る集合を代入し、ｉに１を代入する。
３行目は、ｉがｐの長さ以下の場合に、４行目から１６行目を処理することを表す。
４行目では、新しい状態を生成し、それをｑｎに代入する。
５行目は、ｉがｐの長さと等しいとき６行目を処理することを表す。
６行目では、ｑｎを終了状態とする。すなわち、終了状態の集合Ｆにｑｎを追加する。
７行目では、前状態がＱｐに含まれる状態、次状態がｑｎ、入力記号がｐｉ、出力記号がｒｉ、および、重みが０の遷移を、遷移の集合Ｅに追加する。
８行目では、ｑｐにｑｎを代入し、ｑｎのみから成る集合をＱｐに代入する。
９行目は、ｉ番目の発音記号ｐｉがゆっくり発話できる発音記号であり、かつ、ｉがｐの長さと等しい、または、発音記号ｐｉが次の発音記号ｐｉ＋１とは異なる場合に、１０行目から１５行目を処理することを表す。
１０行目では、新しい状態を生成し、それをｑｎに代入する。
１１行目では、前状態がｑｐ、次状態がｑｎ、入力記号がｐｉ、出力記号がε、および、重みがｗ２である遷移と、前状態がｑｎ、次状態がｑｎ、入力記号がｐｉ、出力記号がε、および、重みがｗ１である自己遷移を、遷移の集合Ｅに追加する。
１２行目は、ｉがｐの長さに等しいとき、１３行目を処理し、そうでないとき、１５行目を処理することを表す。
１３行目では、終了状態の集合Ｆにｑｎを追加する。
１５行目では、Ｑｐにｑｎを追加する。
１６行目では、ｉを１増やす。
【００６６】
（構成２の生成方法２）
図１２は、構成２の生成方法を表す疑似コードの他の例を示す図である。図１２は、発音記号と単語との対応を表すモデルとして、従来の方法で生成されたＷＦＳＴ  Ｌなどの既存のＬを受け付ける場合の、生成部１５２によるＬの生成方法の例を示す。
【００６７】
説明を簡単にするため、Ｌは、図１０の疑似コードの場合と同じ仮定の基に作成されているとする。図１２の処理が始まる時点では、Ｅは従来法で生成したＬを構成する遷移の集合であり、Ｅ’は空集合であるとする。
【００６８】
１行目は、２行目から８行目までをＥに含まれる各遷移ｅについて処理することを表している。
２行目は、ｅの入力記号がＳに含まれていることに加え、ｅの次状態から出ていく遷移ｅ’の入力記号がｅの入力記号と異なる、または、ｅの次状態が終了状態であるとき、３行目から８行目までを処理することを表す。
３行目では、新しい状態ｑｎを作成する。
４行目では、前状態がｅの次状態、次状態がｑｎ、入力記号がｅの入力記号、出力記号がε、および、重みがｗ２である遷移を遷移の集合Ｅ’に追加する。さらに、前状態と次状態がｑｎ、入力記号がｅの入力記号、出力記号がε、および、重みがｗ１の自己遷移を遷移の集合Ｅ’に追加する。
５行目は、ｅの次状態が終了状態か否かを判定し、終了状態であれば、６行目に、そうでなければ８行目に処理を進めることを表す。
６行目では、ｑｎを終了状態の集合Ｆに追加する。
８行目では、前状態がｑｎ、次状態がｅ’の次状態、入力記号がｅ’の入力記号、出力記号がε、及び、重みが０である遷移を遷移の集合Ｅ’に追加する。ｅ’はｅの次状態から出て行く遷移である。
９行目では、４行目と８行目で作成した遷移をＥに追加する。
【００６９】
このように、本実施形態にかかる生成装置では、１つのモデルで通常の発話とゆっくり発話を認識することができる。また、発話速度を判定する必要がない、１つのモデルで音声認識を実行できるため、処理負荷を軽減可能となり、また、モデルを記憶するための記憶領域を削減可能となる。
【００７０】
次に、本実施形態の各装置（ＷＦＳＴ生成装置１００、音声認識装置２００）に適用することができるハードウェア構成例について図１３を用いて説明する。図１３は、本実施形態にかかる装置のハードウェア構成例を示す説明図である。
【００７１】
図１３に示されるように、本実施形態の各装置は、ＣＰＵ（Central  Processing  Unit）１、操作部２、表示部３、ＲＯＭ（Read  Only  Memory）４、ＲＡＭ（Random  Access  Memory）５、記憶部６、マイク７、および、バス８等を備えている。各部はバス８により接続されている。
【００７２】
ＣＰＵ１は、ＲＡＭ５の所定領域を作業領域として、ＲＯＭ４または記憶部６に予め記憶された各種制御プログラムとの協働により各種処理を実行し、本実施形態の各装置を構成する各部の動作を統括的に制御する。またＣＰＵ１は、ＲＯＭ４または記憶部６に予め記憶された所定のプログラムとの協働により上記各機能部の機能を実現させる。
【００７３】
なお、各装置の各機能部は、ＣＰＵなどの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、ＩＣ（Integrated  Circuit）などのハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
【００７４】
操作部２は、マウスやキーボード等の入力デバイスであって、ユーザから操作入力された情報を指示信号として受け付け、その指示信号をＣＰＵ１に出力する。
【００７５】
表示部３は、ＬＣＤ（Liquid  Crystal  Display）等の表示装置により構成され、ＣＰＵ１からの表示信号に基づいて、各種情報を表示する。
【００７６】
ＲＯＭ４は、本実施形態の各装置の制御にかかるプログラムや各種設定情報等を書き換え不可能に記憶する。
【００７７】
ＲＡＭ５は、ＳＤＲＡＭ等の揮発性の記憶媒体であって、ＣＰＵ１の作業エリアとして機能する。具体的には、ＷＦＳＴの生成処理、または、ＷＦＳＴを用いた認識処理時に使用される各種変数やパラメータの値等を一時記憶するバッファ等の役割を果たす。
【００７８】
記憶部６は、フラッシュメモリ等の半導体による記憶媒体や、磁気的または光学的に記録可能な記憶媒体を有し、本実施形態の各装置の制御にかかるプログラムや各種設定情報等を書き換え可能に記憶する。また記憶部６は、音響モデル、音素一覧、レキシコン、言語モデル、および、ＷＦＳＴに係る各種の情報を予め記憶したり、処理中に得られたＷＦＳＴ、合成および最適化中のＷＦＳＴ、および、処理結果などを記憶する。
【００７９】
マイク７は、音声認識の対象となる音声を入力する。入力された音声は例えばフロントエンド２０１に出力される。マイク７は、少なくとも音声認識装置２００に備えられていればよい。
【００８０】
本実施形態の各装置の一部または全部は、異なるハードウェア上で動作するよう構成してもよいし、同じハードウェア上で動作するよう構成してもよい。
【００８１】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００８２】
１００  ＷＦＳＴ生成装置
１０１、１０２、１０３、１０４  変換部
１１０  合成部
１５１  受付部
１５２  生成部
２００  音声認識装置
２０１  フロントエンド
２１０  デコーダ
２１２  探索部
【図１】
2018013590.tif 000003
【図２】
2018013590.tif 000004
【図３】
2018013590.tif 000005
【図４】
2018013590.tif 000006
【図５】
2018013590.tif 000007
【図６】
2018013590.tif 000008
【図７】
2018013590.tif 000009
【図８】
2018013590.tif 000010
【図９】
2018013590.tif 000011
【図１０】
2018013590.tif 000012
【図１１】
2018013590.tif 000013
【図１２】
2018013590.tif 000014
【図１３】
2018013590.tif 000015