話者クラスタリング装置および話者クラスタリング方法
【課題】音声信号中の話者の同定を精度高く実施できる話者クラスタリング装置および話者クラスタリング方法を提供すること。
【解決手段】話者クラスタリング装置100は、ベクトル量子化手段30と、出現頻度生成手段40と、類似度算出手段50と、クラスタリング手段60と、を備えている。ベクトル量子化手段30は、入力された音声信号を符号に変換する。出現頻度生成手段40は、符号中の各符号の出現回数を成分とする出現頻度ベクトルを発話ごとに生成する。類似度算出手段50は、各発話の出現頻度ベクトルを用いて、発話間のコサイン距離を算出し、このコサイン距離から発話間の類似度を求める。クラスタリング手段60は、類似度に基づいてスペクトラルクラスタリングにより発話のクラスタリングを行う。
【解決手段】話者クラスタリング装置100は、ベクトル量子化手段30と、出現頻度生成手段40と、類似度算出手段50と、クラスタリング手段60と、を備えている。ベクトル量子化手段30は、入力された音声信号を符号に変換する。出現頻度生成手段40は、符号中の各符号の出現回数を成分とする出現頻度ベクトルを発話ごとに生成する。類似度算出手段50は、各発話の出現頻度ベクトルを用いて、発話間のコサイン距離を算出し、このコサイン距離から発話間の類似度を求める。クラスタリング手段60は、類似度に基づいてスペクトラルクラスタリングにより発話のクラスタリングを行う。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、音声信号中の話者を同定する話者クラスタリング装置および話者クラスタリング方法に関する。
【背景技術】
【0002】
録音音声中に含まれる発話を同一話者ごとにまとめる話者クラスタリング技術は、音声認識精度の改善や、話者単位のスキップ再生などの視聴支援に活用が期待されている。
このようなクラスタリング技術として、例えば、入力された音声から抽出された特徴パターンを共通符号に変換した後、各音声区間における各符号の出現確率をクラスタ分析することにより、同一話者の判定を行う技術が知られている(例えば、特許文献1参照)。
【0003】
ここで、クラスタ分析(クラスタリング)とは、多次元空間において与えられたデータ集合を個体間の類似度によってクラスタ(塊)化する多変量解析法である。ここでは、各音声区間(発話)同士の類似度によりクラスタ分析を行う。
出現確率をクラスタ分析する際は、クラスタの指標となる出現確率ベクトル間の距離を算出しなければならない。このベクトル間の距離の計算には、一般的に、KL距離(カルバック・ライブラー情報量)やユークリッド距離が用いられる(例えば、非特許文献1参照)。特に、音声信号中の発話間の距離を測るには、各発話の発話特性を示すガウス分布を推定し、該ガウス分布間のKL距離が用いられることが一般的である(例えば、非特許文献2参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平6−83384号公報
【非特許文献】
【0005】
【非特許文献1】電子情報通信学会技術報告書 SP−92−45
【非特許文献2】Ning et al., InterSpeech p.2178-2181, 2006
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、非特許文献1や非特許文献2で用いられているKL距離やユークリッド距離は、ガウス分布全体の一致度を測る距離尺度であるため、発話の長さが短いときに話者の違いよりも、発話に含まれる音韻の出現頻度の違いに敏感になってしまうことが知られている。すなわち、発話のガウス分布は、話者の特性と発話に含まれる音韻の出現頻度の偏りとの2つに依存しているが、発話が十分に長ければ後者の違いは目立たなくなり、話者の特性を精度良く表現することができる。したがって、発話が十分に長いときにはKL距離やユークリッド距離は話者性に注目して話者クラスタリングを行うのに有効であるが、例えば、討論を録音した音声などの短い発話が多数含まれるような音声の場合には、話者性よりも発話内容(発話に含まれる音韻)を重視したクラスタリングが行われてしまう。
また、特許文献1や非特許文献2のように、発話をガウス分布ではなく、ベクトル量子化の符号出現頻度ベクトルで表した場合にKL距離を用いると、出現頻度が0回の部分で数値的な異常(0の対数)が生じるため発見法的な対処が必要になり、対数は0近傍で大きな値の変化をするため、正確な処理は本質的な困難があると考えられる。
【0007】
本発明の目的は、音声信号中の話者の同定を精度高く実施できる話者クラスタリング装置および話者クラスタリング方法を提供することである。
【課題を解決するための手段】
【0008】
本発明の話者クラスタリング装置は、入力された音声信号中の同一話者の発話を同定する話者クラスタリング装置であって、ベクトル量子化を用いて前記音声信号を符号に変換するベクトル量子化手段と、前記変換された符号中の各発話に対して、前記符号の出現回数を成分とした出現頻度ベクトルを生成する出現頻度生成手段と、前記出現頻度ベクトルに基づいて前記発話間のコサイン距離をそれぞれ算出し、該コサイン距離を発話間の類似度として求める類似度算出手段と、前記発話間の類似度に基づいて前記発話を分類するクラスタリング手段と、を備えたことを特徴とする。
【0009】
本発明は、ベクトル量子化手段により音声信号を符号に変換し、出現頻度生成手段により符号から出現頻度ベクトルを生成し、類似度算出手段により出現頻度ベクトルから発話間のコサイン距離を算出して類似度を求め、クラスタリング手段により類似度に基づくクラスタリングを行う。
コサイン距離による類似度は、符号の出現頻度の分布をベクトルとして、出現頻度ベクトルの間の角度に依存する。また、コサイン距離は、発話間に出現した符号の頻度だけに依存するため、一方の発話で出現頻度が0(ゼロ)の符号が存在した場合に、コサイン距離算出のための分子の和には寄与しない。このため、発話が短い場合の発話間の音韻の出現頻度の偏りが生じる場合に、コサイン距離で算出した類似度を用いてクラスタリングすることにより、発話の話者性を反映し、発話の長さや発話間の音韻の出現頻度の偏りに影響を受けない話者クラスタリングを実現することができる。
また、発話間のコサイン距離の算出において、一方の発話の出現頻度ベクトルがゼロである場合は類似度もゼロとなり、発見法的な処理を行う必要がない。したがって、演算量を大幅に低減させることができるとともに、発話データに特別な処理を施さないことから、より精度の高い話者クラスタリングを行うことができる。
【0010】
また、本発明では、発話中の符号を用いて算出されたコサイン距離に基づいて類似度が求められるので、発話の長さが短い場合であっても、正確な発話特性を得ることができ、その結果、精度の高い話者クラスタリングを行うことができる。
【0011】
本発明の話者クラスタリング装置において、前記出現頻度生成手段は、前記出現頻度ベクトルに対して、前記各発話内における前記符号の出現回数を、当該符号と同一の符号が出現する前記発話の数の逆数で重み付けすることが好ましい。
【0012】
この発明では、出現頻度ベクトルに重み付けを行う。符号の出現回数を、当該符号と同一の符号が出現する発話の数の逆数で重み付けするということは、該発話における特徴である当該符号が、他の発話に出現しない場合に重み付けされるということである。すなわち、どの発話にも出現するような特徴(符号)は、該発話中の特徴とされるものではなく、他の発話に出現しない特徴(符号)に対して、重み付けを行う。
これによれば、該発話の特徴を正確に捉えることができるため、より精度の高い話者クラスタリングを行うことができる。
【0013】
本発明の話者クラスタリング装置において、前記出現頻度生成手段は、前記各発話中の連続する符号の組み合わせによる符号列の出現回数を成分とした出現頻度ベクトルとして生成することが好ましい。
【0014】
発話中の連続する符号の組み合わせは、当該発話における特徴を表現している。したがって、これらの組み合わせの出現回数を成分とした出現頻度ベクトルは、発話中の特徴をより正確に表現することができるため、その結果、より精度の高い話者クラスタリングを行うことができる。
【0015】
本発明の話者クラスタリング装置において、ベクトル量子化を用いて前記音声信号の時系列的な変化量を符号に変換する変化量ベクトル量子化手段をさらに備え、前記出現頻度生成手段は、各発話に対して、前記音声信号の符号の出現回数と、前記変化量の符号の出現回数とを成分とする前記出現頻度ベクトルを生成することが好ましい。
【0016】
この発明では、前述のベクトル量子化手段のほかに、変化量ベクトル量子化手段を備えている。変化量ベクトル量子化手段は、ベクトル量子化を用いて、音声信号の時系列的な変化量を符号に変換する。発話における時系列的な変化量は、当該発話の特徴を表すので、この変化量を用いることで、発話の特徴をより正確に表現することができる。
特に、本発明において、発話における符号の出現回数と、発話における時系列的な変化量の符号の出現回数とを成分として生成された出現頻度ベクトルは、発話の特徴をより正確に表現することができる。その結果より精度の高い話者クラスタリングを行うことができる。
【0017】
本発明の話者クラスタリング装置において、前記クラスタリング手段は、前記算出したコサイン距離による発話間の類似度を用いてスペクトラルクラスタリングを行うことが好ましい。
【0018】
この発明では、コサイン距離による発話間の類似度に基づいてスペクトラルクラスタリングを行う。コサイン距離による発話間の類似度は、発話の特徴をより正確に表現することができるので、この類似度を用いてスペクトラルクラスタリングを行うことで、より精度の高いクラスタリングを行うことができる。すなわち、同一話者の判定の精度を向上させることができる。
【0019】
本発明の話者クラスタリング装置において、前記類似度算出手段により得られる各発話間の前記類似度を要素とする類似度行列から得られる正方行列の固有値を算出し、連続する固有値間の差分が最大値をとる固有値に基づいて、前記音声信号中の話者数を決定する話者数判定手段をさらに備えたことが好ましい。
【0020】
この発明では、類似度算出手段により得られた類似度を要素とする類似度行列に基づいて固有値差分により音声信号中の話者数を決定している。前述のように、類似度は発話の特徴を正確に表現しているので、この類似度を要素とする類似度行列を用いることにより、話者数の決定をより正確に行うことができる。
【0021】
本発明の話者クラスタリング装置において、前記類似度算出手段は、前記算出した各発話間の類似度のうちの最大値にあらかじめ定められた係数を乗じて算出した閾値を下回る類似度を0として前記類似度を求めることが好ましい。
【0022】
この発明では、類似度の閾値を定め、この閾値を下回る場合には類似度を0(ゼロ)とする処理を行う。類似度の閾値は、各発話間の類似度のうちの最大値にあらかじめ定められた係数を乗じて算出した値であり、適宜調整可能とされている。
これにより、発話間の類似度が明らかに小さい場合は類似度を0とすることができるので、前述した固有値差分による話者数推定の精度を向上させることができる。
演算量を大幅に低減させることができる。
【0023】
本発明の話者クラスタリング装置において、前記類似度算出手段は、前記算出した各発話間の類似度のうち、類似度が大きい上位所定数以外の類似度を0として前記類似度を求めることが好ましい。
【0024】
この発明では、類似度が大きい上位所定数以外の類似度を0(ゼロ)とする。すなわち、類似度が小さい場合は、類似度を0(ゼロ)とする処理を行う。類似度の上位所定数は適宜調整可能とされている。
これにより、発話間の類似度が明らかに小さい場合は類似度を0とすることができるので、前述した固有値差分による話者数推定の精度を向上させることができる。
【0025】
本発明の話者クラスタリング方法は、入力された音声信号中の同一話者の発話を同定する話者クラスタリング方法であって、ベクトル量子化を用いて前記音声信号を符号に変換するベクトル量子化ステップと、前記変換された符号中の各発話に対して、前記符号の出現回数を成分とした出現頻度ベクトルを生成する出現頻度生成ステップと、前記出現頻度ベクトルに基づいて前記発話間の類似度を求める類似度算出ステップと、前記発話間の類似度に基づいて前記発話を分類するクラスタリングステップと、を備えたことを特徴とする。
【0026】
本発明は、音声信号を符号に変換し、変換された符号から出現頻度ベクトルを生成し、生成された出現頻度ベクトルから発話間のコサイン距離を算出して類似度を求め、算出された類似度に基づくクラスタリングを行う。
コサイン距離による類似度は、符号の出現頻度の分布をベクトルとして、出現頻度ベクトルの間の角度に依存する。また、コサイン距離は、発話間に出現した符号の頻度だけに依存するため、一方の発話で出現頻度が0(ゼロ)の符号が存在した場合に、コサイン距離算出のための分子の和には寄与しない。このため、発話が短い場合の発話間の音韻の出現頻度の偏りが生じる場合に、コサイン距離で算出した類似度を用いてクラスタリングすることにより、発話の話者性を反映し、発話の長さや発話間の音韻の出現頻度の偏りに影響を受けない話者クラスタリングを実現することができる。
また、発話間のコサイン距離の算出において、一方の発話の出現頻度ベクトルがゼロである場合は類似度もゼロとなり、発見法的な処理を行う必要がない。したがって、演算量を大幅に低減させることができるとともに、発話データに特別な処理を施さないことから、より精度の高い話者クラスタリングを行うことができる。
【0027】
また、本発明では、発話中の符号を用いて算出されたコサイン距離に基づいて類似度が求められるので、発話の長さが短い場合であっても、正確な発話特性を得ることができ、その結果、精度の高い話者クラスタリングを行うことができる。
【図面の簡単な説明】
【0028】
【図1】本発明の第1実施形態にかかる話者クラスタリング装置の概略構成を示すブロック図。
【図2】第1実施形態における話者クラスタリング装置の動作を示すフローチャート。
【図3】第1実施形態において音声信号から特徴ベクトルへの変換を示す説明図。
【図4】第1実施形態において特徴ベクトルから特徴空間への変換を示す説明図。
【図5】第1実施形態においてベクトル量子化により得られた音声信号の符号列を示す図。
【図6】第1実施形態において各発話の出現頻度ベクトルの生成を説明する図。
【図7】第1実施形態において発話間の類似度を示すマトリックス図。
【図8】第3実施形態においてベクトル量子化により得られた音声信号の符号列を示す図。
【図9】第3実施形態において各発話の出現頻度ベクトルの生成を説明する図。
【図10】第4実施形態にかかる話者クラスタリング装置の概略構成を示すブロック図。
【図11】第4実施形態においてベクトル量子化により得られた音声信号の符号列を示す図。
【図12】第4実施形態において各発話の出現頻度ベクトルの生成を説明する図。
【発明を実施するための形態】
【0029】
以下、本発明の実施形態を図面に基づいて説明する。本実施形態では、入力された音声信号中の発話を同一話者ごとにまとめる話者クラスタリング装置について説明する。
〔1.第1実施形態〕
[1−1.話者クラスタリング装置の構成]
話者クラスタリング装置100は、図1に示すように、音声信号取得手段10と、発話区分手段20と、ベクトル量子化手段30と、出現頻度生成手段40と、類似度算出手段50と、クラスタリング手段60と、話者数判定手段70と、を備えている。また、図示しないが、話者クラスタリング装置100は、音声信号を入力可能な入力手段を備えている。
【0030】
音声信号取得手段10は、図示しない入力手段によって入力された音声信号を取得する。
発話区分手段20は、入力された音声信号を発話ごとに区分する。具体的には、音声信号中の音声が発生していない部分で区切ることができる。
【0031】
ベクトル量子化手段30は、入力された音声信号を符号に変換するものであり、特徴ベクトル時系列変換部31、特徴ベクトルクラスタリング部32、および符号列生成部33を備えている。
特徴ベクトル時系列変換部31は、音声信号を一定時間ごとにサンプリングし、各サンプルにおける、例えば、メルケプストラムなどの音声の特徴量(特徴ベクトル)を抽出し、時系列に出力する。すなわち、特徴ベクトルを時系列に生成する。
特徴ベクトルクラスタリング部32は、特徴ベクトルに基づいて各サンプルを特徴空間に並べ、特徴空間におけるサンプルの集合ごとにクラスタリングし、生成された各クラスタに識別可能な番号を付与する。
符号列生成部33は、各クラスタに付与された番号を符合として用い、音声信号を時系列の符号(以下、符号列と表記する。)に変換する。
【0032】
出現頻度生成手段40は、符号列中の各符号の出現回数を成分とする出現頻度ベクトルを発話ごとに生成する。
類似度算出手段50は、各発話の出現頻度ベクトルを用いて、発話間のコサイン距離を算出し、このコサイン距離を発話間の類似度とする。
【0033】
クラスタリング手段60は、スペクトラルクラスタリングにより、算出した類似度に基づいて発話のクラスタリングを行う。
ここで、スペクトラルクラスタリングについて説明する。
クラスタリング対象のデータ集合をC={i|i=1、…、N}、データiとjとの類似度wij≧0としたときのデータ集合Cのクラスタへの分割を以下の式(1)で表すとする。
【0034】
【数1】
【0035】
式(1)中、Qはクラスタ数である。
また、クラスタ内の平均類似度SWを以下の式(2)で表し、クラスタ間の平均類似度SBを以下の式(3)で表す。
【0036】
【数2】
【0037】
【数3】
【0038】
スペクトラルクラスタリングは、クラスタ内の平均類似度SWを大きくし、クラスタ間の平均類似度SBを小さくするように、データ集合Cをクラスタリングする手法である。
【0039】
話者数判定手段70は、スペクトラルクラスタリングによる結果に基づいて、音声信号中の話者の数を判定する。
【0040】
[1−2.話者クラスタリング装置の動作]
次に、話者クラスタリング装置100の具体的な動作を図2のフローチャートに従って説明する。
まず、音声信号取得手段10は、図示しない入力手段によって入力された音声信号Aを取得する(ステップ1、以下ステップを「S」と略す)。
次に、発話区分手段20は、図3に示すように、入力された音声信号Aを、発話a1、a2、a3 …aNに分割する(S2)。ここで、Nは発話数である。
【0041】
次に、特徴ベクトル時系列変換部31は、図3に示すように、入力された音声信号Aを1/100秒ずつにサンプリングし、各サンプルについて、30次元の特徴ベクトルを時系列に抽出する(S3)。この特徴ベクトルは、音声認識の分野で一般的に用いられているメルケプストラムと呼ばれる特徴パラメータである(各次元の特徴パラメータは図示していない)。
【0042】
次に、特徴ベクトルクラスタリング部32は、図4に示すように、30次元の特徴ベクトルを30次元の特徴空間に並べ、該特徴空間におけるサンプルの集合ごとにクラスタリングする(S4)。クラスタリングにより生成したクラスタには互いに識別可能な番号を付与する。ここで生成されるクラスタの数は、後述する各発話の出現頻度ベクトルを生成したときの符号帳サイズVに相当する。符号長サイズVは適宜調整可能であるが、本実施形態では、例えば、256個のクラスタを生成し、各クラスタに1〜256の番号を付与する。
次に、符号列生成部33は、図5に示すように、各クラスタに付与された番号を符号として用い、該符号を時系列に並べた符号列を生成する(S5)。
以上のS3〜S5の処理により、音声信号が符号に変換され、ベクトル量子化が完成する。
【0043】
次に、出現頻度生成手段40は、図6に示すように、発話aiの符号帳をそれぞれ生成し、発話aiにおける各符号の出現回数を成分とする出現頻度ベクトルを生成する(S6)。ここで生成した符号帳の符号帳サイズVは、前述の特徴ベクトルクラスタリング部22により生成されたクラスタの数に相当する。
【0044】
次に、類似度算出手段50は、発話aiの出現頻度ベクトルに基づいて発話間のコサイン(余弦)距離を算出し、このコサイン距離を類似度とする(S7)。
発話aiと発話ajとの類似度wij(0)は、以下の式(4)で算出することができる。なお、本実施形態では、類似度wij(0)に対して後処理を行い、最終的な類似度wijを算出するため、調整前類似度wij(0)とする。
【0045】
【数4】
【0046】
式(4)中、fivは発話aiにおける符号vの出現頻度、fjvは発話ajにおける符号vの出現頻度、i、jは1〜Nの整数、v、v’は1〜Vの整数、Nは発話数、Vは各発話の出現頻度ベクトルの符号帳サイズである。
【0047】
ここで、調整前類似度wij(0)に対して調整(後処理)を行う。発話aiの最大類似度wi*を以下の式(5)で表したとき、調整前類似度wij(0)が最大類似度wi*のε倍より小さい場合は類似度を0にする処理(以下、トリミングと言うこともある。)を行い、以下の式(6)に示すように、発話aiと発話ajとの類似度wijを算出する。ここで、εは類似度トリミング係数と呼ばれる1<ε<0の定数であり、適宜調整することができる。
類似度wij(0)が最大類似度wi*のε倍より小さいということは、類似度が明らかに小さいということである。したがって、明らかに類似度が小さい場合に類似度を0と近似することにより、後述のクラスタリングにおいて演算量を低減させることができる。
【0048】
【数5】
【0049】
式(5)中、i、jは1〜Nの整数、Nは発話数である。
【0050】
【数6】
【0051】
式(6)中、i、jは1〜Nの整数、Nは発話数である。
算出された発話間の類似度は、図7に示すようなマトリックス状に表現することができる。図7において、発話a1と発話a3との類似度が「150」と高く、発話a1と発話a2との類似度は「0」で類似していないということが言える。
【0052】
次に、クラスタリング手段60は、図7に示す類似度に基づいて、スペクトラルクラスタリングを行う(S8)。以下に、具体的な方法を説明する。
まず、S7で算出された類似度wijを要素とする類似度行列Wから、ラプラシアン行列(N次正方行列)Lを以下の式(7)により算出する。
【0053】
【数7】
【0054】
式(7)中、Iは単位行列、Dは対角行列、i、j、kは1〜Nの整数、Nは発話数である。
ラプラシアン行列LのQ個の固有ベクトルviqを以下の式(8)で表す。
【0055】
【数8】
【0056】
式(8)で示す固有ベクトルviqから、yiqを要素とするN行Q列行列Yを以下の式(9)により算出する。
【0057】
【数9】
【0058】
式(9)中、iは1〜Nの整数、qは1〜Qの整数、Nは発話数、Qは固有ベクトルの数である。
式(9)に示すyiqを要素とする行列YのN個の行ベクトルを、以下の式(10)で表されるk−meansクラスタリングにより、Q個のクラスタに分割する。
【0059】
【数10】
【0060】
式(10)中、α、qは1〜Qの整数、iは1〜Nの整数、Qは固有ベクトルの数、Nは発話数である。
このようにして得られたQ個のクラスタには、特徴が類似する発話がそれぞれ分類され、1つのクラスタに属する発話は同一話者による発話であると判定することができる。
【0061】
次に、話者数判定手段70は、音声信号中で会話をしている話者の数を判定する(S9)。スペクトラルクラスタリングにおいて、上記式(3)で示すクラスタ間の平均類似度SBが0(ゼロ)となるような理想的な場合には、ラプラシアン行列Lの最小固有値0がQ重に縮退することが数学的に示される。また、理想的な場合からの乖離が小さい場合には、摂動論的な解析から、固有値λQ+1−λQに大きなギャップが生じることが示される。ここで、Qはスペクトラルクラスタリングにより分類されたクラスタ数である。このような知見に基づいて、クラスタ数Qは以下の式(11)で算出することができる。
【0062】
【数11】
【0063】
式(11)中、λは固有値、iは整数である。
以上の処理終了後、話者クラスタリング装置100は、入力された音声信号中の話者の同定結果および話者数を図示しない出力手段に出力した後、動作を終了する。
【0064】
[1−3.第1実施形態の作用効果]
上述した第1実施形態では、以下に示す作用効果を奏することができる。
ベクトル量子化手段30により音声信号を符号に変換し(量子化)、出現頻度生成手段40はこの符号に基づいて各符号を成分とする出現頻度ベクトルを発話ごとに生成する。類似度算出手段50は、該出現頻度ベクトルを用いてコサイン距離を算出し、該コサイン距離を類似度とする。
特性の異なる発話の類似度を求める場合、出現頻度ベクトルからKL距離を用いて類似度を求める際は、一方の発話の出現頻度ベクトル中の成分値がゼロの箇所を他の値に変えるなどの処理が必要であり、そのために精度が落ちるという問題があったが、本実施形態では、コサイン距離を用いて類似度を求めるため、一方の発話の出現頻度ベクトル中の成分が0(ゼロ)である場合には類似度への寄与もゼロになり(上記式(1)参照)、特別な処理を行う必要がない。したがって、より精度の高い話者クラスタリングを行うことができる。
【0065】
また、従来のKL距離やユークリッド距離を用いる方法の場合、発話の長さが短くなると、発話の話者性を十分に得られない場合があった。一方、本実施形態では音声信号を符号に変換し、該符号の出現回数を成分とした出現頻度ベクトルを用いてコサイン距離を算出し、発話間の類似度を求めるので、発話の長さに関係なく正確な話者性を得ることができる。したがって、発話の長さが短い場合であっても、発話の話者性を正確に得ることができ、その結果、精度の高い話者クラスタリングを行うことができる。
【0066】
さらに、上記実施形態では、話者数判定手段70は、ラプラシアン行列Lの固有値を用いた上記式(11)により音声信号中の話者数を算出することができる。したがって、定量的に話者数を判定することができる。
【0067】
そして、上記実施形態では、式(4)に示すように、類似度が明らかに小さい場合は類似度を0とする近似を行うので、クラスタリングを行う際の話者数の推定精度を向上させることができる。
【0068】
〔2.第2実施形態〕
次に、本発明の第2実施形態について説明する。第2実施形態では、出現頻度生成手段の動作が前記第1実施形態の出現頻度生成手段40と相違する。なお、前記第1実施形態と同一の構成および動作については説明を省略する。
出現頻度生成手段は、符号列中の各符号の出現回数に重み付けを行い、この重み付けされた出現回数を成分とする出現頻度ベクトルを発話ごとに生成する。
具体的な重み付けの方法としては、TF/IDF(Term Frequency Inverse/Document Frequency)法が用いられる。具体的には、各発話における符号の出現回数を、当該符号と同一の符号が出現する発話の数の逆数で重み付けする。このように、発話ごとに各符号の出現回数が重み付けされ、出現頻度生成手段は、この重み付けされた出現回数を成分とする出現頻度ベクトルを生成する。
このようにして生成された出現頻度ベクトルを用いて、第1実施形態と同様に、類似度算出手段50は類似度を算出する。
【0069】
このような第2実施形態によれば、前記第1実施形態の効果に加えて次の効果が得られる。
各発話における各符号の出現回数に対してTF/IDF法による重み付けを行う。本実施形態においては、発話の特徴である符号が、他の発話に出現しない程、重み付けされるようになる。すなわち、どの発話にも出現するような特徴(符号)は、該発話中の特徴とされるものではなく、他の発話に出現しない特徴(符号)に対して、重み付けを行う。
したがって、符号に変換された音声信号の特徴をより正確に抽出でき、より精度の高い話者クラスタリングを行うことができる。
【0070】
〔3.第3実施形態〕
次に、本発明の第3実施形態について説明する。第3実施形態では、出現頻度生成手段において出現頻度ベクトルの成分が前記第1実施形態の出現頻度生成手段40と相違する。なお、前記第1実施形態と同一の構成については説明を省略する。
【0071】
出現頻度生成手段は、音声信号から変換された符号中の連続する符号の組み合わせによる符号列の出現回数を成分とする出現頻度ベクトルを発話ごとに生成する。
第3実施形態の出現頻度生成手段による具体的な方法を図8および図9を用いて説明する。
図8に示すように、音声信号から変換された符号列において、連続する2つの符号を1単位とした、単位符号u1、u2、u3、…という符号列が存在する。このとき、同一の符号の組み合わせが存在する場合は、同一の単位符号とみなす。例えば、図8において、符号列の最初の単位符号u1の符号の組み合わせは「5,9」である。したがって、該符号列における「5,9」の符号の並びは全て単位符号u1とする。
【0072】
出現頻度生成手段は、図9に示すように、発話aiごとに、単位符号uiの出現回数を成分とする出現頻度ベクトルを生成する。ここで、発話aiの符号帳サイズは、単位符号uiの数に相当する。
このようにして生成された出現頻度ベクトルを用いて、第1実施形態と同様に、類似度算出手段50は類似度を算出する。
【0073】
このような第3実施形態によれば、前記第1実施形態の効果に加えて次の効果が得られる。
出現頻度生成手段は、音声信号から変換された符号における連続する符号の組み合わせを成分とする出現頻度ベクトルを生成する。連続する符号の組み合わせはその発話における特徴を表すものであり、単一の符号よりも発話の特性を特徴的に表す。また、同一の符号の組み合わせは同一の特徴であると判定することができる。したがって、連続する符号の組み合わせの出現回数を成分とする出現頻度ベクトルを用いることで、発話の特徴をより正確に抽出することができ、精度の高い類似度を算出することができる。その結果、より精度の高い話者クラスタリングを行うことができる。
【0074】
〔4.第4実施形態〕
次に、本発明の第4実施形態について説明する。第4実施形態では、変化量ベクトル量子化手段をさらに備え、この変化量を出現頻度ベクトルの成分として用いる点が、第1実施形態と相違する。なお、前記第1実施形態と同一の構成については説明を省略する。
【0075】
第4実施形態の話者クラスタリング装置101の構成を図10に示す。
図10に示すように、話者クラスタリング装置101は、音声信号取得手段10と、発話区分手段20と、ベクトル量子化手段30と、変化量ベクトル量子化手段80と、出現頻度生成手段41と、類似度算出手段50と、クラスタリング手段60と、話者数判定手段70と、を備えている。
【0076】
変化量ベクトル量子化手段80は、ベクトル量子化を用いて、音声信号の時系列的な変化量を符号に変換する。すなわち、変化量符号列とは、図11に示すように、ベクトル量子化手段30によって生成された符号列中の隣接する符号の変化量(差分)が新たな符号列として生成されたものである。
【0077】
出現頻度生成手段41は、ベクトル量子化手段30によって生成された符号列と、変化量ベクトル量子化手段80によって生成された変化量符号列と、の2つの符号列中の各符号の出現回数を成分とする出現頻度ベクトルを生成する。具体的には、発話aiごとに、符号列中の各符号の出現回数を成分とする出現頻度ベクトルを第1実施形態と同様に生成し、さらに該出現頻度ベクトルの符号帳サイズを拡張し、変化量符号列中の各変化量の出現回数を成分とする出現頻度ベクトルを生成する。図12において、発話aiの符号列中の各符号の出現回数を成分とする出現頻度ベクトルの符号帳サイズは256であり、変化量符号列を成分とする出現頻度ベクトルを257以降に生成する。図12に示す出現頻度ベクトルの257以降の横軸は、変化量を表している。例えば、変化量4の出現頻度ベクトルは、発話a1では3、発話a3では3となる。このときの符号帳サイズは可変であり、変化量の数の分だけ拡張する。
このようにして生成された出現頻度ベクトルを用いて、第1実施形態と同様に、類似度算出手段50は類似度を算出する。
【0078】
このような第4実施形態によれば、前記第1実施形態の効果に加えて次の効果が得られる。
音声信号の時系列的な変化量は発話の特徴を表すものであるので、発話における同一の変化量は同一の特徴であると判定することができる。第4実施形態では、符号列中の各符号の出現回数のほかにも変化量の出現回数を成分とする出現頻度ベクトルを生成するので、発話の特徴をより正確に抽出することができ、精度の高い類似度を算出することができる。その結果、より精度の高い話者クラスタリングを行うことができる。
【0079】
〔5.変形例〕
なお、本発明は前記各実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。
例えば、上記実施形態において、類似度wijを算出するために、上記式(4)により調整前類似度wij(0)を算出し、この調整前類似度wij(0)に対して上記式(5)に示す調整を行い、最終的な類似度wijを算出することとしたが、上記式(4)により算出された調整類似度wij(0)をそのまま類似度wijとして用いてもよい。これによれば、類似度がより正確となるので、より精度の高い話者クラスタリングを行うことができる。
【0080】
また、上記実施形態において、調整前類似度wij(0)に対して調整(後処理)を行う際、調整前類似度wij(0)が最大類似度wi*のε倍より小さい場合は類似度を0にする処理(式(6)参照)を行ったが、調整前類似度を0に近似する方法はこれに限られない。例えば、発話間の類似度のうち、類似度が大きい上位所定数を予め決めておき、当該所定数以外の類似度について調整前類似度を0に近似する方法がある。これによれば、クラスタリングを行う際の演算量を低減させることができる。
【0081】
さらに、第3実施形態において、単位符号uiを連続する2つの符号の組み合わせとしたが、符号の数はこれに限られない。連続する3つの符号の組み合わせ(並び)や連続する4つの符号の並び(並び)を単位符号としてもよい。なお、符号の数が増えるほど類似度の精度は高くなるが、同一の単位符号の出現頻度が低くなり、発話特性を得られなくなる可能性があるので、適宜調整する。
【産業上の利用可能性】
【0082】
本発明は、音声認識精度の改善や、話者単位のスキップ再生などの視聴支援への活用など、音声認識の分野に利用できる。
【符号の説明】
【0083】
10…音声信号取得手段
20…発話区分手段
30…ベクトル量子化手段
40、41…出現頻度生成手段
50…類似度算出手段
60…クラスタリング手段
70…話者数判定手段
80…変化量ベクトル量子化手段
100…話者クラスタリング装置
【技術分野】
【0001】
本発明は、音声信号中の話者を同定する話者クラスタリング装置および話者クラスタリング方法に関する。
【背景技術】
【0002】
録音音声中に含まれる発話を同一話者ごとにまとめる話者クラスタリング技術は、音声認識精度の改善や、話者単位のスキップ再生などの視聴支援に活用が期待されている。
このようなクラスタリング技術として、例えば、入力された音声から抽出された特徴パターンを共通符号に変換した後、各音声区間における各符号の出現確率をクラスタ分析することにより、同一話者の判定を行う技術が知られている(例えば、特許文献1参照)。
【0003】
ここで、クラスタ分析(クラスタリング)とは、多次元空間において与えられたデータ集合を個体間の類似度によってクラスタ(塊)化する多変量解析法である。ここでは、各音声区間(発話)同士の類似度によりクラスタ分析を行う。
出現確率をクラスタ分析する際は、クラスタの指標となる出現確率ベクトル間の距離を算出しなければならない。このベクトル間の距離の計算には、一般的に、KL距離(カルバック・ライブラー情報量)やユークリッド距離が用いられる(例えば、非特許文献1参照)。特に、音声信号中の発話間の距離を測るには、各発話の発話特性を示すガウス分布を推定し、該ガウス分布間のKL距離が用いられることが一般的である(例えば、非特許文献2参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平6−83384号公報
【非特許文献】
【0005】
【非特許文献1】電子情報通信学会技術報告書 SP−92−45
【非特許文献2】Ning et al., InterSpeech p.2178-2181, 2006
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、非特許文献1や非特許文献2で用いられているKL距離やユークリッド距離は、ガウス分布全体の一致度を測る距離尺度であるため、発話の長さが短いときに話者の違いよりも、発話に含まれる音韻の出現頻度の違いに敏感になってしまうことが知られている。すなわち、発話のガウス分布は、話者の特性と発話に含まれる音韻の出現頻度の偏りとの2つに依存しているが、発話が十分に長ければ後者の違いは目立たなくなり、話者の特性を精度良く表現することができる。したがって、発話が十分に長いときにはKL距離やユークリッド距離は話者性に注目して話者クラスタリングを行うのに有効であるが、例えば、討論を録音した音声などの短い発話が多数含まれるような音声の場合には、話者性よりも発話内容(発話に含まれる音韻)を重視したクラスタリングが行われてしまう。
また、特許文献1や非特許文献2のように、発話をガウス分布ではなく、ベクトル量子化の符号出現頻度ベクトルで表した場合にKL距離を用いると、出現頻度が0回の部分で数値的な異常(0の対数)が生じるため発見法的な対処が必要になり、対数は0近傍で大きな値の変化をするため、正確な処理は本質的な困難があると考えられる。
【0007】
本発明の目的は、音声信号中の話者の同定を精度高く実施できる話者クラスタリング装置および話者クラスタリング方法を提供することである。
【課題を解決するための手段】
【0008】
本発明の話者クラスタリング装置は、入力された音声信号中の同一話者の発話を同定する話者クラスタリング装置であって、ベクトル量子化を用いて前記音声信号を符号に変換するベクトル量子化手段と、前記変換された符号中の各発話に対して、前記符号の出現回数を成分とした出現頻度ベクトルを生成する出現頻度生成手段と、前記出現頻度ベクトルに基づいて前記発話間のコサイン距離をそれぞれ算出し、該コサイン距離を発話間の類似度として求める類似度算出手段と、前記発話間の類似度に基づいて前記発話を分類するクラスタリング手段と、を備えたことを特徴とする。
【0009】
本発明は、ベクトル量子化手段により音声信号を符号に変換し、出現頻度生成手段により符号から出現頻度ベクトルを生成し、類似度算出手段により出現頻度ベクトルから発話間のコサイン距離を算出して類似度を求め、クラスタリング手段により類似度に基づくクラスタリングを行う。
コサイン距離による類似度は、符号の出現頻度の分布をベクトルとして、出現頻度ベクトルの間の角度に依存する。また、コサイン距離は、発話間に出現した符号の頻度だけに依存するため、一方の発話で出現頻度が0(ゼロ)の符号が存在した場合に、コサイン距離算出のための分子の和には寄与しない。このため、発話が短い場合の発話間の音韻の出現頻度の偏りが生じる場合に、コサイン距離で算出した類似度を用いてクラスタリングすることにより、発話の話者性を反映し、発話の長さや発話間の音韻の出現頻度の偏りに影響を受けない話者クラスタリングを実現することができる。
また、発話間のコサイン距離の算出において、一方の発話の出現頻度ベクトルがゼロである場合は類似度もゼロとなり、発見法的な処理を行う必要がない。したがって、演算量を大幅に低減させることができるとともに、発話データに特別な処理を施さないことから、より精度の高い話者クラスタリングを行うことができる。
【0010】
また、本発明では、発話中の符号を用いて算出されたコサイン距離に基づいて類似度が求められるので、発話の長さが短い場合であっても、正確な発話特性を得ることができ、その結果、精度の高い話者クラスタリングを行うことができる。
【0011】
本発明の話者クラスタリング装置において、前記出現頻度生成手段は、前記出現頻度ベクトルに対して、前記各発話内における前記符号の出現回数を、当該符号と同一の符号が出現する前記発話の数の逆数で重み付けすることが好ましい。
【0012】
この発明では、出現頻度ベクトルに重み付けを行う。符号の出現回数を、当該符号と同一の符号が出現する発話の数の逆数で重み付けするということは、該発話における特徴である当該符号が、他の発話に出現しない場合に重み付けされるということである。すなわち、どの発話にも出現するような特徴(符号)は、該発話中の特徴とされるものではなく、他の発話に出現しない特徴(符号)に対して、重み付けを行う。
これによれば、該発話の特徴を正確に捉えることができるため、より精度の高い話者クラスタリングを行うことができる。
【0013】
本発明の話者クラスタリング装置において、前記出現頻度生成手段は、前記各発話中の連続する符号の組み合わせによる符号列の出現回数を成分とした出現頻度ベクトルとして生成することが好ましい。
【0014】
発話中の連続する符号の組み合わせは、当該発話における特徴を表現している。したがって、これらの組み合わせの出現回数を成分とした出現頻度ベクトルは、発話中の特徴をより正確に表現することができるため、その結果、より精度の高い話者クラスタリングを行うことができる。
【0015】
本発明の話者クラスタリング装置において、ベクトル量子化を用いて前記音声信号の時系列的な変化量を符号に変換する変化量ベクトル量子化手段をさらに備え、前記出現頻度生成手段は、各発話に対して、前記音声信号の符号の出現回数と、前記変化量の符号の出現回数とを成分とする前記出現頻度ベクトルを生成することが好ましい。
【0016】
この発明では、前述のベクトル量子化手段のほかに、変化量ベクトル量子化手段を備えている。変化量ベクトル量子化手段は、ベクトル量子化を用いて、音声信号の時系列的な変化量を符号に変換する。発話における時系列的な変化量は、当該発話の特徴を表すので、この変化量を用いることで、発話の特徴をより正確に表現することができる。
特に、本発明において、発話における符号の出現回数と、発話における時系列的な変化量の符号の出現回数とを成分として生成された出現頻度ベクトルは、発話の特徴をより正確に表現することができる。その結果より精度の高い話者クラスタリングを行うことができる。
【0017】
本発明の話者クラスタリング装置において、前記クラスタリング手段は、前記算出したコサイン距離による発話間の類似度を用いてスペクトラルクラスタリングを行うことが好ましい。
【0018】
この発明では、コサイン距離による発話間の類似度に基づいてスペクトラルクラスタリングを行う。コサイン距離による発話間の類似度は、発話の特徴をより正確に表現することができるので、この類似度を用いてスペクトラルクラスタリングを行うことで、より精度の高いクラスタリングを行うことができる。すなわち、同一話者の判定の精度を向上させることができる。
【0019】
本発明の話者クラスタリング装置において、前記類似度算出手段により得られる各発話間の前記類似度を要素とする類似度行列から得られる正方行列の固有値を算出し、連続する固有値間の差分が最大値をとる固有値に基づいて、前記音声信号中の話者数を決定する話者数判定手段をさらに備えたことが好ましい。
【0020】
この発明では、類似度算出手段により得られた類似度を要素とする類似度行列に基づいて固有値差分により音声信号中の話者数を決定している。前述のように、類似度は発話の特徴を正確に表現しているので、この類似度を要素とする類似度行列を用いることにより、話者数の決定をより正確に行うことができる。
【0021】
本発明の話者クラスタリング装置において、前記類似度算出手段は、前記算出した各発話間の類似度のうちの最大値にあらかじめ定められた係数を乗じて算出した閾値を下回る類似度を0として前記類似度を求めることが好ましい。
【0022】
この発明では、類似度の閾値を定め、この閾値を下回る場合には類似度を0(ゼロ)とする処理を行う。類似度の閾値は、各発話間の類似度のうちの最大値にあらかじめ定められた係数を乗じて算出した値であり、適宜調整可能とされている。
これにより、発話間の類似度が明らかに小さい場合は類似度を0とすることができるので、前述した固有値差分による話者数推定の精度を向上させることができる。
演算量を大幅に低減させることができる。
【0023】
本発明の話者クラスタリング装置において、前記類似度算出手段は、前記算出した各発話間の類似度のうち、類似度が大きい上位所定数以外の類似度を0として前記類似度を求めることが好ましい。
【0024】
この発明では、類似度が大きい上位所定数以外の類似度を0(ゼロ)とする。すなわち、類似度が小さい場合は、類似度を0(ゼロ)とする処理を行う。類似度の上位所定数は適宜調整可能とされている。
これにより、発話間の類似度が明らかに小さい場合は類似度を0とすることができるので、前述した固有値差分による話者数推定の精度を向上させることができる。
【0025】
本発明の話者クラスタリング方法は、入力された音声信号中の同一話者の発話を同定する話者クラスタリング方法であって、ベクトル量子化を用いて前記音声信号を符号に変換するベクトル量子化ステップと、前記変換された符号中の各発話に対して、前記符号の出現回数を成分とした出現頻度ベクトルを生成する出現頻度生成ステップと、前記出現頻度ベクトルに基づいて前記発話間の類似度を求める類似度算出ステップと、前記発話間の類似度に基づいて前記発話を分類するクラスタリングステップと、を備えたことを特徴とする。
【0026】
本発明は、音声信号を符号に変換し、変換された符号から出現頻度ベクトルを生成し、生成された出現頻度ベクトルから発話間のコサイン距離を算出して類似度を求め、算出された類似度に基づくクラスタリングを行う。
コサイン距離による類似度は、符号の出現頻度の分布をベクトルとして、出現頻度ベクトルの間の角度に依存する。また、コサイン距離は、発話間に出現した符号の頻度だけに依存するため、一方の発話で出現頻度が0(ゼロ)の符号が存在した場合に、コサイン距離算出のための分子の和には寄与しない。このため、発話が短い場合の発話間の音韻の出現頻度の偏りが生じる場合に、コサイン距離で算出した類似度を用いてクラスタリングすることにより、発話の話者性を反映し、発話の長さや発話間の音韻の出現頻度の偏りに影響を受けない話者クラスタリングを実現することができる。
また、発話間のコサイン距離の算出において、一方の発話の出現頻度ベクトルがゼロである場合は類似度もゼロとなり、発見法的な処理を行う必要がない。したがって、演算量を大幅に低減させることができるとともに、発話データに特別な処理を施さないことから、より精度の高い話者クラスタリングを行うことができる。
【0027】
また、本発明では、発話中の符号を用いて算出されたコサイン距離に基づいて類似度が求められるので、発話の長さが短い場合であっても、正確な発話特性を得ることができ、その結果、精度の高い話者クラスタリングを行うことができる。
【図面の簡単な説明】
【0028】
【図1】本発明の第1実施形態にかかる話者クラスタリング装置の概略構成を示すブロック図。
【図2】第1実施形態における話者クラスタリング装置の動作を示すフローチャート。
【図3】第1実施形態において音声信号から特徴ベクトルへの変換を示す説明図。
【図4】第1実施形態において特徴ベクトルから特徴空間への変換を示す説明図。
【図5】第1実施形態においてベクトル量子化により得られた音声信号の符号列を示す図。
【図6】第1実施形態において各発話の出現頻度ベクトルの生成を説明する図。
【図7】第1実施形態において発話間の類似度を示すマトリックス図。
【図8】第3実施形態においてベクトル量子化により得られた音声信号の符号列を示す図。
【図9】第3実施形態において各発話の出現頻度ベクトルの生成を説明する図。
【図10】第4実施形態にかかる話者クラスタリング装置の概略構成を示すブロック図。
【図11】第4実施形態においてベクトル量子化により得られた音声信号の符号列を示す図。
【図12】第4実施形態において各発話の出現頻度ベクトルの生成を説明する図。
【発明を実施するための形態】
【0029】
以下、本発明の実施形態を図面に基づいて説明する。本実施形態では、入力された音声信号中の発話を同一話者ごとにまとめる話者クラスタリング装置について説明する。
〔1.第1実施形態〕
[1−1.話者クラスタリング装置の構成]
話者クラスタリング装置100は、図1に示すように、音声信号取得手段10と、発話区分手段20と、ベクトル量子化手段30と、出現頻度生成手段40と、類似度算出手段50と、クラスタリング手段60と、話者数判定手段70と、を備えている。また、図示しないが、話者クラスタリング装置100は、音声信号を入力可能な入力手段を備えている。
【0030】
音声信号取得手段10は、図示しない入力手段によって入力された音声信号を取得する。
発話区分手段20は、入力された音声信号を発話ごとに区分する。具体的には、音声信号中の音声が発生していない部分で区切ることができる。
【0031】
ベクトル量子化手段30は、入力された音声信号を符号に変換するものであり、特徴ベクトル時系列変換部31、特徴ベクトルクラスタリング部32、および符号列生成部33を備えている。
特徴ベクトル時系列変換部31は、音声信号を一定時間ごとにサンプリングし、各サンプルにおける、例えば、メルケプストラムなどの音声の特徴量(特徴ベクトル)を抽出し、時系列に出力する。すなわち、特徴ベクトルを時系列に生成する。
特徴ベクトルクラスタリング部32は、特徴ベクトルに基づいて各サンプルを特徴空間に並べ、特徴空間におけるサンプルの集合ごとにクラスタリングし、生成された各クラスタに識別可能な番号を付与する。
符号列生成部33は、各クラスタに付与された番号を符合として用い、音声信号を時系列の符号(以下、符号列と表記する。)に変換する。
【0032】
出現頻度生成手段40は、符号列中の各符号の出現回数を成分とする出現頻度ベクトルを発話ごとに生成する。
類似度算出手段50は、各発話の出現頻度ベクトルを用いて、発話間のコサイン距離を算出し、このコサイン距離を発話間の類似度とする。
【0033】
クラスタリング手段60は、スペクトラルクラスタリングにより、算出した類似度に基づいて発話のクラスタリングを行う。
ここで、スペクトラルクラスタリングについて説明する。
クラスタリング対象のデータ集合をC={i|i=1、…、N}、データiとjとの類似度wij≧0としたときのデータ集合Cのクラスタへの分割を以下の式(1)で表すとする。
【0034】
【数1】
【0035】
式(1)中、Qはクラスタ数である。
また、クラスタ内の平均類似度SWを以下の式(2)で表し、クラスタ間の平均類似度SBを以下の式(3)で表す。
【0036】
【数2】
【0037】
【数3】
【0038】
スペクトラルクラスタリングは、クラスタ内の平均類似度SWを大きくし、クラスタ間の平均類似度SBを小さくするように、データ集合Cをクラスタリングする手法である。
【0039】
話者数判定手段70は、スペクトラルクラスタリングによる結果に基づいて、音声信号中の話者の数を判定する。
【0040】
[1−2.話者クラスタリング装置の動作]
次に、話者クラスタリング装置100の具体的な動作を図2のフローチャートに従って説明する。
まず、音声信号取得手段10は、図示しない入力手段によって入力された音声信号Aを取得する(ステップ1、以下ステップを「S」と略す)。
次に、発話区分手段20は、図3に示すように、入力された音声信号Aを、発話a1、a2、a3 …aNに分割する(S2)。ここで、Nは発話数である。
【0041】
次に、特徴ベクトル時系列変換部31は、図3に示すように、入力された音声信号Aを1/100秒ずつにサンプリングし、各サンプルについて、30次元の特徴ベクトルを時系列に抽出する(S3)。この特徴ベクトルは、音声認識の分野で一般的に用いられているメルケプストラムと呼ばれる特徴パラメータである(各次元の特徴パラメータは図示していない)。
【0042】
次に、特徴ベクトルクラスタリング部32は、図4に示すように、30次元の特徴ベクトルを30次元の特徴空間に並べ、該特徴空間におけるサンプルの集合ごとにクラスタリングする(S4)。クラスタリングにより生成したクラスタには互いに識別可能な番号を付与する。ここで生成されるクラスタの数は、後述する各発話の出現頻度ベクトルを生成したときの符号帳サイズVに相当する。符号長サイズVは適宜調整可能であるが、本実施形態では、例えば、256個のクラスタを生成し、各クラスタに1〜256の番号を付与する。
次に、符号列生成部33は、図5に示すように、各クラスタに付与された番号を符号として用い、該符号を時系列に並べた符号列を生成する(S5)。
以上のS3〜S5の処理により、音声信号が符号に変換され、ベクトル量子化が完成する。
【0043】
次に、出現頻度生成手段40は、図6に示すように、発話aiの符号帳をそれぞれ生成し、発話aiにおける各符号の出現回数を成分とする出現頻度ベクトルを生成する(S6)。ここで生成した符号帳の符号帳サイズVは、前述の特徴ベクトルクラスタリング部22により生成されたクラスタの数に相当する。
【0044】
次に、類似度算出手段50は、発話aiの出現頻度ベクトルに基づいて発話間のコサイン(余弦)距離を算出し、このコサイン距離を類似度とする(S7)。
発話aiと発話ajとの類似度wij(0)は、以下の式(4)で算出することができる。なお、本実施形態では、類似度wij(0)に対して後処理を行い、最終的な類似度wijを算出するため、調整前類似度wij(0)とする。
【0045】
【数4】
【0046】
式(4)中、fivは発話aiにおける符号vの出現頻度、fjvは発話ajにおける符号vの出現頻度、i、jは1〜Nの整数、v、v’は1〜Vの整数、Nは発話数、Vは各発話の出現頻度ベクトルの符号帳サイズである。
【0047】
ここで、調整前類似度wij(0)に対して調整(後処理)を行う。発話aiの最大類似度wi*を以下の式(5)で表したとき、調整前類似度wij(0)が最大類似度wi*のε倍より小さい場合は類似度を0にする処理(以下、トリミングと言うこともある。)を行い、以下の式(6)に示すように、発話aiと発話ajとの類似度wijを算出する。ここで、εは類似度トリミング係数と呼ばれる1<ε<0の定数であり、適宜調整することができる。
類似度wij(0)が最大類似度wi*のε倍より小さいということは、類似度が明らかに小さいということである。したがって、明らかに類似度が小さい場合に類似度を0と近似することにより、後述のクラスタリングにおいて演算量を低減させることができる。
【0048】
【数5】
【0049】
式(5)中、i、jは1〜Nの整数、Nは発話数である。
【0050】
【数6】
【0051】
式(6)中、i、jは1〜Nの整数、Nは発話数である。
算出された発話間の類似度は、図7に示すようなマトリックス状に表現することができる。図7において、発話a1と発話a3との類似度が「150」と高く、発話a1と発話a2との類似度は「0」で類似していないということが言える。
【0052】
次に、クラスタリング手段60は、図7に示す類似度に基づいて、スペクトラルクラスタリングを行う(S8)。以下に、具体的な方法を説明する。
まず、S7で算出された類似度wijを要素とする類似度行列Wから、ラプラシアン行列(N次正方行列)Lを以下の式(7)により算出する。
【0053】
【数7】
【0054】
式(7)中、Iは単位行列、Dは対角行列、i、j、kは1〜Nの整数、Nは発話数である。
ラプラシアン行列LのQ個の固有ベクトルviqを以下の式(8)で表す。
【0055】
【数8】
【0056】
式(8)で示す固有ベクトルviqから、yiqを要素とするN行Q列行列Yを以下の式(9)により算出する。
【0057】
【数9】
【0058】
式(9)中、iは1〜Nの整数、qは1〜Qの整数、Nは発話数、Qは固有ベクトルの数である。
式(9)に示すyiqを要素とする行列YのN個の行ベクトルを、以下の式(10)で表されるk−meansクラスタリングにより、Q個のクラスタに分割する。
【0059】
【数10】
【0060】
式(10)中、α、qは1〜Qの整数、iは1〜Nの整数、Qは固有ベクトルの数、Nは発話数である。
このようにして得られたQ個のクラスタには、特徴が類似する発話がそれぞれ分類され、1つのクラスタに属する発話は同一話者による発話であると判定することができる。
【0061】
次に、話者数判定手段70は、音声信号中で会話をしている話者の数を判定する(S9)。スペクトラルクラスタリングにおいて、上記式(3)で示すクラスタ間の平均類似度SBが0(ゼロ)となるような理想的な場合には、ラプラシアン行列Lの最小固有値0がQ重に縮退することが数学的に示される。また、理想的な場合からの乖離が小さい場合には、摂動論的な解析から、固有値λQ+1−λQに大きなギャップが生じることが示される。ここで、Qはスペクトラルクラスタリングにより分類されたクラスタ数である。このような知見に基づいて、クラスタ数Qは以下の式(11)で算出することができる。
【0062】
【数11】
【0063】
式(11)中、λは固有値、iは整数である。
以上の処理終了後、話者クラスタリング装置100は、入力された音声信号中の話者の同定結果および話者数を図示しない出力手段に出力した後、動作を終了する。
【0064】
[1−3.第1実施形態の作用効果]
上述した第1実施形態では、以下に示す作用効果を奏することができる。
ベクトル量子化手段30により音声信号を符号に変換し(量子化)、出現頻度生成手段40はこの符号に基づいて各符号を成分とする出現頻度ベクトルを発話ごとに生成する。類似度算出手段50は、該出現頻度ベクトルを用いてコサイン距離を算出し、該コサイン距離を類似度とする。
特性の異なる発話の類似度を求める場合、出現頻度ベクトルからKL距離を用いて類似度を求める際は、一方の発話の出現頻度ベクトル中の成分値がゼロの箇所を他の値に変えるなどの処理が必要であり、そのために精度が落ちるという問題があったが、本実施形態では、コサイン距離を用いて類似度を求めるため、一方の発話の出現頻度ベクトル中の成分が0(ゼロ)である場合には類似度への寄与もゼロになり(上記式(1)参照)、特別な処理を行う必要がない。したがって、より精度の高い話者クラスタリングを行うことができる。
【0065】
また、従来のKL距離やユークリッド距離を用いる方法の場合、発話の長さが短くなると、発話の話者性を十分に得られない場合があった。一方、本実施形態では音声信号を符号に変換し、該符号の出現回数を成分とした出現頻度ベクトルを用いてコサイン距離を算出し、発話間の類似度を求めるので、発話の長さに関係なく正確な話者性を得ることができる。したがって、発話の長さが短い場合であっても、発話の話者性を正確に得ることができ、その結果、精度の高い話者クラスタリングを行うことができる。
【0066】
さらに、上記実施形態では、話者数判定手段70は、ラプラシアン行列Lの固有値を用いた上記式(11)により音声信号中の話者数を算出することができる。したがって、定量的に話者数を判定することができる。
【0067】
そして、上記実施形態では、式(4)に示すように、類似度が明らかに小さい場合は類似度を0とする近似を行うので、クラスタリングを行う際の話者数の推定精度を向上させることができる。
【0068】
〔2.第2実施形態〕
次に、本発明の第2実施形態について説明する。第2実施形態では、出現頻度生成手段の動作が前記第1実施形態の出現頻度生成手段40と相違する。なお、前記第1実施形態と同一の構成および動作については説明を省略する。
出現頻度生成手段は、符号列中の各符号の出現回数に重み付けを行い、この重み付けされた出現回数を成分とする出現頻度ベクトルを発話ごとに生成する。
具体的な重み付けの方法としては、TF/IDF(Term Frequency Inverse/Document Frequency)法が用いられる。具体的には、各発話における符号の出現回数を、当該符号と同一の符号が出現する発話の数の逆数で重み付けする。このように、発話ごとに各符号の出現回数が重み付けされ、出現頻度生成手段は、この重み付けされた出現回数を成分とする出現頻度ベクトルを生成する。
このようにして生成された出現頻度ベクトルを用いて、第1実施形態と同様に、類似度算出手段50は類似度を算出する。
【0069】
このような第2実施形態によれば、前記第1実施形態の効果に加えて次の効果が得られる。
各発話における各符号の出現回数に対してTF/IDF法による重み付けを行う。本実施形態においては、発話の特徴である符号が、他の発話に出現しない程、重み付けされるようになる。すなわち、どの発話にも出現するような特徴(符号)は、該発話中の特徴とされるものではなく、他の発話に出現しない特徴(符号)に対して、重み付けを行う。
したがって、符号に変換された音声信号の特徴をより正確に抽出でき、より精度の高い話者クラスタリングを行うことができる。
【0070】
〔3.第3実施形態〕
次に、本発明の第3実施形態について説明する。第3実施形態では、出現頻度生成手段において出現頻度ベクトルの成分が前記第1実施形態の出現頻度生成手段40と相違する。なお、前記第1実施形態と同一の構成については説明を省略する。
【0071】
出現頻度生成手段は、音声信号から変換された符号中の連続する符号の組み合わせによる符号列の出現回数を成分とする出現頻度ベクトルを発話ごとに生成する。
第3実施形態の出現頻度生成手段による具体的な方法を図8および図9を用いて説明する。
図8に示すように、音声信号から変換された符号列において、連続する2つの符号を1単位とした、単位符号u1、u2、u3、…という符号列が存在する。このとき、同一の符号の組み合わせが存在する場合は、同一の単位符号とみなす。例えば、図8において、符号列の最初の単位符号u1の符号の組み合わせは「5,9」である。したがって、該符号列における「5,9」の符号の並びは全て単位符号u1とする。
【0072】
出現頻度生成手段は、図9に示すように、発話aiごとに、単位符号uiの出現回数を成分とする出現頻度ベクトルを生成する。ここで、発話aiの符号帳サイズは、単位符号uiの数に相当する。
このようにして生成された出現頻度ベクトルを用いて、第1実施形態と同様に、類似度算出手段50は類似度を算出する。
【0073】
このような第3実施形態によれば、前記第1実施形態の効果に加えて次の効果が得られる。
出現頻度生成手段は、音声信号から変換された符号における連続する符号の組み合わせを成分とする出現頻度ベクトルを生成する。連続する符号の組み合わせはその発話における特徴を表すものであり、単一の符号よりも発話の特性を特徴的に表す。また、同一の符号の組み合わせは同一の特徴であると判定することができる。したがって、連続する符号の組み合わせの出現回数を成分とする出現頻度ベクトルを用いることで、発話の特徴をより正確に抽出することができ、精度の高い類似度を算出することができる。その結果、より精度の高い話者クラスタリングを行うことができる。
【0074】
〔4.第4実施形態〕
次に、本発明の第4実施形態について説明する。第4実施形態では、変化量ベクトル量子化手段をさらに備え、この変化量を出現頻度ベクトルの成分として用いる点が、第1実施形態と相違する。なお、前記第1実施形態と同一の構成については説明を省略する。
【0075】
第4実施形態の話者クラスタリング装置101の構成を図10に示す。
図10に示すように、話者クラスタリング装置101は、音声信号取得手段10と、発話区分手段20と、ベクトル量子化手段30と、変化量ベクトル量子化手段80と、出現頻度生成手段41と、類似度算出手段50と、クラスタリング手段60と、話者数判定手段70と、を備えている。
【0076】
変化量ベクトル量子化手段80は、ベクトル量子化を用いて、音声信号の時系列的な変化量を符号に変換する。すなわち、変化量符号列とは、図11に示すように、ベクトル量子化手段30によって生成された符号列中の隣接する符号の変化量(差分)が新たな符号列として生成されたものである。
【0077】
出現頻度生成手段41は、ベクトル量子化手段30によって生成された符号列と、変化量ベクトル量子化手段80によって生成された変化量符号列と、の2つの符号列中の各符号の出現回数を成分とする出現頻度ベクトルを生成する。具体的には、発話aiごとに、符号列中の各符号の出現回数を成分とする出現頻度ベクトルを第1実施形態と同様に生成し、さらに該出現頻度ベクトルの符号帳サイズを拡張し、変化量符号列中の各変化量の出現回数を成分とする出現頻度ベクトルを生成する。図12において、発話aiの符号列中の各符号の出現回数を成分とする出現頻度ベクトルの符号帳サイズは256であり、変化量符号列を成分とする出現頻度ベクトルを257以降に生成する。図12に示す出現頻度ベクトルの257以降の横軸は、変化量を表している。例えば、変化量4の出現頻度ベクトルは、発話a1では3、発話a3では3となる。このときの符号帳サイズは可変であり、変化量の数の分だけ拡張する。
このようにして生成された出現頻度ベクトルを用いて、第1実施形態と同様に、類似度算出手段50は類似度を算出する。
【0078】
このような第4実施形態によれば、前記第1実施形態の効果に加えて次の効果が得られる。
音声信号の時系列的な変化量は発話の特徴を表すものであるので、発話における同一の変化量は同一の特徴であると判定することができる。第4実施形態では、符号列中の各符号の出現回数のほかにも変化量の出現回数を成分とする出現頻度ベクトルを生成するので、発話の特徴をより正確に抽出することができ、精度の高い類似度を算出することができる。その結果、より精度の高い話者クラスタリングを行うことができる。
【0079】
〔5.変形例〕
なお、本発明は前記各実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。
例えば、上記実施形態において、類似度wijを算出するために、上記式(4)により調整前類似度wij(0)を算出し、この調整前類似度wij(0)に対して上記式(5)に示す調整を行い、最終的な類似度wijを算出することとしたが、上記式(4)により算出された調整類似度wij(0)をそのまま類似度wijとして用いてもよい。これによれば、類似度がより正確となるので、より精度の高い話者クラスタリングを行うことができる。
【0080】
また、上記実施形態において、調整前類似度wij(0)に対して調整(後処理)を行う際、調整前類似度wij(0)が最大類似度wi*のε倍より小さい場合は類似度を0にする処理(式(6)参照)を行ったが、調整前類似度を0に近似する方法はこれに限られない。例えば、発話間の類似度のうち、類似度が大きい上位所定数を予め決めておき、当該所定数以外の類似度について調整前類似度を0に近似する方法がある。これによれば、クラスタリングを行う際の演算量を低減させることができる。
【0081】
さらに、第3実施形態において、単位符号uiを連続する2つの符号の組み合わせとしたが、符号の数はこれに限られない。連続する3つの符号の組み合わせ(並び)や連続する4つの符号の並び(並び)を単位符号としてもよい。なお、符号の数が増えるほど類似度の精度は高くなるが、同一の単位符号の出現頻度が低くなり、発話特性を得られなくなる可能性があるので、適宜調整する。
【産業上の利用可能性】
【0082】
本発明は、音声認識精度の改善や、話者単位のスキップ再生などの視聴支援への活用など、音声認識の分野に利用できる。
【符号の説明】
【0083】
10…音声信号取得手段
20…発話区分手段
30…ベクトル量子化手段
40、41…出現頻度生成手段
50…類似度算出手段
60…クラスタリング手段
70…話者数判定手段
80…変化量ベクトル量子化手段
100…話者クラスタリング装置
【特許請求の範囲】
【請求項1】
入力された音声信号中の同一話者の発話を同定する話者クラスタリング装置であって、
ベクトル量子化を用いて前記音声信号を符号に変換するベクトル量子化手段と、
前記変換された符号中の各発話に対して、前記符号の出現回数を成分とした出現頻度ベクトルを生成する出現頻度生成手段と、
前記出現頻度ベクトルに基づいて前記発話間のコサイン距離をそれぞれ算出し、該コサイン距離を発話間の類似度として求める類似度算出手段と、
前記発話間の類似度に基づいて前記発話を分類するクラスタリング手段と、を備えた
ことを特徴とする話者クラスタリング装置。
【請求項2】
請求項1に記載の話者クラスタリング装置において、
前記出現頻度生成手段は、前記出現頻度ベクトルに対して、前記各発話内における前記符号の出現回数を、当該符号と同一の符号が出現する前記発話の数の逆数で重み付けする
ことを特徴とする話者クラスタリング装置。
【請求項3】
請求項1または請求項2に記載の話者クラスタリング装置において、
前記出現頻度生成手段は、前記各発話中の連続する符号の組み合わせによる符号列の出現回数を成分とした出現頻度ベクトルとして生成する
ことを特徴とする話者クラスタリング装置。
【請求項4】
請求項1から請求項3のいずれかに記載の話者クラスタリング装置において、
ベクトル量子化を用いて前記音声信号の時系列的な変化量を符号に変換する変化量ベクトル量子化手段をさらに備え、
前記出現頻度生成手段は、各発話に対して、前記音声信号の符号の出現回数と、前記変化量の符号の出現回数とを成分とする前記出現頻度ベクトルを生成する
ことを特徴とする話者クラスタリング装置。
【請求項5】
請求項1から請求項4のいずれかに記載の話者クラスタリング装置において、
前記クラスタリング手段は、
前記算出したコサイン距離による発話間の類似度を用いてスペクトラルクラスタリングを行うことを特徴とする話者クラスタリング装置。
【請求項6】
請求項1から請求項5のいずれかに記載の話者クラスタリング装置において、
前記類似度算出手段により得られる各発話間の前記類似度を要素とする類似度行列から得られる正方行列の固有値を算出し、連続する固有値間の差分が最大値をとる固有値に基づいて、前記音声信号中の話者数を決定する話者数判定手段をさらに備えた
ことを特徴とする話者クラスタリング装置。
【請求項7】
請求項1から請求項6のいずれかに記載の話者クラスタリング装置において、
前記類似度算出手段は、
前記算出した各発話間の類似度のうちの最大値にあらかじめ定められた係数を乗じて算出した閾値を下回る類似度を0として前記類似度を求めることを特徴とする話者クラスタリング装置。
【請求項8】
請求項1から請求項6のいずれかに記載の話者クラスタリング装置において、
前記類似度算出手段は、
前記算出した各発話間の類似度のうち、類似度が大きい上位所定数以外の類似度を0として前記類似度を求めることを特徴とする話者クラスタリング装置。
【請求項9】
入力された音声信号中の同一話者の発話を同定する話者クラスタリング方法であって、
ベクトル量子化を用いて前記音声信号を符号に変換するベクトル量子化ステップと、
前記変換された符号中の各発話に対して、前記符号の出現回数を成分とした出現頻度ベクトルを生成する出現頻度生成ステップと、
前記出現頻度ベクトルに基づいて前記発話間の類似度を求める類似度算出ステップと、
前記発話間の類似度に基づいて前記発話を分類するクラスタリングステップと、を備えた
ことを特徴とする話者クラスタリング方法。
【請求項1】
入力された音声信号中の同一話者の発話を同定する話者クラスタリング装置であって、
ベクトル量子化を用いて前記音声信号を符号に変換するベクトル量子化手段と、
前記変換された符号中の各発話に対して、前記符号の出現回数を成分とした出現頻度ベクトルを生成する出現頻度生成手段と、
前記出現頻度ベクトルに基づいて前記発話間のコサイン距離をそれぞれ算出し、該コサイン距離を発話間の類似度として求める類似度算出手段と、
前記発話間の類似度に基づいて前記発話を分類するクラスタリング手段と、を備えた
ことを特徴とする話者クラスタリング装置。
【請求項2】
請求項1に記載の話者クラスタリング装置において、
前記出現頻度生成手段は、前記出現頻度ベクトルに対して、前記各発話内における前記符号の出現回数を、当該符号と同一の符号が出現する前記発話の数の逆数で重み付けする
ことを特徴とする話者クラスタリング装置。
【請求項3】
請求項1または請求項2に記載の話者クラスタリング装置において、
前記出現頻度生成手段は、前記各発話中の連続する符号の組み合わせによる符号列の出現回数を成分とした出現頻度ベクトルとして生成する
ことを特徴とする話者クラスタリング装置。
【請求項4】
請求項1から請求項3のいずれかに記載の話者クラスタリング装置において、
ベクトル量子化を用いて前記音声信号の時系列的な変化量を符号に変換する変化量ベクトル量子化手段をさらに備え、
前記出現頻度生成手段は、各発話に対して、前記音声信号の符号の出現回数と、前記変化量の符号の出現回数とを成分とする前記出現頻度ベクトルを生成する
ことを特徴とする話者クラスタリング装置。
【請求項5】
請求項1から請求項4のいずれかに記載の話者クラスタリング装置において、
前記クラスタリング手段は、
前記算出したコサイン距離による発話間の類似度を用いてスペクトラルクラスタリングを行うことを特徴とする話者クラスタリング装置。
【請求項6】
請求項1から請求項5のいずれかに記載の話者クラスタリング装置において、
前記類似度算出手段により得られる各発話間の前記類似度を要素とする類似度行列から得られる正方行列の固有値を算出し、連続する固有値間の差分が最大値をとる固有値に基づいて、前記音声信号中の話者数を決定する話者数判定手段をさらに備えた
ことを特徴とする話者クラスタリング装置。
【請求項7】
請求項1から請求項6のいずれかに記載の話者クラスタリング装置において、
前記類似度算出手段は、
前記算出した各発話間の類似度のうちの最大値にあらかじめ定められた係数を乗じて算出した閾値を下回る類似度を0として前記類似度を求めることを特徴とする話者クラスタリング装置。
【請求項8】
請求項1から請求項6のいずれかに記載の話者クラスタリング装置において、
前記類似度算出手段は、
前記算出した各発話間の類似度のうち、類似度が大きい上位所定数以外の類似度を0として前記類似度を求めることを特徴とする話者クラスタリング装置。
【請求項9】
入力された音声信号中の同一話者の発話を同定する話者クラスタリング方法であって、
ベクトル量子化を用いて前記音声信号を符号に変換するベクトル量子化ステップと、
前記変換された符号中の各発話に対して、前記符号の出現回数を成分とした出現頻度ベクトルを生成する出現頻度生成ステップと、
前記出現頻度ベクトルに基づいて前記発話間の類似度を求める類似度算出ステップと、
前記発話間の類似度に基づいて前記発話を分類するクラスタリングステップと、を備えた
ことを特徴とする話者クラスタリング方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2011−59500(P2011−59500A)
【公開日】平成23年3月24日(2011.3.24)
【国際特許分類】
【出願番号】特願2009−210499(P2009−210499)
【出願日】平成21年9月11日(2009.9.11)
【出願人】(500257300)ヤフー株式会社 (1,128)
【Fターム(参考)】
【公開日】平成23年3月24日(2011.3.24)
【国際特許分類】
【出願日】平成21年9月11日(2009.9.11)
【出願人】(500257300)ヤフー株式会社 (1,128)
【Fターム(参考)】
[ Back to top ]