音声認識装置とその方法とプログラム
【課題】音声認識処理を並列に行うことで音声認識処理を高速にした音声認識装置を提供する。
【解決手段】この発明の音声認識装置は、音声分割部と、音声記憶部と、分割音声分配部と、音声認識処理群と、音声認識結果統合部と、を具備する。音声分割部は、音声信号を入力として、当該音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の場合に音声区間を分割し、上記音声信号を発話区間単位に分割した分割済み音声を出力する。そして、分割音声分配部は、分割済み音声記憶部に記憶された発話区間を、複数の音声認識部で構成された音声認識処理群に分配する。音声認識結果統合部は、音声認識処理群が出力する複数の音声認識結果を時間順に結合して、音声信号に対する音声認識結果を出力する。
【解決手段】この発明の音声認識装置は、音声分割部と、音声記憶部と、分割音声分配部と、音声認識処理群と、音声認識結果統合部と、を具備する。音声分割部は、音声信号を入力として、当該音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の場合に音声区間を分割し、上記音声信号を発話区間単位に分割した分割済み音声を出力する。そして、分割音声分配部は、分割済み音声記憶部に記憶された発話区間を、複数の音声認識部で構成された音声認識処理群に分配する。音声認識結果統合部は、音声認識処理群が出力する複数の音声認識結果を時間順に結合して、音声信号に対する音声認識結果を出力する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、音声認識処理を並列に実行する音声認識装置とその方法とプログラムに関する。
【背景技術】
【0002】
近年のプロセッサのマルチコア化や、クラウドコンピューティング技術による並列処理、GPU(Graphics Processor Unit)やSIMD(Single Instruction Multiple Data)の活用による情報処理の並列化により、処理要求からの応答時間の短縮化が図られている。
【0003】
音声認識の分野で、GPUを用いた音響尤度計算方法としては、非特許文献1に開示された方法が知られている。それは、音響モデル内の全てのガウス分布に対する音響尤度計算を並列に処理する方法であり、データ転送回数を削減させることで、音声認識の高速化を実現している。
【0004】
一方、音声認識の精度を向上させる目的で、音声信号に含まれる発話区間を分割して、音声認識処理を行う考えが特許文献1に開示されている。この考えは、音声認識処理をするのに最も適当な音響モデルを、発話区間毎に選択して用いることで音声認識精度を向上させるものである。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】ディクソンポール、大西翼、古井貞煕「WFSTを用いた音声認識デコーダの機能拡張」、日本音響学会講演論文集、105〜106頁、2007年9月.
【特許文献1】特開2011−13543号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
非特許文献1に開示された方法は、一つの音声認識処理の中で行われる音響尤度計算を並列に処理する方法であり、音声認識処理そのものを並列処理するものでは無かった。また、特許文献1に開示された方法は、発話区間毎に分割した後の音声認識処理は直列的に処理されるものである。つまり従来は、発話区間毎に、それぞれ音声認識処理を並列に行う考えは今まで無かった。したがって、音声認識処理に時間が掛かる課題があった。
【0007】
この発明は、発話区間毎に、複数の音声認識処理を同時に行うことで音声認識処理を高速化した音声認識装置とその方法とプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
この発明の音声認識装置は、音声分割部と、分割済み音声記憶部と、分割音声分配部と、音声認識処理群と、音声認識結果統合部と、を具備する。音声分割部は、音声信号を入力として、当該音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の場合に音声区間を分割し、上記音声信号を発話区間単位に分割した分割済み音声を出力する。分割済み音声記憶部は、分割済み音声を発話区間単位で記憶する。分割音声分配部は、分割済み音声記憶部に記憶された発話区間を、複数の音声認識部に分配する。音声認識処理群は、その複数の音声認識部で構成される。音声認識結果統合部は、音声認識処理群が出力する複数の音声認識結果を時間順に結合して、音声信号に対する音声認識結果を出力する。
【発明の効果】
【0009】
この発明の音声認識装置は、音声信号を複数の発話区間に分割し、複数の音声認識処理部においてその分割した発話区間毎に音声認識処理を行うので、音声認識処理の処理速度を速くする効果を奏する。
【図面の簡単な説明】
【0010】
【図1】この発明の音声認識装置100の機能構成例を示す図。
【図2】音声認識装置100の動作フローを示す図。
【図3】音声分割部10の機能構成例を示す図。
【図4】音声分割部10の動作フローを示す図。
【図5】分割音声分配部30の動作フローを示す図。
【図6】発話区間を音声認識処理した結果の一例を示す図。
【図7】この発明の音声認識装置200の音声認識結果統合部250で言語スコアを再計算する際の単語列の例を示す図。
【図8】この発明の音声認識装置300の音声分割部310の動作フローを示す図。
【図9】発話区間の時間長に長短がある場合の発話区間の例を示す。
【図10】この発明の音声認識装置400の音声分割部410の動作フローを示す図。
【図11】この発明の音声認識装置500の音声分割部510の動作フローを示す図。
【図12】この発明の音声認識装置500の音声認識結果統合部550の発話分割部分に重複区間T0を設けた単語ラティスの例を示す図。
【図13】図12に示した発話区間を統合した音声認識結果ネットワークの例を示す図。
【発明を実施するための形態】
【0011】
以下、この発明の実施の形態を図面を参照して説明する。複数の図面中同一のものには
同じ参照符号を付し、説明は繰り返さない。
【実施例1】
【0012】
図1に、この発明の音声認識装置100の機能構成例を示す。その動作フローを図2に示す。音声認識装置100は、音声分割部10と、分割済み音声記憶部20と、分割音声分配部30と、音声認識処理群40と、音声認識結果統合部50と、制御部60を具備する。その各部の機能は、例えばROM、RAM、CPU等で構成されるコンピュータに所定のプログラムが読み込まれて、CPUがそのプログラムを実行することで実現されるものである。
【0013】
音声分割部10は、音声信号を入力として、当該音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長Tp以上の場合に音声区間を分割し、分割した音声信号を発話区間単位の分割済み音声信号として出力する(ステップS10)。音声・非音声判別は、例えば、フレーム毎の音声信号のパワーがほぼ0の区間を非音声区間とし、音声信号のパワーが所定値以上の区間を音声区間とする。又は、音声信号から音声特徴量を求め、その音声特徴量と音声GMMと無音HMM(Hidden Mixture Model:隠れマルコフモデル)とを比較し、音声GMMの方が高い尤度を示せばそのフレームを音声、無音HMMの方が高い尤度を示せば無音として音声・非音声判別を行っても良い。発話区間単位の分割済み音声信号は、分割済み音声記憶部20に記憶される。
【0014】
分割音声分配部30は、分割済み音声記憶部20に記憶された発話区間を、音声認識処理群40を構成する複数の音声認識部401〜40Nに分配する(ステップS30)。音声認識部401〜40Nは、従来技術で示した特許文献1に開示されたものと同様の音声認識処理を行う。
【0015】
音声認識結果統合部50は、音声認識処理群40が出力する複数の音声認識結果を時間順に結合して、入力された音声信号に対する音声認識結果を出力する(ステップS50)。制御部60は、上記した各機能部間の時系列的な動作等を制御するものである。
【0016】
以上述べたように、音声認識装置100は、入力される音声信号を発話区間単位の音声信号に分割して、その発話区間単位ごとに複数の音声認識処理部401〜40Nが並列に動作して音声認識処理を行う。したがって、音声認識処理の処理速度を速くすることができる。
【0017】
音声認識装置100の各部の機能を、図面を参照して更に詳しく説明する。図3に、音声分割部10の機能構成例を示す。その動作フローを図4に示す。音声分割部10は、音声・非音声判別手段11と、発話分割手段12を備える。音声・非音声判別手段11は、入力される音声信号を、フレーム毎に上記したような例えば音声信号のパワーを参照して音声区間と非音声区間に判別する(ステップS11)。
【0018】
発話分割手段12は、最初に音声区間番号iをi=0に初期化する(ステップS120)。そして、最初の音声区間を検出(ステップS121)し、その後、非音声分割区間長閾値Tp(例えば1秒)以上の非音声区間が継続することを検出(ステップS122のYes)する。ステップS121で音声区間が検出され、その後に非音声分割区間長閾値Tp以上の非音声区間が検出されると一発話単位が検出され、音声区間番号iはインクリメントされる(ステップS123)。ステップS122において非音声分割区間長閾値Tp以上の非音声区間の継続が検出されない場合で、且つ、音声信号が終了しない時は音声区間が継続しているとして音声信号のフレームを更新する(ステップS124のNo)。非音声分割区間長閾値Tp以上の非音声区間の継続が検出されない場合(ステップS122のNo)に音声信号が終了した時(ステップS124のYes)は、音声区間番号iをインクリメントして音声分割処理を終了する(ステップS125)。
【0019】
ステップS121〜S125の処理は、音声信号の全てのフレームについて終了するまで繰り返される。最初の音声区間が検出されない場合(ステップS121のNo)も、音声信号が終了するまでフレーム番号が更新される。
【0020】
次に、分割された発話区間を、複数の音声認識部401〜40Nに分配する分割音声分配部30について説明する。図5に、分割音声分配部30の動作フローを示す。音声分割部10で分割された発話区間の数をM(以下M)、複数の音声認識部401〜40Nの数をN(以下N)として説明する。
【0021】
M≦Nの場合(ステップS31のYes)、分割音声分配部30は、M個の発話区間をM個の音声認識部401〜40Mにそれぞれ分配する(ステップS32)。
【0022】
M>Nの場合(ステップS31のNo)、分割音声分配部30は、N個の発話区間をN個の音声認識部401〜40Nにそれぞれ分配する(ステップS33)。ここで分配済みの音声区間の数をjとする。そして、音声認識部401〜40Nの何れかの処理終了を待つ(ステップS34のNo)。音声認識部401〜40Nの何れかの処理が終了すると、残りの発話区間を処理の終了した音声認識部に分配する(ステップS36)。この処理を終了した音声認識部に発話区間が直に分配される処理は、分配済みの音声区間の数jが発話区間の数Mと等しくなるまで繰り返される。
【0023】
その結果、音声認識処理群40は、最大N個の音声認識部401〜40Nの同時並行処理で音声認識結果を出力する。音声認識結果統合部50は、音声認識処理群40が出力する複数の音声認識結果を時間順に統合して、入力音声信号に対する音声認識結果として出力する(ステップS50)。
【0024】
以上説明したように、音声認識装置100によれば複数の発話区間単位ごとに複数の音声認識処理部401〜40Nが並列に動作して音声認識処理を行うので、音声認識処理の処理速度を速くすることができる。
【0025】
例えば音声認識処理群40の出力する音声認識結果ネットワークは、単語ラティス形式又はコンフュージョンネットワーク形式で出力される。単語ラティスとは、入力文に対してあらゆる可能な認識結果単語候補をラティスと称されるデータ構造で表現したものである。音声信号を例えば、発話中に言い淀んだ「今日の天気、…、は晴れ」とした場合、音声分割処理によって音声区間番号i=1が「今日の天気」、i=2が「は晴れ」の2個の発話区間に分解される。コンフュージョンネットワーク形式とは、単語ラティス形式を認識結果単語候補の順序関係を保持しながら簡略化したものである。
【0026】
図6に、その2個の発話区間を単語ラティスで示す。○はノードと称され、そのノード間に認識結果単語候補が割り振られている。この例では、下線を付した認識結果単語候補の言語スコアが高いことを示している。音声認識装置100では、発話区間単位で言語スコアを計算するので、発話区間i=1と2との間の関連性が評価されない。その結果、音声認識結果が、例えば「今日の天気は割れ」となってしまう場合が考えられる。この課題を解決した音声認識装置200を次に説明する。
【実施例2】
【0027】
音声認識装置200は、音声認識装置100の音声認識結果統合部50が、音声認識結果統合部250に置き換わった点のみが異なる。音声認識装置200の機能構成例の図示は省略する。
【0028】
音声認識結果統合部250は、複数の発話区間毎の音声認識結果を時間順に結合した結合部分の単語の言語スコアを、2個以上の文字列又は2個以上の単語のN−gramを用いて再計算し、結合した音声認識結果ネットワークの言語スコアが最も高い単語列を音声認識結果として選択する。N−gramとはある文字列の中で、N個の文字列又は単語の組み合わせが、どの程度出現するかを調査する言語モデルである。
【0029】
図7に、音声認識結果統合部250で、図6に示した発話区間i=1と2を結合した単語ラティスを示す。この例の場合、発話区間i=2の認識結果単語候補「は」の言語スコアは、3−gramの「の」と、「天気」と、「は」とで再計算されるので、認識結果単語候補「は」の言語スコアは「の天気割れ」よりも高くなり、音声信号の「今日の天気、…、は晴れ」に対する音声認識結果を「今日の天気は晴れ」とすることができる。
【0030】
このように、音声認識装置200では、発話区間の結合付近の文章のつながりを考慮したより精度の高い言語スコアを再計算することが可能なので、音声認識精度を向上させることができる。なお、音声区間を分割する非音声分割区間長閾値Tpを固定にした例で説明したが、この非音声分割区間長閾値Tpを可変にした音声認識装置300も考えられる。次に、その音声認識装置300を説明する。
【実施例3】
【0031】
音声認識装置300は、音声認識装置100又は200の音声分割部10が、音声分割部310に置き換わった点のみが異なる。音声認識装置300の機能構成例の図示は省略する。
【0032】
音声分割部310は、音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の条件で音声区間を分割した発話区間の数Mが、音声認識処理群40を構成する音声認識部401〜40Nの数Nよりも少ない場合、非音声分割区間長閾値Tpの値を小さくした条件で音声区間を分割する処理をM≧Nになるまで繰り返す。
【0033】
図8に、音声分割部310の動作フローを示す。音声分割部310は、音声信号を入力として、当該音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長Tp以上の場合に音声区間を分割し、分割した音声信号を発話区間単位の分割済み音声信号として出力する(ステップS310)。音声区間を分割した発話区間の数Mが、音声認識部401〜40Nの数N以上の場合(ステップS311のNo)、音声分割処理を終了する。
【0034】
音声区間を分割した発話区間の数Mが、音声認識部401〜40Nの数Nよりも小さい場合(ステップS311のYes)、音声分割部310は非音声分割区間長閾値Tpの値を例えば0.1秒(t=0.1秒)短くして音声分割処理を再度行う(ステップS312とS313)。そして、発話区間の数Mが、音声認識部401〜40Nの数N以上になったら音声分割処理を終了する(ステップS314のNo)。
【0035】
音声区間を分割した発話区間の数Mが、音声認識部401〜40Nの数Nよりも小さい場合(ステップS314のYes)、非音声分割区間長閾値Tpの値がその最小値Tpmin(例えばTpmin=0.1秒)以下であるか否かが評価され(ステップS315)、以下の場合は音声分割処理を終了する。非音声分割区間長閾値Tpの値が最小値Tpminでない場合、再び非音声分割区間長閾値Tpの値を所定の時間間隔で短くして音声を分割する処理を、発話区間の数Mが音声認識部401〜40Nの数N以上の値になるまで繰り返す。
【0036】
このように音声分割部310は、音声認識部401〜40Nの数Nよりも発話区間の数Mが多くなるように音声信号を分割するので、音声認識処理群40を有効に活用することができ、音声認識処理をより高速にすることが可能である。なお、複数の発話区間の時間長がアンバランスである場合、更に改善する方法が考えられる。図9に、発話区間の時間長に長短がある場合の例を示す。図9の横方向は発話区間i=1〜i=8である。縦方向はその発話区間の発話時間長を示す。発話区間i=5の発話時間長は、他の発話区間の平均的な時間長の3倍以上の長さがある。このような場合、発話区間i=5の時間長が音声認識処理の処理時間の長さを決めてしまう。この場合、最長の発話区間を更に分割してその発話時間長を短く分割することで、音声認識処理の時間を短縮することができる。次に、その最長の発話区間に着目して音声認識処理をより高速にしたこの発明の音声認識装置400を説明する。
【実施例4】
【0037】
音声認識装置400は、音声認識装置100又は200の音声分割部10が、音声分割部410に置き換わった点のみが異なる。音声認識装置400の機能構成例の図示は省略する。
【0038】
音声分割部410は、音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の条件で音声区間を分割した発話区間の数Mが、音声認識処理群40を構成する音声認識部401〜40Nの数Nよりも少ない場合、当該分割した音声区間の時間長が最大の発話区間を選択して非音声分割区間長閾値Tpの値を小さくした条件で当該発話区間の音声区間を再分割し、上記非音声分割区間長閾値Tpの値が最小非音声分割区間長閾値Tpminになるか、M≧Nになるまで音声区間の時間長が最大の発話区間に対して再分割する処理を繰り返す。
【0039】
図10に、音声分割部410の動作フローを示す。音声分割部410は、まず、音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の条件で音声区間を分割する(ステップS410)。音声区間を分割した発話区間の数Mが、音声認識処理群40を構成する音声認識部401〜40Nの数Nよりも少ない場合、当該分割した音声区間の時間長が最大の発話区間を選択する(ステップS412)。そして、その最大の発話区間の音声区間を非音声分割区間長閾値Tpの値を、例えば0.1秒(t)間隔で小さくした条件で再分割する(ステップS414)。
【0040】
再分割した結果の発話区間の数Mが、音声認識処理群40を構成する音声認識部401〜40Nの数N以上になるまで(ステップS415のNo)、又は、非音声分割区間長閾値Tpの値が最小非音声分割区間長閾値Tpminになるまで音声区間の時間長が最大の発話区間を再分割する処理を繰り返す(ステップS416のYes)。
【0041】
音声認識装置400は、最長の発話区間を短く分割するので、音声認識処理をより高速に行うことができる。なお、上記した音声認識装置100〜400の音声区間を分割する方法は、所定の長さ以上の非音声区間を探して分割する例で説明した。この方法で音声区間を分割してもなお、発話区間の数Mが音声認識部401〜40Nの数Nに満たない場合がある(M<N)。その場合に、一度音声分割部10で分割した音声区間を、更に均等にk分割して発話区間を作成する音声認識装置500も考えられる。次に、その音声認識装置500を説明する。
【実施例5】
【0042】
音声認識装置500は、音声認識装置100〜400の音声分割部10と分割済み音声記憶部20との間に第2音声分割部70が設けられる点と、音声認識結果統合部50が音声認識結果統合部550となる点が異なる。音声認識装置500の機能構成例の図示は省略する。
【0043】
第2音声分割部70は、音声分割部10で分割した発話区間の数Mが上記音声認識部の数Nに満たない場合(M<N)に動作する。第2音声分割部70は、M個の発話区間の最も長い発話区間を、均等にk(kは2以上の整数)分割し、その結果がM−1+k>Nとなる場合はkをk′=N−M+1として上記k分割する前の最も長い発話区間をk′で分割し、k分割した結果がM<Nの場合は再び最新の最大発話時間の発話区間に対してk分割する処理を、全ての発話区間の数Mが上記音声認識部の数Nに等しくなるまで繰り返すと共にk分割した分割部分に重複区間T0を設ける。
【0044】
図11に、第2音声分割部70の動作フローを示す。第2音声分割部70は、音声分割部10で分割した発話区間の数Mが音声認識部401〜40Nの数N以上の場合(ステップS511のNo)は、音声の分割処理を行わない。
【0045】
M<Nの場合(ステップS511のYes)、第2音声分割部70は、M個の発話区間の中の最も長い発話区間を選択し、その発話区間を均等にk分割する(ステップS512、S513)。kは、2以上の整数であり外部から与えられる。例えばM=4、N=6、k=4として説明する。
【0046】
4個の発話区間の中の最長の発話区間を、4(k)分割した場合の発話区間の数が音声認識部401〜40Nの数Nよりも大きくなるか否かを判断する(ステップS513)。4個の発話区間の中の最長の発話区間を、4(k)分割すると発話区間の数MはM′=7となりNよりも大きくなる(ステップS513のYes)。この場合、kを=6−4+1=3として、最も長い発話区間を分割する。kで分割した発話区間の数はM=4からM=6となり、音声認識部401〜40Nの数Nと等しい数となるので分割処理を終了する(ステップS516のYes)。
【0047】
k分割した結果がM-1+k<Nの場合(ステップS516のYes)は、k分割した結果の発話区間を含めた最新の発話区間の最大発話時間の発話区間に対してステップS512〜S516までの処理を、全ての発話区間の数Mが上記音声認識部の数Nに等しくなるまで繰り返す。M-1+k≧Nになったら分割処理を終了(ステップS516のNo)し、k分割した分割部分に重複区間T0を設けて動作を終了する(ステップS517)。
【0048】
図12に、重複区間T0を単語ラティス形式で示す。図12の横方向は経過時間である。図12は、音声信号を「今日の天気は晴れ」とした時に、その一つの音声区間を2分割した例を示している。よって、「天気」の途中に分割ポイントがある例である。
【0049】
その分割ポイントの前後に重複区間T0が設けられている。音声認識結果統合部550は、重複区間T0に存在する単語の時間重複割合が所定値以上の単語のみを残した音声認識結果ネットワークのスコアが最も高い単語列を上記音声認識結果として選択する。時間重複割合とは、異なる発話区間の重複区間に出現する同一単語wにおいて、単語wの発話区間が重複している時間の割合のことである。発話区間i=1の「天気」と「ペンキ」、発話区間i=2の「天気」と「ペンキ」、はそれぞれ同一単語で時間を重複している。例えば発話区間i=1の「天気」の時間長を1秒、発話区間i=2の「天気」の時間長を1.5秒とすると、i=1の天気の時間重複割合は1.0/1.0で1である。i=2の「天気」の時間重複割合は1.0/1.5で0.66である。
【0050】
つまり、音声認識結果統合部550は、隣り合う2つの音声認識結果ネットワーク内に含まれる重複区間の単語に対し、両ネットワークに存在し、かつその時間重複割合が所定値以上(例えば0.6以上)である重複単語のみを残し、他の単語は全てのネットワークから削除する。そして、音声認識ネットワーク同士を統合する。統合の際、それぞれに存在する認識結果単語候補のうち音響スコア、言語スコアの高い認識結果単語候補を選択して音声認識結果とする。
【0051】
図13に、図12に示した発話区間を統合した音声認識結果ネットワークの例を示す。発話区間i=1と2との間で重複しない「お」、「野天」、「木」、「はい」、「屋」の認識結果単語候補は削除されている。
【0052】
このように音声区間を分割しても、分割部分に重複区間を設け、それを考慮した認識結果の統合処理を行うことで、音声認識精度を劣化させずに音声認識処理の時間を短縮することが可能である。
【0053】
以上述べたように、この発明の音声認識装置100〜500は、音声信号を複数の発話区間に分割し、複数の音声認識処理部においてその分割した発話区間毎に音声認識処理を行うので、音声認識処理の処理速度を速くすることができると共に、音声認識の認識精度も劣化させることがない。
なお、上記装置における処理手段をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、各装置における処理手段がコンピュータ上で実現される。
【0054】
また、上記方法及び装置において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
【0055】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、BD(Blue Ray Disc)、DVD(Digital Versatile Disc)、DVD-RAM(Random Access Memory)、CD-ROM(Compact Disc Read Only Memory)、CD-R(Recordable)/RW(ReWritable)等を、光磁気記録媒体として、MO(Magneto Optical disc)等を、半導体メモリとしてEEP-ROM(Electronically Erasable and Programmable-Read Only Memory)等を用いることができる。
【0056】
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記録装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【0057】
また、各手段は、コンピュータ上で所定のプログラムを実行させることにより構成することにしてもよいし、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【技術分野】
【0001】
この発明は、音声認識処理を並列に実行する音声認識装置とその方法とプログラムに関する。
【背景技術】
【0002】
近年のプロセッサのマルチコア化や、クラウドコンピューティング技術による並列処理、GPU(Graphics Processor Unit)やSIMD(Single Instruction Multiple Data)の活用による情報処理の並列化により、処理要求からの応答時間の短縮化が図られている。
【0003】
音声認識の分野で、GPUを用いた音響尤度計算方法としては、非特許文献1に開示された方法が知られている。それは、音響モデル内の全てのガウス分布に対する音響尤度計算を並列に処理する方法であり、データ転送回数を削減させることで、音声認識の高速化を実現している。
【0004】
一方、音声認識の精度を向上させる目的で、音声信号に含まれる発話区間を分割して、音声認識処理を行う考えが特許文献1に開示されている。この考えは、音声認識処理をするのに最も適当な音響モデルを、発話区間毎に選択して用いることで音声認識精度を向上させるものである。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】ディクソンポール、大西翼、古井貞煕「WFSTを用いた音声認識デコーダの機能拡張」、日本音響学会講演論文集、105〜106頁、2007年9月.
【特許文献1】特開2011−13543号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
非特許文献1に開示された方法は、一つの音声認識処理の中で行われる音響尤度計算を並列に処理する方法であり、音声認識処理そのものを並列処理するものでは無かった。また、特許文献1に開示された方法は、発話区間毎に分割した後の音声認識処理は直列的に処理されるものである。つまり従来は、発話区間毎に、それぞれ音声認識処理を並列に行う考えは今まで無かった。したがって、音声認識処理に時間が掛かる課題があった。
【0007】
この発明は、発話区間毎に、複数の音声認識処理を同時に行うことで音声認識処理を高速化した音声認識装置とその方法とプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
この発明の音声認識装置は、音声分割部と、分割済み音声記憶部と、分割音声分配部と、音声認識処理群と、音声認識結果統合部と、を具備する。音声分割部は、音声信号を入力として、当該音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の場合に音声区間を分割し、上記音声信号を発話区間単位に分割した分割済み音声を出力する。分割済み音声記憶部は、分割済み音声を発話区間単位で記憶する。分割音声分配部は、分割済み音声記憶部に記憶された発話区間を、複数の音声認識部に分配する。音声認識処理群は、その複数の音声認識部で構成される。音声認識結果統合部は、音声認識処理群が出力する複数の音声認識結果を時間順に結合して、音声信号に対する音声認識結果を出力する。
【発明の効果】
【0009】
この発明の音声認識装置は、音声信号を複数の発話区間に分割し、複数の音声認識処理部においてその分割した発話区間毎に音声認識処理を行うので、音声認識処理の処理速度を速くする効果を奏する。
【図面の簡単な説明】
【0010】
【図1】この発明の音声認識装置100の機能構成例を示す図。
【図2】音声認識装置100の動作フローを示す図。
【図3】音声分割部10の機能構成例を示す図。
【図4】音声分割部10の動作フローを示す図。
【図5】分割音声分配部30の動作フローを示す図。
【図6】発話区間を音声認識処理した結果の一例を示す図。
【図7】この発明の音声認識装置200の音声認識結果統合部250で言語スコアを再計算する際の単語列の例を示す図。
【図8】この発明の音声認識装置300の音声分割部310の動作フローを示す図。
【図9】発話区間の時間長に長短がある場合の発話区間の例を示す。
【図10】この発明の音声認識装置400の音声分割部410の動作フローを示す図。
【図11】この発明の音声認識装置500の音声分割部510の動作フローを示す図。
【図12】この発明の音声認識装置500の音声認識結果統合部550の発話分割部分に重複区間T0を設けた単語ラティスの例を示す図。
【図13】図12に示した発話区間を統合した音声認識結果ネットワークの例を示す図。
【発明を実施するための形態】
【0011】
以下、この発明の実施の形態を図面を参照して説明する。複数の図面中同一のものには
同じ参照符号を付し、説明は繰り返さない。
【実施例1】
【0012】
図1に、この発明の音声認識装置100の機能構成例を示す。その動作フローを図2に示す。音声認識装置100は、音声分割部10と、分割済み音声記憶部20と、分割音声分配部30と、音声認識処理群40と、音声認識結果統合部50と、制御部60を具備する。その各部の機能は、例えばROM、RAM、CPU等で構成されるコンピュータに所定のプログラムが読み込まれて、CPUがそのプログラムを実行することで実現されるものである。
【0013】
音声分割部10は、音声信号を入力として、当該音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長Tp以上の場合に音声区間を分割し、分割した音声信号を発話区間単位の分割済み音声信号として出力する(ステップS10)。音声・非音声判別は、例えば、フレーム毎の音声信号のパワーがほぼ0の区間を非音声区間とし、音声信号のパワーが所定値以上の区間を音声区間とする。又は、音声信号から音声特徴量を求め、その音声特徴量と音声GMMと無音HMM(Hidden Mixture Model:隠れマルコフモデル)とを比較し、音声GMMの方が高い尤度を示せばそのフレームを音声、無音HMMの方が高い尤度を示せば無音として音声・非音声判別を行っても良い。発話区間単位の分割済み音声信号は、分割済み音声記憶部20に記憶される。
【0014】
分割音声分配部30は、分割済み音声記憶部20に記憶された発話区間を、音声認識処理群40を構成する複数の音声認識部401〜40Nに分配する(ステップS30)。音声認識部401〜40Nは、従来技術で示した特許文献1に開示されたものと同様の音声認識処理を行う。
【0015】
音声認識結果統合部50は、音声認識処理群40が出力する複数の音声認識結果を時間順に結合して、入力された音声信号に対する音声認識結果を出力する(ステップS50)。制御部60は、上記した各機能部間の時系列的な動作等を制御するものである。
【0016】
以上述べたように、音声認識装置100は、入力される音声信号を発話区間単位の音声信号に分割して、その発話区間単位ごとに複数の音声認識処理部401〜40Nが並列に動作して音声認識処理を行う。したがって、音声認識処理の処理速度を速くすることができる。
【0017】
音声認識装置100の各部の機能を、図面を参照して更に詳しく説明する。図3に、音声分割部10の機能構成例を示す。その動作フローを図4に示す。音声分割部10は、音声・非音声判別手段11と、発話分割手段12を備える。音声・非音声判別手段11は、入力される音声信号を、フレーム毎に上記したような例えば音声信号のパワーを参照して音声区間と非音声区間に判別する(ステップS11)。
【0018】
発話分割手段12は、最初に音声区間番号iをi=0に初期化する(ステップS120)。そして、最初の音声区間を検出(ステップS121)し、その後、非音声分割区間長閾値Tp(例えば1秒)以上の非音声区間が継続することを検出(ステップS122のYes)する。ステップS121で音声区間が検出され、その後に非音声分割区間長閾値Tp以上の非音声区間が検出されると一発話単位が検出され、音声区間番号iはインクリメントされる(ステップS123)。ステップS122において非音声分割区間長閾値Tp以上の非音声区間の継続が検出されない場合で、且つ、音声信号が終了しない時は音声区間が継続しているとして音声信号のフレームを更新する(ステップS124のNo)。非音声分割区間長閾値Tp以上の非音声区間の継続が検出されない場合(ステップS122のNo)に音声信号が終了した時(ステップS124のYes)は、音声区間番号iをインクリメントして音声分割処理を終了する(ステップS125)。
【0019】
ステップS121〜S125の処理は、音声信号の全てのフレームについて終了するまで繰り返される。最初の音声区間が検出されない場合(ステップS121のNo)も、音声信号が終了するまでフレーム番号が更新される。
【0020】
次に、分割された発話区間を、複数の音声認識部401〜40Nに分配する分割音声分配部30について説明する。図5に、分割音声分配部30の動作フローを示す。音声分割部10で分割された発話区間の数をM(以下M)、複数の音声認識部401〜40Nの数をN(以下N)として説明する。
【0021】
M≦Nの場合(ステップS31のYes)、分割音声分配部30は、M個の発話区間をM個の音声認識部401〜40Mにそれぞれ分配する(ステップS32)。
【0022】
M>Nの場合(ステップS31のNo)、分割音声分配部30は、N個の発話区間をN個の音声認識部401〜40Nにそれぞれ分配する(ステップS33)。ここで分配済みの音声区間の数をjとする。そして、音声認識部401〜40Nの何れかの処理終了を待つ(ステップS34のNo)。音声認識部401〜40Nの何れかの処理が終了すると、残りの発話区間を処理の終了した音声認識部に分配する(ステップS36)。この処理を終了した音声認識部に発話区間が直に分配される処理は、分配済みの音声区間の数jが発話区間の数Mと等しくなるまで繰り返される。
【0023】
その結果、音声認識処理群40は、最大N個の音声認識部401〜40Nの同時並行処理で音声認識結果を出力する。音声認識結果統合部50は、音声認識処理群40が出力する複数の音声認識結果を時間順に統合して、入力音声信号に対する音声認識結果として出力する(ステップS50)。
【0024】
以上説明したように、音声認識装置100によれば複数の発話区間単位ごとに複数の音声認識処理部401〜40Nが並列に動作して音声認識処理を行うので、音声認識処理の処理速度を速くすることができる。
【0025】
例えば音声認識処理群40の出力する音声認識結果ネットワークは、単語ラティス形式又はコンフュージョンネットワーク形式で出力される。単語ラティスとは、入力文に対してあらゆる可能な認識結果単語候補をラティスと称されるデータ構造で表現したものである。音声信号を例えば、発話中に言い淀んだ「今日の天気、…、は晴れ」とした場合、音声分割処理によって音声区間番号i=1が「今日の天気」、i=2が「は晴れ」の2個の発話区間に分解される。コンフュージョンネットワーク形式とは、単語ラティス形式を認識結果単語候補の順序関係を保持しながら簡略化したものである。
【0026】
図6に、その2個の発話区間を単語ラティスで示す。○はノードと称され、そのノード間に認識結果単語候補が割り振られている。この例では、下線を付した認識結果単語候補の言語スコアが高いことを示している。音声認識装置100では、発話区間単位で言語スコアを計算するので、発話区間i=1と2との間の関連性が評価されない。その結果、音声認識結果が、例えば「今日の天気は割れ」となってしまう場合が考えられる。この課題を解決した音声認識装置200を次に説明する。
【実施例2】
【0027】
音声認識装置200は、音声認識装置100の音声認識結果統合部50が、音声認識結果統合部250に置き換わった点のみが異なる。音声認識装置200の機能構成例の図示は省略する。
【0028】
音声認識結果統合部250は、複数の発話区間毎の音声認識結果を時間順に結合した結合部分の単語の言語スコアを、2個以上の文字列又は2個以上の単語のN−gramを用いて再計算し、結合した音声認識結果ネットワークの言語スコアが最も高い単語列を音声認識結果として選択する。N−gramとはある文字列の中で、N個の文字列又は単語の組み合わせが、どの程度出現するかを調査する言語モデルである。
【0029】
図7に、音声認識結果統合部250で、図6に示した発話区間i=1と2を結合した単語ラティスを示す。この例の場合、発話区間i=2の認識結果単語候補「は」の言語スコアは、3−gramの「の」と、「天気」と、「は」とで再計算されるので、認識結果単語候補「は」の言語スコアは「の天気割れ」よりも高くなり、音声信号の「今日の天気、…、は晴れ」に対する音声認識結果を「今日の天気は晴れ」とすることができる。
【0030】
このように、音声認識装置200では、発話区間の結合付近の文章のつながりを考慮したより精度の高い言語スコアを再計算することが可能なので、音声認識精度を向上させることができる。なお、音声区間を分割する非音声分割区間長閾値Tpを固定にした例で説明したが、この非音声分割区間長閾値Tpを可変にした音声認識装置300も考えられる。次に、その音声認識装置300を説明する。
【実施例3】
【0031】
音声認識装置300は、音声認識装置100又は200の音声分割部10が、音声分割部310に置き換わった点のみが異なる。音声認識装置300の機能構成例の図示は省略する。
【0032】
音声分割部310は、音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の条件で音声区間を分割した発話区間の数Mが、音声認識処理群40を構成する音声認識部401〜40Nの数Nよりも少ない場合、非音声分割区間長閾値Tpの値を小さくした条件で音声区間を分割する処理をM≧Nになるまで繰り返す。
【0033】
図8に、音声分割部310の動作フローを示す。音声分割部310は、音声信号を入力として、当該音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長Tp以上の場合に音声区間を分割し、分割した音声信号を発話区間単位の分割済み音声信号として出力する(ステップS310)。音声区間を分割した発話区間の数Mが、音声認識部401〜40Nの数N以上の場合(ステップS311のNo)、音声分割処理を終了する。
【0034】
音声区間を分割した発話区間の数Mが、音声認識部401〜40Nの数Nよりも小さい場合(ステップS311のYes)、音声分割部310は非音声分割区間長閾値Tpの値を例えば0.1秒(t=0.1秒)短くして音声分割処理を再度行う(ステップS312とS313)。そして、発話区間の数Mが、音声認識部401〜40Nの数N以上になったら音声分割処理を終了する(ステップS314のNo)。
【0035】
音声区間を分割した発話区間の数Mが、音声認識部401〜40Nの数Nよりも小さい場合(ステップS314のYes)、非音声分割区間長閾値Tpの値がその最小値Tpmin(例えばTpmin=0.1秒)以下であるか否かが評価され(ステップS315)、以下の場合は音声分割処理を終了する。非音声分割区間長閾値Tpの値が最小値Tpminでない場合、再び非音声分割区間長閾値Tpの値を所定の時間間隔で短くして音声を分割する処理を、発話区間の数Mが音声認識部401〜40Nの数N以上の値になるまで繰り返す。
【0036】
このように音声分割部310は、音声認識部401〜40Nの数Nよりも発話区間の数Mが多くなるように音声信号を分割するので、音声認識処理群40を有効に活用することができ、音声認識処理をより高速にすることが可能である。なお、複数の発話区間の時間長がアンバランスである場合、更に改善する方法が考えられる。図9に、発話区間の時間長に長短がある場合の例を示す。図9の横方向は発話区間i=1〜i=8である。縦方向はその発話区間の発話時間長を示す。発話区間i=5の発話時間長は、他の発話区間の平均的な時間長の3倍以上の長さがある。このような場合、発話区間i=5の時間長が音声認識処理の処理時間の長さを決めてしまう。この場合、最長の発話区間を更に分割してその発話時間長を短く分割することで、音声認識処理の時間を短縮することができる。次に、その最長の発話区間に着目して音声認識処理をより高速にしたこの発明の音声認識装置400を説明する。
【実施例4】
【0037】
音声認識装置400は、音声認識装置100又は200の音声分割部10が、音声分割部410に置き換わった点のみが異なる。音声認識装置400の機能構成例の図示は省略する。
【0038】
音声分割部410は、音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の条件で音声区間を分割した発話区間の数Mが、音声認識処理群40を構成する音声認識部401〜40Nの数Nよりも少ない場合、当該分割した音声区間の時間長が最大の発話区間を選択して非音声分割区間長閾値Tpの値を小さくした条件で当該発話区間の音声区間を再分割し、上記非音声分割区間長閾値Tpの値が最小非音声分割区間長閾値Tpminになるか、M≧Nになるまで音声区間の時間長が最大の発話区間に対して再分割する処理を繰り返す。
【0039】
図10に、音声分割部410の動作フローを示す。音声分割部410は、まず、音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の条件で音声区間を分割する(ステップS410)。音声区間を分割した発話区間の数Mが、音声認識処理群40を構成する音声認識部401〜40Nの数Nよりも少ない場合、当該分割した音声区間の時間長が最大の発話区間を選択する(ステップS412)。そして、その最大の発話区間の音声区間を非音声分割区間長閾値Tpの値を、例えば0.1秒(t)間隔で小さくした条件で再分割する(ステップS414)。
【0040】
再分割した結果の発話区間の数Mが、音声認識処理群40を構成する音声認識部401〜40Nの数N以上になるまで(ステップS415のNo)、又は、非音声分割区間長閾値Tpの値が最小非音声分割区間長閾値Tpminになるまで音声区間の時間長が最大の発話区間を再分割する処理を繰り返す(ステップS416のYes)。
【0041】
音声認識装置400は、最長の発話区間を短く分割するので、音声認識処理をより高速に行うことができる。なお、上記した音声認識装置100〜400の音声区間を分割する方法は、所定の長さ以上の非音声区間を探して分割する例で説明した。この方法で音声区間を分割してもなお、発話区間の数Mが音声認識部401〜40Nの数Nに満たない場合がある(M<N)。その場合に、一度音声分割部10で分割した音声区間を、更に均等にk分割して発話区間を作成する音声認識装置500も考えられる。次に、その音声認識装置500を説明する。
【実施例5】
【0042】
音声認識装置500は、音声認識装置100〜400の音声分割部10と分割済み音声記憶部20との間に第2音声分割部70が設けられる点と、音声認識結果統合部50が音声認識結果統合部550となる点が異なる。音声認識装置500の機能構成例の図示は省略する。
【0043】
第2音声分割部70は、音声分割部10で分割した発話区間の数Mが上記音声認識部の数Nに満たない場合(M<N)に動作する。第2音声分割部70は、M個の発話区間の最も長い発話区間を、均等にk(kは2以上の整数)分割し、その結果がM−1+k>Nとなる場合はkをk′=N−M+1として上記k分割する前の最も長い発話区間をk′で分割し、k分割した結果がM<Nの場合は再び最新の最大発話時間の発話区間に対してk分割する処理を、全ての発話区間の数Mが上記音声認識部の数Nに等しくなるまで繰り返すと共にk分割した分割部分に重複区間T0を設ける。
【0044】
図11に、第2音声分割部70の動作フローを示す。第2音声分割部70は、音声分割部10で分割した発話区間の数Mが音声認識部401〜40Nの数N以上の場合(ステップS511のNo)は、音声の分割処理を行わない。
【0045】
M<Nの場合(ステップS511のYes)、第2音声分割部70は、M個の発話区間の中の最も長い発話区間を選択し、その発話区間を均等にk分割する(ステップS512、S513)。kは、2以上の整数であり外部から与えられる。例えばM=4、N=6、k=4として説明する。
【0046】
4個の発話区間の中の最長の発話区間を、4(k)分割した場合の発話区間の数が音声認識部401〜40Nの数Nよりも大きくなるか否かを判断する(ステップS513)。4個の発話区間の中の最長の発話区間を、4(k)分割すると発話区間の数MはM′=7となりNよりも大きくなる(ステップS513のYes)。この場合、kを=6−4+1=3として、最も長い発話区間を分割する。kで分割した発話区間の数はM=4からM=6となり、音声認識部401〜40Nの数Nと等しい数となるので分割処理を終了する(ステップS516のYes)。
【0047】
k分割した結果がM-1+k<Nの場合(ステップS516のYes)は、k分割した結果の発話区間を含めた最新の発話区間の最大発話時間の発話区間に対してステップS512〜S516までの処理を、全ての発話区間の数Mが上記音声認識部の数Nに等しくなるまで繰り返す。M-1+k≧Nになったら分割処理を終了(ステップS516のNo)し、k分割した分割部分に重複区間T0を設けて動作を終了する(ステップS517)。
【0048】
図12に、重複区間T0を単語ラティス形式で示す。図12の横方向は経過時間である。図12は、音声信号を「今日の天気は晴れ」とした時に、その一つの音声区間を2分割した例を示している。よって、「天気」の途中に分割ポイントがある例である。
【0049】
その分割ポイントの前後に重複区間T0が設けられている。音声認識結果統合部550は、重複区間T0に存在する単語の時間重複割合が所定値以上の単語のみを残した音声認識結果ネットワークのスコアが最も高い単語列を上記音声認識結果として選択する。時間重複割合とは、異なる発話区間の重複区間に出現する同一単語wにおいて、単語wの発話区間が重複している時間の割合のことである。発話区間i=1の「天気」と「ペンキ」、発話区間i=2の「天気」と「ペンキ」、はそれぞれ同一単語で時間を重複している。例えば発話区間i=1の「天気」の時間長を1秒、発話区間i=2の「天気」の時間長を1.5秒とすると、i=1の天気の時間重複割合は1.0/1.0で1である。i=2の「天気」の時間重複割合は1.0/1.5で0.66である。
【0050】
つまり、音声認識結果統合部550は、隣り合う2つの音声認識結果ネットワーク内に含まれる重複区間の単語に対し、両ネットワークに存在し、かつその時間重複割合が所定値以上(例えば0.6以上)である重複単語のみを残し、他の単語は全てのネットワークから削除する。そして、音声認識ネットワーク同士を統合する。統合の際、それぞれに存在する認識結果単語候補のうち音響スコア、言語スコアの高い認識結果単語候補を選択して音声認識結果とする。
【0051】
図13に、図12に示した発話区間を統合した音声認識結果ネットワークの例を示す。発話区間i=1と2との間で重複しない「お」、「野天」、「木」、「はい」、「屋」の認識結果単語候補は削除されている。
【0052】
このように音声区間を分割しても、分割部分に重複区間を設け、それを考慮した認識結果の統合処理を行うことで、音声認識精度を劣化させずに音声認識処理の時間を短縮することが可能である。
【0053】
以上述べたように、この発明の音声認識装置100〜500は、音声信号を複数の発話区間に分割し、複数の音声認識処理部においてその分割した発話区間毎に音声認識処理を行うので、音声認識処理の処理速度を速くすることができると共に、音声認識の認識精度も劣化させることがない。
なお、上記装置における処理手段をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、各装置における処理手段がコンピュータ上で実現される。
【0054】
また、上記方法及び装置において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
【0055】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、BD(Blue Ray Disc)、DVD(Digital Versatile Disc)、DVD-RAM(Random Access Memory)、CD-ROM(Compact Disc Read Only Memory)、CD-R(Recordable)/RW(ReWritable)等を、光磁気記録媒体として、MO(Magneto Optical disc)等を、半導体メモリとしてEEP-ROM(Electronically Erasable and Programmable-Read Only Memory)等を用いることができる。
【0056】
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記録装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【0057】
また、各手段は、コンピュータ上で所定のプログラムを実行させることにより構成することにしてもよいし、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【特許請求の範囲】
【請求項1】
音声信号を入力として、当該音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の場合に音声区間を分割し、上記音声信号を発話区間単位に分割した分割済み音声を出力する音声分割部と、
上記分割済み音声を発話区間単位で記憶する分割済み音声記憶部と、
分割済み音声記憶部に記憶された発話区間を、複数の音声認識部に分配する分割音声分配部と、
上記複数の音声認識部で構成される音声認識処理群と、
音声認識処理群が出力する複数の音声認識結果を時間順に結合して、上記音声信号に対する音声認識結果を出力する音声認識結果統合部と、
を具備する音声認識装置。
【請求項2】
請求項1に記載の音声認識装置において、
上記音声認識結果統合部は、
上記複数の音声認識結果を時間順に結合した結合部分の単語の言語スコアを、2個以上の文字列又は2個以上の単語のN-gramを用いて再計算し、結合した音声認識結果ネットワークのスコアが最も高い単語列を上記音声認識結果として選択することを特徴とする音声認識装置。
【請求項3】
請求項1又は2に記載の音声認識装置において、
上記音声分割部は、
上記音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の条件で音声区間を分割した発話区間の数Mが、上記音声認識処理群を構成する上記音声認識部の数Nよりも少ない場合、上記非音声分割区間長閾値Tpの値を小さくした条件で上記音声区間を分割する処理をM≧Nになるまで繰り返すことを特徴とする音声認識装置。
【請求項4】
請求項1又は2に記載の音声認識装置において、
上記音声分割部は、
上記音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の条件で音声区間を分割した発話区間の数Mが、上記音声認識処理群を構成する上記音声認識部の数Nよりも少ない場合、当該分割した音声区間の時間長が最大の発話区間を選択して上記非音声分割区間長閾値Tpの値を小さくした条件で当該発話区間の音声区間を再分割し、
上記非音声分割区間長閾値Tpの値が最小非音声分割区間長閾値Tpminになるか、M≧Nになるまで音声区間の時間長が最大の発話区間に対して上記再分割する処理を繰り返すことを特徴とする音声認識装置。
【請求項5】
請求項3又は4に記載の音声認識装置において、
上記音声分割部で分割した発話区間の数Mが上記音声認識部の数Nに満たない場合(M<N)、
上記M個の発話区間の最も長い発話区間を、均等に新たにk(kは2以上の整数)分割した場合の発話区間の数がM−1+k>Nとなるか否かを判定し、発話区間の数がM−1+k>Nの時はkをk=N−M+1として上記最も長い発話区間をkで分割し、当該k分割した結果の数がM−1+k<Nの場合は再び最新の最大発話時間の発話区間に対して上記k分割する処理を、当該k分割した結果の数M−1+kが上記音声認識部の数N以上になるまで繰り返すと共に上記k分割した分割部分に重複区間T0を設ける第2発話分割部を更に備え、
上記音声認識結果統合部は、
上記重複区間に存在する単語の時間重複割合が所定値以上の単語のみを残した音声認識結果ネットワークのスコアが最も高い単語列を上記音声認識結果として選択する、
ことを特徴とする音声認識装置。
【請求項6】
音声信号を入力として、当該音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の場合に音声区間を分割し、上記音声信号を発話区間単位に分割した分割済み音声を出力する音声分割過程と、
分割済み音声記憶部に発話区間単位で記憶された音声区間を、複数の音声認識ステップに分配する分割音声分配過程と、
上記複数の音声認識ステップで構成される音声認識過程と、
音声認識過程で得られた複数の音声認識結果を時間順に結合して、上記音声信号に対する音声認識結果を出力する音声認識結果統合過程と、
を備える音声認識方法。
【請求項7】
請求項6に記載の音声認識方法において、
上記音声認識結果統合過程は、
上記複数の音声認識結果を時間順に結合した結合部分の単語の言語スコアを、2個以上の文字列又は2個以上の単語のN-gramを用いて再計算し、結合した音声認識結果ネットワークのスコアが最も高い単語列を上記音声認識結果として選択することを特徴とする音声認識方法。
【請求項8】
請求項6又は7に記載の音声認識方法において、
上記音声分割過程は、
上記音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の条件で音声区間を分割した発話区間の数Mが、上記音声認識処理群を構成する上記音声認識部の数Nよりも少ない場合、上記非音声分割区間長閾値Tpの値を小さくした条件で上記音声区間を分割する処理をM≧Nになるまで繰り返すことを特徴とする音声認識方法。
【請求項9】
請求項6又は7に記載の音声認識方法において、
上記音声分割過程は、
上記音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の条件で音声区間を分割した発話区間の数Mが、上記音声認識処理群を構成する上記音声認識部の数Nよりも少ない場合、当該分割した音声区間の時間長が最大の発話区間を選択して上記非音声分割区間長閾値Tpの値を小さくした条件で当該発話区間の音声区間を再分割し、
上記非音声分割区間長閾値Tpの値が最小非音声分割区間長閾値Tpminになるか、M≧Nになるまで上記再分割する処理を繰り返すことを特徴とする音声認識方法。
【請求項10】
請求項8又は9に記載の音声認識方法において、
上記発話区間の数Mが上記音声認識部の数Nに満たない場合(M<N)、
上記M個の発話区間の最も長い発話区間を、均等に新たにk(kは2以上の整数)分割した場合の発話区間の数がM−1+k>Nとなるか否かを判定し、発話区間の数がM−1+k>Nの時はkをk=N−M+1として上記最も長い発話区間をkで分割し、当該k分割した結果の数がM−1+k<Nの場合は再び最新の最大発話時間の発話区間に対して上記k分割する処理を、当該k分割した結果の数M−1+kが上記音声認識部の数N以上になるまで繰り返すと共に上記k分割した分割部分に重複区間T0を設ける第2発話分割過程を更に備え、
上記音声認識結果統合過程は、
上記重複区間に存在する単語の時間重複割合が所定値以上の単語のみを残した音声認識結果ネットワークのスコアが最も高い単語列を上記音声認識結果として選択する、
ことを特徴とする音声認識方法。
【請求項11】
請求項1乃至5の何れかに記載した音声認識装置としてコンピュータを機能させるためのプログラム。
【請求項1】
音声信号を入力として、当該音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の場合に音声区間を分割し、上記音声信号を発話区間単位に分割した分割済み音声を出力する音声分割部と、
上記分割済み音声を発話区間単位で記憶する分割済み音声記憶部と、
分割済み音声記憶部に記憶された発話区間を、複数の音声認識部に分配する分割音声分配部と、
上記複数の音声認識部で構成される音声認識処理群と、
音声認識処理群が出力する複数の音声認識結果を時間順に結合して、上記音声信号に対する音声認識結果を出力する音声認識結果統合部と、
を具備する音声認識装置。
【請求項2】
請求項1に記載の音声認識装置において、
上記音声認識結果統合部は、
上記複数の音声認識結果を時間順に結合した結合部分の単語の言語スコアを、2個以上の文字列又は2個以上の単語のN-gramを用いて再計算し、結合した音声認識結果ネットワークのスコアが最も高い単語列を上記音声認識結果として選択することを特徴とする音声認識装置。
【請求項3】
請求項1又は2に記載の音声認識装置において、
上記音声分割部は、
上記音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の条件で音声区間を分割した発話区間の数Mが、上記音声認識処理群を構成する上記音声認識部の数Nよりも少ない場合、上記非音声分割区間長閾値Tpの値を小さくした条件で上記音声区間を分割する処理をM≧Nになるまで繰り返すことを特徴とする音声認識装置。
【請求項4】
請求項1又は2に記載の音声認識装置において、
上記音声分割部は、
上記音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の条件で音声区間を分割した発話区間の数Mが、上記音声認識処理群を構成する上記音声認識部の数Nよりも少ない場合、当該分割した音声区間の時間長が最大の発話区間を選択して上記非音声分割区間長閾値Tpの値を小さくした条件で当該発話区間の音声区間を再分割し、
上記非音声分割区間長閾値Tpの値が最小非音声分割区間長閾値Tpminになるか、M≧Nになるまで音声区間の時間長が最大の発話区間に対して上記再分割する処理を繰り返すことを特徴とする音声認識装置。
【請求項5】
請求項3又は4に記載の音声認識装置において、
上記音声分割部で分割した発話区間の数Mが上記音声認識部の数Nに満たない場合(M<N)、
上記M個の発話区間の最も長い発話区間を、均等に新たにk(kは2以上の整数)分割した場合の発話区間の数がM−1+k>Nとなるか否かを判定し、発話区間の数がM−1+k>Nの時はkをk=N−M+1として上記最も長い発話区間をkで分割し、当該k分割した結果の数がM−1+k<Nの場合は再び最新の最大発話時間の発話区間に対して上記k分割する処理を、当該k分割した結果の数M−1+kが上記音声認識部の数N以上になるまで繰り返すと共に上記k分割した分割部分に重複区間T0を設ける第2発話分割部を更に備え、
上記音声認識結果統合部は、
上記重複区間に存在する単語の時間重複割合が所定値以上の単語のみを残した音声認識結果ネットワークのスコアが最も高い単語列を上記音声認識結果として選択する、
ことを特徴とする音声認識装置。
【請求項6】
音声信号を入力として、当該音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の場合に音声区間を分割し、上記音声信号を発話区間単位に分割した分割済み音声を出力する音声分割過程と、
分割済み音声記憶部に発話区間単位で記憶された音声区間を、複数の音声認識ステップに分配する分割音声分配過程と、
上記複数の音声認識ステップで構成される音声認識過程と、
音声認識過程で得られた複数の音声認識結果を時間順に結合して、上記音声信号に対する音声認識結果を出力する音声認識結果統合過程と、
を備える音声認識方法。
【請求項7】
請求項6に記載の音声認識方法において、
上記音声認識結果統合過程は、
上記複数の音声認識結果を時間順に結合した結合部分の単語の言語スコアを、2個以上の文字列又は2個以上の単語のN-gramを用いて再計算し、結合した音声認識結果ネットワークのスコアが最も高い単語列を上記音声認識結果として選択することを特徴とする音声認識方法。
【請求項8】
請求項6又は7に記載の音声認識方法において、
上記音声分割過程は、
上記音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の条件で音声区間を分割した発話区間の数Mが、上記音声認識処理群を構成する上記音声認識部の数Nよりも少ない場合、上記非音声分割区間長閾値Tpの値を小さくした条件で上記音声区間を分割する処理をM≧Nになるまで繰り返すことを特徴とする音声認識方法。
【請求項9】
請求項6又は7に記載の音声認識方法において、
上記音声分割過程は、
上記音声信号の音声・非音声判別を行い非音声区間の区間長が非音声分割区間長閾値Tp以上の条件で音声区間を分割した発話区間の数Mが、上記音声認識処理群を構成する上記音声認識部の数Nよりも少ない場合、当該分割した音声区間の時間長が最大の発話区間を選択して上記非音声分割区間長閾値Tpの値を小さくした条件で当該発話区間の音声区間を再分割し、
上記非音声分割区間長閾値Tpの値が最小非音声分割区間長閾値Tpminになるか、M≧Nになるまで上記再分割する処理を繰り返すことを特徴とする音声認識方法。
【請求項10】
請求項8又は9に記載の音声認識方法において、
上記発話区間の数Mが上記音声認識部の数Nに満たない場合(M<N)、
上記M個の発話区間の最も長い発話区間を、均等に新たにk(kは2以上の整数)分割した場合の発話区間の数がM−1+k>Nとなるか否かを判定し、発話区間の数がM−1+k>Nの時はkをk=N−M+1として上記最も長い発話区間をkで分割し、当該k分割した結果の数がM−1+k<Nの場合は再び最新の最大発話時間の発話区間に対して上記k分割する処理を、当該k分割した結果の数M−1+kが上記音声認識部の数N以上になるまで繰り返すと共に上記k分割した分割部分に重複区間T0を設ける第2発話分割過程を更に備え、
上記音声認識結果統合過程は、
上記重複区間に存在する単語の時間重複割合が所定値以上の単語のみを残した音声認識結果ネットワークのスコアが最も高い単語列を上記音声認識結果として選択する、
ことを特徴とする音声認識方法。
【請求項11】
請求項1乃至5の何れかに記載した音声認識装置としてコンピュータを機能させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2013−101204(P2013−101204A)
【公開日】平成25年5月23日(2013.5.23)
【国際特許分類】
【出願番号】特願2011−244381(P2011−244381)
【出願日】平成23年11月8日(2011.11.8)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
【公開日】平成25年5月23日(2013.5.23)
【国際特許分類】
【出願日】平成23年11月8日(2011.11.8)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
[ Back to top ]