JP3912089B2 - 音声認識方法および音声認識装置 - Google Patents
音声認識方法および音声認識装置 Download PDFInfo
- Publication number
- JP3912089B2 JP3912089B2 JP2001369173A JP2001369173A JP3912089B2 JP 3912089 B2 JP3912089 B2 JP 3912089B2 JP 2001369173 A JP2001369173 A JP 2001369173A JP 2001369173 A JP2001369173 A JP 2001369173A JP 3912089 B2 JP3912089 B2 JP 3912089B2
- Authority
- JP
- Japan
- Prior art keywords
- time block
- speaker
- short
- feature vector
- long
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Description
【発明の属する技術分野】
本発明は特徴ベクトルを平均正規化してその平均正規化した特徴ベクトルを用いて音声認識処理する音声認識方法および音声認識装置に関する。
【0002】
【従来の技術】
音声データから所定時間ごとに取得される各フレーム対応の特徴ベクトル(たとえば10次元のケプストラム係数)を平均正規化する特徴ベクトル平均正規化法は、音声認識を行う際の重要な技術として広く用いられている。
【0003】
この特徴ベクトル平均正規化法は、簡単に言えば、平均正規化対象となる音声データ区間から得られる各時刻ごとの特徴ベクトルの平均値を求め、その平均値を各時刻ごとの特徴ベクトルから引き算して正規化された特徴ベクトルを求めるものである。
【0004】
たとえば、各時刻(t=1,2,・・・,T)に対応するそれぞれのフレームからC1,C2,・・・,CTの特徴ベクトル(それぞれの特徴ベクトルはたとえば10次元のケプストラム係数でなる)が得られたとすれば、これらの特徴ベクトルC1,C2,・・・,CT の和をCsで表せば、このCsは
【0005】
【数1】
【0006】
によって求められ、これによって得られた特徴ベクトルC1,C2,・・・,CT の和Csから、その平均値Cmを下記に示す(2)式によって求める。なお、(2)式におけるTは平均正規化対象となる音声データにおける全フレーム数を表している。
【0007】
Cm=Cs/T (2)
そして、このようにして求められた平均値Cmをそれぞれのフレーム対応の特徴ベクトルC1,C2,・・・,CTからそれぞれ引き算することで、各フレーム対応の平均正規化(以下では、単に正規化という)特徴ベクトルを求めることができる。
【0008】
すなわち、フレーム対応の正規化特徴ベクトルをC1’, C2’,・・・, CT’で表せば、 それぞれのフレームごとの正規化特徴ベクトルは、C1’=C1−Cm, C2’=C2−Cm,・・・, CT’=CT−Cmで表すことができる。
【0009】
このようにして求められた正規化特徴ベクトル(正規化ケプストラム係数)を用いて、たとえば、ベクトル量子化などの前処理を行ったのちに出力確率などを求めるなど音声認識を行うに必要な演算を行う。
【0010】
なお、上述の特徴ベクトルの和を求める計算や特徴ベクトル同志の引き算、平均特徴ベクトルを求める計算、正規化特徴ベクトルを求める計算などはすべて、その特徴ベクトルを表すの各次元ごと、すなわち、特徴ベクトルを表すケプストラム係数がたとえば10次元で構成されるとすれば、0〜9次元の各次元ごとにそれぞれの計算を行うことはいうまでもない。
【0011】
【発明が解決しようとする課題】
前述の(2)式で表されるの平均値Cmを求めるには、正規化処理対象とする音声区間の全フレームに対する特徴ベクトルが必要となってくる。この結果、処理対象とする入力音声の全フレームが入力されてからでないと計算を行うことができず、リアルタイム処理ができないという問題もある。
【0012】
これを解決するために、処理対象となる現発話データの1発話以前の音声データから得られた特徴ベクトルから得られた平均値を用いて、現発話データのそれぞれのフレーム対応の特徴ベクトルから逐次的に引き算をすることで、現発話のそれぞれのフレーム対応の正規化特徴ベクトルを求める方法がある。たとえば、特開平9−90990の「音声認識のための音響分析方法及び装置」(以下、第1の従来技術という)にはこれについての記載がなされている。
【0013】
この従来技術を用いれば、確かにリアルタイムでの音声認識処理を行うことが可能となる。
【0014】
しかし、この従来技術は、現発話とそれより前の発話とで話者交代があったりした場合には、その前後において、の平均値も大きく異なる可能性が高いので、それを用いて求められた正規化特徴ベクトルは、現発話を適正に反映しないものとなる。これは、それぞれの話者の発話した音声データ(音素がまんべんなく含まれているような音声データ)から得られた平均値は、それ自体が話者性を表したものとなるからであり、平均値を求めたときの話者と、正規化特徴ベクトルを求めるときの話者が異なると、他の話者の平均値で正規化特徴ベクトルが算出されてしまうことになるという問題が生じる。
【0015】
ところで、この正規化特徴ベクトルを求める際、適正な正規化特徴ベクトルを得るためには、ノイズに変動が少ないこと、話者の発話した音声にまんべんなくバラツキがあることが重要である。
【0016】
ここで、話者の発話した音声にまんべんなくバラツキがあるということは、殆どの音素が含まれる音声データであるといえるので、ある程度の時間的長さを持った過去の発話から正規化特徴ベクトルを求めることが必要となってくる。
【0017】
しかし、過去の発話から求めた正規化特徴ベクトルを用いて音声認識すると、発話者が途中で交代したような場合、話者の発話特性が異なり、認識性能が劣化するという問題がある。
【0018】
この話者交代に対応する技術として、複数の特定話者の正規化特徴ベクトルを予め求めておき、現発話者を話者識別して、予め求められた複数の特定話者の正規化特徴ベクトルから、話者識別された話者に対応する正規化特徴ベクトルを用いる方法が考えられる。たとえば、特開平10−254494号公報に記載された「音声認識装置および方法」の発明(以下、第2の従来技術という)には、それについての記述がなされている。
【0019】
しかし、この第2の従来技術は、予め複数の特定話者の正規化特徴ベクトルを求めておく必要があり、特定話者の識別処理が必要とともに、新規入力話者への話者交代などには対応しにくい。
【0020】
そこで本発明は、現発話の音声の特徴データと過去の発話の特徴データの両方を使い、しかも、繁雑な話者識別または話者グループ識別処理を行うことなく、話者交代などに対応可能とし、安価なハードウエアで高い認識性能が得られる音声認識方法および音声認識装置を提供することを目的としている。
【0021】
【課題を解決するための手段】
上述した目的を達成するために、本発明の音声認識方法は、音声データを所定時間ごとのフレーム対応に特徴分析し、その特徴分析によって得られる特徴ベクトルを平均正規化してその平均正規化された特徴ベクトルを用いて音声認識処理する音声認識方法において、入力される音声データに対し、時間軸方向に沿ったある数のフレームを1つの単位としてそれを短時間ブロックとし、同じ話者または話者グループに属する短時間ブロックを時間軸方向に沿って予め定めた数だけ集めてそれをある話者または話者グループに対応する長時間ブロックとするとともに、この長時間ブロックが生成されるまでの段階における1つの短時間ブロックまたは同じ話者グループに属する複数の短時間ブロックの集合を長時間ブロック候補とし、前記音声データから順次取得される短時間ブロックに対し、その短時間ブロックの特徴ベクトルがすでに生成されている話者または話者グループの少なくとも1つに属するか否かを判定し、当該短時間ブロックがすでに生成されている話者または話者グループの少なくとも1つに属すると判定された場合には、その短時間ブロックの特徴ベクトルを用いて、当該短時間ブロックの属する話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の特徴ベクトルを更新し、この長時間ブロックまたは長時間ブロック候補の更新前または更新後の特徴ベクトルを用いて前記短時間ブロックの特徴ベクトルを平均正規化し、その平均正規化された特徴ベクトルを音声認識処理部に渡し、当該短時間ブロックが前記すでに生成されている話者または話者グループに属さないと判定された場合には、その短時間ブロックを長時間ブロック候補として、新たな話者または話者グループに対応する長時間ブロックの生成を開始し、当該短時間ブロックの特徴ベクトルを用いてその短時間ブロックを平均正規化して、その平均正規化された特徴ベクトルを音声認識処理部に渡すようにしている。
【0022】
また、本発明の音声認識装置は、音声データを所定時間ごとのフレーム対応に特徴分析し、その特徴分析によって得られる特徴ベクトルを平均正規化してその平均正規化された特徴ベクトルを用いて音声認識処理する音声認識装置において、 入力音声に対し音声の特徴分析を行って特徴ベクトルを出力する音声分析手段と、この音声分析手段から出力された特徴ベクトルを平均正規化する特徴ベクトル平均正規化手段と、この特徴ベクトル平均正規化手段で平均正規化された特徴ベクトルを入力して、予め用意された音響モデルを用いて音声認識処理する音声認識処理手段とを有し、前記特徴ベクトル平均正規化手段は、入力される音声データに対し、時間軸方向に沿ったある数のフレームを1つの単位としてそれを短時間ブロックとし、同じ話者または話者グループに属する短時間ブロックを時間軸方向に沿って予め定めた数だけ集めてそれをある話者または話者グループに対応する長時間ブロックとするとともに、この長時間ブロックが生成されるまでの段階における1つの短時間ブロックまたは同じ話者グループに属する複数の短時間ブロックの集合を長時間ブロック候補とし、前記音声データから順次取得される短時間ブロックに対し、その短時間ブロックの特徴ベクトルがすでに生成されている話者または話者グループの少なくとも1つに属するか否かを判定し、当該短時間ブロックがすでに生成されている話者または話者グループの少なくとも1つに属すると判定された場合には、その短時間ブロックの特徴ベクトルを用いて、当該短時間ブロックの属する話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の特徴ベクトルを更新し、この長時間ブロックまたは長時間ブロック候補の更新前または更新後の特徴ベクトルを用いて前記短時間ブロックの特徴ベクトルを平均正規化し、その平均正規化された特徴ベクトルを音声認識処理部に渡し、当該短時間ブロックが前記すでに生成されている話者または話者グループに属さないと判定された場合には、その短時間ブロックを長時間ブロック候補として、新たな話者または話者グループに対応する長時間ブロックの生成を開始し、当該短時間ブロックの特徴ベクトルを用いてその短時間ブロックを平均正規化して、その平均正規化された特徴ベクトルを音声認識処理部に渡すようにしている。
【0023】
これらそれぞれの発明において、前記短時間ブロックは、標準的な長さを有する1単語の音声データから取得される程度のフレーム数で構成され、前記長時間ブロックは、全ての音素がまんべんなく含まれる音声データから取得される程度のフレーム数で構成するようにしている。
【0024】
また、前記短時間ブロックを構成するフレーム数、長時間ブロックを構成するフレーム数は、それぞれ2のべき乗の値に設定するようにしている。
【0025】
また、前記短時間ブロックの音声特徴が、すでに生成されている話者または話者グループに属するか否かを判断する話者性判断処理は、当該短時間ブロックの平均特徴ベクトルと、すでに生成されている話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の平均特徴ベクトルとの距離を計算し、その距離を予め設定されたしきい値と比較することによって行う。
【0026】
そして、そのしきい値は、前記短時間ブロックの比較対象が前記長時間ブロックである場合と、前記長時間ブロック候補である場合とでその値を異ならせ、前記短時間ブロックの比較対象が前記長時間ブロック候補である場合は、長時間ブロックの場合よりもしきい値としての距離を大きく設定するようにしている。
【0027】
また、前記生成される話者または話者グループの最大数は予め設定可能とし、その話者または話者グループが最大数まで生成されたあとは、それ以降に取得される短時間ブロックが、前記すでに生成されたどの話者グループにも属さないと判断された場合は、音声特徴の最も近い話者または話者グループに属すると判断するようにしている。
【0028】
また、本発明の音声認識装置において、前記音声認識処理部が用いる音響モデルは、それぞれの話者または話者グループの平均正規化された特徴ベクトルに対応可能な標準的な音響モデルとしてもよい。
【0029】
また、本発明の音声認識装置において、前記音声認識処理部が用いる音響モデルは、予め複数の話者または話者グループ対応に用意された複数の音響モデルとしてもよく、その場合、前記特徴ベクトル平均正規化手段から話者または話者グループを示す情報を入力し、その話者または話者グループに対応した音響モデルを用いた音声認識処理を行う。
【0030】
このように本発明は、音声データから順次取得される短時間ブロックに対し、その短時間ブロックの特徴ベクトルが、すでに生成されている話者または話者グループの少なくとも1つに属するか否かを判定し、当該短時間ブロックがすでに生成されている話者または話者グループの少なくとも1つに属すると判定された場合には、その短時間ブロックの特徴ベクトルを用いて、当該短時間ブロックの属する話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の特徴ベクトルを更新して、この長時間ブロックまたは長時間ブロック候補の更新前または更新後の特徴ベクトルを用いて前記短時間ブロックの特徴ベクトルを正規化し、その正規化された特徴ベクトルを用いて音声認識処理を行うようにしている。
【0031】
一方、当該短時間ブロックが、前記すでに生成されている話者または話者グループに属さないと判定された場合には、その短時間ブロックを長時間ブロック候補として、新たな話者または話者グループに対応する長時間ブロックの生成を開始する。そして、当該短時間ブロックの特徴ベクトルを用いてその短時間ブロックを正規化して、その正規化された特徴ベクトルを用いて音声認識処理するようにしている。
【0032】
このようにな処理を行うことによって、特別な話者識別・話者グループ識別手段を用いることなく、自然に話者または話者グループを生成することができ、それぞれの話者の特徴を反映した正規化特徴ベクトルを得ることができ、それぞれの話者の特徴を反映した正規化特徴ベクトルを用いた音声認識処理を行うことができるので、高い認識率を得ることができる。
【0033】
また、前記短時間ブロックは、標準的な長さを有する1単語の音声データから取得される程度のフレーム数で構成され、前記長時間ブロックは、全ての音素がまんべんなく含まれる音声データから取得される程度のフレーム数で構成されている。具体的には一例として、短時間ブロックは64フレーム、長時間ブロックは64個の短時間ブロック(4096フレーム)としている。短時間ブロックおよび長時間ブロックをそれぞれこの程度のフレーム数とすることによって、効率のよい処理が可能となり、かつ、音声の特徴も適正に反映させることができる。
【0034】
また、前記短時間ブロックを構成するフレーム数、長時間ブロックを構成するフレーム数はそれぞれ2のべき乗となるような値に設定するようにしているので、平均特徴ベクトルなどを求める場合の割り算はコンピュータ演算において右シフト演算だけで行うことができ、演算を簡略化することができる。これによって、CPUの演算負担を軽減することができ、処理能力の低いCPUを用いざるを得ない安価な装置などに適用する場合に特に大きな効果が得られる。
【0035】
また、話者性判断は、当該短時間ブロックの平均特徴ベクトルとすでに生成されている話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の平均特徴ベクトルとの距離を計算し、その距離を予め設定されたしきい値と比較することによって行うようにしているので、単純な演算で話者グループ判断が行える。
【0036】
また、話者性判断に用いるしきい値は、前記短時間ブロックの比較対象が前記長時間ブロック(予め設定された所定のフレーム数となった長時間ブロック)である場合と、長時間ブロック候補である場合とでその値を異ならせ、前記短時間ブロックの比較対象が前記長時間ブロック候補である場合は、長時間ブロックの場合よりもしきい値としての距離を大きく設定するようにしているので、新たな話者グループを生成する際、長時間ブロックが生成されるまで、たとえば、ある1発話から取得された幾つかの短時間ブロックは、それぞれが同じ話者または話者グループと判断され易くなり、むやみに幾つもの話者または話者グループが生成されるのを防止することができる。
【0037】
また、前記生成される話者または話者グループの最大数は予め設定可能とし、その話者または話者グループが最大数まで生成されたあとは、それ以降に取得される短時間ブロックが前記既に生成されたどの話者グループにも属さないと判断された場合は、音声特徴の最も近い話者または話者グループに属すると判断するようにしている。これによって、幾つかの話者または話者グループが予め設定されているような音声認識装置にも適用することができる。
【0038】
また、このような音声認識方法が適用された音声認識装置は、特別な話者識別・話者グループ識別手段を用いることなく、少ない演算量、少ないメモリの使用量で、自然に話者グループを生成することができ、それぞれの話者の特徴を反映した正規化特徴ベクトルを得ることができるので、安価なハードウエアでしかも高い認識性能を有する装置とすることができる。
【0039】
また、音声認識処理に用いる音響モデルとして、正規化された標準的な話者モデルを用いることもできるが、それぞれの話者または話者グループ対応の複数の音響モデルを用いることもできる。
【0040】
標準的な音響モデルを用いる場合は、1つの音響もモデルで済むので、部品コストを低く抑えることができ、安価な装置とすることができるとともに、その都度、どの音響モデルを用いるかといった処理が不要となるため、演算量を削減することができる。
【0041】
一方、それぞれの話者または話者グループ対応の音響モデルを用いる場合は、複数の音響モデルを用意する必要があるため、演算量が多少増大し、部品コストも増えるといった問題点もあるが、より高い認識性能が得られる利点がある。
【0042】
【発明の実施の形態】
以下、本発明の実施の形態について説明する。
【0043】
図1(a)はある音声波形を示すもので、このような音声波形において、たとえば、同図(b)に示すように、20msecを1つのフレームとし、それを10msecずつシフトしてそれぞれのフレームごとに音声分析し、それぞれのフレームに対応する特徴ベクトル(ここでは10次元のケプストラム係数でなる)を得る。
【0044】
そして、この実施の形態では、同図(c)に示すように、64個のフレーム(64フレームという)を1つの短時間ブロックとし、1つ1つの短時間ブロックを短時間ブロックA1,A2,・・・で表す。そして、図1(d)に示すように、同じ話者または話者グループに属する短時間ブロックA1,A2,・・・を64個集めたものを1つの長時間ブロックとし、これを長時間ブロックB1と表す。したがって、この長時間ブロックB1は64個の短時間ブロックA1,A2,・・・,A64で構成され、その合計のフレーム数は、1つの短時間ブロックのフレーム数が64フレームであるから、64×64=4096となる。
【0045】
そして、短時間ブロックA1,A2,・・・,A64においては、それぞれの短時間ブロックA1,A2,・・・,A64が取得されるごとに、その短時間ブロックにおける全フレーム分(64フレーム分)の特徴ベクトルの和を求め、それを記憶する。
【0046】
たとえば、短時間ブロックA1においては、その短時間ブロックA1に属する64フレーム分の特徴ベクトルの和(これをCsA1とする)を求めてそれを記憶し、短時間ブロックA2においては、その短時間ブロックA2に属する64フレーム分の特徴ベクトルの和(これをCsA2とする)を求めてそれを記憶するというように、それぞれの短時間ブロックA1,A2,・・・,A64ごとに、その短時間ブロックにおける全フレーム分の特徴ベクトルの和CsA1, CsA2,・・・, CsA64を求めて、これら短時間ブロックごとの特徴ベクトルの和CsA1, CsA2,・・・, CsA64を記憶させておく。
【0047】
また、それぞれの短時間ブロックA1,A2,・・・,A64において、それぞれの短時間ブロックごとに平均特徴ベクトルを求める。たとえば、短時間ブロックA1においては、その短時間ブロックA1で求められた特徴ベクトルの和CsA1をフレーム数(64個)で割り算し、平均特徴ベクトル(これをCmA1とする)を求め、短時間ブロックA2においては、その短時間ブロックA2で求められた特徴ベクトルの和CsA2をフレーム数(64個)で割り算し、平均特徴ベクトル(これをCmA2とする)を求めるというように、それぞれの短時間ブロックA1,A2,・・・,A64ごとに、その短時間ブロックにおける平均特徴ベクトルCmA1, CmA2,・・・, CmA64を求める。
【0048】
なお、このそれぞれの短時間ブロックA1,A2,・・・,A64ごとに求められる平均特徴ベクトルCmA1, CmA2,・・・, CmA64は、その短時間ブロックの正規化特徴ベクトルを求める際に使用される。
【0049】
また、この平均特徴ベクトルを求める際の割り算は、それぞれの短時間ブロックにおいて、(2)式に示したように、その特徴ベクトルの和をフレーム数で割り算するが、そのフレーム数が2のべき乗であれば、平均値を求める際の割り算がコンピュータによる演算においてはシフト演算のみで行えるので、本発明では、その除数を2のべき乗の値となるようにする。たとえば、ある1つの短時間ブロックにおける平均特徴ベクトルを求める際は、そのフレーム数でその平均特徴ベクトルを割り算することになるが、ここでは、そのフレーム数を64としているのでその条件を満たす。
【0050】
一方、長時間ブロックB1については、この場合、短時間ブロックA1からA64までの4096フレームで構成されているので、その特徴ベクトルの和は4096フレームの特徴ベクトルの和である。したがって、現時点において短時間ブロックA64までの特徴ベクトルの和が求められているとすれば、短時間ブロックA1からA64までの4096フレーム分の特徴ベクトルの和が、長時間ブロックB1の特徴ベクトルの和CsB1となる。
【0051】
そして、この長時間ブロックB1の平均特徴ベクトルCmB1を求める。この長時間ブロックBの平均特徴ベクトルCmB1は、その長時間ブロックB1で求められた特徴ベクトルの和CsB1をフレーム数(4096個)で割り算することで、平均特徴ベクトルCmB1が求められる。
【0052】
この長時間ブロックB1の平均特徴ベクトルCmB1を求める際の割り算も、そのフレーム数が2のべき乗となるように設定(この例ではフレーム数は4096に設定)してあるので、平均値を求める際の割り算がコンピュータによる演算においてはシフト演算のみで行える。
【0053】
なお、この実施の形態におけるそれぞれの特徴ベクトルの和を求める計算や特徴ベクトル同志の引き算、平均特徴ベクトルを求める計算、正規化特徴ベクトルを求める計算、のちに説明する特徴ベクトル間の距離計算などはすべて、その特徴ベクトルを表すケプストラム係数の各次元ごと、すなわち、特徴ベクトルを表すケプストラム係数がたとえば0〜9次元の10次元で構成されるとすれば、0〜9次元の各次元ごとにそれぞれの計算を行うことはいうまでもないので、ここでは、その点については特に表記しない。
【0054】
ここで、図2に示すように、短時間ブロックA1〜A64までの64個分の短時間ブロックについての正規化を求める処理はすでに終了し、それによって、1つの長時間ブロックB1(ある話者グループG1に対応しているものとする)が生成されているものとし、この長時間ブロックB1より後に発話されたある1発話V1の音声データに対して行われる処理について説明する。なお、この1発話V1の音声データからは、短時間ブロックA65,A66,A67の3つの短時間ブロックが取得され、そのあとに64フレームに満たない音声データが余りeとして残るものとする。
【0055】
この短時間ブロックA65の64フレーム分についても上述同様、この短時間ブロックA65の特徴ベクトルの和CsA65を求めるとともに、その平均特徴ベクトルCmA65を求める。
【0056】
この短時間ブロックA65について、その特徴ベクトルの和CsA65が求められ、その平均特徴ベクトルCmA65が求められると、今度は、この短時間ブロックA65における平均特徴ベクトルCmA65のバラツキ、つまり、短時間ブロックA65の音声の特徴がそれ以前の音声特徴に対してどの程度異なっているかを求める。
【0057】
この短時間ブロックA65における平均特徴ベクトルCmA65のバラツキは、それまでに生成されているすべての話者グループに対応する長時間ブロックの平均特徴ベクトルに対する短時間ブロックA65の平均特徴ベクトルCmA65の距離を求め、その距離と予め定められたしきい値Dth1とを比較し、しきい値内に入っているか否かによって判断することができる。
【0058】
なお、この図2の例ではすでに生成されている話者グループは話者グループG1のみとするので、この話者グループG1に対応する長時間ブロックB1の平均特徴ベクトルCmB1に対する短時間ブロックA65の平均特徴ベクトルCmA65の距離DA65を求め、その距離DA65と予め定められたしきい値Dth1とを比較するによって判断する。
【0059】
そして、このしきい値Dth1との比較の結果、DA65<Dth1、すなわち、長時間ブロックB1の平均特徴ベクトルCmB1に対する短時間ブロックA65の平均特徴ベクトルCmA65の距離DA65が、ある範囲(しきい値Dth1)内に収まっていれば、現時点での音声データはその直前の音声データと大きく変化していないと判断(その時点においては話者交代はなされていないと判断)し、それまでの長時間ブロックB1を更新する。この更新後の長時間ブロックをB11で表す。
【0060】
この更新後の長時間ブロックB11は、短時間ブロックA2から短時間ブロックA65までの64個の短時間ブロックによって構成され、この長時間ブロックB11の特徴ベクトルの和CsB11は、
CsB11 =CsB1+ CsA65− CsA1 (3)
によって求めることができる。つまり、長時間ブロックB11の特徴ベクトルの和CsB11は、短時間ブロックA1から短時間ブロックA64までの64個の短時間ブロックで構成される長時間ブロックB1の特徴ベクトルの和CsB1に、新たに求められた短時間ブロックA65の特徴ベクトルの和CsA65を足し算して、短時間ブロックA1の特徴ベクトルの和CsA1を引き算することによって求めることができる。
【0061】
このようにして長時間ブロックB11の特徴ベクトルの和CsB11が求められると、この長時間ブロックB11の平均特徴ベクトルCmB11は、
CmB11=CsB11/4096 (4)
によって求めることができる。
【0062】
また、この短時間ブロックA65の64個のフレーム(これをF1〜F64で表す)について、それぞれ正規化特徴ベクトルを求める。ここで、短時間ブロックA65を構成する64個のフレームF1〜F64の特徴ベクトルをCF1〜CF64で表し、その正規化特徴ベクトルをC’F1〜C’F64で表せば、これら正規化特徴ベクトルC’F1〜C’F64は、
【0063】
【数2】
(5)
【0064】
によって求めることができる。
【0065】
なお、この正規化特徴ベクトルを求める際、この(5)式では、長時間ブロックの平均特徴ベクトルとして、短時間ブロックA2〜A65によって計算された更新後の長時間ブロックB11の平均特徴ベクトルCmB11を用いたが、その直前に求められた長時間ブロックの平均特徴ベクトル、すなわち、短時間ブロックA1〜A64によって計算された更新前の長時間ブロックB1の平均特徴ベクトルCmB1を用いてもよい。ただし、この実施の形態では更新後の平均特徴ベクトルを用いるものとする。
【0066】
ところで、前述した長時間ブロックB1の平均特徴ベクトルCmB1に対する短時間ブロックA65の平均特徴ベクトルCmA65の距離DA65が、予め定められたしきい値Dth1に対して、DA65≧Dth1、すなわち、長時間ブロックB1の平均特徴ベクトルCmB1に対する短時間ブロックA65の平均特徴ベクトルCmA65の距離DA65がある範囲(しきい値Dth1)以上であったとすると、現時点での音声データはその直前の音声データに対して大きく変化していると判断(その時点において話者交代がなされたと判断)し、新たな話者グループG2を作成する。
【0067】
このように、1つの長時間ブロック(この場合、長時間ブロックB1)が終了したあとの短時間ブロックA65について処理がなされ、その短時間ブロックA65の平均特徴ベクトルCmA65と、長時間ブロックB1の平均特徴ベクトルCmB1との距離の大きさによって、話者交代があったと判断された場合には、新たな話者グループG2が作成される。なお、この例では、短時間ブロックA65によって新たな話者グループG2が生成されたとする。
【0068】
このような新たな話者グループが作成された場合には、その新たな話者グループ(この場合、話者グループG2)において、4096フレームの新たな長時間ブロックの生成が開始され、その話者グループG2に属する短時間ブロックの蓄積処理と上述したような正規化処理を順次行って行くが、この新たな話者グループG2に属する短時間ブロックの蓄積が順次なされて行けば、その話者グループG2も最終的には64個の短時間ブロックで構成される。
【0069】
なお、64個の短時間ブロックでなる長時間ブロックが生成されるまでの段階における1つの短時間ブロックまたは同じ話者グループに属する複数の短時間ブロックの集合を長時間ブロック候補と呼ぶことにする。したがって、ここでの例のように、短時間ブロックA65によって新たな話者グループG2が生成されると、この短時間ブロックA65は長時間ブロック候補となる。
【0070】
ところで、このような話者交代があったと判断された短時間ブロックA65に対する正規化処理は、この時点では、この短時間ブロックA65は、話者交代と判断されてから1つ目の短時間ブロックであるので、その短時間ブロックA65については、自身のデータを用いて正規化処理を行う。すなわち、この短時間ブロックA65の平均特徴ベクトルCmA65を用い、(5)式に準じた演算、つまり、短時間ブロックA65を構成する個々のフレームの特徴ベクトルからその平均特徴ベクトルCmA65をそれぞれ引き算することによって正規化処理を行う。
【0071】
そして、次の64フレーム分を短時間ブロックA66とし、その短時間ブロックA66の64フレーム分についても上述同様、この短時間ブロックA66の特徴ベクトルの和CsA65を求めるとともに、その平均特徴ベクトルCmA66を求める。
【0072】
この短時間ブロックA66について特徴ベクトルの和CsA66が求められ、その平均特徴ベクトルCmA66が求められると、今度は、この短時間ブロックA66の音声の特徴がどの話者グループに属するかの話者性判断つまり話者グループ判断を行う。
【0073】
この場合、すでに生成されている話者グループは、長時間ブロックB1に対応する話者グループG1と短時間ブロックA65によって新たに作成された話者グループG2の2つが存在するので、この2つの話者グループG1,G2のそれぞれに対して話者グループ判断する。
【0074】
なお、この話者グループ判断は、この実施の形態では、その時の短時間ブロックの平均特徴ベクトルと、比較対象となる長時間ブロック(話者グループ)の平均特徴ベクトルとの距離を求めてその距離が予め定められたしきい値より大きいか否かで判断するので、本来は、それぞれの平均特徴ベクトルや求められた距離に特定の符号(たとえば、短時間ブロックA66の平均特徴ベクトルであればCmA66など)を付すべきであるが、説明が繁雑となるので、以下では、それらの符号の表記を特に必要とする場合を除き、それらの符号は付さずに、単にそのときの短時間ブロックがその時点で作成されている話者グループ属するか否かといった表現で説明を行うものとする。
【0075】
この場合、短時間ブロックA66についての説明であるので、この短時間ブロックA66が話者グループG1に属するか否かを判断し、続いて、短時間ブロックA66が話者グループG2に属するか否かを判断するが、その判断の結果、短時間ブロックA66は、話者グループG1に属し、話者グループG2には属さないと判断されたとする。
【0076】
図3はそれぞれの短時間ブロックの話者性判断結果を示すもので、この図3において、話者グループに属する場合を○、属さない場合を×で表しており、この段階では、短時間ブロックA65は話者グループG1に属さなかったために新たな話者グループG2が生成され、短時間ブロックA66は話者グループG2には属さずに、話者グループG1に属していると判断された例が示されている。
【0077】
なお、この話者グループ判断を行う際には、短時間ブロックA66の平均特徴ベクトルと、比較対象となる話者グループG1,G2の平均特徴ベクトルとの距離を求めて、その距離が予め定められたしきい値より大きいか否かで判断、つまり、距離がしきい値以上であればその話者グループには属さず、しきい値未満であればその話者グループには属すると判断するが、このときに用いるしきい値の大きさ(話者グループG1との比較の時に用いるしきい値をDth1、話者グループG2との比較に時に用いるしきい値をDth2とする)は、それぞれ大きさを異ならせ、Dth1<Dth2とする。
【0078】
これは、話者グループG1の平均特徴ベクトルは長時間ブロックB1の4096フレーム分から得られた値であり、その程度の長さから得られた平均特徴ベクトルは、バラツキも少なく、その音声の特徴をある程度の適切に表現していると考えられるが、話者グループG2はこの場合、1つの短時間ブロックA65のたった64フレームから得られた平均特徴ベクトルであり、このようにきわめて少ないフレーム数から得られた平均特徴ベクトルはその音声の特徴を適切に表現しているとは言えないので、4096フレーム分の場合によりも、しきい値をゆるく設定することが望ましい。
【0079】
このように、本発明では、話者グループを構成する短時間ブロック数に応じてしきい値を設定するようにしている。なお、この設定の仕方は、短時間ブロック数が幾つまでの時はどのようなしきい値とするというように、段階的に複数のしきい値を設定することが考えられる。
【0080】
なお、この場合、ある1発話の例であるので、本来であれば、短時間ブロックA66も短時間ブロックA65と同じ話者グループとなる確率はきわめて高く、また、4096フレームの長時間ブロックが生成されるまでは、むやみに話者グループを増やさないためにも上述したようにしきい値をゆるくして、短時間ブロック数が少ないときは、なるべく、直前に生成された話者グループと同じ話者グループに入るようにしている。
【0081】
したがって、短時間ブロックA66も短時間ブロックA65と同じ話者グループG2に属する可能性が高くなるが、ここでは、説明の都合上、敢えて短時間ブロックA66は短時間ブロックA65の話者グループG1に属さないとした例を挙げている。また、ここでは例として挙げていないが、この短時間ブロックA66が話者グループG1,G2のいずれにも属さない場合もあり、その場合には、新たな話者グループG3を生成することになる。
【0082】
このように、短時間ブロックA66が長時間ブロックB1に対応する話者グループG1に属すると判定されると、この場合、前述したようにその長時間ブロックB1を更新する処理がなされる。
【0083】
すなわち、その更新後の長時間ブロック(これをB11で表す)の特徴ベクトルの和CsB11は、前述の(3)式を用い、短時間ブロックA1から短時間ブロックA64までの64個の短時間ブロックで構成される長時間ブロックB1の特徴ベクトルの和CsB1に、新たに求められた短時間ブロックA66の特徴ベクトルの和CsA66を足し算して、短時間ブロックA1の特徴ベクトルの和CsA1を引き算、つまり、 CsB11 =CsB1+ CsA66− CsA1によって求めることができる。また、その平均特徴ベクトルCmB11は 、(4)式で示したように、CmB11=CsB11/4096によって求めることができる。
【0084】
また、この短時間ブロックA66の正規化処理は、その更新後の長時間ブロックB2の平均特徴ベクトルCmB11を用いて、(5)式に準じた演算を行えばよく、それによって、短時間ブロックA66の個々のフレームの正規化特徴ベクトルを求めることができる。
【0085】
次に、この短時間ブロックA66に続く、64フレーム分を短時間ブロックA67とし、その短時間ブロックA67の64フレーム分についても上述同様、この短時間ブロックA67の特徴ベクトルの和を求めるとともに、その平均特徴ベクトルを求める。
【0086】
この短時間ブロックA67について特徴ベクトルの和が求められ、その平均特徴ベクトルが求められると、今度は、この短時間ブロックA67の音声の特徴がすでに生成されている話者グループに対してどの程度異なっているかを求める。
【0087】
この場合も、すでに生成されている話者グループは、長時間ブロックB1に対応する話者グループG1と短時間ブロックA65によって新たに作成された話者グループG2の2つが存在するので、この2つの話者グループG1,G2のそれぞれに対して話者グループ判断する。
【0088】
この場合、上述したように、短時間ブロックA67が話者グループG1に属するか否かを判断し、続いて、短時間ブロックA67が話者グループG2に属するか否かを判断するが、その結果、短時間ブロックA67は話者グループG2に属し、話者グループG1には属さないと判断されたとする(図3参照)。なお、これらの話者グループのいずれにも属さない場合には新たな話者グループG3を生成する。
【0089】
このように、この短時間ブロックA67が、短時間ブロックA65により新たに生成された話者グループG2に属すると判定されると、この場合、短時間ブロックA65(話者グループG2における長時間ブロック候補)の更新を行う。この場合の更新処理は、短時間ブロックA65と短時間ブロックA67の特徴ベクトルの和を求めるとともにその平均特徴ベクトルを求める。そして、この段階では、この短時間ブロックA65と短時間ブロックA67がこの話者グループG2の長時間ブロック候補となる。
【0090】
このようにして、以降、同じ話者グループG2と判定される短時間ブロックが順次蓄積されて行くことで、新たな64の短時間ブロック(4096フレーム)でなる話者グループG2の長時間ブロックが生成される。
【0091】
また、この短時間ブロックA67の正規化処理は、短時間ブロックA66と短時間ブロックA67でなる2つの短時間ブロックの特徴ベクトルの和を求め、その平均特徴ベクトルを求めて、その平均特徴ベクトルを用いて、(5)式に準じた演算をえばよく、それによって、短時間ブロックA67の個々のフレームの正規化特徴ベクトルを求めることができる。
【0092】
以上のようにして、図2に示す1発話V1分の64フレームごとの処理(短時間ブロックA65,A66,A67ごとの処理)が終了するが、1発話V1分の音声データとしては、この図2に示す余りeが残る。
【0093】
この余りeは1つの短時間ブロック(64フレーム分)を生成するにはフレーム数が不足している部分である。したがって、この余りeについては、その直前の短時間ブロック(図2の例では、短時間ブロックA67)における正規化特徴ベクトルの計算に用いた平均特徴ベクトルを用いて、余りeの音声区間の正規化特徴ベクトルを計算する。この余りeの部分は、長時間ブロックの平均特徴ベクトルの計算には用いない方法と、次に入力される音声データに加えて1つの短時間ブロックを形成し、長時間ブロックの計算に用いる場合とがある。
【0094】
以上のようにして、ある長時間ブロックB1が生成されたあと、ある1発話V1分の音声データが入力された場合の処理がなされる。この例では、図3に示したように、短時間ブロックA65によって新たな話者グループG2が生成され、次の短時間ブロックA66は長時間ブロックB1に対応する話者グループG1に属すると判定され、それによって、その長時間ブロックB1の更新を行い、さらに、次の短時間ブロックA67は短時間ブロックA65によって生成された話者グループG2に属すると判定された例である。
【0095】
そして、次の1発話V2に対する音声データが入力されると、先の1発話V1の場合と同様の処理、すなわち、その1発話V2から取得された個々の短時間ブロックがすでに生成されているある1つの話者グループに属すると判定された場合には、その話者グループに対応してその時点で生成されている長時間ブロック(または長時間ブロック候補)の更新を行い、どの話者グループのいずれにも属さないと判定された場合には、新たな話者グループを生成する処理がなされる。
【0096】
また、それぞれの短時間ブロックにおける正規化特徴ベクトルの生成は、当該短時間ブロックがすでに生成されている話者グループに属すると判定された場合には、その話者グループに対応してその時点で生成されている長時間ブロックまたは長時間ブロック候補の更新後の平均特徴ベクトルを用いて正規化し、当該短時間ブロックがすでに生成されている話者グループのいずれにも属さないと判定された場合には、その短時間ブロックの平均特徴ベクトルを用いて正規化する。
【0097】
入力される音声データに対し、上述したような処理を順次行うことによって、新たに生成された話者グループ(上述の例では話者グループG2)は、順次、短時間ブロックが蓄積されて行き、その数が64個に達すると新たな長時間ブロックが生成される。
【0098】
また、すでに生成されている話者グループG1に対応する長時間ブロックB1は、その話者グループG1に属する短時間ブロックが存在するごとに、その長時間ブロックB1はそのときの短時間ブロックにより更新されて行く。
【0099】
そして、それぞれの短時間ブロックごとに上述したような正規化特徴ベクトルが算出され、その正規化特徴ベクトルが音声認識部に渡されて音声認識処理がなされる。
【0100】
図4は上述した処理、すなわち、入力された音声データについて1つの短時間ブロックごとに逐次的な処理を行うことで、正規化特徴ベクトルを求めてそれを音声認識処理部に渡すまでの処理手順を説明するフローチャートである。なお、具体的な説明はすでになされているので、ここでは全体的な処理手順について説明するにとどめる。
【0101】
まず、入力された音声データの64フレーム分が短時間ブロックとして取得されると、その短時間ブロックと、すでに生成されている全ての話者グループとの比較を行う(ステップs1)。この処理は、その短時間ブロックの特徴ベクトルの和とその平均特徴ベクトルを計算し、その平均特徴ベクトルとすでに生成されている全ての話者グループの平均特徴ベクトルの距離計算を行い、その距離を予め設定されたしきい値と比較する処理であり、その比較の結果、その短時間ブロックがグループのどれかに属するか否かを判断する(ステップs2)。
【0102】
この話者グループ判断によって、当該短時間ブロックがすでに生成されている全ての話者グループのいずれにも属さないと判定された場合には、新たな話者グループを作成し(ステップs3)、その短時間ブロックを長時間ブロック候補として、その長時間ブロック候補としての短時間ブロックの特徴ベクトルの和と平均特徴ベクトルを得る。そして、その短時間ブロックについて正規化処理を行い(ステップs4)、各フレームごとの正規化特徴ベクトルを得て、その正規化特徴ベクトルを音声認識処理部に渡す(ステップs5)。
【0103】
一方、ステップs2における判断(すでに生成されている全ての話者グループのいずれかに属するかの判断)の結果、すでに生成されている全ての話者グループのいずれかに属すると判定された場合には、そのときの短時間ブロックがその時点で生成されている話者グループのどれに属するかの判断、つまり話者グループ選択を行う(ステップs6)。
【0104】
この話者グループ選択は、たとえば、その時点において、複数の話者グループが生成されている場合、その複数の話者グループからいずれか1つの話者グループを選択する処理である。
【0105】
この場合、その短時間ブロックがこれら複数の話者グループのどれか1つの話者グループのみに属する場合と、幾つかの話者グループ(すべての話者グループの場合も含む)に属する場合が考えられる。
【0106】
ここで、ある1つの話者グループのみに属すると判断された場合には、その話者グループが選択されるが、もし、複数の話者グループに属すると判断された場合には、(a)時間的に最も近い話者グループ、(b)最も長い長時間ブロックが生成されている話者グループ、(c)平均特徴ベクトル間の距離が最も近い話者グループのいずれかを選択するといった選択基準を予め設定しておき、その設定された選択基準によっていずれかの話者グループを選する。なお、(b)や(c)において、長さが同じあるいは距離が同じである場合には、(a)の判断基準を用いるといったことも決めておく。
【0107】
たとえば、複数の話者グループに属する場合には、(a)の選択基準を用いるとの設定がなされていたとすれば、その短時間ブロックに時間的に最も近い話者グループが選択され、その選択された話者グループに対応する長時間ブロックまたは長時間ブロック候補を更新、つまり、その話者グループに対応する長時間ブロックまたは長時間ブロック候補の特徴ベクトルの和と平均特徴ベクトルを更新する(ステップs7)。なお、この更新処理についてはすでに説明したのでここではその説明は省略する。
【0108】
この長時間ブロック候補の更新処理が終了すると、ステップs4の処理、すなわち、その長時間ブロック候補を構成する短時間ブロックについて正規化処理を行い、各フレームごとの正規化を得る。この正規化処理は、選択された話者グループの平均特徴ベクトル(この実施の形態では更新後の平均特徴ベクトル)を用いて行うが、この正規化処理についてもすでに説明したのでここではその説明は省略する。
【0109】
以上の処理をそれぞれの短時間ブロックごとに行う。図3で示した例では、短時間ブロックA65は、すでに生成されている話者グループG1に属さないので、新たな話者グループG2を生成し(ステップs2,s3)、自身のデータを用いて正規化特徴ベクトルの生成処理を行ったのち、その正規化特徴ベクトルを音声認識処理部に渡す(ステップs4,s5)。
【0110】
また、短時間ブロックA66は、すでに生成されている話者グループG1に属しているので、どの話者グループに属しているかの話者グループ選択(この場合は話者グループG1のみに属しているので話者グループG1を選択)を行い(ステップs6)、その話者グループG1の更新を行う(ステップs7)。そして、その話者グループG1の平均特徴ベクトル(更新後の平均特徴ベクトル)を用いて正規化処理を行ったのち、その正規化特徴ベクトルを音声認識処理部に渡す(ステップs4,s5)。
【0111】
また、短時間ブロックA67は、短時間ブロックA65によって生成された話者グループG2(この話者グループG2はこの時点ではすでに生成された話者グループとなる)に属しているので、どの話者グループに属しているかの話者グループ選択(この場合は話者グループG2のみに属しているので話者グループG2を選択)を行い(ステップs6)、その話者グループG2の更新を行う(ステップs7)。なお、話者グループG2の更新は、この時点では、まだ64個の短時間ブロックが蓄積される前であるので、短時間ブロックA65とA67でなる長時間ブロック候補の特徴ベクトルの和を求め、その平均特徴ベクトルを求める処理である。
【0112】
そして、その話者グループG2(、短時間ブロックA65とA67でなる長時間ブロック候補)の平均特徴ベクトル(更新後の平均特徴ベクトル)を用いて、正規化処理を行ったのち、その正規化特徴ベクトルを音声認識処理部に渡す(ステップs4,s5)。
【0113】
この図4のフローチャートで説明したような逐次的な処理、すなわち、入力された音声データに対し、短時間ブロックを順次取得し、取得された短時間ブロックを逐次的に処理して個々の短時間ブロックの正規化特徴ベクトルを求める方法は、音声区間のつながりなどを意識することなく、入力された音声データに対して逐次的に処理していけばよいので、処理が単純であり、また、保持するデータ量を少なくすることができ、より高速な処理が可能となるなどの利点がある。
【0114】
ところで、これまでの説明では、入力されたある1発話分の音声データから短時間ブロックを取得し、その取得した短時間ブロックについて話者グループ判断し、その話者グループ判断結果に基づいて、新たな話者グループ生成や、すでに生成されている話者グループの更新を行うと言うように、個々の短時間ブロックを逐次的に処理する例であったが、1発話から取得される個々の短時間ブロックについての話者グループ判断を行ったあとに、その話者グループ判断が、話者グループの統一性がなく1発話の話者グループとして矛盾が生じた場合には、その1発話分全体の音声データの平均特徴ベクトルを用いて、その1発話分の音声データがどの話者グループに属するかを判断するようにしてもよい。
【0115】
これは、1発話は本来一人の話者の発話であると考えれば、図2の例における1発話V1における短時間ブロックA65,A66,A67は、同じ話者グループに属するのが妥当であるが、上述したように、個々の短時間ブロックにおける話者グループ判断の結果、短時間ブロックA66のみが、異なった話者グループに属したり(図3参照)、さらに、前述の例で挙げなかったが、短時間ブロックA65が話者グループG2、短時間ブロックA65が話者グループG1、短時間ブロックA67がそのどちらにも属さないといった場合など、1発話としては本来起こりにくい様々な矛盾が生じる場合もある。
【0116】
このような場合、1発話の終了を待って、その1発話分の平均特徴ベクトルを求め、その1発話分の平均特徴ベクトルとすでに生成されている話者グループに対応する長時間ブロックまたは長時間ブロック候補の平均特徴ベクトルとを比較する。
【0117】
たとえば、図2の例で説明すると、1発話V1の終了を待って、その1発話V1全体の平均特徴ベクトルを求め、その1発話V1全体の平均特徴ベクトルと話者グループG1に対応する長時間ブロックB1の平均特徴ベクトルとを比較し、その結果、その1発話V1の音声データが話者グループG1に属すると判断されれば、話者グループG1の長時間ブロックB1の更新を行い、その1発話V1の音声データが話者グループG1に属ないと判断されれば、その1発話V1全体の音声データによって新たな話者グループG2を生成する。
【0118】
なお、その1発話V1の音声データが話者グループG1に属すると判断された場合、その話者グループG1の長時間ブロックB1の更新を行う際、それぞれの短時間ブロックA65,A66,A67において、話者グループG1に属さないと判定された短時間ブロック(上述の例では短時間ブロックA65,A67)は長時間ブロックB1の更新には用いないようにすることも可能であるが、その短時間ブロックA65,A67を長時間ブロックB1の更新に積極的に用いることも可能である。
【0119】
このように、その話者グループG1に属さない短時間ブロックをその話者グループG1の長時間ブロックBの更新処理に使用しない利点としては、その話者グループG1に属さない短時間ブロックの音声データが突発的なノイズの影響を受けた音声データ(たとえば、それまでとは急激に異なった発話の仕方をした音声データや、背景ノイズが急激に変化した場合の音声データ)である可能性もあり、そのような場合は、その突発的な影響を話者グループG1に対応する長時間ブロックB1のデータ(平均特徴ベクトル)に及ぼさないようにすることができる。すなわち、突発的なノイズなどによる影響を排除できる利点がある。
【0120】
これに対して、その話者グループG1に属さない短時間ブロックA65,A67を更新処理に積極的に使用する利点としては、同じ話者が徐々に話し方が変わってきたり、あるいは同じ話者グループであっても、急に話者が変わった場合など、その場の状況の変化に適応的に対応することができるといった利点がある。
【0121】
また、1発話V1を構成する複数の短時間ブロックが話者グループG1に属さないと判定された場合、その1発話V1分を構成する複数の短時間ブロックのなかに、仮に話者グループG1に属すると判定された短時間ブロック(図3の例では短時間ブロックA66)が存在したとしても、その1発話はその話者グループG1に属さないとするので、その短時間ブロックA66は当該話者グループG1の更新には使用しないようにする。
【0122】
図5は上述した処理、すなわち、入力された音声データについて1発話を待って話者グループ判断を行う場合の処理手順を説明するフローチャートである。その具体的な説明はすでになされているので、ここでは全体的な処理手順を説明するにとどめる。
【0123】
入力された音声データについて、1発話分の個々の短時間ブロックについて特徴ベクトルの和と平均特徴ベクトルを求め、個々の短時間ブロックがどの話者グループに属しているかの判断を行う話者グループ判断が終了したか否かを判断し(ステップs11)、終了していなければ、音声データから短時間ブロックを取得してその取得した短時間ブロックについて、特徴ベクトルの和と平均特徴ベクトルを求めて話者グループ判断を行い(ステプs12)、ステップs11に戻って1発話分について終了したか否かを判断する処理を繰り返す。
【0124】
そして、1発話分の音声データについての話者グループ判断処理が終了したと判断されると、その1発話から取得された個々の短時間ブロックにおける話者グループ判断結果が、1発話としての統一性があるか否かを判断する(ステップs13)。
【0125】
この統一性判断の結果、話者グループ判断に1発話としての統一性がとれていると判断されれば、その時の話者グループ判断結果に基づき、その1発話分の音声データがすでに生成されている話者グループのどれかに属する場合は、その話者グループの長時間ブロックまたは長時間ブロック候補の更新を行い、その1発話分の音声データがすべての話者グループのいずれにも属さない場合は、新たな話者グループ生成を行う(ステップs14)。そして、その1発話に属する個々の短時間ブロックについて正規化処理を行い(ステップs15)、各フレームごとの正規化特徴ベクトルを得て、その正規化特徴ベクトルを音声認識処理部に渡す(ステップs16)。なお、この正規化処理についてはすでに説明したのでここではその説明は省略する。
【0126】
一方、ステップs13の判断が1発話としての統一性がとれていないと判断された場合には、その1発話分から取得された複数の短時間ブロック全体の平均特徴ベクトルを計算し(ステップs17)、その1発話分の平均特徴ベクトルを用いて、すでに生成されているすべての話者グループとの比較を行い(ステップs18)、その比較の結果、その1発話分の音声データがすでに生成されているすべての話者グループのどれかに属するか否かを判断する(ステップs19)。
【0127】
この判断によって、当該1発話分の音声データがグループのいずれにも属さないと判定された場合には、新たな話者グループを作成し、それを長時間ブロック候補として、その長時間ブロック候補(その1発話に属する個々の短時間ブロック)の特徴ベクトルの和と平均特徴ベクトルを得る(ステップs20)。そして、その1発話分の個々の短時間ブロックについて正規化処理を行い(ステップs15)、各フレームごとの正規化特徴ベクトルを得て、その正規化特徴ベクトルを音声認識処理部に渡す(ステップs16)。
【0128】
一方、ステップs19における判定の結果、すでに生成されているすべての話者グループのどれかに属すると判定された場合には、そのときの1発話分の短時間ブロックがその時点で生成されている話者グループのどれに属するかの判断、つまり話者グループ選択を行う(ステップs21)。この話者グループ選択は、図4のステップs6と同様に行うことができるので、ここではその説明は省略する。
【0129】
そして、たとえば、複数の話者グループに属する場合、前述した(a)の選択基準が設定されていたとすれば、その短時間ブロックに対して、時間的に最も近い話者グループが選択され、その話者グループに対応する長時間ブロックを更新、つまり、その話者グループに対応する長時間ブロックの特徴ベクトルの和と平均特徴ベクトルを更新する(ステップs22)。
【0130】
なお、このステップs22における更新処理やステップs14における更新処理については、すでに説明したので、ここではその説明は省略する。そして、ステップs15の処理、すなわち、その1発話分の個々の短時間ブロックについて正規化処理を行い、各フレームごとの正規化特徴ベクトルを得る。この正規化処理は、この実施の形態では、選択された話者グループの更新後の平均特徴ベクトルを用いて行う。
【0131】
この図5に示す方法は、1発話ごとにその1発話がどの話者グループに属するかを判断し、その判断結果に基づいた正規化特徴ベクトルを求めるようにしているので、図4で示した逐次的な処理に比べると、保持するデータ量がやや多くなり、また、処理時間もやや増えるが、より適正な話者グループ判断を行うことができ、より高い認識率を得ることができる。
【0132】
以上説明したようにこの実施の形態によれば、音声データから取得された短時間ブロックの平均特徴ベクトルと、すでに生成されているすべての話者グループに対応する長時間ブロックまたは長時間ブロック候補の平均特徴ベクトルとの比較を行い、そのすべての話者グループのいずれにも属さない場合には、新たな話者グループを作成し、すべての話者グループの少なくとも1つに属す場合は、いずれかの話者グループを選択し、その選択された話者グループに対応する長時間ブロックまたは長時間ブロック候補を更新して行くことで、それぞれの話者の特徴を反映した話者グループが自動的に生成されて行き、それぞれの話者グループにおける正規化特徴ベクトルが生成されるので、それぞれの話者の特徴を反映した音声認識がなされる。
【0133】
また、短時間ブロックの平均特徴ベクトルとすでに生成されている話者グループとの比較は、簡単な距離計算によって行っているので、繁雑な話者識別処理や話者グループ識別処理を行うことなく、簡単に話者交代に対応できる。
【0134】
なお、前述した処理を行うに際して、予め複数の話者グループ(たとえば、男性話者グループ、女性話者グループ、子供話者グループなど)の長時間ブロックから得られた特徴ベクトルの和と平均特徴ベクトルを初期値として持つようにしてもよい。
【0135】
ところで、これまでの説明は短時間ブロックA1から短時間ブロックA64までの処理(それぞれの短時間ブロックの正規化を求める処理を含む)は、すでに終了し、かつ、その64個の短時間ブロックによって、ある一つの話者グループG1(長時間ブロックB1)が生成されているものとして、短時間ブロックA64より後に発話されたある1発話分の音声データに対する処理について説明したが、全く新規に音声データが入力された場合、つまり、話者グループが全く存在しない場合についてを図6を参照しながら以下に説明する。なお、ここでは、図4のフローチャートに示した逐次的に処理する方法で説明する。
【0136】
図6(a)は入力された音声波形であり、このような音声波形から時間軸tに沿って、同図(b)に示すように、64フレームごとの短時間ブロックA1,A2,A3,・・・を順次取得し、取得した短時間ブロックごとに図4のフローチャートで説明した手順で処理を行う。
【0137】
まず、短時間ブロックA1が取得され、その短時間ブロックA1の特徴ベクトルの和と平均特徴ベクトルの和を求め、その短時間ブロックA1がすでに生成されているすべての話者グループの中のどの話者グループに属するかを判定するが、このとき、まだ話者グループは1つも生成されていないので、図6(c)に示すように、この短時間ブロックA1を新たな話者グループG1とし、その特徴ベクトルの和と必要に応じて平均特徴ベクトルを保存する。また、この短時間ブロックA1の正規化処理は、その特徴ベクトルの和と平均特徴ベクトルを用いて行い、その結果を音声認識部に渡す。なお、この時点では、短時間ブロックA1は話者グループG1における長時間ブロック候補となる。
【0138】
次に、短時間ブロックA2が取得され、その短時間ブロックA2の特徴ベクトルの和と平均特徴ベクトルの和を求め、その短時間ブロックA2がすでに生成されているすべての話者グループの中のどの話者グループに属するかを判定するが、このとき、すでに生成されている話者グループとしては、短時間ブロックA1により生成された話者グループG1のみであるので、この話者グループG1に属するか否かを判断する。
【0139】
ここで、この話者グループG1に属すると判断された場合には、この話者グループG1を更新(この場合、短時間ブロックA1の特徴ベクトルの和に短時間ブロックA2の特徴ベクトルの和を足し算し、その平均特徴ベクトルを求める)し、それを長時間ブロック候補とし、その長時間ブロック候補の平均特徴ベクトルを用いて当該短時間ブロックA2を正規化処理する。
【0140】
一方、話者グループG1に属さないと判断された場合には、この短時間ブロックA2を新たな話者グループG2とし、その特徴ベクトルの和と必要に応じて平均特徴ベクトルを保存する。また、この場合、この短時間ブロックA1の正規化処理は、自身の特徴ベクトルの和と平均特徴ベクトルを用いて行い、その結果を音声認識部に渡す。なお、ここでは、この短時間ブロックA2により新たな話者グループG2が生成されたとする。なお、この時点では、短時間ブロックA2は話者グループG2における長時間ブロック候補となる。
【0141】
そして次に、短時間ブロックA3が取得され、その短時間ブロックA3の特徴ベクトルの和と平均特徴ベクトルの和を求め、その短時間ブロックA3がすでに生成されているすべての話者グループの中のどの話者グループに属するかを判定するが、このとき、すでに生成されている話者グループは、短時間ブロックA1により生成された話者グループG1と短時間ブロックA2により生成された話者グループG2であるので、これら話者グループG1,G2の両方に対して話者グループ判断を行う。
【0142】
ここで、もし、両方に属すると判断された場合には、その選択基準が前述した(a)の設定、つまり、より時間的に近い話者グループを選択すると設定されていたとすれば、この場合、より時間的に近い話者グループG1に属すると判断される。また、両方に属さなければ、新たな話者グループが生成されるが、ここでは、話者グループG1に属すると判定されたとする。これによって、話者グループG1の更新、つまり、短時間ブロックA1の更新がなされ、それによって、この時点では、短時間ブロックA1と短時間ブロックA3とが話者グループG1における長時間ブロック候補となる。そして、この短時間ブロックA3の正規化処理は、この場合、短時間ブロックA1と短時間ブロックA3でなる長時間ブロック候補の平均特徴ベクトルを用いて行い、その正規化された音声特徴ベクトルを音声認識処理部に渡す。
【0143】
そして次に、短時間ブロックA4が取得され、その短時間ブロックA4の特徴ベクトルの和と平均特徴ベクトルの和を求め、その短時間ブロックA4がすでに生成されているすべての話者グループの中のどの話者グループに属するかを判定するが、このとき、すでに生成されている話者グループは、短時間ブロックA1,A3でなる話者グループG1と短時間ブロックA2でなる話者グループG2であるので、これら話者グループG1,G2の両方に対して話者グループ判断を行う。ここでは、この短時間ブロックA4は話者グループG1に属すると判定されたとする。
【0144】
これによって、話者グループG1は短時間ブロックA1,A3,A4の3つが蓄積されたことになる。なお、この時点では、これら短時間ブロックA1,A3,A4が話者グループG1における長時間ブロック候補となる。なお、この3個の短時間ブロックA1,A3,A4による長時間ブロック候補のフレーム数は、64×3=192となり、2のべき乗の値ではないので、この短時間ブロックA4の正規化は、この場合、自身の特徴ベクトル(64フレーム分)と同じ話者グループに属する1つ前の短時間ブロックA3の特徴ベクトル(64フレーム分)の合計128フレーム分の特徴ベクトルの和を求めて、その平均の特徴ベクトルを求め、その求められた平均特徴ベクトルを用いて行う。なお、この場合、短時間ブロックA1,A3,A4でなる長時間ブロック候補の特徴ベクトルの和は保存しておき、以降の処理に用いる。
【0145】
この短時間ブロックA4のように、自身の短時間ブロックを含めた長時間ブロック候補のフレーム数が2のべき乗の値とならない場合の処理について、さらに、別な例を用いそれを図7により説明する。
【0146】
図7に示すように、4096フレームの長時間ブロックが生成されるまでの段階において、時間軸tに沿って、たとえば、4個の短時間ブロックAaからAdの4個の短時間ブロックによる長時間ブロック候補(これをb1とする)が生成されている状態で、次の短時間ブロックAeが取得され、その短時間ブロックAeを加えた5個の短時間ブロックによる長時間ブロック候補b2が生成されたとすると、その長時間ブロック候補b2のフレーム数は、この場合、64×5=320となって、2のべき乗とならない。
【0147】
このような場合、短時間ブロックAeを正規化を計算する際に用いる平均特徴ベクトルは、短時間ブロックAe以前に存在する短時間ブロックAaからAeのうち、その長時間ブロック候補b2において取り得る2のべき乗の最大数の短時間ブロック(この場合は短時間ブロックAbからAeの4個)の特徴ベクトルの和を求めて、その特徴ベクトルの和を、この4個の短時間ブロックA2〜A5の合計のフレーム数(64×4=256)で割り算して求め、このようにして求められた平均特徴ベクトルを用いて短時間ブロックAeの正規化を行う。
【0148】
この図7では、自身の短時間ブロックを含めた長時間ブロック候補のフレーム数、つまり、長時間ブロック候補における短時間ブロック数が2のべき乗の値とならない場合として、その長時間ブロック候補における短時間ブロック数が5個目の場合を例にとって説明したが、それ以外の短時間ブロック数、たとえば、短時間ブロック数が3個目、6個目、7個目、9個目など、長時間ブロック候補における短時間ブロック数が2のべき乗の値とならない場合は、すべてこの図7によって説明した処理に準じた処理がなされる。
【0149】
図6に説明が戻って、短時間ブロックA4の次の短時間ブロックA5が取得されたとする。そして、その短時間ブロックA5の特徴ベクトルの和と平均特徴ベクトルの和を求め、その短時間ブロックA5がすでに生成されているすべての話者グループの中のどの話者グループに属するかを判定する。
【0150】
このとき、すでに生成されている話者グループは短時間ブロックA1,A3,A4でなる話者グループG1と短時間ブロックA2でなる話者グループG2であるので、ここでも、これら話者グループG1,G2の両方に対して話者グループ判断を行うが、この場合、話者グループG1に属すると判定されたとする。これによって、話者グループG1は短時間ブロックが短時間ブロックA1,A3,A4,A5の4個蓄積されたことになり、この時点においては、これら短時間ブロックA1,A3,A4,A5が話者グループG1の長時間ブロック候補となる。
【0151】
なお、この場合、これら4個の短時間ブロックA1,A3,A4,A5による長時間ブロック候補のフレーム数は、64×4=256となり、2のべき乗の値となるので、この短時間ブロックA5の正規化処理は、短時間ブロックA1,A3,A4,A5の平均特徴ベクトルを求め、その平均特徴ベクトルを用いて行い、その正規化された音声特徴ベクトルを音声認識処理部に渡す。
【0152】
なお、このように、複数の話者グループのどれに属するかを判断する際、前述したように、距離が予め設定されたしきい値以上か否かで判断するが、そのしきい値の大きさは、話者グループの長さ(蓄積された短時間ブロック数)によって異ならせるようにしている。たとえば、短時間ブロックA5が話者グループG1と話者グループG2との間で話者グループ判断を行う際、そのしきい値は、この場合、話者グループG2の方が話者グループG1よりも長さが長いので、しきい値としての距離を小さく設定し、より厳しい距離比較を行うようにする。
【0153】
以上のような処理を繰り返し行うことにより、幾つかの話者グループ(ここでは説明を簡素化するために話者グループG1と話者グループG2の2つのみとしている)が生成され、それぞれの話者グループごとに、短時間ブロックが蓄積されて行き、たとえば、話者グループG1において4096フレーム分(64個の短時間ブロック)が蓄積されると、それを前述したように話者グループG1に対応する長時間ブロック(図2では長時間ブロックB1)としている。話者グループG2についても同様に、4096フレーム分(64個の短時間ブロック)が蓄積されると、それを話者グループG2に対応する長時間ブロックとする。
【0154】
なお、この図6を用いた説明は、話者グループが全く存在しない場合の処理手順として説明したが、図2で説明したように、ある話者グループが生成されたあとの処理も、この図6で説明したと同様な処理がなされることは勿論である。
【0155】
ところで、新たな話者グループを生成する場合、話者グループ数には一定の制限を設けることも可能であり、その場合、その最大グループ数を予め設定しておく。たとえば、音声認識装置における音響モデルとして成人男性の話者グループ、成人女性の話者グループ、子供用の話者グループが用意されているシステムにおいては話者グループ数の最大値は3である。
【0156】
このように、話者グループの最大値が予め幾つか決められている場合には、話者グループ数がその最大数まで生成されたあと、入力音声から取得された短時間ブロックがそのどの話者グループに属さないと判定された場合には、その短時間ブロックに対しては、すでに生成されている幾つかの話者グループのうち、最も近い話者グループに属すると判断する。
【0157】
なお、このように、どの話者グループにも属さない短時間ブロックが存在し、それをグループのうちの最も近い話者グループに属するようにした場合、その短時間ブロックは、その最も近い話者グループの長時間ブロックの更新に用いない場合と更新に用いる場合のいずれかが考えられ、いずれの場合でもそれぞれ利点がある。
【0158】
更新に使用しない場合の利点としてはノイズなど突発的な影響を排除できることであり、また、更新に使用する場合の利点としては、同じ話者が徐々に話し方が変わってきたりあるいは同じ話者グループであっても話者が変わった場合など、その場の状況の変化に適応的に対応できることである。
【0159】
図8は本発明の音声認識装置の構成を簡単に示す図であり、音声を入力する音声入力手段としてのマイクロホン1、入力された音声信号を増幅したりA/D変換する音声信号処理部2、この音声信号処理部2で処理された音声信号を所定時間ごとに音声分析し、たとえば、10次元のなどの特徴ベクトル列を出力する音声分析部3、この音声分析部3で得られた特徴ベクトルを前述した処理方法によって正規化する特徴ベクトル正規化処理部4、この特徴ベクトル平均正規化処理部4で正規化された正規化特徴ベクトル(正規化ケプストラム係数)を入力し、正規化された標準的な音響モデル5を用いて音声認識処理する音声認識処理部6などを有している。
【0160】
特徴ベクトル平均正規化処理部4は、特徴ベクトルを正規化する処理を行うもので、その処理については図1〜図7を参照しながらすでに詳細に説明したのでここでは省略する。
【0161】
この特徴ベクトル平均正規化処理部4で得られた正規化特徴ベクトルは、それぞれの話者グループ対応に正規化されており、その正規化特徴ベクトルが音声認識処理部6に送られ、音響モデル5を用いた音声認識処理がなされて、その認識結果が出力される。
【0162】
このように、本発明の音声認識装置は、特別な話者識別・話者グループ識別手段を持つことなく簡単な手法で、それぞれの話者の特徴を反映した正規化特徴ベクトルを得て、その正規化特徴ベクトルを用いた音声認識処理を行うことができる。
【0163】
なお、図8の例では、音声認識に用いる音響モデル5としては、正規化された標準的な音響モデル5を用いたが、予め幾つかの話者グループが設定されているような場合、それぞれの話者グループ対応の音響モデルを持ち、特徴ベクトル平均正規化処理部4からは正規化特徴ベクトルとともに、これらの話者グループに対応する話者グループ情報を音声認識処理部6に渡すことによって、音声認識処理部6では、その話者グループ情報に対応する音響モデルを用いて音声認識処理することもでき、これによって、認識率をより高めることができる。
【0164】
たとえば、話者グループを男性、女性、子供の3つのグループとし、図9に示すように、それに対応した音響モデル(男性用音響モデル5a、女性用音響モデル5b、子供用音響モデル5c)を用意し、特徴ベクトル平均正規化処理部4で生成される話者グループ数もこの3つを最大数、つまり、生成可能な話者グループ数は、男性話者グループ、女性話者グループ、子供話者グループの3つだけとしてもよい。
【0165】
その場合、音声データから取得される短時間ブロックが、前述したように、この3つの話者グループのどれかに属するかを判定し、どれにも属さない場合には、最も近い話者グループに属するようにして、その時点における正規化特徴ベクトルを求め、その正規化特徴ベクトルとどの話者グループに属するかを示す話者グループ情報を音声認識処理部6に渡すようにする。
【0166】
この図8および図9で説明した音声認識装置は、特別な話者識別や話者グループ識別を行うことなく、簡単な距離計算でどの話者グループに属するかの判断を行うことができ、話者の特徴を反映した正規化特徴ベクトルを得て、その正規化特徴ベクトルを用いた音声認識処理を行うことができるので、認識性能の向上を図るとができる。また、正規化特徴ベクトルを生成するための演算量や使用するメモリ量を大幅に少なくすることができ、それによって安価なハードウエアで動作可能でしかも高い認識性能を得ることができる。
【0167】
なお、図8に示すように、標準的な音響モデルを用いる場合は、1つの音響もモデルで済むので、部品コストを低く抑えることができ、安価な装置とすることができるとともに、その都度、どの音響モデルを用いるかといった処理が不要となるため、演算量を削減することができる。
【0168】
一方、図9に示すように、それぞれの話者または話者グループ対応の音響モデルを用いる場合は、複数の音響モデルを用意する必要があるため、演算量が多少増大し、部品コストも増えるといった問題点もあるが、より高い認識性能が得られる利点がある。
【0169】
なお、本発明は以上説明した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲で種々変形実施可能となるものである。
【0170】
たとえば、前述の実施の形態では、短時間ブロックは64フレームで構成し、長時間ブロックは64個の短時間ブロック(4096フレーム)で構成するようにしたが、これに限られるものではなく、使用するシステムなどに応じて適宜を設定可能とするものである。ただし、短時間ブロックのフレーム数や長時間ブロックの短時間ブロック数(フレーム数)は、2のべき乗となるようにすることが望ましい。
【0171】
また、前述の実施の形態では、話者性の判断は、ある話者グループに属するか否かで行ったが、話者グループではなく、ある特定の話者に属するか否かを判断することもできる。したがって、前述の実施の形態では、話者グループとして記述しているが、これを話者または話者グループと置き換えることも可能である。
【0172】
また、本発明は、以上説明した本発明を実現するための処理手順が記述された処理プログラムを作成し、その処理プログラムをフロッピィディスク、光ディスク、ハードディスクなどの記録媒体に記録させておくことができ、本発明はその処理プログラムが記録された記録媒体をも含むものである。また、ネットワークから当該処理プログラムを得るようにしてもよい。
【0173】
【発明の効果】
以上説明したように本発明によれば、特別な話者識別・話者グループ識別手段を用いることなく、自然に話者グループを生成することができ、それぞれの話者の特徴を反映した正規化特徴ベクトルを得ることができ、それぞれの話者の特徴を反映した正規化特徴ベクトルを用いた音声認識処理を行うことができるので、高い認識率を得ることができる。
【0174】
さらに、本発明では、短時間ブロックを構成するフレーム数、長時間ブロックを構成するフレーム数はそれぞれ2のべき乗となるような値に設定しているので、平均特徴ベクトルなどを求める場合の割り算はコンピュータ演算において右シフト演算だけで行うことができ、演算を簡略化することができる。これによって、CPUの演算負担を軽減することができ、処理能力の低いCPUを用いざるを得ない安価な装置などに適用する場合に特に大きな効果が得られる。
【0175】
また、話者性断は、当該短時間ブロックの平均特徴ベクトルとすでに生成されている話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の平均特徴ベクトルとの距離を計算し、その距離を予め設定されたしきい値と比較することによって行うようにしているので、単純な演算で話者グループ判断が行える。
【0176】
また、このような音声認識方法が適用された音声認識装置は、特別な話者識別・話者グループ識別手段を用いることなく、少ない演算量、少ないメモリの使用量で、自然に話者または話者グループを生成することができ、それぞれの話者の特徴を反映した正規化特徴ベクトルを得ることができるので、安価なハードウエアでしかも高い認識性能を有する装置とすることができる。
【図面の簡単な説明】
【図1】本発明の実施の形態の基本的な処理内容を説明する図である。
【図2】すでに生成されている話者グループに対応する長時間ブロックが生成されたあとの処理について説明する図である。
【図3】図2において1発話から取得された幾つかの短時間ブロックがど話者グループに属するかを判断する処理について説明する図である。
【図4】入力された音声データについて1つの短時間ブロックごとに逐次的な処理を行って正規化特徴ベクトルを求めてそれを音声認識処理部に渡すまでの処理手順を説明するフローチャートである。
【図5】入力された音声データについて1発話を待って話者グループ判断を行う場合の処理手順を説明するフローチャートである。
【図6】新規に音声データが入力された場合、つまり、グループが全く存在しない場合の本発明の処理を説明する図である。
【図7】取得された短時間ブロックを含めた長時間ブロック候補のフレーム数が2のべき乗の値とならない場合の正規化処理について説明する図である。
【図8】本発明の音声認識装置の実施の形態を説明する構成図である。
【図9】音響モデルを予め設定された幾つかの話者グループ対応に持った場合の音声認識装置の構成図である。
【符号の説明】
1 マイクロホン
2 音声信号処理部
3 音声特徴分析部
4 特徴ベクトル正規化処理部
5 音響モデル
5a 男性用音響モデル
5b 女性用音響モデル
5c 子供用音響モデル
6 音声認識処理部
A1,A2,・・・,A64,A65,・・・ 短時間ブロック
B1 長時間ブロック
G1,G2 話者グループ
Claims (14)
- 音声データを所定時間ごとのフレーム対応に特徴分析し、その特徴分析によって得られる特徴ベクトルを平均正規化してその平均正規化された特徴ベクトルを用いて音声認識処理する音声認識方法において、
入力される音声データに対し、時間軸方向に沿ったある数のフレームを1つの単位としてそれを短時間ブロックとし、同じ話者または話者グループに属する短時間ブロックを時間軸方向に沿って予め定めた数だけ集めてそれをある話者または話者グループに対応する長時間ブロックとするとともに、この長時間ブロックが生成されるまでの段階における1つの短時間ブロックまたは同じ話者グループに属する複数の短時間ブロックの集合を長時間ブロック候補とし、
前記音声データから順次取得される短時間ブロックに対し、その短時間ブロックの特徴ベクトルがすでに生成されている話者または話者グループの少なくとも1つに属するか否かを判定し、
当該短時間ブロックがすでに生成されている話者または話者グループの少なくとも1つに属すると判定された場合には、その短時間ブロックの特徴ベクトルを用いて、当該短時間ブロックの属する話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の特徴ベクトルを更新し、この長時間ブロックまたは長時間ブロック候補の更新前または更新後の特徴ベクトルを用いて前記短時間ブロックの特徴ベクトルを平均正規化し、その平均正規化された特徴ベクトルを音声認識処理部に渡し、
当該短時間ブロックが前記すでに生成されている話者または話者グループに属さないと判定された場合には、その短時間ブロックを長時間ブロック候補として、新たな話者または話者グループに対応する長時間ブロックの生成を開始し、当該短時間ブロックの特徴ベクトルを用いてその短時間ブロックを平均正規化して、その平均正規化された特徴ベクトルを音声認識処理部に渡すことを特徴とする音声認識方法。 - 前記短時間ブロックは、標準的な長さを有する1単語の音声データから取得される程度のフレーム数で構成され、前記長時間ブロックは、全ての音素がまんべんなく含まれる音声データから取得される程度のフレーム数で構成されることを特徴とする請求項1記載の音声認識方法。
- 前記短時間ブロックを構成するフレーム数、長時間ブロックを構成するフレーム数は、それぞれ2のべき乗の値に設定されることを特徴とする請求項1または2記載の音声認識方法。
- 前記短時間ブロックの音声特徴が、すでに生成されている話者または話者グループに属するか否かを判断する話者性判断処理は、当該短時間ブロックの平均特徴ベクトルと、すでに生成されている話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の平均特徴ベクトルとの距離を計算し、その距離を予め設定されたしきい値と比較することによって行うことを特徴とする請求項1から3のいずれかに記載の音声認識方法。
- 前記話者性判断に用いるしきい値は、前記短時間ブロックの比較対象が前記長時間ブロックである場合と、前記長時間ブロック候補である場合とでその値を異ならせ、前記短時間ブロックの比較対象が前記長時間ブロック候補である場合は、長時間ブロックの場合よりもしきい値としての距離を大きく設定することを特徴とする請求項4記載の音声認識方法。
- 前記生成される話者または話者グループの最大数は予め設定可能とし、その話者または話者グループが最大数まで生成されたあとは、それ以降に取得される短時間ブロックが、前記すでに生成されたどの話者グループにも属さないと判断された場合は、音声特徴の最も近い話者または話者グループに属すると判断することを特徴とする請求項1から5のいずれかに記載の音声認識方法。
- 音声データを所定時間ごとのフレーム対応に特徴分析し、その特徴分析によって得られる特徴ベクトルを平均正規化してその平均正規化された特徴ベクトルを用いて音声認識処理する音声認識装置において、
入力音声に対し音声の特徴分析を行って特徴ベクトルを出力する音声分析手段と、この音声分析手段から出力された特徴ベクトルを平均正規化する特徴ベクトル平均正規化手段と、この特徴ベクトル平均正規化手段で平均正規化された特徴ベクトルを入力して、予め用意された音響モデルを用いて音声認識処理する音声認識処理手段とを有し、
前記特徴ベクトル平均正規化手段は、入力される音声データに対し、時間軸方向に沿ったある数のフレームを1つの単位としてそれを短時間ブロックとし、同じ話者または話者グループに属する短時間ブロックを時間軸方向に沿って予め定めた数だけ集めてそれをある話者または話者グループに対応する長時間ブロックとするとともに、この長時間ブロックが生成されるまでの段階における1つの短時間ブロックまたは同じ話者グループに属する複数の短時間ブロックの集合を長時間ブロック候補とし、
前記音声データから順次取得される短時間ブロックに対し、その短時間ブロックの特徴ベクトルがすでに生成されている話者または話者グループの少なくとも1つに属するか否かを判定し、
当該短時間ブロックがすでに生成されている話者または話者グループの少なくとも1つに属すると判定された場合には、その短時間ブロックの特徴ベクトルを用いて、当該短時間ブロックの属する話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の特徴ベクトルを更新し、この長時間ブロックまたは長時間ブロック候補の更新前または更新後の特徴ベクトルを用いて前記短時間ブロックの特徴ベクトルを平均正規化し、その平均正規化された特徴ベクトルを音声認識処理部に渡し、
当該短時間ブロックが前記すでに生成されている話者または話者グループに属さないと判定された場合には、その短時間ブロックを長時間ブロック候補として、新たな話者または話者グループに対応する長時間ブロックの生成を開始し、当該短時間ブロックの特徴ベクトルを用いてその短時間ブロックを平均正規化して、その平均正規化された特徴ベクトルを音声認識処理部に渡すことを特徴とする音声認識装置。 - 前記短時間ブロックは、標準的な長さを有する1単語の音声データから取得される程度のフレーム数で構成され、前記長時間ブロックは、全ての音素がまんべんなく含まれる音声データから取得される程度のフレーム数で構成されることを特徴とする請求項7記載の音声認識装置。
- 前記短時間ブロックを構成するフレーム数、長時間ブロックを構成するフレーム数は、それぞれ2のべき乗の値に設定されることを特徴とする請求項7または8記載の音声認識装置。
- 前記短時間ブロックの音声特徴が、すでに生成されている話者または話者グループに属するか否かを判断する話者性判断処理は、当該短時間ブロックの平均特徴ベクトルと、すでに生成されている話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の平均特徴ベクトルとの距離を計算し、その距離を予め設定されたしきい値と比較することによって行うことを特徴とする請求項7から9のいずれかに記載の音声認識装置。
- 前記話者性判断に用いるしきい値は、前記短時間ブロックの比較対象が前記長時間ブロックである場合と、前記長時間ブロック候補である場合とでその値を異ならせ、前記短時間ブロックの比較対象が前記長時間ブロック候補である場合は、長時間ブロックの場合よりもしきい値としての距離を大きく設定することを特徴とする請求項10記載の音声認識装置。
- 前記生成される話者または話者グループの最大数は予め設定可能とし、その話者または話者グループが最大数まで生成されたあとは、それ以降に取得される短時間ブロックが、前記すでに生成されたどの話者グループにも属さないと判断された場合は、音声特徴の最も近い話者または話者グループに属すると判断することを特徴とする請求項7から11のいずれかに記載の音声認識装置。
- 前記音声認識処理部が用いる音響モデルは、それぞれの話者または話者グループの平均正規化された特徴ベクトルに対応可能な標準的な音響モデルであることを特徴とする請求項7から12のいずれかに記載の音声認識装置。
- 前記音声認識処理部が用いる音響モデルは、予め複数の話者または話者グループ対応に用意された複数の音響モデルであって、その場合、前記特徴ベクトル平均正規化手段から話者または話者グループを示す情報を入力し、その話者または話者グループに対応した音響モデルを用いた音声認識処理を行うことを特徴とする請求項7から12のいずれかに記載の音声認識装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001369173A JP3912089B2 (ja) | 2001-12-03 | 2001-12-03 | 音声認識方法および音声認識装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001369173A JP3912089B2 (ja) | 2001-12-03 | 2001-12-03 | 音声認識方法および音声認識装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003167599A JP2003167599A (ja) | 2003-06-13 |
JP3912089B2 true JP3912089B2 (ja) | 2007-05-09 |
Family
ID=19178619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001369173A Expired - Fee Related JP3912089B2 (ja) | 2001-12-03 | 2001-12-03 | 音声認識方法および音声認識装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3912089B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100547120B1 (ko) * | 2003-06-14 | 2006-01-26 | 삼성전자주식회사 | 그룹화에 의한 영화 영상 검출 방법 및 장치 |
JP4864783B2 (ja) * | 2007-03-23 | 2012-02-01 | Kddi株式会社 | パタンマッチング装置、パタンマッチングプログラム、およびパタンマッチング方法 |
JP5229219B2 (ja) * | 2007-03-27 | 2013-07-03 | 日本電気株式会社 | 話者選択装置、話者適応モデル作成装置、話者選択方法、話者選択用プログラムおよび話者適応モデル作成プログラム |
JP2011053569A (ja) * | 2009-09-03 | 2011-03-17 | Nippon Hoso Kyokai <Nhk> | 音響処理装置およびプログラム |
KR102487936B1 (ko) * | 2020-12-07 | 2023-01-11 | 서울시립대학교 산학협력단 | 세그먼트 집계를 통해 짧은 발성을 보상하는 심층 신경망 기반 화자 인증 시스템 및 방법 |
-
2001
- 2001-12-03 JP JP2001369173A patent/JP3912089B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003167599A (ja) | 2003-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9536525B2 (en) | Speaker indexing device and speaker indexing method | |
JP3888543B2 (ja) | 音声認識装置及び音声認識方法 | |
JP2692581B2 (ja) | 音響カテゴリ平均値計算装置及び適応化装置 | |
JP4316583B2 (ja) | 特徴量補正装置、特徴量補正方法および特徴量補正プログラム | |
JP4728868B2 (ja) | 応対評価装置、その方法、プログラムおよびその記録媒体 | |
JP3836815B2 (ja) | 音声認識装置、音声認識方法、該音声認識方法をコンピュータに対して実行させるためのコンピュータ実行可能なプログラムおよび記憶媒体 | |
JP5418223B2 (ja) | 音声分類装置、音声分類方法、および音声分類用プログラム | |
JP4169921B2 (ja) | 音声認識システム | |
JP4531166B2 (ja) | 信頼性尺度の評価を用いる音声認識方法 | |
JP3001037B2 (ja) | 音声認識装置 | |
Nandwana et al. | Robust unsupervised detection of human screams in noisy acoustic environments | |
JP5150542B2 (ja) | パターン認識装置、パターン認識方法、及び、プログラム | |
EP1465154A2 (en) | Method of speech recognition using variational inference with switching state space models | |
EP1457968A1 (en) | Noise adaptation system of speech model, noise adaptation method, and noise adaptation program for speech recognition | |
KR20190129805A (ko) | 잡음 환경 분류 및 제거 기능을 갖는 보청기 및 그 방법 | |
JP3632529B2 (ja) | 音声認識装置及び方法ならびに記録媒体 | |
JP5803125B2 (ja) | 音声による抑圧状態検出装置およびプログラム | |
JP2020034683A (ja) | 音声認識装置、音声認識プログラムおよび音声認識方法 | |
JP3912089B2 (ja) | 音声認識方法および音声認識装置 | |
JP3088357B2 (ja) | 不特定話者音響モデル生成装置及び音声認識装置 | |
JPH064097A (ja) | 話者認識方法 | |
JPWO2008126254A1 (ja) | 話者認識装置、音響モデル更新方法及び音響モデル更新処理プログラム | |
JP3039623B2 (ja) | 音声認識装置 | |
JP2852210B2 (ja) | 不特定話者モデル作成装置及び音声認識装置 | |
JP2000259198A (ja) | パターン認識装置および方法、並びに提供媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041130 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20061219 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070109 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070122 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110209 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110209 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120209 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130209 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130209 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |