(57)【特許請求の範囲】
【請求項１】
音声データを所定時間ごとのフレーム対応に特徴分析し、その特徴分析によって得られる特徴ベクトルを平均正規化してその平均正規化された特徴ベクトルを用いて音声認識処理する音声認識方法において、
入力される音声データに対し、時間軸方向に沿ったある数のフレームを１つの単位としてそれを短時間ブロックとし、同じ話者または話者グループに属する短時間ブロックを時間軸方向に沿って予め定めた数だけ集めてそれをある話者または話者グループに対応する長時間ブロックとするとともに、この長時間ブロックが生成されるまでの段階における１つの短時間ブロックまたは同じ話者グループに属する複数の短時間ブロックの集合を長時間ブロック候補とし、
前記音声データから順次取得される短時間ブロックに対し、その短時間ブロックの特徴ベクトルがすでに生成されている話者または話者グループの少なくとも１つに属するか否かを判定し、
当該短時間ブロックがすでに生成されている話者または話者グループの少なくとも１つに属すると判定された場合には、その短時間ブロックの特徴ベクトルを用いて、当該短時間ブロックの属する話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の特徴ベクトルを更新し、この長時間ブロックまたは長時間ブロック候補の更新前または更新後の特徴ベクトルを用いて前記短時間ブロックの特徴ベクトルを平均正規化し、その平均正規化された特徴ベクトルを音声認識処理部に渡し、
当該短時間ブロックが前記すでに生成されている話者または話者グループに属さないと判定された場合には、その短時間ブロックを長時間ブロック候補として、新たな話者または話者グループに対応する長時間ブロックの生成を開始し、当該短時間ブロックの特徴ベクトルを用いてその短時間ブロックを平均正規化して、その平均正規化された特徴ベクトルを音声認識処理部に渡すことを特徴とする音声認識方法。
【請求項２】
前記短時間ブロックは、標準的な長さを有する１単語の音声データから取得される程度のフレーム数で構成され、前記長時間ブロックは、全ての音素がまんべんなく含まれる音声データから取得される程度のフレーム数で構成されることを特徴とする請求項１記載の音声認識方法。
【請求項３】
前記短時間ブロックを構成するフレーム数、長時間ブロックを構成するフレーム数は、それぞれ２のべき乗の値に設定されることを特徴とする請求項１または２記載の音声認識方法。
【請求項４】
前記短時間ブロックの音声特徴が、すでに生成されている話者または話者グループに属するか否かを判断する話者性判断処理は、当該短時間ブロックの平均特徴ベクトルと、すでに生成されている話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の平均特徴ベクトルとの距離を計算し、その距離を予め設定されたしきい値と比較することによって行うことを特徴とする請求項１から３のいずれかに記載の音声認識方法。
【請求項５】
前記話者性判断に用いるしきい値は、前記短時間ブロックの比較対象が前記長時間ブロックである場合と、前記長時間ブロック候補である場合とでその値を異ならせ、前記短時間ブロックの比較対象が前記長時間ブロック候補である場合は、長時間ブロックの場合よりもしきい値としての距離を大きく設定することを特徴とする請求項４記載の音声認識方法。
【請求項６】
前記生成される話者または話者グループの最大数は予め設定可能とし、その話者または話者グループが最大数まで生成されたあとは、それ以降に取得される短時間ブロックが、前記すでに生成されたどの話者グループにも属さないと判断された場合は、音声特徴の最も近い話者または話者グループに属すると判断することを特徴とする請求項１から５のいずれかに記載の音声認識方法。
【請求項７】
音声データを所定時間ごとのフレーム対応に特徴分析し、その特徴分析によって得られる特徴ベクトルを平均正規化してその平均正規化された特徴ベクトルを用いて音声認識処理する音声認識装置において、
入力音声に対し音声の特徴分析を行って特徴ベクトルを出力する音声分析手段と、この音声分析手段から出力された特徴ベクトルを平均正規化する特徴ベクトル平均正規化手段と、この特徴ベクトル平均正規化手段で平均正規化された特徴ベクトルを入力して、予め用意された音響モデルを用いて音声認識処理する音声認識処理手段とを有し、
前記特徴ベクトル平均正規化手段は、入力される音声データに対し、時間軸方向に沿ったある数のフレームを１つの単位としてそれを短時間ブロックとし、同じ話者または話者グループに属する短時間ブロックを時間軸方向に沿って予め定めた数だけ集めてそれをある話者または話者グループに対応する長時間ブロックとするとともに、この長時間ブロックが生成されるまでの段階における１つの短時間ブロックまたは同じ話者グループに属する複数の短時間ブロックの集合を長時間ブロック候補とし、
前記音声データから順次取得される短時間ブロックに対し、その短時間ブロックの特徴ベクトルがすでに生成されている話者または話者グループの少なくとも１つに属するか否かを判定し、
当該短時間ブロックがすでに生成されている話者または話者グループの少なくとも１つに属すると判定された場合には、その短時間ブロックの特徴ベクトルを用いて、当該短時間ブロックの属する話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の特徴ベクトルを更新し、この長時間ブロックまたは長時間ブロック候補の更新前または更新後の特徴ベクトルを用いて前記短時間ブロックの特徴ベクトルを平均正規化し、その平均正規化された特徴ベクトルを音声認識処理部に渡し、
当該短時間ブロックが前記すでに生成されている話者または話者グループに属さないと判定された場合には、その短時間ブロックを長時間ブロック候補として、新たな話者または話者グループに対応する長時間ブロックの生成を開始し、当該短時間ブロックの特徴ベクトルを用いてその短時間ブロックを平均正規化して、その平均正規化された特徴ベクトルを音声認識処理部に渡すことを特徴とする音声認識装置。
【請求項８】
前記短時間ブロックは、標準的な長さを有する１単語の音声データから取得される程度のフレーム数で構成され、前記長時間ブロックは、全ての音素がまんべんなく含まれる音声データから取得される程度のフレーム数で構成されることを特徴とする請求項７記載の音声認識装置。
【請求項９】
前記短時間ブロックを構成するフレーム数、長時間ブロックを構成するフレーム数は、それぞれ２のべき乗の値に設定されることを特徴とする請求項７または８記載の音声認識装置。
【請求項１０】
前記短時間ブロックの音声特徴が、すでに生成されている話者または話者グループに属するか否かを判断する話者性判断処理は、当該短時間ブロックの平均特徴ベクトルと、すでに生成されている話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の平均特徴ベクトルとの距離を計算し、その距離を予め設定されたしきい値と比較することによって行うことを特徴とする請求項７から９のいずれかに記載の音声認識装置。
【請求項１１】
前記話者性判断に用いるしきい値は、前記短時間ブロックの比較対象が前記長時間ブロックである場合と、前記長時間ブロック候補である場合とでその値を異ならせ、前記短時間ブロックの比較対象が前記長時間ブロック候補である場合は、長時間ブロックの場合よりもしきい値としての距離を大きく設定することを特徴とする請求項１０記載の音声認識装置。
【請求項１２】
前記生成される話者または話者グループの最大数は予め設定可能とし、その話者または話者グループが最大数まで生成されたあとは、それ以降に取得される短時間ブロックが、前記すでに生成されたどの話者グループにも属さないと判断された場合は、音声特徴の最も近い話者または話者グループに属すると判断することを特徴とする請求項７から１１のいずれかに記載の音声認識装置。
【請求項１３】
前記音声認識処理部が用いる音響モデルは、それぞれの話者または話者グループの平均正規化された特徴ベクトルに対応可能な標準的な音響モデルであることを特徴とする請求項７から１２のいずれかに記載の音声認識装置。
【請求項１４】
前記音声認識処理部が用いる音響モデルは、予め複数の話者または話者グループ対応に用意された複数の音響モデルであって、その場合、前記特徴ベクトル平均正規化手段から話者または話者グループを示す情報を入力し、その話者または話者グループに対応した音響モデルを用いた音声認識処理を行うことを特徴とする請求項７から１２のいずれかに記載の音声認識装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は特徴ベクトルを平均正規化してその平均正規化した特徴ベクトルを用いて音声認識処理する音声認識方法および音声認識装置に関する。
【０００２】
【従来の技術】
音声データから所定時間ごとに取得される各フレーム対応の特徴ベクトル（たとえば１０次元のケプストラム係数）を平均正規化する特徴ベクトル平均正規化法は、音声認識を行う際の重要な技術として広く用いられている。
【０００３】
この特徴ベクトル平均正規化法は、簡単に言えば、平均正規化対象となる音声データ区間から得られる各時刻ごとの特徴ベクトルの平均値を求め、その平均値を各時刻ごとの特徴ベクトルから引き算して正規化された特徴ベクトルを求めるものである。
【０００４】
たとえば、各時刻（ｔ＝１，２，・・・，T）に対応するそれぞれのフレームからＣ１，Ｃ２，・・・，ＣTの特徴ベクトル（それぞれの特徴ベクトルはたとえば１０次元のケプストラム係数でなる）が得られたとすれば、これらの特徴ベクトルＣ１，Ｃ２，・・・，ＣT の和をＣｓで表せば、このＣｓは
【０００５】
【数１】
0003912089.tif 000002
【０００６】
によって求められ、これによって得られた特徴ベクトルＣ１，Ｃ２，・・・，ＣT の和Ｃｓから、その平均値Ｃｍを下記に示す（２）式によって求める。なお、（２）式におけるＴは平均正規化対象となる音声データにおける全フレーム数を表している。
【０００７】
Ｃm＝Ｃｓ／Ｔ                      （２）
そして、このようにして求められた平均値Ｃｍをそれぞれのフレーム対応の特徴ベクトルＣ１，Ｃ２，・・・，ＣTからそれぞれ引き算することで、各フレーム対応の平均正規化（以下では、単に正規化という）特徴ベクトルを求めることができる。
【０００８】
すなわち、フレーム対応の正規化特徴ベクトルをＣ１’， Ｃ２’，・・・， ＣT’で表せば、 それぞれのフレームごとの正規化特徴ベクトルは、Ｃ１’＝Ｃ１−Ｃｍ， Ｃ２’＝Ｃ２−Ｃｍ，・・・， ＣT’＝ＣT−Ｃｍで表すことができる。
【０００９】
このようにして求められた正規化特徴ベクトル（正規化ケプストラム係数）を用いて、たとえば、ベクトル量子化などの前処理を行ったのちに出力確率などを求めるなど音声認識を行うに必要な演算を行う。
【００１０】
なお、上述の特徴ベクトルの和を求める計算や特徴ベクトル同志の引き算、平均特徴ベクトルを求める計算、正規化特徴ベクトルを求める計算などはすべて、その特徴ベクトルを表すの各次元ごと、すなわち、特徴ベクトルを表すケプストラム係数がたとえば１０次元で構成されるとすれば、０〜９次元の各次元ごとにそれぞれの計算を行うことはいうまでもない。
【００１１】
【発明が解決しようとする課題】
前述の（２）式で表されるの平均値Ｃｍを求めるには、正規化処理対象とする音声区間の全フレームに対する特徴ベクトルが必要となってくる。この結果、処理対象とする入力音声の全フレームが入力されてからでないと計算を行うことができず、リアルタイム処理ができないという問題もある。
【００１２】
これを解決するために、処理対象となる現発話データの１発話以前の音声データから得られた特徴ベクトルから得られた平均値を用いて、現発話データのそれぞれのフレーム対応の特徴ベクトルから逐次的に引き算をすることで、現発話のそれぞれのフレーム対応の正規化特徴ベクトルを求める方法がある。たとえば、特開平９−９０９９０の「音声認識のための音響分析方法及び装置」（以下、第１の従来技術という）にはこれについての記載がなされている。
【００１３】
この従来技術を用いれば、確かにリアルタイムでの音声認識処理を行うことが可能となる。
【００１４】
しかし、この従来技術は、現発話とそれより前の発話とで話者交代があったりした場合には、その前後において、の平均値も大きく異なる可能性が高いので、それを用いて求められた正規化特徴ベクトルは、現発話を適正に反映しないものとなる。これは、それぞれの話者の発話した音声データ（音素がまんべんなく含まれているような音声データ）から得られた平均値は、それ自体が話者性を表したものとなるからであり、平均値を求めたときの話者と、正規化特徴ベクトルを求めるときの話者が異なると、他の話者の平均値で正規化特徴ベクトルが算出されてしまうことになるという問題が生じる。
【００１５】
ところで、この正規化特徴ベクトルを求める際、適正な正規化特徴ベクトルを得るためには、ノイズに変動が少ないこと、話者の発話した音声にまんべんなくバラツキがあることが重要である。
【００１６】
ここで、話者の発話した音声にまんべんなくバラツキがあるということは、殆どの音素が含まれる音声データであるといえるので、ある程度の時間的長さを持った過去の発話から正規化特徴ベクトルを求めることが必要となってくる。
【００１７】
しかし、過去の発話から求めた正規化特徴ベクトルを用いて音声認識すると、発話者が途中で交代したような場合、話者の発話特性が異なり、認識性能が劣化するという問題がある。
【００１８】
この話者交代に対応する技術として、複数の特定話者の正規化特徴ベクトルを予め求めておき、現発話者を話者識別して、予め求められた複数の特定話者の正規化特徴ベクトルから、話者識別された話者に対応する正規化特徴ベクトルを用いる方法が考えられる。たとえば、特開平１０−２５４４９４号公報に記載された「音声認識装置および方法」の発明（以下、第２の従来技術という）には、それについての記述がなされている。
【００１９】
しかし、この第２の従来技術は、予め複数の特定話者の正規化特徴ベクトルを求めておく必要があり、特定話者の識別処理が必要とともに、新規入力話者への話者交代などには対応しにくい。
【００２０】
そこで本発明は、現発話の音声の特徴データと過去の発話の特徴データの両方を使い、しかも、繁雑な話者識別または話者グループ識別処理を行うことなく、話者交代などに対応可能とし、安価なハードウエアで高い認識性能が得られる音声認識方法および音声認識装置を提供することを目的としている。
【００２１】
【課題を解決するための手段】
上述した目的を達成するために、本発明の音声認識方法は、音声データを所定時間ごとのフレーム対応に特徴分析し、その特徴分析によって得られる特徴ベクトルを平均正規化してその平均正規化された特徴ベクトルを用いて音声認識処理する音声認識方法において、入力される音声データに対し、時間軸方向に沿ったある数のフレームを１つの単位としてそれを短時間ブロックとし、同じ話者または話者グループに属する短時間ブロックを時間軸方向に沿って予め定めた数だけ集めてそれをある話者または話者グループに対応する長時間ブロックとするとともに、この長時間ブロックが生成されるまでの段階における１つの短時間ブロックまたは同じ話者グループに属する複数の短時間ブロックの集合を長時間ブロック候補とし、前記音声データから順次取得される短時間ブロックに対し、その短時間ブロックの特徴ベクトルがすでに生成されている話者または話者グループの少なくとも１つに属するか否かを判定し、当該短時間ブロックがすでに生成されている話者または話者グループの少なくとも１つに属すると判定された場合には、その短時間ブロックの特徴ベクトルを用いて、当該短時間ブロックの属する話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の特徴ベクトルを更新し、この長時間ブロックまたは長時間ブロック候補の更新前または更新後の特徴ベクトルを用いて前記短時間ブロックの特徴ベクトルを平均正規化し、その平均正規化された特徴ベクトルを音声認識処理部に渡し、当該短時間ブロックが前記すでに生成されている話者または話者グループに属さないと判定された場合には、その短時間ブロックを長時間ブロック候補として、新たな話者または話者グループに対応する長時間ブロックの生成を開始し、当該短時間ブロックの特徴ベクトルを用いてその短時間ブロックを平均正規化して、その平均正規化された特徴ベクトルを音声認識処理部に渡すようにしている。
【００２２】
また、本発明の音声認識装置は、音声データを所定時間ごとのフレーム対応に特徴分析し、その特徴分析によって得られる特徴ベクトルを平均正規化してその平均正規化された特徴ベクトルを用いて音声認識処理する音声認識装置において、  入力音声に対し音声の特徴分析を行って特徴ベクトルを出力する音声分析手段と、この音声分析手段から出力された特徴ベクトルを平均正規化する特徴ベクトル平均正規化手段と、この特徴ベクトル平均正規化手段で平均正規化された特徴ベクトルを入力して、予め用意された音響モデルを用いて音声認識処理する音声認識処理手段とを有し、前記特徴ベクトル平均正規化手段は、入力される音声データに対し、時間軸方向に沿ったある数のフレームを１つの単位としてそれを短時間ブロックとし、同じ話者または話者グループに属する短時間ブロックを時間軸方向に沿って予め定めた数だけ集めてそれをある話者または話者グループに対応する長時間ブロックとするとともに、この長時間ブロックが生成されるまでの段階における１つの短時間ブロックまたは同じ話者グループに属する複数の短時間ブロックの集合を長時間ブロック候補とし、前記音声データから順次取得される短時間ブロックに対し、その短時間ブロックの特徴ベクトルがすでに生成されている話者または話者グループの少なくとも１つに属するか否かを判定し、当該短時間ブロックがすでに生成されている話者または話者グループの少なくとも１つに属すると判定された場合には、その短時間ブロックの特徴ベクトルを用いて、当該短時間ブロックの属する話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の特徴ベクトルを更新し、この長時間ブロックまたは長時間ブロック候補の更新前または更新後の特徴ベクトルを用いて前記短時間ブロックの特徴ベクトルを平均正規化し、その平均正規化された特徴ベクトルを音声認識処理部に渡し、当該短時間ブロックが前記すでに生成されている話者または話者グループに属さないと判定された場合には、その短時間ブロックを長時間ブロック候補として、新たな話者または話者グループに対応する長時間ブロックの生成を開始し、当該短時間ブロックの特徴ベクトルを用いてその短時間ブロックを平均正規化して、その平均正規化された特徴ベクトルを音声認識処理部に渡すようにしている。
【００２３】
これらそれぞれの発明において、前記短時間ブロックは、標準的な長さを有する１単語の音声データから取得される程度のフレーム数で構成され、前記長時間ブロックは、全ての音素がまんべんなく含まれる音声データから取得される程度のフレーム数で構成するようにしている。
【００２４】
また、前記短時間ブロックを構成するフレーム数、長時間ブロックを構成するフレーム数は、それぞれ２のべき乗の値に設定するようにしている。
【００２５】
また、前記短時間ブロックの音声特徴が、すでに生成されている話者または話者グループに属するか否かを判断する話者性判断処理は、当該短時間ブロックの平均特徴ベクトルと、すでに生成されている話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の平均特徴ベクトルとの距離を計算し、その距離を予め設定されたしきい値と比較することによって行う。
【００２６】
そして、そのしきい値は、前記短時間ブロックの比較対象が前記長時間ブロックである場合と、前記長時間ブロック候補である場合とでその値を異ならせ、前記短時間ブロックの比較対象が前記長時間ブロック候補である場合は、長時間ブロックの場合よりもしきい値としての距離を大きく設定するようにしている。
【００２７】
また、前記生成される話者または話者グループの最大数は予め設定可能とし、その話者または話者グループが最大数まで生成されたあとは、それ以降に取得される短時間ブロックが、前記すでに生成されたどの話者グループにも属さないと判断された場合は、音声特徴の最も近い話者または話者グループに属すると判断するようにしている。
【００２８】
また、本発明の音声認識装置において、前記音声認識処理部が用いる音響モデルは、それぞれの話者または話者グループの平均正規化された特徴ベクトルに対応可能な標準的な音響モデルとしてもよい。
【００２９】
また、本発明の音声認識装置において、前記音声認識処理部が用いる音響モデルは、予め複数の話者または話者グループ対応に用意された複数の音響モデルとしてもよく、その場合、前記特徴ベクトル平均正規化手段から話者または話者グループを示す情報を入力し、その話者または話者グループに対応した音響モデルを用いた音声認識処理を行う。
【００３０】
このように本発明は、音声データから順次取得される短時間ブロックに対し、その短時間ブロックの特徴ベクトルが、すでに生成されている話者または話者グループの少なくとも１つに属するか否かを判定し、当該短時間ブロックがすでに生成されている話者または話者グループの少なくとも１つに属すると判定された場合には、その短時間ブロックの特徴ベクトルを用いて、当該短時間ブロックの属する話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の特徴ベクトルを更新して、この長時間ブロックまたは長時間ブロック候補の更新前または更新後の特徴ベクトルを用いて前記短時間ブロックの特徴ベクトルを正規化し、その正規化された特徴ベクトルを用いて音声認識処理を行うようにしている。
【００３１】
一方、当該短時間ブロックが、前記すでに生成されている話者または話者グループに属さないと判定された場合には、その短時間ブロックを長時間ブロック候補として、新たな話者または話者グループに対応する長時間ブロックの生成を開始する。そして、当該短時間ブロックの特徴ベクトルを用いてその短時間ブロックを正規化して、その正規化された特徴ベクトルを用いて音声認識処理するようにしている。
【００３２】
このようにな処理を行うことによって、特別な話者識別・話者グループ識別手段を用いることなく、自然に話者または話者グループを生成することができ、それぞれの話者の特徴を反映した正規化特徴ベクトルを得ることができ、それぞれの話者の特徴を反映した正規化特徴ベクトルを用いた音声認識処理を行うことができるので、高い認識率を得ることができる。
【００３３】
また、前記短時間ブロックは、標準的な長さを有する１単語の音声データから取得される程度のフレーム数で構成され、前記長時間ブロックは、全ての音素がまんべんなく含まれる音声データから取得される程度のフレーム数で構成されている。具体的には一例として、短時間ブロックは６４フレーム、長時間ブロックは６４個の短時間ブロック（４０９６フレーム）としている。短時間ブロックおよび長時間ブロックをそれぞれこの程度のフレーム数とすることによって、効率のよい処理が可能となり、かつ、音声の特徴も適正に反映させることができる。
【００３４】
また、前記短時間ブロックを構成するフレーム数、長時間ブロックを構成するフレーム数はそれぞれ２のべき乗となるような値に設定するようにしているので、平均特徴ベクトルなどを求める場合の割り算はコンピュータ演算において右シフト演算だけで行うことができ、演算を簡略化することができる。これによって、ＣＰＵの演算負担を軽減することができ、処理能力の低いＣＰＵを用いざるを得ない安価な装置などに適用する場合に特に大きな効果が得られる。
【００３５】
また、話者性判断は、当該短時間ブロックの平均特徴ベクトルとすでに生成されている話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の平均特徴ベクトルとの距離を計算し、その距離を予め設定されたしきい値と比較することによって行うようにしているので、単純な演算で話者グループ判断が行える。
【００３６】
また、話者性判断に用いるしきい値は、前記短時間ブロックの比較対象が前記長時間ブロック（予め設定された所定のフレーム数となった長時間ブロック）である場合と、長時間ブロック候補である場合とでその値を異ならせ、前記短時間ブロックの比較対象が前記長時間ブロック候補である場合は、長時間ブロックの場合よりもしきい値としての距離を大きく設定するようにしているので、新たな話者グループを生成する際、長時間ブロックが生成されるまで、たとえば、ある１発話から取得された幾つかの短時間ブロックは、それぞれが同じ話者または話者グループと判断され易くなり、むやみに幾つもの話者または話者グループが生成されるのを防止することができる。
【００３７】
また、前記生成される話者または話者グループの最大数は予め設定可能とし、その話者または話者グループが最大数まで生成されたあとは、それ以降に取得される短時間ブロックが前記既に生成されたどの話者グループにも属さないと判断された場合は、音声特徴の最も近い話者または話者グループに属すると判断するようにしている。これによって、幾つかの話者または話者グループが予め設定されているような音声認識装置にも適用することができる。
【００３８】
また、このような音声認識方法が適用された音声認識装置は、特別な話者識別・話者グループ識別手段を用いることなく、少ない演算量、少ないメモリの使用量で、自然に話者グループを生成することができ、それぞれの話者の特徴を反映した正規化特徴ベクトルを得ることができるので、安価なハードウエアでしかも高い認識性能を有する装置とすることができる。
【００３９】
また、音声認識処理に用いる音響モデルとして、正規化された標準的な話者モデルを用いることもできるが、それぞれの話者または話者グループ対応の複数の音響モデルを用いることもできる。
【００４０】
標準的な音響モデルを用いる場合は、１つの音響もモデルで済むので、部品コストを低く抑えることができ、安価な装置とすることができるとともに、その都度、どの音響モデルを用いるかといった処理が不要となるため、演算量を削減することができる。
【００４１】
一方、それぞれの話者または話者グループ対応の音響モデルを用いる場合は、複数の音響モデルを用意する必要があるため、演算量が多少増大し、部品コストも増えるといった問題点もあるが、より高い認識性能が得られる利点がある。
【００４２】
【発明の実施の形態】
以下、本発明の実施の形態について説明する。
【００４３】
図１（ａ）はある音声波形を示すもので、このような音声波形において、たとえば、同図（ｂ）に示すように、２０msecを１つのフレームとし、それを１０msecずつシフトしてそれぞれのフレームごとに音声分析し、それぞれのフレームに対応する特徴ベクトル（ここでは１０次元のケプストラム係数でなる）を得る。
【００４４】
そして、この実施の形態では、同図（ｃ）に示すように、６４個のフレーム（６４フレームという）を１つの短時間ブロックとし、１つ１つの短時間ブロックを短時間ブロックＡ１，Ａ２，・・・で表す。そして、図１（ｄ）に示すように、同じ話者または話者グループに属する短時間ブロックＡ１，Ａ２，・・・を６４個集めたものを１つの長時間ブロックとし、これを長時間ブロックＢ１と表す。したがって、この長時間ブロックＢ１は６４個の短時間ブロックＡ１，Ａ２，・・・，Ａ６４で構成され、その合計のフレーム数は、１つの短時間ブロックのフレーム数が６４フレームであるから、６４×６４＝４０９６となる。
【００４５】
そして、短時間ブロックＡ１，Ａ２，・・・，Ａ６４においては、それぞれの短時間ブロックＡ１，Ａ２，・・・，Ａ６４が取得されるごとに、その短時間ブロックにおける全フレーム分（６４フレーム分）の特徴ベクトルの和を求め、それを記憶する。
【００４６】
たとえば、短時間ブロックＡ１においては、その短時間ブロックＡ１に属する６４フレーム分の特徴ベクトルの和（これをＣsA1とする）を求めてそれを記憶し、短時間ブロックＡ２においては、その短時間ブロックＡ２に属する６４フレーム分の特徴ベクトルの和（これをＣsA2とする）を求めてそれを記憶するというように、それぞれの短時間ブロックＡ１，Ａ２，・・・，Ａ６４ごとに、その短時間ブロックにおける全フレーム分の特徴ベクトルの和ＣsA1， ＣsA2，・・・， ＣsA64を求めて、これら短時間ブロックごとの特徴ベクトルの和ＣsA1， ＣsA2，・・・， ＣsA64を記憶させておく。
【００４７】
また、それぞれの短時間ブロックＡ１，Ａ２，・・・，Ａ６４において、それぞれの短時間ブロックごとに平均特徴ベクトルを求める。たとえば、短時間ブロックＡ１においては、その短時間ブロックＡ１で求められた特徴ベクトルの和ＣsA1をフレーム数（６４個）で割り算し、平均特徴ベクトル（これをＣmA1とする）を求め、短時間ブロックＡ２においては、その短時間ブロックＡ２で求められた特徴ベクトルの和ＣsA2をフレーム数（６４個）で割り算し、平均特徴ベクトル（これをＣmA2とする）を求めるというように、それぞれの短時間ブロックＡ１，Ａ２，・・・，Ａ６４ごとに、その短時間ブロックにおける平均特徴ベクトルＣmA1， ＣmA2，・・・， ＣmA64を求める。
【００４８】
なお、このそれぞれの短時間ブロックＡ１，Ａ２，・・・，Ａ６４ごとに求められる平均特徴ベクトルＣmA1， ＣmA2，・・・， ＣmA64は、その短時間ブロックの正規化特徴ベクトルを求める際に使用される。
【００４９】
また、この平均特徴ベクトルを求める際の割り算は、それぞれの短時間ブロックにおいて、（２）式に示したように、その特徴ベクトルの和をフレーム数で割り算するが、そのフレーム数が２のべき乗であれば、平均値を求める際の割り算がコンピュータによる演算においてはシフト演算のみで行えるので、本発明では、その除数を２のべき乗の値となるようにする。たとえば、ある１つの短時間ブロックにおける平均特徴ベクトルを求める際は、そのフレーム数でその平均特徴ベクトルを割り算することになるが、ここでは、そのフレーム数を６４としているのでその条件を満たす。
【００５０】
一方、長時間ブロックＢ１については、この場合、短時間ブロックＡ１からＡ６４までの４０９６フレームで構成されているので、その特徴ベクトルの和は４０９６フレームの特徴ベクトルの和である。したがって、現時点において短時間ブロックＡ６４までの特徴ベクトルの和が求められているとすれば、短時間ブロックＡ１からＡ６４までの４０９６フレーム分の特徴ベクトルの和が、長時間ブロックＢ１の特徴ベクトルの和ＣsB1となる。
【００５１】
そして、この長時間ブロックＢ１の平均特徴ベクトルＣmB1を求める。この長時間ブロックＢの平均特徴ベクトルＣmB1は、その長時間ブロックＢ１で求められた特徴ベクトルの和ＣsB1をフレーム数（４０９６個）で割り算することで、平均特徴ベクトルＣmB1が求められる。
【００５２】
この長時間ブロックＢ１の平均特徴ベクトルＣmB1を求める際の割り算も、そのフレーム数が２のべき乗となるように設定（この例ではフレーム数は４０９６に設定）してあるので、平均値を求める際の割り算がコンピュータによる演算においてはシフト演算のみで行える。
【００５３】
なお、この実施の形態におけるそれぞれの特徴ベクトルの和を求める計算や特徴ベクトル同志の引き算、平均特徴ベクトルを求める計算、正規化特徴ベクトルを求める計算、のちに説明する特徴ベクトル間の距離計算などはすべて、その特徴ベクトルを表すケプストラム係数の各次元ごと、すなわち、特徴ベクトルを表すケプストラム係数がたとえば０〜９次元の１０次元で構成されるとすれば、０〜９次元の各次元ごとにそれぞれの計算を行うことはいうまでもないので、ここでは、その点については特に表記しない。
【００５４】
ここで、図２に示すように、短時間ブロックＡ１〜Ａ６４までの６４個分の短時間ブロックについての正規化を求める処理はすでに終了し、それによって、１つの長時間ブロックＢ１（ある話者グループＧ１に対応しているものとする）が生成されているものとし、この長時間ブロックＢ１より後に発話されたある１発話Ｖ１の音声データに対して行われる処理について説明する。なお、この１発話Ｖ１の音声データからは、短時間ブロックＡ６５，Ａ６６，Ａ６７の３つの短時間ブロックが取得され、そのあとに６４フレームに満たない音声データが余りｅとして残るものとする。
【００５５】
この短時間ブロックＡ６５の６４フレーム分についても上述同様、この短時間ブロックＡ６５の特徴ベクトルの和ＣsA65を求めるとともに、その平均特徴ベクトルＣmA65を求める。
【００５６】
この短時間ブロックＡ６５について、その特徴ベクトルの和ＣsA65が求められ、その平均特徴ベクトルＣmA65が求められると、今度は、この短時間ブロックＡ６５における平均特徴ベクトルＣmA65のバラツキ、つまり、短時間ブロックＡ６５の音声の特徴がそれ以前の音声特徴に対してどの程度異なっているかを求める。
【００５７】
この短時間ブロックＡ６５における平均特徴ベクトルＣmA65のバラツキは、それまでに生成されているすべての話者グループに対応する長時間ブロックの平均特徴ベクトルに対する短時間ブロックＡ６５の平均特徴ベクトルＣmA65の距離を求め、その距離と予め定められたしきい値Ｄth1とを比較し、しきい値内に入っているか否かによって判断することができる。
【００５８】
なお、この図２の例ではすでに生成されている話者グループは話者グループＧ１のみとするので、この話者グループＧ１に対応する長時間ブロックＢ１の平均特徴ベクトルＣmB1に対する短時間ブロックＡ６５の平均特徴ベクトルＣmA65の距離ＤA65を求め、その距離ＤA65と予め定められたしきい値Ｄth1とを比較するによって判断する。
【００５９】
そして、このしきい値Ｄth1との比較の結果、ＤA65＜Ｄth1、すなわち、長時間ブロックＢ１の平均特徴ベクトルＣmB1に対する短時間ブロックＡ６５の平均特徴ベクトルＣmA65の距離ＤA65が、ある範囲（しきい値Ｄth1）内に収まっていれば、現時点での音声データはその直前の音声データと大きく変化していないと判断（その時点においては話者交代はなされていないと判断）し、それまでの長時間ブロックＢ１を更新する。この更新後の長時間ブロックをＢ１１で表す。
【００６０】
この更新後の長時間ブロックＢ１１は、短時間ブロックＡ２から短時間ブロックＡ６５までの６４個の短時間ブロックによって構成され、この長時間ブロックＢ１１の特徴ベクトルの和ＣsB11は、
ＣsB11 ＝ＣsB1＋ ＣsA65− ＣsA1              （３）
によって求めることができる。つまり、長時間ブロックＢ１１の特徴ベクトルの和ＣsB11は、短時間ブロックＡ１から短時間ブロックＡ６４までの６４個の短時間ブロックで構成される長時間ブロックＢ１の特徴ベクトルの和ＣsB1に、新たに求められた短時間ブロックＡ６５の特徴ベクトルの和ＣsA65を足し算して、短時間ブロックＡ１の特徴ベクトルの和ＣsA1を引き算することによって求めることができる。
【００６１】
このようにして長時間ブロックＢ１１の特徴ベクトルの和ＣsB11が求められると、この長時間ブロックＢ１１の平均特徴ベクトルＣmB11は、
ＣmB11＝ＣsB11／４０９６          （４）
によって求めることができる。
【００６２】
また、この短時間ブロックＡ６５の６４個のフレーム（これをＦ１〜Ｆ６４で表す）について、それぞれ正規化特徴ベクトルを求める。ここで、短時間ブロックＡ６５を構成する６４個のフレームＦ１〜Ｆ６４の特徴ベクトルをＣF1〜ＣF64で表し、その正規化特徴ベクトルをＣ’F1〜Ｃ’F64で表せば、これら正規化特徴ベクトルＣ’F1〜Ｃ’F64は、
【００６３】
【数２】
（５）
0003912089.tif 000003
【００６４】
によって求めることができる。
【００６５】
なお、この正規化特徴ベクトルを求める際、この（５）式では、長時間ブロックの平均特徴ベクトルとして、短時間ブロックＡ２〜Ａ６５によって計算された更新後の長時間ブロックＢ１１の平均特徴ベクトルＣmB11を用いたが、その直前に求められた長時間ブロックの平均特徴ベクトル、すなわち、短時間ブロックＡ１〜Ａ６４によって計算された更新前の長時間ブロックＢ１の平均特徴ベクトルＣmB1を用いてもよい。ただし、この実施の形態では更新後の平均特徴ベクトルを用いるものとする。
【００６６】
ところで、前述した長時間ブロックＢ１の平均特徴ベクトルＣmB1に対する短時間ブロックＡ６５の平均特徴ベクトルＣmA65の距離ＤA65が、予め定められたしきい値Ｄth1に対して、ＤA65≧Ｄth1、すなわち、長時間ブロックＢ１の平均特徴ベクトルＣmB1に対する短時間ブロックＡ６５の平均特徴ベクトルＣmA65の距離ＤA65がある範囲（しきい値Ｄth1）以上であったとすると、現時点での音声データはその直前の音声データに対して大きく変化していると判断（その時点において話者交代がなされたと判断）し、新たな話者グループＧ２を作成する。
【００６７】
このように、１つの長時間ブロック（この場合、長時間ブロックＢ１）が終了したあとの短時間ブロックＡ６５について処理がなされ、その短時間ブロックＡ６５の平均特徴ベクトルＣmA65と、長時間ブロックＢ１の平均特徴ベクトルＣmB1との距離の大きさによって、話者交代があったと判断された場合には、新たな話者グループＧ２が作成される。なお、この例では、短時間ブロックＡ６５によって新たな話者グループＧ２が生成されたとする。
【００６８】
このような新たな話者グループが作成された場合には、その新たな話者グループ（この場合、話者グループＧ２）において、４０９６フレームの新たな長時間ブロックの生成が開始され、その話者グループＧ２に属する短時間ブロックの蓄積処理と上述したような正規化処理を順次行って行くが、この新たな話者グループＧ２に属する短時間ブロックの蓄積が順次なされて行けば、その話者グループＧ２も最終的には６４個の短時間ブロックで構成される。
【００６９】
なお、６４個の短時間ブロックでなる長時間ブロックが生成されるまでの段階における１つの短時間ブロックまたは同じ話者グループに属する複数の短時間ブロックの集合を長時間ブロック候補と呼ぶことにする。したがって、ここでの例のように、短時間ブロックＡ６５によって新たな話者グループＧ２が生成されると、この短時間ブロックＡ６５は長時間ブロック候補となる。
【００７０】
ところで、このような話者交代があったと判断された短時間ブロックＡ６５に対する正規化処理は、この時点では、この短時間ブロックＡ６５は、話者交代と判断されてから１つ目の短時間ブロックであるので、その短時間ブロックＡ６５については、自身のデータを用いて正規化処理を行う。すなわち、この短時間ブロックＡ６５の平均特徴ベクトルＣmA65を用い、（５）式に準じた演算、つまり、短時間ブロックＡ６５を構成する個々のフレームの特徴ベクトルからその平均特徴ベクトルＣmA65をそれぞれ引き算することによって正規化処理を行う。
【００７１】
そして、次の６４フレーム分を短時間ブロックＡ６６とし、その短時間ブロックＡ６６の６４フレーム分についても上述同様、この短時間ブロックＡ６６の特徴ベクトルの和ＣsA65を求めるとともに、その平均特徴ベクトルＣmA66を求める。
【００７２】
この短時間ブロックＡ６６について特徴ベクトルの和ＣsA66が求められ、その平均特徴ベクトルＣmA66が求められると、今度は、この短時間ブロックＡ６６の音声の特徴がどの話者グループに属するかの話者性判断つまり話者グループ判断を行う。
【００７３】
この場合、すでに生成されている話者グループは、長時間ブロックＢ１に対応する話者グループＧ１と短時間ブロックＡ６５によって新たに作成された話者グループＧ２の２つが存在するので、この２つの話者グループＧ１，Ｇ２のそれぞれに対して話者グループ判断する。
【００７４】
なお、この話者グループ判断は、この実施の形態では、その時の短時間ブロックの平均特徴ベクトルと、比較対象となる長時間ブロック（話者グループ）の平均特徴ベクトルとの距離を求めてその距離が予め定められたしきい値より大きいか否かで判断するので、本来は、それぞれの平均特徴ベクトルや求められた距離に特定の符号（たとえば、短時間ブロックＡ６６の平均特徴ベクトルであればＣmA66など）を付すべきであるが、説明が繁雑となるので、以下では、それらの符号の表記を特に必要とする場合を除き、それらの符号は付さずに、単にそのときの短時間ブロックがその時点で作成されている話者グループ属するか否かといった表現で説明を行うものとする。
【００７５】
この場合、短時間ブロックＡ６６についての説明であるので、この短時間ブロックＡ６６が話者グループＧ１に属するか否かを判断し、続いて、短時間ブロックＡ６６が話者グループＧ２に属するか否かを判断するが、その判断の結果、短時間ブロックＡ６６は、話者グループＧ１に属し、話者グループＧ２には属さないと判断されたとする。
【００７６】
図３はそれぞれの短時間ブロックの話者性判断結果を示すもので、この図３において、話者グループに属する場合を○、属さない場合を×で表しており、この段階では、短時間ブロックＡ６５は話者グループＧ１に属さなかったために新たな話者グループＧ２が生成され、短時間ブロックＡ６６は話者グループＧ２には属さずに、話者グループＧ１に属していると判断された例が示されている。
【００７７】
なお、この話者グループ判断を行う際には、短時間ブロックＡ６６の平均特徴ベクトルと、比較対象となる話者グループＧ１，Ｇ２の平均特徴ベクトルとの距離を求めて、その距離が予め定められたしきい値より大きいか否かで判断、つまり、距離がしきい値以上であればその話者グループには属さず、しきい値未満であればその話者グループには属すると判断するが、このときに用いるしきい値の大きさ（話者グループＧ１との比較の時に用いるしきい値をＤth1、話者グループＧ２との比較に時に用いるしきい値をＤth2とする）は、それぞれ大きさを異ならせ、Ｄth1＜Ｄth2とする。
【００７８】
これは、話者グループＧ１の平均特徴ベクトルは長時間ブロックＢ１の４０９６フレーム分から得られた値であり、その程度の長さから得られた平均特徴ベクトルは、バラツキも少なく、その音声の特徴をある程度の適切に表現していると考えられるが、話者グループＧ２はこの場合、１つの短時間ブロックＡ６５のたった６４フレームから得られた平均特徴ベクトルであり、このようにきわめて少ないフレーム数から得られた平均特徴ベクトルはその音声の特徴を適切に表現しているとは言えないので、４０９６フレーム分の場合によりも、しきい値をゆるく設定することが望ましい。
【００７９】
このように、本発明では、話者グループを構成する短時間ブロック数に応じてしきい値を設定するようにしている。なお、この設定の仕方は、短時間ブロック数が幾つまでの時はどのようなしきい値とするというように、段階的に複数のしきい値を設定することが考えられる。
【００８０】
なお、この場合、ある１発話の例であるので、本来であれば、短時間ブロックＡ６６も短時間ブロックＡ６５と同じ話者グループとなる確率はきわめて高く、また、４０９６フレームの長時間ブロックが生成されるまでは、むやみに話者グループを増やさないためにも上述したようにしきい値をゆるくして、短時間ブロック数が少ないときは、なるべく、直前に生成された話者グループと同じ話者グループに入るようにしている。
【００８１】
したがって、短時間ブロックＡ６６も短時間ブロックＡ６５と同じ話者グループＧ２に属する可能性が高くなるが、ここでは、説明の都合上、敢えて短時間ブロックＡ６６は短時間ブロックＡ６５の話者グループＧ１に属さないとした例を挙げている。また、ここでは例として挙げていないが、この短時間ブロックＡ６６が話者グループＧ１，Ｇ２のいずれにも属さない場合もあり、その場合には、新たな話者グループＧ３を生成することになる。
【００８２】
このように、短時間ブロックＡ６６が長時間ブロックＢ１に対応する話者グループＧ１に属すると判定されると、この場合、前述したようにその長時間ブロックＢ１を更新する処理がなされる。
【００８３】
すなわち、その更新後の長時間ブロック（これをＢ１１で表す）の特徴ベクトルの和ＣsB11は、前述の（３）式を用い、短時間ブロックＡ１から短時間ブロックＡ６４までの６４個の短時間ブロックで構成される長時間ブロックＢ１の特徴ベクトルの和ＣsB1に、新たに求められた短時間ブロックＡ６６の特徴ベクトルの和ＣsA66を足し算して、短時間ブロックＡ１の特徴ベクトルの和ＣsA1を引き算、つまり、 ＣsB11 ＝ＣsB1＋ ＣsA66− ＣsA1によって求めることができる。また、その平均特徴ベクトルＣmB11は 、（４）式で示したように、ＣmB11＝ＣsB11／４０９６によって求めることができる。
【００８４】
また、この短時間ブロックＡ６６の正規化処理は、その更新後の長時間ブロックＢ２の平均特徴ベクトルＣmB11を用いて、（５）式に準じた演算を行えばよく、それによって、短時間ブロックＡ６６の個々のフレームの正規化特徴ベクトルを求めることができる。
【００８５】
次に、この短時間ブロックＡ６６に続く、６４フレーム分を短時間ブロックＡ６７とし、その短時間ブロックＡ６７の６４フレーム分についても上述同様、この短時間ブロックＡ６７の特徴ベクトルの和を求めるとともに、その平均特徴ベクトルを求める。
【００８６】
この短時間ブロックＡ６７について特徴ベクトルの和が求められ、その平均特徴ベクトルが求められると、今度は、この短時間ブロックＡ６７の音声の特徴がすでに生成されている話者グループに対してどの程度異なっているかを求める。
【００８７】
この場合も、すでに生成されている話者グループは、長時間ブロックＢ１に対応する話者グループＧ１と短時間ブロックＡ６５によって新たに作成された話者グループＧ２の２つが存在するので、この２つの話者グループＧ１，Ｇ２のそれぞれに対して話者グループ判断する。
【００８８】
この場合、上述したように、短時間ブロックＡ６７が話者グループＧ１に属するか否かを判断し、続いて、短時間ブロックＡ６７が話者グループＧ２に属するか否かを判断するが、その結果、短時間ブロックＡ６７は話者グループＧ２に属し、話者グループＧ１には属さないと判断されたとする（図３参照）。なお、これらの話者グループのいずれにも属さない場合には新たな話者グループＧ３を生成する。
【００８９】
このように、この短時間ブロックＡ６７が、短時間ブロックＡ６５により新たに生成された話者グループＧ２に属すると判定されると、この場合、短時間ブロックＡ６５（話者グループＧ２における長時間ブロック候補）の更新を行う。この場合の更新処理は、短時間ブロックＡ６５と短時間ブロックＡ６７の特徴ベクトルの和を求めるとともにその平均特徴ベクトルを求める。そして、この段階では、この短時間ブロックＡ６５と短時間ブロックＡ６７がこの話者グループＧ２の長時間ブロック候補となる。
【００９０】
このようにして、以降、同じ話者グループＧ２と判定される短時間ブロックが順次蓄積されて行くことで、新たな６４の短時間ブロック（４０９６フレーム）でなる話者グループＧ２の長時間ブロックが生成される。
【００９１】
また、この短時間ブロックＡ６７の正規化処理は、短時間ブロックＡ６６と短時間ブロックＡ６７でなる２つの短時間ブロックの特徴ベクトルの和を求め、その平均特徴ベクトルを求めて、その平均特徴ベクトルを用いて、（５）式に準じた演算をえばよく、それによって、短時間ブロックＡ６７の個々のフレームの正規化特徴ベクトルを求めることができる。
【００９２】
以上のようにして、図２に示す１発話Ｖ１分の６４フレームごとの処理（短時間ブロックＡ６５，Ａ６６，Ａ６７ごとの処理）が終了するが、１発話Ｖ１分の音声データとしては、この図２に示す余りｅが残る。
【００９３】
この余りｅは１つの短時間ブロック（６４フレーム分）を生成するにはフレーム数が不足している部分である。したがって、この余りｅについては、その直前の短時間ブロック（図２の例では、短時間ブロックＡ６７）における正規化特徴ベクトルの計算に用いた平均特徴ベクトルを用いて、余りｅの音声区間の正規化特徴ベクトルを計算する。この余りｅの部分は、長時間ブロックの平均特徴ベクトルの計算には用いない方法と、次に入力される音声データに加えて１つの短時間ブロックを形成し、長時間ブロックの計算に用いる場合とがある。
【００９４】
以上のようにして、ある長時間ブロックＢ１が生成されたあと、ある１発話Ｖ１分の音声データが入力された場合の処理がなされる。この例では、図３に示したように、短時間ブロックＡ６５によって新たな話者グループＧ２が生成され、次の短時間ブロックＡ６６は長時間ブロックＢ１に対応する話者グループＧ１に属すると判定され、それによって、その長時間ブロックＢ１の更新を行い、さらに、次の短時間ブロックＡ６７は短時間ブロックＡ６５によって生成された話者グループＧ２に属すると判定された例である。
【００９５】
そして、次の１発話Ｖ２に対する音声データが入力されると、先の１発話Ｖ１の場合と同様の処理、すなわち、その１発話Ｖ２から取得された個々の短時間ブロックがすでに生成されているある１つの話者グループに属すると判定された場合には、その話者グループに対応してその時点で生成されている長時間ブロック（または長時間ブロック候補）の更新を行い、どの話者グループのいずれにも属さないと判定された場合には、新たな話者グループを生成する処理がなされる。
【００９６】
また、それぞれの短時間ブロックにおける正規化特徴ベクトルの生成は、当該短時間ブロックがすでに生成されている話者グループに属すると判定された場合には、その話者グループに対応してその時点で生成されている長時間ブロックまたは長時間ブロック候補の更新後の平均特徴ベクトルを用いて正規化し、当該短時間ブロックがすでに生成されている話者グループのいずれにも属さないと判定された場合には、その短時間ブロックの平均特徴ベクトルを用いて正規化する。
【００９７】
入力される音声データに対し、上述したような処理を順次行うことによって、新たに生成された話者グループ（上述の例では話者グループＧ２）は、順次、短時間ブロックが蓄積されて行き、その数が６４個に達すると新たな長時間ブロックが生成される。
【００９８】
また、すでに生成されている話者グループＧ１に対応する長時間ブロックＢ１は、その話者グループＧ１に属する短時間ブロックが存在するごとに、その長時間ブロックＢ１はそのときの短時間ブロックにより更新されて行く。
【００９９】
そして、それぞれの短時間ブロックごとに上述したような正規化特徴ベクトルが算出され、その正規化特徴ベクトルが音声認識部に渡されて音声認識処理がなされる。
【０１００】
図４は上述した処理、すなわち、入力された音声データについて１つの短時間ブロックごとに逐次的な処理を行うことで、正規化特徴ベクトルを求めてそれを音声認識処理部に渡すまでの処理手順を説明するフローチャートである。なお、具体的な説明はすでになされているので、ここでは全体的な処理手順について説明するにとどめる。
【０１０１】
まず、入力された音声データの６４フレーム分が短時間ブロックとして取得されると、その短時間ブロックと、すでに生成されている全ての話者グループとの比較を行う（ステップｓ１）。この処理は、その短時間ブロックの特徴ベクトルの和とその平均特徴ベクトルを計算し、その平均特徴ベクトルとすでに生成されている全ての話者グループの平均特徴ベクトルの距離計算を行い、その距離を予め設定されたしきい値と比較する処理であり、その比較の結果、その短時間ブロックがグループのどれかに属するか否かを判断する（ステップｓ２）。
【０１０２】
この話者グループ判断によって、当該短時間ブロックがすでに生成されている全ての話者グループのいずれにも属さないと判定された場合には、新たな話者グループを作成し（ステップｓ３）、その短時間ブロックを長時間ブロック候補として、その長時間ブロック候補としての短時間ブロックの特徴ベクトルの和と平均特徴ベクトルを得る。そして、その短時間ブロックについて正規化処理を行い（ステップｓ４）、各フレームごとの正規化特徴ベクトルを得て、その正規化特徴ベクトルを音声認識処理部に渡す（ステップｓ５）。
【０１０３】
一方、ステップｓ２における判断（すでに生成されている全ての話者グループのいずれかに属するかの判断）の結果、すでに生成されている全ての話者グループのいずれかに属すると判定された場合には、そのときの短時間ブロックがその時点で生成されている話者グループのどれに属するかの判断、つまり話者グループ選択を行う（ステップｓ６）。
【０１０４】
この話者グループ選択は、たとえば、その時点において、複数の話者グループが生成されている場合、その複数の話者グループからいずれか１つの話者グループを選択する処理である。
【０１０５】
この場合、その短時間ブロックがこれら複数の話者グループのどれか１つの話者グループのみに属する場合と、幾つかの話者グループ（すべての話者グループの場合も含む）に属する場合が考えられる。
【０１０６】
ここで、ある１つの話者グループのみに属すると判断された場合には、その話者グループが選択されるが、もし、複数の話者グループに属すると判断された場合には、（ａ）時間的に最も近い話者グループ、（ｂ）最も長い長時間ブロックが生成されている話者グループ、（ｃ）平均特徴ベクトル間の距離が最も近い話者グループのいずれかを選択するといった選択基準を予め設定しておき、その設定された選択基準によっていずれかの話者グループを選する。なお、（ｂ）や（ｃ）において、長さが同じあるいは距離が同じである場合には、（ａ）の判断基準を用いるといったことも決めておく。
【０１０７】
たとえば、複数の話者グループに属する場合には、（ａ）の選択基準を用いるとの設定がなされていたとすれば、その短時間ブロックに時間的に最も近い話者グループが選択され、その選択された話者グループに対応する長時間ブロックまたは長時間ブロック候補を更新、つまり、その話者グループに対応する長時間ブロックまたは長時間ブロック候補の特徴ベクトルの和と平均特徴ベクトルを更新する（ステップｓ７）。なお、この更新処理についてはすでに説明したのでここではその説明は省略する。
【０１０８】
この長時間ブロック候補の更新処理が終了すると、ステップｓ４の処理、すなわち、その長時間ブロック候補を構成する短時間ブロックについて正規化処理を行い、各フレームごとの正規化を得る。この正規化処理は、選択された話者グループの平均特徴ベクトル（この実施の形態では更新後の平均特徴ベクトル）を用いて行うが、この正規化処理についてもすでに説明したのでここではその説明は省略する。
【０１０９】
以上の処理をそれぞれの短時間ブロックごとに行う。図３で示した例では、短時間ブロックＡ６５は、すでに生成されている話者グループＧ１に属さないので、新たな話者グループＧ２を生成し（ステップｓ２，ｓ３）、自身のデータを用いて正規化特徴ベクトルの生成処理を行ったのち、その正規化特徴ベクトルを音声認識処理部に渡す（ステップｓ４，ｓ５）。
【０１１０】
また、短時間ブロックＡ６６は、すでに生成されている話者グループＧ１に属しているので、どの話者グループに属しているかの話者グループ選択（この場合は話者グループＧ１のみに属しているので話者グループＧ１を選択）を行い（ステップｓ６）、その話者グループＧ１の更新を行う（ステップｓ７）。そして、その話者グループＧ１の平均特徴ベクトル（更新後の平均特徴ベクトル）を用いて正規化処理を行ったのち、その正規化特徴ベクトルを音声認識処理部に渡す（ステップｓ４，ｓ５）。
【０１１１】
また、短時間ブロックＡ６７は、短時間ブロックＡ６５によって生成された話者グループＧ２（この話者グループＧ２はこの時点ではすでに生成された話者グループとなる）に属しているので、どの話者グループに属しているかの話者グループ選択（この場合は話者グループＧ２のみに属しているので話者グループＧ２を選択）を行い（ステップｓ６）、その話者グループＧ２の更新を行う（ステップｓ７）。なお、話者グループＧ２の更新は、この時点では、まだ６４個の短時間ブロックが蓄積される前であるので、短時間ブロックＡ６５とＡ６７でなる長時間ブロック候補の特徴ベクトルの和を求め、その平均特徴ベクトルを求める処理である。
【０１１２】
そして、その話者グループＧ２（、短時間ブロックＡ６５とＡ６７でなる長時間ブロック候補）の平均特徴ベクトル（更新後の平均特徴ベクトル）を用いて、正規化処理を行ったのち、その正規化特徴ベクトルを音声認識処理部に渡す（ステップｓ４，ｓ５）。
【０１１３】
この図４のフローチャートで説明したような逐次的な処理、すなわち、入力された音声データに対し、短時間ブロックを順次取得し、取得された短時間ブロックを逐次的に処理して個々の短時間ブロックの正規化特徴ベクトルを求める方法は、音声区間のつながりなどを意識することなく、入力された音声データに対して逐次的に処理していけばよいので、処理が単純であり、また、保持するデータ量を少なくすることができ、より高速な処理が可能となるなどの利点がある。
【０１１４】
ところで、これまでの説明では、入力されたある１発話分の音声データから短時間ブロックを取得し、その取得した短時間ブロックについて話者グループ判断し、その話者グループ判断結果に基づいて、新たな話者グループ生成や、すでに生成されている話者グループの更新を行うと言うように、個々の短時間ブロックを逐次的に処理する例であったが、１発話から取得される個々の短時間ブロックについての話者グループ判断を行ったあとに、その話者グループ判断が、話者グループの統一性がなく１発話の話者グループとして矛盾が生じた場合には、その１発話分全体の音声データの平均特徴ベクトルを用いて、その１発話分の音声データがどの話者グループに属するかを判断するようにしてもよい。
【０１１５】
これは、１発話は本来一人の話者の発話であると考えれば、図２の例における１発話Ｖ１における短時間ブロックＡ６５，Ａ６６，Ａ６７は、同じ話者グループに属するのが妥当であるが、上述したように、個々の短時間ブロックにおける話者グループ判断の結果、短時間ブロックＡ６６のみが、異なった話者グループに属したり（図３参照）、さらに、前述の例で挙げなかったが、短時間ブロックＡ６５が話者グループＧ２、短時間ブロックＡ６５が話者グループＧ１、短時間ブロックＡ６７がそのどちらにも属さないといった場合など、１発話としては本来起こりにくい様々な矛盾が生じる場合もある。
【０１１６】
このような場合、１発話の終了を待って、その１発話分の平均特徴ベクトルを求め、その１発話分の平均特徴ベクトルとすでに生成されている話者グループに対応する長時間ブロックまたは長時間ブロック候補の平均特徴ベクトルとを比較する。
【０１１７】
たとえば、図２の例で説明すると、１発話Ｖ１の終了を待って、その１発話Ｖ１全体の平均特徴ベクトルを求め、その１発話Ｖ１全体の平均特徴ベクトルと話者グループＧ１に対応する長時間ブロックＢ１の平均特徴ベクトルとを比較し、その結果、その１発話Ｖ１の音声データが話者グループＧ１に属すると判断されれば、話者グループＧ１の長時間ブロックＢ１の更新を行い、その１発話Ｖ１の音声データが話者グループＧ１に属ないと判断されれば、その１発話Ｖ１全体の音声データによって新たな話者グループＧ２を生成する。
【０１１８】
なお、その１発話Ｖ１の音声データが話者グループＧ１に属すると判断された場合、その話者グループＧ１の長時間ブロックＢ１の更新を行う際、それぞれの短時間ブロックＡ６５，Ａ６６，Ａ６７において、話者グループＧ１に属さないと判定された短時間ブロック（上述の例では短時間ブロックＡ６５，Ａ６７）は長時間ブロックＢ１の更新には用いないようにすることも可能であるが、その短時間ブロックＡ６５，Ａ６７を長時間ブロックＢ１の更新に積極的に用いることも可能である。
【０１１９】
このように、その話者グループＧ１に属さない短時間ブロックをその話者グループＧ１の長時間ブロックＢの更新処理に使用しない利点としては、その話者グループＧ１に属さない短時間ブロックの音声データが突発的なノイズの影響を受けた音声データ（たとえば、それまでとは急激に異なった発話の仕方をした音声データや、背景ノイズが急激に変化した場合の音声データ）である可能性もあり、そのような場合は、その突発的な影響を話者グループＧ１に対応する長時間ブロックＢ１のデータ（平均特徴ベクトル）に及ぼさないようにすることができる。すなわち、突発的なノイズなどによる影響を排除できる利点がある。
【０１２０】
これに対して、その話者グループＧ１に属さない短時間ブロックＡ６５，Ａ６７を更新処理に積極的に使用する利点としては、同じ話者が徐々に話し方が変わってきたり、あるいは同じ話者グループであっても、急に話者が変わった場合など、その場の状況の変化に適応的に対応することができるといった利点がある。
【０１２１】
また、１発話Ｖ１を構成する複数の短時間ブロックが話者グループＧ１に属さないと判定された場合、その１発話Ｖ１分を構成する複数の短時間ブロックのなかに、仮に話者グループＧ１に属すると判定された短時間ブロック（図３の例では短時間ブロックＡ６６）が存在したとしても、その１発話はその話者グループＧ１に属さないとするので、その短時間ブロックＡ６６は当該話者グループＧ１の更新には使用しないようにする。
【０１２２】
図５は上述した処理、すなわち、入力された音声データについて１発話を待って話者グループ判断を行う場合の処理手順を説明するフローチャートである。その具体的な説明はすでになされているので、ここでは全体的な処理手順を説明するにとどめる。
【０１２３】
入力された音声データについて、１発話分の個々の短時間ブロックについて特徴ベクトルの和と平均特徴ベクトルを求め、個々の短時間ブロックがどの話者グループに属しているかの判断を行う話者グループ判断が終了したか否かを判断し（ステップｓ１１）、終了していなければ、音声データから短時間ブロックを取得してその取得した短時間ブロックについて、特徴ベクトルの和と平均特徴ベクトルを求めて話者グループ判断を行い（ステプｓ１２）、ステップｓ１１に戻って１発話分について終了したか否かを判断する処理を繰り返す。
【０１２４】
そして、１発話分の音声データについての話者グループ判断処理が終了したと判断されると、その１発話から取得された個々の短時間ブロックにおける話者グループ判断結果が、１発話としての統一性があるか否かを判断する（ステップｓ１３）。
【０１２５】
この統一性判断の結果、話者グループ判断に１発話としての統一性がとれていると判断されれば、その時の話者グループ判断結果に基づき、その１発話分の音声データがすでに生成されている話者グループのどれかに属する場合は、その話者グループの長時間ブロックまたは長時間ブロック候補の更新を行い、その１発話分の音声データがすべての話者グループのいずれにも属さない場合は、新たな話者グループ生成を行う（ステップｓ１４）。そして、その１発話に属する個々の短時間ブロックについて正規化処理を行い（ステップｓ１５）、各フレームごとの正規化特徴ベクトルを得て、その正規化特徴ベクトルを音声認識処理部に渡す（ステップｓ１６）。なお、この正規化処理についてはすでに説明したのでここではその説明は省略する。
【０１２６】
一方、ステップｓ１３の判断が１発話としての統一性がとれていないと判断された場合には、その１発話分から取得された複数の短時間ブロック全体の平均特徴ベクトルを計算し（ステップｓ１７）、その１発話分の平均特徴ベクトルを用いて、すでに生成されているすべての話者グループとの比較を行い（ステップｓ１８）、その比較の結果、その１発話分の音声データがすでに生成されているすべての話者グループのどれかに属するか否かを判断する（ステップｓ１９）。
【０１２７】
この判断によって、当該１発話分の音声データがグループのいずれにも属さないと判定された場合には、新たな話者グループを作成し、それを長時間ブロック候補として、その長時間ブロック候補（その１発話に属する個々の短時間ブロック）の特徴ベクトルの和と平均特徴ベクトルを得る（ステップｓ２０）。そして、その１発話分の個々の短時間ブロックについて正規化処理を行い（ステップｓ１５）、各フレームごとの正規化特徴ベクトルを得て、その正規化特徴ベクトルを音声認識処理部に渡す（ステップｓ１６）。
【０１２８】
一方、ステップｓ１９における判定の結果、すでに生成されているすべての話者グループのどれかに属すると判定された場合には、そのときの１発話分の短時間ブロックがその時点で生成されている話者グループのどれに属するかの判断、つまり話者グループ選択を行う（ステップｓ２１）。この話者グループ選択は、図４のステップｓ６と同様に行うことができるので、ここではその説明は省略する。
【０１２９】
そして、たとえば、複数の話者グループに属する場合、前述した（ａ）の選択基準が設定されていたとすれば、その短時間ブロックに対して、時間的に最も近い話者グループが選択され、その話者グループに対応する長時間ブロックを更新、つまり、その話者グループに対応する長時間ブロックの特徴ベクトルの和と平均特徴ベクトルを更新する（ステップｓ２２）。
【０１３０】
なお、このステップｓ２２における更新処理やステップｓ１４における更新処理については、すでに説明したので、ここではその説明は省略する。そして、ステップｓ１５の処理、すなわち、その１発話分の個々の短時間ブロックについて正規化処理を行い、各フレームごとの正規化特徴ベクトルを得る。この正規化処理は、この実施の形態では、選択された話者グループの更新後の平均特徴ベクトルを用いて行う。
【０１３１】
この図５に示す方法は、１発話ごとにその１発話がどの話者グループに属するかを判断し、その判断結果に基づいた正規化特徴ベクトルを求めるようにしているので、図４で示した逐次的な処理に比べると、保持するデータ量がやや多くなり、また、処理時間もやや増えるが、より適正な話者グループ判断を行うことができ、より高い認識率を得ることができる。
【０１３２】
以上説明したようにこの実施の形態によれば、音声データから取得された短時間ブロックの平均特徴ベクトルと、すでに生成されているすべての話者グループに対応する長時間ブロックまたは長時間ブロック候補の平均特徴ベクトルとの比較を行い、そのすべての話者グループのいずれにも属さない場合には、新たな話者グループを作成し、すべての話者グループの少なくとも１つに属す場合は、いずれかの話者グループを選択し、その選択された話者グループに対応する長時間ブロックまたは長時間ブロック候補を更新して行くことで、それぞれの話者の特徴を反映した話者グループが自動的に生成されて行き、それぞれの話者グループにおける正規化特徴ベクトルが生成されるので、それぞれの話者の特徴を反映した音声認識がなされる。
【０１３３】
また、短時間ブロックの平均特徴ベクトルとすでに生成されている話者グループとの比較は、簡単な距離計算によって行っているので、繁雑な話者識別処理や話者グループ識別処理を行うことなく、簡単に話者交代に対応できる。
【０１３４】
なお、前述した処理を行うに際して、予め複数の話者グループ（たとえば、男性話者グループ、女性話者グループ、子供話者グループなど）の長時間ブロックから得られた特徴ベクトルの和と平均特徴ベクトルを初期値として持つようにしてもよい。
【０１３５】
ところで、これまでの説明は短時間ブロックＡ１から短時間ブロックＡ６４までの処理（それぞれの短時間ブロックの正規化を求める処理を含む）は、すでに終了し、かつ、その６４個の短時間ブロックによって、ある一つの話者グループＧ１（長時間ブロックＢ１）が生成されているものとして、短時間ブロックＡ６４より後に発話されたある１発話分の音声データに対する処理について説明したが、全く新規に音声データが入力された場合、つまり、話者グループが全く存在しない場合についてを図６を参照しながら以下に説明する。なお、ここでは、図４のフローチャートに示した逐次的に処理する方法で説明する。
【０１３６】
図６（ａ）は入力された音声波形であり、このような音声波形から時間軸ｔに沿って、同図（ｂ）に示すように、６４フレームごとの短時間ブロックＡ１，Ａ２，Ａ３，・・・を順次取得し、取得した短時間ブロックごとに図４のフローチャートで説明した手順で処理を行う。
【０１３７】
まず、短時間ブロックＡ１が取得され、その短時間ブロックＡ１の特徴ベクトルの和と平均特徴ベクトルの和を求め、その短時間ブロックＡ１がすでに生成されているすべての話者グループの中のどの話者グループに属するかを判定するが、このとき、まだ話者グループは１つも生成されていないので、図６（ｃ）に示すように、この短時間ブロックＡ１を新たな話者グループＧ１とし、その特徴ベクトルの和と必要に応じて平均特徴ベクトルを保存する。また、この短時間ブロックＡ１の正規化処理は、その特徴ベクトルの和と平均特徴ベクトルを用いて行い、その結果を音声認識部に渡す。なお、この時点では、短時間ブロックＡ１は話者グループＧ１における長時間ブロック候補となる。
【０１３８】
次に、短時間ブロックＡ２が取得され、その短時間ブロックＡ２の特徴ベクトルの和と平均特徴ベクトルの和を求め、その短時間ブロックＡ２がすでに生成されているすべての話者グループの中のどの話者グループに属するかを判定するが、このとき、すでに生成されている話者グループとしては、短時間ブロックＡ１により生成された話者グループＧ１のみであるので、この話者グループＧ１に属するか否かを判断する。
【０１３９】
ここで、この話者グループＧ１に属すると判断された場合には、この話者グループＧ１を更新（この場合、短時間ブロックＡ１の特徴ベクトルの和に短時間ブロックＡ２の特徴ベクトルの和を足し算し、その平均特徴ベクトルを求める）し、それを長時間ブロック候補とし、その長時間ブロック候補の平均特徴ベクトルを用いて当該短時間ブロックＡ２を正規化処理する。
【０１４０】
一方、話者グループＧ１に属さないと判断された場合には、この短時間ブロックＡ２を新たな話者グループＧ２とし、その特徴ベクトルの和と必要に応じて平均特徴ベクトルを保存する。また、この場合、この短時間ブロックＡ１の正規化処理は、自身の特徴ベクトルの和と平均特徴ベクトルを用いて行い、その結果を音声認識部に渡す。なお、ここでは、この短時間ブロックＡ２により新たな話者グループＧ２が生成されたとする。なお、この時点では、短時間ブロックＡ２は話者グループＧ２における長時間ブロック候補となる。
【０１４１】
そして次に、短時間ブロックＡ３が取得され、その短時間ブロックＡ３の特徴ベクトルの和と平均特徴ベクトルの和を求め、その短時間ブロックＡ３がすでに生成されているすべての話者グループの中のどの話者グループに属するかを判定するが、このとき、すでに生成されている話者グループは、短時間ブロックＡ１により生成された話者グループＧ１と短時間ブロックＡ２により生成された話者グループＧ２であるので、これら話者グループＧ１，Ｇ２の両方に対して話者グループ判断を行う。
【０１４２】
ここで、もし、両方に属すると判断された場合には、その選択基準が前述した（ａ）の設定、つまり、より時間的に近い話者グループを選択すると設定されていたとすれば、この場合、より時間的に近い話者グループＧ１に属すると判断される。また、両方に属さなければ、新たな話者グループが生成されるが、ここでは、話者グループＧ１に属すると判定されたとする。これによって、話者グループＧ１の更新、つまり、短時間ブロックＡ１の更新がなされ、それによって、この時点では、短時間ブロックＡ１と短時間ブロックＡ３とが話者グループＧ１における長時間ブロック候補となる。そして、この短時間ブロックＡ３の正規化処理は、この場合、短時間ブロックＡ１と短時間ブロックＡ３でなる長時間ブロック候補の平均特徴ベクトルを用いて行い、その正規化された音声特徴ベクトルを音声認識処理部に渡す。
【０１４３】
そして次に、短時間ブロックＡ４が取得され、その短時間ブロックＡ４の特徴ベクトルの和と平均特徴ベクトルの和を求め、その短時間ブロックＡ４がすでに生成されているすべての話者グループの中のどの話者グループに属するかを判定するが、このとき、すでに生成されている話者グループは、短時間ブロックＡ１，Ａ３でなる話者グループＧ１と短時間ブロックＡ２でなる話者グループＧ２であるので、これら話者グループＧ１，Ｇ２の両方に対して話者グループ判断を行う。ここでは、この短時間ブロックＡ４は話者グループＧ１に属すると判定されたとする。
【０１４４】
これによって、話者グループＧ１は短時間ブロックＡ１，Ａ３，Ａ４の３つが蓄積されたことになる。なお、この時点では、これら短時間ブロックＡ１，Ａ３，Ａ４が話者グループＧ１における長時間ブロック候補となる。なお、この３個の短時間ブロックＡ１，Ａ３，Ａ４による長時間ブロック候補のフレーム数は、６４×３＝１９２となり、２のべき乗の値ではないので、この短時間ブロックＡ４の正規化は、この場合、自身の特徴ベクトル（６４フレーム分）と同じ話者グループに属する１つ前の短時間ブロックＡ３の特徴ベクトル（６４フレーム分）の合計１２８フレーム分の特徴ベクトルの和を求めて、その平均の特徴ベクトルを求め、その求められた平均特徴ベクトルを用いて行う。なお、この場合、短時間ブロックＡ１，Ａ３，Ａ４でなる長時間ブロック候補の特徴ベクトルの和は保存しておき、以降の処理に用いる。
【０１４５】
この短時間ブロックＡ４のように、自身の短時間ブロックを含めた長時間ブロック候補のフレーム数が２のべき乗の値とならない場合の処理について、さらに、別な例を用いそれを図７により説明する。
【０１４６】
図７に示すように、４０９６フレームの長時間ブロックが生成されるまでの段階において、時間軸ｔに沿って、たとえば、４個の短時間ブロックＡａからＡｄの４個の短時間ブロックによる長時間ブロック候補（これをｂ１とする）が生成されている状態で、次の短時間ブロックＡｅが取得され、その短時間ブロックＡｅを加えた５個の短時間ブロックによる長時間ブロック候補ｂ２が生成されたとすると、その長時間ブロック候補ｂ２のフレーム数は、この場合、６４×５＝３２０となって、２のべき乗とならない。
【０１４７】
このような場合、短時間ブロックＡｅを正規化を計算する際に用いる平均特徴ベクトルは、短時間ブロックＡｅ以前に存在する短時間ブロックＡａからＡｅのうち、その長時間ブロック候補ｂ２において取り得る２のべき乗の最大数の短時間ブロック（この場合は短時間ブロックＡｂからＡｅの４個）の特徴ベクトルの和を求めて、その特徴ベクトルの和を、この４個の短時間ブロックＡ２〜Ａ５の合計のフレーム数（６４×４＝２５６）で割り算して求め、このようにして求められた平均特徴ベクトルを用いて短時間ブロックＡｅの正規化を行う。
【０１４８】
この図７では、自身の短時間ブロックを含めた長時間ブロック候補のフレーム数、つまり、長時間ブロック候補における短時間ブロック数が２のべき乗の値とならない場合として、その長時間ブロック候補における短時間ブロック数が５個目の場合を例にとって説明したが、それ以外の短時間ブロック数、たとえば、短時間ブロック数が３個目、６個目、７個目、９個目など、長時間ブロック候補における短時間ブロック数が２のべき乗の値とならない場合は、すべてこの図７によって説明した処理に準じた処理がなされる。
【０１４９】
図６に説明が戻って、短時間ブロックＡ４の次の短時間ブロックＡ５が取得されたとする。そして、その短時間ブロックＡ５の特徴ベクトルの和と平均特徴ベクトルの和を求め、その短時間ブロックＡ５がすでに生成されているすべての話者グループの中のどの話者グループに属するかを判定する。
【０１５０】
このとき、すでに生成されている話者グループは短時間ブロックＡ１，Ａ３，Ａ４でなる話者グループＧ１と短時間ブロックＡ２でなる話者グループＧ２であるので、ここでも、これら話者グループＧ１，Ｇ２の両方に対して話者グループ判断を行うが、この場合、話者グループＧ１に属すると判定されたとする。これによって、話者グループＧ１は短時間ブロックが短時間ブロックＡ１，Ａ３，Ａ４，Ａ５の４個蓄積されたことになり、この時点においては、これら短時間ブロックＡ１，Ａ３，Ａ４，Ａ５が話者グループＧ１の長時間ブロック候補となる。
【０１５１】
なお、この場合、これら４個の短時間ブロックＡ１，Ａ３，Ａ４，Ａ５による長時間ブロック候補のフレーム数は、６４×４＝２５６となり、２のべき乗の値となるので、この短時間ブロックＡ５の正規化処理は、短時間ブロックＡ１，Ａ３，Ａ４，Ａ５の平均特徴ベクトルを求め、その平均特徴ベクトルを用いて行い、その正規化された音声特徴ベクトルを音声認識処理部に渡す。
【０１５２】
なお、このように、複数の話者グループのどれに属するかを判断する際、前述したように、距離が予め設定されたしきい値以上か否かで判断するが、そのしきい値の大きさは、話者グループの長さ（蓄積された短時間ブロック数）によって異ならせるようにしている。たとえば、短時間ブロックＡ５が話者グループＧ１と話者グループＧ２との間で話者グループ判断を行う際、そのしきい値は、この場合、話者グループＧ２の方が話者グループＧ１よりも長さが長いので、しきい値としての距離を小さく設定し、より厳しい距離比較を行うようにする。
【０１５３】
以上のような処理を繰り返し行うことにより、幾つかの話者グループ（ここでは説明を簡素化するために話者グループＧ１と話者グループＧ２の２つのみとしている）が生成され、それぞれの話者グループごとに、短時間ブロックが蓄積されて行き、たとえば、話者グループＧ１において４０９６フレーム分（６４個の短時間ブロック）が蓄積されると、それを前述したように話者グループＧ１に対応する長時間ブロック（図２では長時間ブロックＢ１）としている。話者グループＧ２についても同様に、４０９６フレーム分（６４個の短時間ブロック）が蓄積されると、それを話者グループＧ２に対応する長時間ブロックとする。
【０１５４】
なお、この図６を用いた説明は、話者グループが全く存在しない場合の処理手順として説明したが、図２で説明したように、ある話者グループが生成されたあとの処理も、この図６で説明したと同様な処理がなされることは勿論である。
【０１５５】
ところで、新たな話者グループを生成する場合、話者グループ数には一定の制限を設けることも可能であり、その場合、その最大グループ数を予め設定しておく。たとえば、音声認識装置における音響モデルとして成人男性の話者グループ、成人女性の話者グループ、子供用の話者グループが用意されているシステムにおいては話者グループ数の最大値は３である。
【０１５６】
このように、話者グループの最大値が予め幾つか決められている場合には、話者グループ数がその最大数まで生成されたあと、入力音声から取得された短時間ブロックがそのどの話者グループに属さないと判定された場合には、その短時間ブロックに対しては、すでに生成されている幾つかの話者グループのうち、最も近い話者グループに属すると判断する。
【０１５７】
なお、このように、どの話者グループにも属さない短時間ブロックが存在し、それをグループのうちの最も近い話者グループに属するようにした場合、その短時間ブロックは、その最も近い話者グループの長時間ブロックの更新に用いない場合と更新に用いる場合のいずれかが考えられ、いずれの場合でもそれぞれ利点がある。
【０１５８】
更新に使用しない場合の利点としてはノイズなど突発的な影響を排除できることであり、また、更新に使用する場合の利点としては、同じ話者が徐々に話し方が変わってきたりあるいは同じ話者グループであっても話者が変わった場合など、その場の状況の変化に適応的に対応できることである。
【０１５９】
図８は本発明の音声認識装置の構成を簡単に示す図であり、音声を入力する音声入力手段としてのマイクロホン１、入力された音声信号を増幅したりＡ／Ｄ変換する音声信号処理部２、この音声信号処理部２で処理された音声信号を所定時間ごとに音声分析し、たとえば、１０次元のなどの特徴ベクトル列を出力する音声分析部３、この音声分析部３で得られた特徴ベクトルを前述した処理方法によって正規化する特徴ベクトル正規化処理部４、この特徴ベクトル平均正規化処理部４で正規化された正規化特徴ベクトル（正規化ケプストラム係数）を入力し、正規化された標準的な音響モデル５を用いて音声認識処理する音声認識処理部６などを有している。
【０１６０】
特徴ベクトル平均正規化処理部４は、特徴ベクトルを正規化する処理を行うもので、その処理については図１〜図７を参照しながらすでに詳細に説明したのでここでは省略する。
【０１６１】
この特徴ベクトル平均正規化処理部４で得られた正規化特徴ベクトルは、それぞれの話者グループ対応に正規化されており、その正規化特徴ベクトルが音声認識処理部６に送られ、音響モデル５を用いた音声認識処理がなされて、その認識結果が出力される。
【０１６２】
このように、本発明の音声認識装置は、特別な話者識別・話者グループ識別手段を持つことなく簡単な手法で、それぞれの話者の特徴を反映した正規化特徴ベクトルを得て、その正規化特徴ベクトルを用いた音声認識処理を行うことができる。
【０１６３】
なお、図８の例では、音声認識に用いる音響モデル５としては、正規化された標準的な音響モデル５を用いたが、予め幾つかの話者グループが設定されているような場合、それぞれの話者グループ対応の音響モデルを持ち、特徴ベクトル平均正規化処理部４からは正規化特徴ベクトルとともに、これらの話者グループに対応する話者グループ情報を音声認識処理部６に渡すことによって、音声認識処理部６では、その話者グループ情報に対応する音響モデルを用いて音声認識処理することもでき、これによって、認識率をより高めることができる。
【０１６４】
たとえば、話者グループを男性、女性、子供の３つのグループとし、図９に示すように、それに対応した音響モデル（男性用音響モデル５ａ、女性用音響モデル５ｂ、子供用音響モデル５ｃ）を用意し、特徴ベクトル平均正規化処理部４で生成される話者グループ数もこの３つを最大数、つまり、生成可能な話者グループ数は、男性話者グループ、女性話者グループ、子供話者グループの３つだけとしてもよい。
【０１６５】
その場合、音声データから取得される短時間ブロックが、前述したように、この３つの話者グループのどれかに属するかを判定し、どれにも属さない場合には、最も近い話者グループに属するようにして、その時点における正規化特徴ベクトルを求め、その正規化特徴ベクトルとどの話者グループに属するかを示す話者グループ情報を音声認識処理部６に渡すようにする。
【０１６６】
この図８および図９で説明した音声認識装置は、特別な話者識別や話者グループ識別を行うことなく、簡単な距離計算でどの話者グループに属するかの判断を行うことができ、話者の特徴を反映した正規化特徴ベクトルを得て、その正規化特徴ベクトルを用いた音声認識処理を行うことができるので、認識性能の向上を図るとができる。また、正規化特徴ベクトルを生成するための演算量や使用するメモリ量を大幅に少なくすることができ、それによって安価なハードウエアで動作可能でしかも高い認識性能を得ることができる。
【０１６７】
なお、図８に示すように、標準的な音響モデルを用いる場合は、１つの音響もモデルで済むので、部品コストを低く抑えることができ、安価な装置とすることができるとともに、その都度、どの音響モデルを用いるかといった処理が不要となるため、演算量を削減することができる。
【０１６８】
一方、図９に示すように、それぞれの話者または話者グループ対応の音響モデルを用いる場合は、複数の音響モデルを用意する必要があるため、演算量が多少増大し、部品コストも増えるといった問題点もあるが、より高い認識性能が得られる利点がある。
【０１６９】
なお、本発明は以上説明した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲で種々変形実施可能となるものである。
【０１７０】
たとえば、前述の実施の形態では、短時間ブロックは６４フレームで構成し、長時間ブロックは６４個の短時間ブロック（４０９６フレーム）で構成するようにしたが、これに限られるものではなく、使用するシステムなどに応じて適宜を設定可能とするものである。ただし、短時間ブロックのフレーム数や長時間ブロックの短時間ブロック数（フレーム数）は、２のべき乗となるようにすることが望ましい。
【０１７１】
また、前述の実施の形態では、話者性の判断は、ある話者グループに属するか否かで行ったが、話者グループではなく、ある特定の話者に属するか否かを判断することもできる。したがって、前述の実施の形態では、話者グループとして記述しているが、これを話者または話者グループと置き換えることも可能である。
【０１７２】
また、本発明は、以上説明した本発明を実現するための処理手順が記述された処理プログラムを作成し、その処理プログラムをフロッピィディスク、光ディスク、ハードディスクなどの記録媒体に記録させておくことができ、本発明はその処理プログラムが記録された記録媒体をも含むものである。また、ネットワークから当該処理プログラムを得るようにしてもよい。
【０１７３】
【発明の効果】
以上説明したように本発明によれば、特別な話者識別・話者グループ識別手段を用いることなく、自然に話者グループを生成することができ、それぞれの話者の特徴を反映した正規化特徴ベクトルを得ることができ、それぞれの話者の特徴を反映した正規化特徴ベクトルを用いた音声認識処理を行うことができるので、高い認識率を得ることができる。
【０１７４】
さらに、本発明では、短時間ブロックを構成するフレーム数、長時間ブロックを構成するフレーム数はそれぞれ２のべき乗となるような値に設定しているので、平均特徴ベクトルなどを求める場合の割り算はコンピュータ演算において右シフト演算だけで行うことができ、演算を簡略化することができる。これによって、ＣＰＵの演算負担を軽減することができ、処理能力の低いＣＰＵを用いざるを得ない安価な装置などに適用する場合に特に大きな効果が得られる。
【０１７５】
また、話者性断は、当該短時間ブロックの平均特徴ベクトルとすでに生成されている話者または話者グループに対応する長時間ブロックまたは長時間ブロック候補の平均特徴ベクトルとの距離を計算し、その距離を予め設定されたしきい値と比較することによって行うようにしているので、単純な演算で話者グループ判断が行える。
【０１７６】
また、このような音声認識方法が適用された音声認識装置は、特別な話者識別・話者グループ識別手段を用いることなく、少ない演算量、少ないメモリの使用量で、自然に話者または話者グループを生成することができ、それぞれの話者の特徴を反映した正規化特徴ベクトルを得ることができるので、安価なハードウエアでしかも高い認識性能を有する装置とすることができる。
【図面の簡単な説明】
【図１】本発明の実施の形態の基本的な処理内容を説明する図である。
【図２】すでに生成されている話者グループに対応する長時間ブロックが生成されたあとの処理について説明する図である。
【図３】図２において１発話から取得された幾つかの短時間ブロックがど話者グループに属するかを判断する処理について説明する図である。
【図４】入力された音声データについて１つの短時間ブロックごとに逐次的な処理を行って正規化特徴ベクトルを求めてそれを音声認識処理部に渡すまでの処理手順を説明するフローチャートである。
【図５】入力された音声データについて１発話を待って話者グループ判断を行う場合の処理手順を説明するフローチャートである。
【図６】新規に音声データが入力された場合、つまり、グループが全く存在しない場合の本発明の処理を説明する図である。
【図７】取得された短時間ブロックを含めた長時間ブロック候補のフレーム数が２のべき乗の値とならない場合の正規化処理について説明する図である。
【図８】本発明の音声認識装置の実施の形態を説明する構成図である。
【図９】音響モデルを予め設定された幾つかの話者グループ対応に持った場合の音声認識装置の構成図である。
【符号の説明】
１  マイクロホン
２  音声信号処理部
３  音声特徴分析部
４  特徴ベクトル正規化処理部
５  音響モデル
５ａ  男性用音響モデル
５ｂ  女性用音響モデル
５ｃ  子供用音響モデル
６  音声認識処理部
Ａ１，Ａ２，・・・，Ａ６４，Ａ６５，・・・  短時間ブロック
Ｂ１  長時間ブロック
Ｇ１，Ｇ２  話者グループ
【図１】
0003912089.tif 000004
【図２】
0003912089.tif 000005
【図３】
0003912089.tif 000006
【図４】
0003912089.tif 000007
【図５】
0003912089.tif 000008
【図６】
0003912089.tif 000009
【図７】
0003912089.tif 000010
【図８】
0003912089.tif 000011
【図９】
0003912089.tif 000012