(57)【特許請求の範囲】
【請求項１】
学習用の音声データが少ないことを表す判定情報が付与された音素モデルおよび前記判定情報が付与されていない音素モデルをそれぞれ少なくとも１つ入力する入力部と、
ツリー構造のルートノードとして、入力された音素モデルを含むノードを生成するノード初期化部と、
ツリー構造のノードのうち子ノードを有さないノードに対して、ノードに含まれる音素モデルの集合を２つに分割して得られる２つの子集合の組の候補を生成する候補生成部と、
前記候補のうち、前記候補に含まれる２つの前記子集合の少なくとも一方が、前記判定情報が付与された音素モデルのみを含む前記候補を削除する候補削除部と、
削除された前記候補以外の前記候補それぞれに対して、前記候補に含まれる２つの前記子集合ごとに前記子集合に含まれる前記音素モデル間の類似度を算出し、各子集合で算出した類似度の和を算出する類似度算出部と、
算出した和が最大となる前記候補を選択する候補選択部と、
選択した前記候補の生成元であるノードの子ノードとして、選択した前記候補に含まれる２つの子集合それぞれを含む２つのノードを生成するノード生成部と、
前記ツリー構造のノードに含まれる音素モデルの集合を単位として音素モデルをクラスタリングするクラスタリング部と、
を備えたことを特徴とするクラスタリング装置。
【請求項２】
前記入力部は、前記音声データが少ない言語であることを表す言語判定情報が前記判定情報として付与された音素モデルおよび前記言語判定情報が付与されていない音素モデルをそれぞれ少なくとも１つ入力し、
前記候補削除部は、前記候補のうち、前記候補に含まれる２つの前記子集合の少なくとも一方が、前記言語判定情報が付与された音素モデルのみを含む前記候補を削除すること、
を特徴とする請求項１に記載のクラスタリング装置。
【請求項３】
前記候補生成部は、ツリー構造のノードのうち、子ノードを有さず、かつ、前記判定情報が付与された音素モデルを含むノードに対して前記候補を生成すること、
を特徴とする請求項１に記載のクラスタリング装置。
【請求項４】
前記音素モデルは、音素の音響的特徴の遷移関係をモデル化したＨＭＭ（Hidden Markov Model）の各状態であること、
を特徴とする請求項１に記載のクラスタリング装置。
【請求項５】
入力部が、学習用の音声データが少ないことを表す判定情報が付与された音素モデルおよび前記判定情報が付与されていない音素モデルをそれぞれ少なくとも１つ入力する入力ステップと、
ノード初期化部が、ツリー構造のルートノードとして、入力された音素モデルを含むノードを生成するノード初期化ステップと、
候補生成部が、ツリー構造のノードのうち子ノードを有さないノードに対して、ノードに含まれる音素モデルの集合を２つに分割して得られる２つの子集合の組の候補を生成する候補生成ステップと、
候補削除部が、前記候補のうち、前記候補に含まれる２つの前記子集合の少なくとも一方が、前記判定情報が付与された音素モデルのみを含む前記候補を削除する候補削除ステップと、
類似度算出部が、削除された前記候補以外の前記候補それぞれに対して、前記候補に含まれる２つの前記子集合ごとに前記子集合に含まれる前記音素モデル間の類似度を算出し、各子集合で算出した類似度の和を算出する類似度算出ステップと、
候補選択部が、算出した和が最大となる前記候補を選択する候補選択ステップと、
ノード生成部が、選択した前記候補の生成元であるノードの子ノードとして、選択した前記候補に含まれる２つの子集合それぞれを含む２つのノードを生成するノード生成ステップと、
クラスタリング部が、前記ツリー構造のノードに含まれる音素モデルの集合を単位として音素モデルをクラスタリングするクラスタリングステップと、
を備えたことを特徴とするクラスタリング方法。
【請求項６】
コンピュータを、
学習用の音声データが少ないことを表す判定情報が付与された音素モデルおよび前記判定情報が付与されていない音素モデルをそれぞれ少なくとも１つ入力する入力部と、
ツリー構造のルートノードとして、入力された音素モデルを含むノードを生成するノード初期化部と、
ツリー構造のノードのうち子ノードを有さないノードに対して、ノードに含まれる音素モデルの集合を２つに分割して得られる２つの子集合の組の候補を生成する候補生成部と、
前記候補のうち、前記候補に含まれる２つの前記子集合の少なくとも一方が、前記判定情報が付与された音素モデルのみを含む前記候補を削除する候補削除部と、
削除された前記候補以外の前記候補それぞれに対して、前記候補に含まれる２つの前記子集合ごとに前記子集合に含まれる前記音素モデル間の類似度を算出し、各子集合で算出した類似度の和を算出する類似度算出部と、
算出した和が最大となる前記候補を選択する候補選択部と、
選択した前記候補の生成元であるノードの子ノードとして、選択した前記候補に含まれる２つの子集合それぞれを含む２つのノードを生成するノード生成部と、
前記ツリー構造のノードに含まれる音素モデルの集合を単位として音素モデルをクラスタリングするクラスタリング部と、
として機能させるためのクラスタリングプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ツリー構造のノードをクラスタとして音素モデルをクラスタリングする装置、方法およびプログラムに関するものである。
【背景技術】
【０００２】
音声認識の分野では、入力音声の音響的特徴を音素ごとの確率モデルで表現する手法が一般的に用いられている。この確率モデルのことを音素モデルと呼ぶ。音素モデルは、音素を発音した音声データを用いて、音素モデルのパラメタを統計的に学習することで得られる。音素モデルの精度は学習に用いる音声データに依存するため、精度の高い音素モデルを得るためには、できるだけ大量の音声データを用いて音素モデルを学習することが望ましい。
【０００３】
しかし、音素モデルの学習時に大量の学習データが利用できない場合がある。例えば、タイ語をはじめとする東南アジア系の言語では、音素モデルを学習するための音声データが少量しか利用できない場合がある。このため、比較的大量の音声データが利用可能な欧米言語などに比べて、精度の低い音素モデルしか得られないという問題が生じうる。また、タイ語の音素には短母音と長母音の区別が存在するが、短母音に比べて、長母音の音声データが少量しか利用できない場合もある。このような場合には、短母音の音素モデルの精度に比べて長母音の音素モデルの精度が相対的に低くなるという問題が生じうる。
【０００４】
学習用の音声データが少量しか利用できない音素モデルを高精度に学習する方法として、適応学習と呼ばれる方法が知られている。適応学習では、少量の音声データしか利用できない音素モデルＡとは別の音素モデルＢを選択し、音素モデルＡおよびＢに対応する音声データを用いて学習した初期音素モデルに対して、音素モデルＡに対応する少量の音声データを用いて初期音素モデルのパラメタを適応的に更新することで、音素モデルＡを学習する。このように、適応学習とは、初期音素モデルのパラメタを、学習対象の音素モデルに対応する音声データを用いて適応的に更新していくことで、初期音素モデルから学習対象の音素モデルを得る技術である。
【０００５】
適応学習では、初期音素モデルとして学習対象の音素モデルと十分に類似した音素モデルを選択し、かつ、精度の高い初期音素モデルを用意することで、学習対象の音素モデルに対応する音声データが少量の場合でも、精度の高い音素モデルを得られることが知られている。したがって、適応学習で高精度の音素モデルを得るためには、まず、ある言語における任意の音素モデルに対して、同じ言語の他の１つ以上の音素モデル、または、他の言語の音素モデルのうち当該音素モデルに類似した１つ以上の音素モデルを得る必要がある。
【０００６】
互いに類似する音素モデルを得るための手法としては、ツリー構造を用いて音素モデルをクラスタリングする方法が知られている。これは、クラスタリング対象の全ての音素モデルから、相互に類似する音素モデルの集合を含む１つ以上の音素モデルクラスタを得る方法である。
【０００７】
例えば、特許文献１および非特許文献１では、決定木（Ｄｅｃｉｓｉｏｎ  Ｔｒｅｅ）を用いて音素モデルをクラスタリングする技術が提案されている。決定木を用いた方法では、クラスタリング対象となる音素モデルを全て含むルートノードから出発し、クラスタリング対象となる音素モデルの種別に関する質問を適用することで、相互に類似する音素モデルの子集合を含む新たな子ノードを階層的に追加し、音素モデルの集合を含むノードから構成されるツリー構造を生成する。さらに、生成されたツリー構造のうち子ノードを持たないノード（リーフノード）に含まれる音素モデルの集合を、音素モデルのクラスタとして取得する。
【０００８】
このようにして取得した音素モデルのクラスタに着目することで、相互に類似する音素モデルの集合を得ることができる。すなわち、ある言語の任意の音素モデルに対して、当該音素モデルを含む音素モデルのクラスタに属する他の音素モデルのうち少なくとも１つを、当該音素モデルに類似する他の音素モデルとして選択することができる。
【０００９】
【特許文献１】特許第３５４７３４９号公報
【非特許文献１】“Tree-based state tying for high accuracy acoustic modeling”, S.J.Young, et. al.（Proceedings of the workshop on Human Language Technology, 1994, p307-312, Figure 2）
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、特許文献１および非特許文献１の方法では、音素モデルの類似性のみによって音素モデルを分類するため、学習用の音声データが少量しか利用できない音素モデルのみからなるクラスタが生成される可能性がある。この場合、初期音素モデルの精度が低くなるため、適応学習による当該音素モデルの精度向上が確保できないという問題があった。
【００１１】
本発明は、上記に鑑みてなされたものであって、適応学習によって高精度の音素モデルを得られるように、類似する音素モデルを適切にクラスタリングすることができる装置、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上述した課題を解決し、目的を達成するために、本発明は、学習用の音声データが少ないことを表す判定情報が付与された音素モデルおよび前記判定情報が付与されていない音素モデルをそれぞれ少なくとも１つ入力する入力部と、ツリー構造のルートノードとして、入力された音素モデルを含むノードを生成するノード初期化部と、ツリー構造のノードのうち子ノードを有さないノードに対して、ノードに含まれる音素モデルの集合を２つに分割して得られる２つの子集合の組の候補を生成する候補生成部と、前記候補のうち、前記候補に含まれる２つの前記子集合の少なくとも一方が、前記判定情報が付与された音素モデルのみを含む前記候補を削除する候補削除部と、削除された前記候補以外の前記候補それぞれに対して、前記候補に含まれる２つの前記子集合ごとに前記子集合に含まれる前記音素モデル間の類似度を算出し、各子集合で算出した類似度の和を算出する類似度算出部と、算出した和が最大となる前記候補を選択する候補選択部と、選択した前記候補の生成元であるノードの子ノードとして、選択した前記候補に含まれる２つの子集合それぞれを含む２つのノードを生成するノード生成部と、前記ツリー構造のノードに含まれる音素モデルの集合を単位として音素モデルをクラスタリングするクラスタリング部と、を備えたことを特徴とする。
【００１３】
また、本発明は、上記装置を実行することができる方法およびプログラムである。
【発明の効果】
【００１４】
本発明によれば、適応学習によって高精度の音素モデルを得られるように、類似する音素モデルを適切にクラスタリングすることができるという効果を奏する。
【発明を実施するための最良の形態】
【００１５】
以下に添付図面を参照して、この発明にかかる装置、方法およびプログラムの最良な実施の形態を詳細に説明する。
【００１６】
（第１の実施の形態）
第１の実施の形態にかかるクラスタリング装置は、学習用の音声データが少量しか利用できない任意の音素モデルに対して、学習用の音声データが大量に利用できる１つ以上の音素モデルが必ず同じクラスタに属するという制約を満たすように音素モデルをクラスタリングするものである。
【００１７】
図１は、第１の実施の形態にかかるクラスタリング装置１００の構成を示すブロック図である。図１に示すように、クラスタリング装置１００は、記憶部１３０と、入力部１０１と、ツリー生成部１１０と、クラスタリング部１２０と、を備えている。
【００１８】
入力部１０１は、クラスタリングの対象とする音素モデルを入力するものである。具体的には、入力部１０１は、学習用の音声データが少量しか得られない音素モデルであることを判定するための判定情報（以下、判定タグという）が付与された１つ以上の音素モデルと、判定タグが付与されていない１つ以上の音素モデルとを入力する。
【００１９】
入力部１０１は、従来から用いられているあらゆる方法で音素モデルを入力できる。例えば、入力部１０１が、ネットワーク等によって接続された外部装置から音素モデルを入力するように構成してもよいし、可搬性の記憶媒体から音素モデルを入力するように構成してもよい。また、入力部１０１が、事前に記憶部１３０等に記憶した音素モデルを入力するように構成してもよい。
【００２０】
本実施の形態では、ＨＭＭ（Hidden Markov Model：隠れマルコフモデル）によって表された音素モデルを入力する。ＨＭＭは、１つ以上の状態Ｓｉと、初期状態の集合ＳＳおよび最終状態の集合ＳＦと、ある状態Ｓｊから自分自身または他の状態Ｓｉへの遷移確率Ａｊｉと、ある状態Ｓｉにおける音声特徴ベクトルＸの出力確率Ｐｉ（Ｘ）で定義される。ただし、１＜＝ｉ＜＝ＮＳおよび１＜＝ｊ＜＝ＮＳであり、ＮＳはＨＭＭを構成する状態の総数である。また、出力確率Ｐｉ（Ｘ）は、平均ベクトルμｉ、共分散行列Σｉで定義される多次元正規分布Ｎ（μｉ、Σｉ）により、Ｐｉ（Ｘ）＝Ｎ（Ｘ；μｉ、Σｉ）で与えられるものとする。
【００２１】
図２は、入力される音素モデルの一例を示す図である。図２は、状態数ＮＳ＝３のＨＭＭの例を表している。なお、同図では、遷移確率が有意な値を持たない、すなわち常に０である遷移パスの記述を省略している。また、同図では、初期状態の集合ＳＳ＝｛Ｓ１｝、最終状態の集合ＳＦ＝｛Ｓ３｝である。同図のＨＭＭは、音声認識で典型的に用いられるＨＭＭの例である。すなわち、Ｌｅｆｔ−ｔｏ−Ｒｉｇｈｔ型と呼ばれるトポロジーをもち、初期状態の集合ＳＳおよび最終状態の集合ＳＦの要素数がそれぞれ１であり、ｉ＝ｊまたはｉ＝ｊ＋１である遷移パス（ｊ、ｉ）にのみ有意な遷移確率ＡｊｉをもつＨＭＭの例を表している。
【００２２】
以下では、音素モデルとして図２で例示したＨＭＭを用いることを前提に説明を続ける。ただし、適用可能な音素モデルは図２のようなＨＭＭに限られず、他の形式のＨＭＭを用いてもよい。さらに、音素モデル相互間の類似する度合いを表す相互類似度を算出可能なモデルであれば、ＨＭＭ以外の任意の音素モデルを使用することができる。
【００２３】
なお、図２に例示したような２つ以上の状態数をもつＨＭＭを利用する場合は、ＨＭＭの同じ位置に存在する状態ごとにクラスタリングを行う。例えば、図２で例示したＨＭＭの場合、第１の状態Ｓ１、第２の状態Ｓ２、および第３の状態Ｓ３ごとに、それぞれＨＭＭの状態を対象としたクラスタリングを行う。言い換えると、図２のようなＨＭＭを利用する場合は、ＨＭＭの各状態が音素モデルに相当する。そして、このような音素モデルである各状態のクラスタリングが状態数分（ＮＳ回）実行される。
【００２４】
図１に戻り、ツリー生成部１１０は、音素モデルをクラスタリングするためのツリー構造を生成するものである。ここで、ツリー生成部１１０によって生成されるツリー構造の具体例について説明する。図３は、クラスタリングに用いるツリー構造の一例を示す図である。
【００２５】
図３に示すように、音素モデルのクラスタリングに用いるツリー構造は、音素モデルの集合を含むノードと、ノード間の親子関係を示す有向アークから構成される。このとき、有向アークで結ばれた２つのノードのうち、有向アークの発信側を親ノード、有向アークの受信側を子ノードと呼ぶ。さらに、親ノードを持たないノードをルートノードと呼び、子ノードを持たないノードをリーフノードと呼ぶ。
【００２６】
同図のツリー構造における全てのノードは、音素モデルの集合を含んでいる。例えば同図のルートノードは、音素モデル”＊ＴＨ＿ａ”、”ＴＨ＿ｂ”、”＊ＴＨ＿ｄ”、”＊ＺＨ＿ａ”、”ＺＨ＿ｃ”、”ＺＨ＿ｄ”、”ＥＮ＿ａ”、”ＥＮ＿ｂ”、および”ＥＮ＿ｃ”の９個の音素モデルを含んでいる。すなわち、同図は、タイ語（ＴＨ）の音素ａ、ｂ、ｄの音素モデル、中国語（ＺＨ）の音素ａ、ｃ、ｄの音素モデル、英語（ＥＮ）の音素ａ、ｂ、ｃの音素モデルをクラスタリングの対象として入力し、ルートノードに設定した例を表している。
【００２７】
また、同図に示すように、本実施の形態では、“（言語種別）＿（音素種別）”の形式により、言語種別と音素種別を組み合わせた名前を音素モデルそれぞれに付与する。例えば、タイ語の音素ａの音素モデルを”ＴＨ＿ａ”、中国語の音素ｃの音素モデルを”ＺＨ＿ｃ”のように表す。
【００２８】
ここで、異なる言語間で同じ音素種別に対応する音素モデルは、音声学的な観点から、汎言語的に同一の音素種別に相当すると判断された音素モデルであるものとする。例えば”ＴＨ＿ａ”、”ＺＨ＿ａ”、”ＥＮ＿ａ”は、それぞれ汎言語的な音素種別”ａ”に相当すると判断された音素モデルであるものとする。そのような汎言語的な音素種別としては、例えばＩＰＡ（International Phonetic Alphabet）を用いることができる。
【００２９】
なお、同じ汎言語的な音素種別”ａ”に相当する音素モデルであっても、実際には、その音声学的な特徴は言語によって大きく変動する。すなわち、同じ汎言語的な音素種別”ａ”に相当する音素モデルであっても、異なる言語間では、相互に類似するとは限らない。例えば、タイ語の音素モデル”ＴＨ＿ａ”に対して、中国語の音素モデル”ＺＨ＿ａ”または英語の音素モデル”ＥＮ＿ａ”が類似する音素モデルであるとは限らない。そこで、本実施の形態では、ある音素モデルに類似する音素モデルを音素種別に依らずに選択するために、以下に述べるようなツリー構造を用いた音素モデルのクラスタリング方法を利用する。
【００３０】
さらに、同図に示すように、本実施の形態では、記号「＊」を判定タグとして用いる。すなわち、音素モデル名の前に記号「＊」が付与された音素モデルは、学習用の音声データが少量しか利用できない音素モデルであることを意味する。
【００３１】
同図では、学習用の音声データが少量しか利用できない音素モデル”ＴＨ＿ａ”、“ＴＨ＿ｄ”および”ＺＨ＿ａ”に、判定タグ”＊”が付与されており、それぞれ”＊ＴＨ＿ａ”、“＊ＴＨ＿ｄ”および”＊ＺＨ＿ａ”と表記されている。すなわち、タイ語の音素ａ、タイ語の音素ｄ、および中国語の音素ａの音素モデルが、学習用の音声データが少量しか利用できない音素モデルである。
【００３２】
なお、同図のツリー構造で、ある親ノードが含む音素モデルの集合は、その全ての子ノードがそれぞれ含む音素モデルの集合の和集合となっている。逆に言えば、ある親ノード２つの子ノードが含む音素モデルの集合は、それぞれ親ノードが含む音素モデルの集合を分割した子集合となる。
【００３３】
ツリー構造を用いた音素モデルのクラスタリングでは、まず、クラスタリング対象となる全ての音素モデルを含むルートノードを設定する。そして、ルートノードに対して子ノードを新たに生成し、さらに、ある時点で子ノードを持たない全てのノードに対して子ノードを生成する処理を繰り返す。この結果生成されたツリー構造に対して、個々のリーフノードに含まれる音素モデルの集合を、音素モデルのクラスタとして取得する。同図の例では、音素モデルのクラスタとして、（＊ＴＨ＿ａ、ＴＨ＿ｂ、＊ＺＨ＿ａ）、（ＺＨ＿ｃ）、（＊ＴＨ＿ｄ、ＺＨ＿ｄ）、（ＥＮ＿ａ、ＥＮ＿ｂ、ＥＮ＿ｃ）の、４つのクラスタを得ることができる。このようにして得られた音素モデルのクラスタに含まれる１つ以上の音素モデルは、相互に十分に類似することが期待される。
【００３４】
図１に戻り、さらにツリー生成部１１０の詳細な構成について説明する。同図に示すように、ツリー生成部１１０は、ノード初期化部１１１と、候補生成部１１２と、候補削除部１１３と、類似度算出部１１４と、候補選択部１１５と、ノード生成部１１６と、を備えている。
【００３５】
ノード初期化部１１１は、ツリー構造のノードを初期化するものである。具体的には、ノード初期化部１１１は、ツリー構造のノードの初期値として、入力された音素モデルを含むツリー構造のルートノードを生成する。
【００３６】
候補生成部１１２は、ツリー生成過程の任意の時点で、子ノードを持たないノードに含まれる音素モデルの集合を、２つの子ノードに割り当てるための２つの子集合に分割し、分割した２つの子集合の組の候補（以下、分割候補という）を生成するものである。具体的には、候補生成部１１２は、後述する記憶部１３０に記憶された質問リストを参照し、質問リスト内の質問ごとに、質問に適合する音素モデルと適合しない音素モデルとに分割することにより、質問ごとに異なる分割候補を生成する。質問リストと質問リストを用いた音素モデルの集合の分割方法の詳細については後述する。
【００３７】
ノードを初期化した時点、すなわち、ルートノードのみが存在する時点では、子ノードを持たないノードはルートノードのみであるため、候補生成部１１２は、ルートノードを対象として分割候補を生成する。
【００３８】
候補削除部１１３は、生成された分割候補のうち、２つの子集合の少なくとも一方に判定タグが付与された音素モデルのみが含まれる場合に、当該分割候補を削除するものである。これにより、少量の学習用の音声データしか得られない音素モデルのみが同一のクラスタに分類されることを回避可能となる。
【００３９】
類似度算出部１１４は、分割候補ごとに分割候補に含まれる子集合内の音素モデル間の相互類似度の和を算出するものである。具体的には、類似度算出部１１４は、まず、候補削除部１１３によって削除された分割候補を除く各分割候補に対して、分割候補に含まれる２つの子集合ごとに子集合内の音素モデル間の相互類似度を算出する。そして、類似度算出部１１４は、算出した子集合ごとの相互類似度の和を算出する。これにより、類似度算出部１１４は、分割候補ごとの相互類似度の和を算出することができる。
【００４０】
ここで、ＨＭＭの各状態を音素モデルとする場合の相互類似度の算出方法について説明する。
【００４１】
いま、クラスタリング対象の音素モデルの集合が、ＨＭＭの第ｉ番目の状態Ｓｉｍの集合として与えられており、状態Ｓｉｍの出力確率Ｐｉｍ（Ｘ）が正規分布Ｎ（μｉｍ、Σｉｍ）で与えられるとする。ここでｍは、クラスタリング対象のＨＭＭの状態に付与されたインデクスである。
【００４２】
相互類似度を算出する音素モデルの集合、すなわち、ＨＭＭの第ｉ番目の状態Ｓｉｍの集合をＭとおく。また、集合Ｍに含まれるＨＭＭの状態を学習するために用いられた音声特徴ベクトルＸｆの集合をＦとおく。このとき、音素モデルの集合Ｍの相互類似度Ｌ（Ｍ）として、以下の（１）式で算出される対数尤度を用いる。
【数１】
0004405542.tif 000002
【００４３】
ここで、Ｎは音声特徴ベクトルＸｆの次元数、Σ（Ｍ）は集合Ｍに含まれる全てのＨＭＭ状態の共有共分散行列、γｍ（Ｘｆ）はＨＭＭの状態Ｓｉｍに対する音声特徴ベクトルＸｆの事後確率を表す。
【００４４】
（１）式で算出される相互類似度Ｌ（Ｍ）は、音素モデルの集合Ｍを構成する音素モデルが相互に類似するほど大きくなる。すなわち、相互類似度Ｌ（Ｍ）は、集合Ｍに含まれる音素モデルが相互に類似する度合いを表す定量的な評価値となっている。なお、相互類似度の算出方法は（１）式で示した方法に限られず、音素モデルが相互に類似する度合いを定量的に表現する任意の算出方法を用いることができる。
【００４５】
また、相互類似度の代わりに、集合Ｍを構成するＨＭＭの状態の相互距離Ｄ（Ｍ）を用いることもできる。このとき、相互類似度Ｌ（Ｍ）が小さくなるほど相互距離Ｄ（Ｍ）は大きくなり、相互類似度Ｌ（Ｍ）が大きくなるほど相互距離Ｄ（Ｍ）は小さくなるという関係がある。従って、例えばＬ（Ｍ）＝１／Ｄ（Ｍ）のように定義することで、相互距離Ｄ（Ｍ）から相互類似度Ｌ（Ｍ）を算出することができる。
【００４６】
相互距離Ｄ（Ｍ）は、例えば、異なる２つのＨＭＭの状態間の距離を、集合Ｍに属する全てのＨＭＭの状態間で算出し、その総和をとることで算出できる。なお、異なる２つのＨＭＭの状態間の距離の算出方法としては、例えば、非特許文献"The Use of State Tying in Continuous Speech Recognition"（S.J. Young & P.C. Woodland, Eurospeech 93, pp. 2203-2206）に記載されている方法を使用できる。なお、相互距離Ｄ（Ｍ）の算出方法はこれに限られず、従来から用いられている任意の算出方法を用いることができる。
【００４７】
候補選択部１１５は、類似度算出部１１４によって算出された分割候補ごとの相互類似度の和をすべて参照し、最大の相互類似度の和を与える分割候補を最良分割候補として選択するものである。
【００４８】
ノード生成部１１６は、分割候補の生成元であるノードを新たな親ノードとし、最良分割候補に含まれる２つの子集合のそれぞれを含む２つのノードを当該親ノードの新たな子ノードとして生成するものである。
【００４９】
なお、ツリー生成部１１０は、候補生成部１１２による候補生成処理、候補削除部１１３による候補削除処理、類似度算出部１１４による類似度算出処理、候補選択部１１５による最良分割候補の選択処理、およびノード生成部１１６によるノード生成処理を繰り返す。そして、ツリー生成部１１０は、所定の停止条件を満たした場合に繰り返し処理を停止して、それまでに生成されたノードを含むツリー構造を得る。
【００５０】
ツリー生成部１１０は、停止条件として以下の（１）〜（４）の条件を用いる。
（１）候補生成部１１２で生成された分割候補が０個である場合。すなわち、その時点で子ノードを持たない全てのノードが、ただ１つの音素モデルしか含まない場合。
（２）候補削除部１１３が、生成された分割候補を全て削除した場合。
（３）候補選択部１１５が選択した最良分割候補に含まれる２つの子集合の相互類似度の和と、最良分割候補の生成元であるノードに含まれる音素モデルの集合の相互類似度との差分を算出し、その差分が予め定められた閾値を下回る場合。
（４）ノード生成部１１６が新たに子ノードを生成した時点で、ツリー構造全体での子ノードを持たないノードの個数を算出し、算出した個数が予め定められた閾値を超えた場合。
【００５１】
ここで説明した条件のうち、条件（１）および条件（２）は、常に停止条件として用いる。条件（３）および条件（４）は、これらの条件のうちいずれかを用いても構わないし、両方を用いても構わない。また、条件（３）および条件（４）のどちらも用いず、条件（１）および条件（２）のみを用いることもできる。
【００５２】
条件（３）は、ノード分割前に対するノード分割後の相互類似度の増加率が小さい場合に処理を停止する条件である。これにより、分割する効果が小さい分割処理を回避して処理の効率化を図ることができる。また、条件（４）を適用することにより、分割したノード数が過大となるのを防止できる。
【００５３】
クラスタリング部１２０は、上記のような停止条件を満たすことにより最終的に得られたツリー構造を参照し、ツリー構造のノードに含まれる音素モデルの集合を、音素モデルのクラスタとして取得するものである。これにより、ツリー構造の各ノードに含まれる音素モデルの集合を単位として、音素モデルをクラスタリングすることができる。
【００５４】
記憶部１３０は、候補生成部１１２が音素モデルの集合を分割するときに参照する質問リストを記憶するものである。図４は、質問リストのデータ構造の一例を示す図である。図４に示すように、質問リストは、“ｉｓ＿ｐｈ＝（質問内容）”あるいは“ｉｓ＿ｌaｎｇ＝（質問内容）”の形式の質問をリスト形式で記憶している。例えば、“ｉｓ＿ｐｈ＝ａ？”は、音素種別が“ａ”であるか否かを問う質問を表す。また、“ｉｓ＿ｐｈ＝（ａ｜ｂ）？”は、音素種別が“ａ”または“ｂ”であるか否かを問う質問を表す。さらに、“ｉｓ＿ｌaｎｇ＝ＴＨ？”は、言語種別が“ＴＨ”（タイ語）であるか否かを問う質問を表す。
【００５５】
なお、記憶部１３０は、ＨＤＤ（Hard Disk Drive）、光ディスク、メモリカード、ＲＡＭ（Random Access Memory）などの一般的に利用されているあらゆる記憶媒体により構成することができる。
【００５６】
次に、このように構成された第１の実施の形態にかかるクラスタリング装置１００によるクラスタリング処理について図５を用いて説明する。図５は、第１の実施の形態におけるクラスタリング処理の全体の流れを示すフローチャートである。
【００５７】
まず、入力部１０１が、クラスタリングの対象となる複数の音素モデルを入力する（ステップＳ５０１）。上述のように、入力部１０１は、学習用の音声データが少量しか利用できない音素モデルを１つ以上含み、かつ、学習用の音声データが比較的大量に利用できる音素モデルを１つ以上含む複数の音素モデルを入力する。なお、学習用の音声データが少量しか利用できない音素モデルには判定タグが付与されている。
【００５８】
次に、ノード初期化部１１１が、入力された全ての音素モデルを含むノードを、ツリー構造のルートノードとして設定する（ステップＳ５０２）。図６は、ノード初期化部１１１が設定したルートノードの一例を示す図である。図６は、図３と同様に、タイ語（ＴＨ）の音素ａ、ｂ、ｄの音素モデル、中国語（ＺＨ）の音素ａ、ｃ、ｄの音素モデル、英語（ＥＮ）の音素ａ、ｂ、ｃの音素モデルが入力された場合に生成されるルートノードの例を示している。
【００５９】
図５に戻り、次に、候補生成部１１２が、この時点で存在する子ノードを持たないすべてのノードに対して、当該ノードに含まれる音素モデルの集合を、質問リストを用いて２つの子集合に分割した分割候補を、ノードごとに１つ以上生成する（ステップＳ５０３）。
【００６０】
図７は、分割候補の一例を示す図である。なお、同図は、“＊ＴＨ＿ａ”、“ＴＨ＿ｂ”、“＊ＺＨ＿ａ”、および“ＺＨ＿ｃ”の４つの音素モデルを含むノード（以下、ノードＡという）に対して、図４に示す質問リストを適用して生成された分割候補の例を表している。
【００６１】
図７に示すように、ノードＡに対して、図４に例示した質問リストを用いた場合には、４つの分割候補が生成される。説明のため、図７では、分割候補ごとに適用した質問を示している。なお、質問の成否に応じて音素モデルの集合を分割する場合、複数の質問が同じ分割候補を生成する場合がある。例えば、同図の分割候補では、括弧内に示した質問を適用しても同じ分割候補を生成することができる。
【００６２】
質問リストによる分割候補の生成方法は、任意分割による分割候補の生成方法（詳細は後述）に比べて、生成される分割候補の数は少なくなる。しかし、質問リストによる分割候補の生成方法では、クラスタリング対象の音素モデルに関する音声学的知見に基づいて、分割候補の２つの子集合の片方または両方が相互に類似する音素モデルから構成されることが期待される質問を用いることができる。
【００６３】
例えば、同じ音素種別“ａ”に対応する音素モデル“ＴＨ＿a”と“ＺＨ＿ａ”が相互に類似するという知見に基づき、音素種別が“ａ”であるか否かを問う質問“ｉｓ＿ｐｈ＝ａ？”を質問リストに加えることができる。そして、この質問により、“ＴＨ＿ａ”と“ＺＨ＿ａ”を含む子集合を与える分割候補を生成することができる。逆に、音素モデル“ＴＨ＿a”と“ＺＨ＿ｃ”が相互に類似しないという知見に基づき、音素種別が“ａ”または“ｃ”であるか否かを問う質問“ｉｓ＿ｐｈ＝（ａ｜ｃ）？”は、質問リストに加えないようにすることができる。これにより、“ＴＨ＿ａ”と“ＺＨ＿ｃ”を含む子集合を与える分割候補が生成されることを回避できる。
【００６４】
このように、音声的知見に基づいて質問リストを準備することで、音素モデルのクラスタリングにおける分割候補の生成をより効率化できる。
【００６５】
なお、ツリー構造を用いた音素モデルのクラスタリングで音素種別に関する質問を用いることの優位性とその方法に関しては、非特許文献１で解説されている。本実施の形態では、音素種別だけでなく、さらに言語種別に関する質問を質問リストに加えることで、言語種別の違いに対しても分割候補を生成させている。
【００６６】
図５に戻り、候補削除部１１３が、生成された全ての分割候補をチェックし、ある分割候補の２つの子集合のうち少なくとも１つの子集合が、判定タグが付与された音素モデルのみから構成される場合に、当該分割候補を削除する（ステップＳ５０４）。すなわち、生成された分割候補のうち、学習用の音声データが少量しか利用できない音素モデルのみからなる子集合をもつ分割候補が除去される。
【００６７】
図８は、削除された分割候補の一例を示す図である。同図は、図７で例示した分割候補に対して、子集合（＊ＴＨ＿ａ、＊ＺＨ＿ａ）を含む分割候補Ａ１が削除された例を示している。なお、図８は、４つの音素モデルを含む上述のノードＡから生成された分割候補のみを処理の対象として、分割候補の除去を行った例を示している。候補削除部１１３は、実際には、候補生成処理（ステップＳ５０３）の対象となった全てのノードから生成された全ての分割候補に対して候補削除処理を実行する。
【００６８】
図５に戻り、次に、類似度算出部１１４が、候補削除処理で除去されなかった全ての分割候補に対して、分割候補ごとに、分割候補の２つの子集合それぞれの相互類似度の和を算出する（ステップＳ５０５）。具体的には、類似度算出部１１４は、上述の（１）式にしたがって各分割候補の子集合ごとに相互類似度を算出し、２つの子集合について算出した相互類似度の和を算出する。
【００６９】
次に、候補選択部１１５が、算出された分割候補ごとの相互類似度の和を全て参照し、最大の相互類似度の和を与える分割候補を最良分割候補として選択する（ステップＳ５０６）。
【００７０】
図９は、選択された分割候補の一例を示す図である。同図は、ノードＡおよびノードＡと異なるノードＢに対して候補生成部１１２によって生成され、かつ、候補削除部１１３によって除去された分割候補を除く分割候補（Ａ２、Ａ３、Ａ４、Ｂ１、Ｂ２、・・・）と、この分割候補それぞれに対して類似度算出部１１４によって算出された相互類似度の和を示している。
【００７１】
ここでノードＡおよびノードＢは、候補生成処理の対象となるノード、すなわち、この時点で子ノードを持たないノードであるものとする。候補選択部１１５は、これらの分割候補から、最大の相互類似度の和を与える分割候補Ａ３を選択する。すなわち、ノードＡに対して質問”ｉｓ＿ｐｈ＝ｃ？”を適用し、２つの子集合（ＺＨ＿ｃ）および（＊ＴＨ＿ａ、ＴＨ＿ｂ、＊ＺＨ＿ａ）を与える分割候補を選択する。
【００７２】
図５に戻り、次に、ノード生成部１１６が、選択された最良分割候補の生成元であるノードを新たな親ノードとして、当該親ノードに対して、最良分割候補に含まれる２つの子集合のそれぞれを含む２つのノードを新たな子ノードとして生成する（ステップＳ５０７）。
【００７３】
図１０は、生成された子ノードの一例を示す図である。図１０は、図９で例示した最良分割候補Ａ３を参照し、最良分割候補Ａ３を与えるノードＡを新たな親ノードとした上で、最良分割候補Ａ３が与える２つの子集合（ＺＨ＿ｃ）、（＊ＴＨ＿ａ、ＴＨ＿ｂ、＊ＺＨ＿ａ）のそれぞれを含む２つのノードを、ノードＡの新たな子ノードとして生成した例を示している。
【００７４】
なお、図１０では、説明のため、分割候補Ａ３を生成するために適用した質問”ｉｓ＿ｐｈ＝ｃ？”を、ノードＡの下方に付与している。さらに、有向アークに、当該質問に対する成否をそれぞれ”ｙ（ｙｅｓ）”、”ｎ（ｎｏ）”として示している。すなわち、”ｙ”が付与された有向アークの発信先である子ノードは、ノードＡに含まれる音素モデルの集合のうち質問に合致する音素モデルの集合を含み、”ｎ”が付与された有向アークの発信先である子ノードはそれ以外の音素モデルの集合を含む。
【００７５】
図５に戻り、次に、ツリー生成部１１０は、予め定められた停止条件を満たすか否かを判断する（ステップＳ５０８）。停止条件を満たさない場合は（ステップＳ５０８：ＮＯ）、この時点で子ノードを持たないノードを対象として、さらに処理を繰り返す（ステップＳ５０３）。
【００７６】
停止条件を満たす場合は（ステップＳ５０８：ＹＥＳ）、ツリー生成部１１０によるツリー生成処理が終了する。これにより、例えば図６に示すルートノードから、図１１に示すような４つのリーフノードを持つツリー構造が生成される。なお、図１１では、候補生成部１１２が使用した質問リストも例示している。
【００７７】
ツリー生成処理が終了すると、クラスタリング部１２０が、生成されたツリー構造を参照し、ツリー構造のノードに含まれる音素モデルの集合を、音素モデルのクラスタとして取得する（ステップＳ５０９）。
【００７８】
例えば、クラスタリング部１２０は、図１１で例示したツリー構造から、リーフノードに含まれる音素モデルの集合（＊ＴＨ＿ａ、ＴＨ＿ｂ、＊ＺＨ＿ａ）、（ＺＨ＿ｃ）、（＊ＴＨ＿ｄ、ＺＨ＿ｄ）、および（ＥＮ＿ａ、ＥＮ＿ｂ、ＥＮ＿ｃ）の４つのクラスタを得ることができる。
【００７９】
同図に示すように、判定タグ“＊”が付与された音素モデルが属するクラスタには、判定タグが付与されていない音素モデルが必ず１つ以上存在する。例えば、判定タグが付与された音素モデル“＊ＴＨ＿ａ”に着目すると、“＊ＴＨ＿ａ”が属するクラスタには、判定タグが付与されていない音素モデル“ＴＨ＿ｂ”が属している。また、“＊ＺＨ＿ａ”が属するクラスタには同じく“ＴＨ＿ｂ”が属している。さらに、“＊ＴＨ＿ｄ”が属するクラスタには、“ＺＨ＿ｄ”が属している。
【００８０】
このように、図５で示したフローチャートにしたがって音素モデルをクラスタリングすることで、判定タグが付与された任意の音素モデルに対して、判定タグが付与されていない１つ以上の音素モデルが必ず同じクラスタに属するという制約を満たすことができる。
【００８１】
これは、候補削除処理（ステップＳ５０４）で、判定タグ”＊”が付与された音素モデルのみから構成される子集合を与える分割候補が除去され、ノード生成処理（ステップＳ５０７）でそのような子集合を含む子ノードが生成されないためである。すなわち、本実施の形態では、候補削除処理を備えることにより、クラスタリング部１２０によって取得される音素モデルのクラスタが所望の条件を満たすことが保証される。
【００８２】
なお、クラスタリング部１２０は、リーフノードに含まれる音素モデルの集合だけでなく、任意のノードに含まれる音素モデルの集合をクラスタとして得ることができる。例えば、クラスタリング部１２０は、クラスタ（＊ＴＨ＿ａ、ＴＨ＿ｂ、＊ＺＨ＿ａ）およびクラスタ（ＺＨ＿ｃ）をそれぞれ与えるリーフノードの親ノードが含む音素モデルの集合（＊ＴＨ＿ａ、ＴＨ＿ｂ、＊ＺＨ＿ａ、ＺＨ＿ｃ）を、音素モデルのクラスタとして得ることができる。
【００８３】
このように、ツリー構造を用いたクラスタリングでは、生成されたツリー構造の親子関係を反映して、親子関係をもつクラスタを得ることができる。なお、この場合でも、判定タグが付与された任意の音素モデルに対して、判定タグが付与されていない１つ以上の音素モデルが必ず同じクラスタに属するという制約が満たされている。
【００８４】
（変形例）
これまでは、候補生成部１１２が、質問リストを用いて音素モデルの集合を分割する例について説明した。分割候補の生成方法はこれに限られず、例えば、与えられた音素モデルの集合を分割しうるすべての分割パターンで分割する方法（以下、任意分割による分割候補の生成方法という）を用いてもよい。
【００８５】
図１２は、上述のノードＡをこの方法で分割して得られる分割候補の例を示す図である。図１２に示すように、ノードＡに対しては７つの分割候補が生成される。また、図１３は、図１２の分割候補に対して候補削除処理によって削除された分割候補の一例を示す図である。図１３に示すように、任意分割により生成された分割候補に対しては、それぞれ子集合（＊ＴＨ＿ａ）、（＊ＺＨ＿ａ）、（＊ＴＨ＿ａ、＊ＺＨ＿ａ）を与える分割候補Ａ１、Ａ３、Ａ６が除去される。
【００８６】
このように、第１の実施の形態にかかるクラスタリング装置では、学習用の音声データが少量しか利用できない任意の音素モデルに対して、学習用の音声データが比較的大量に利用できる１つ以上の音素モデルが必ず同じクラスタに含まれるという制約を満たした上で、ツリー構造を用いた音素モデルのクラスタリングを行うことができる。このため、少量の音声データしか利用できない音素モデルに対して、大量の音声データを利用できる類似する音素モデルを選択して適応学習を実行できる。すなわち、適応学習によって高精度の音素モデルを得ることが可能となる。
【００８７】
（第２の実施の形態）
タイ語をはじめとする東南アジア系の言語では、その言語の全ての音素モデルについて、学習用の音声データが少量しか利用できない場合がある。一方、中国語や、英語をはじめとする欧米系の言語では、その言語の全ての音素モデルについて、学習用の音声データが比較的大量に利用できる。
【００８８】
このような状況で、タイ語・中国語・英語の全ての音素モデルを対象として音素モデルのクラスタリングを行う場合には、タイ語の任意の音素モデルに対して、中国語・英語の音素モデルが、タイ語の音素モデルと同じクラスタに１つ以上必ず含まれるという制約を満たすように、ツリー構造を用いた音素モデルのクラスタリングを行えばよい。
【００８９】
そこで、第２の実施の形態では、言語単位で、学習用の音声データが少量しか得られない言語の音素モデルであることを判定するための判定情報（以下、言語判定タグという）を付与し、言語判定タグが付与された音素モデルのみを含む分割候補を削除する。
【００９０】
図１４は、第２の実施の形態にかかるクラスタリング装置１４００の構成を示すブロック図である。図１４に示すように、クラスタリング装置１４００は、記憶部１３０と、入力部１４０１と、ツリー生成部１４１０と、クラスタリング部１２０と、を備えている。
【００９１】
第２の実施の形態では、入力部１４０１およびツリー生成部１４１０内の候補削除部１４１３の機能が第１の実施の形態と異なっている。その他の構成および機能は、第１の実施の形態にかかるクラスタリング装置１００の構成を表すブロック図である図１と同様であるので、同一符号を付し、ここでの説明は省略する。
【００９２】
入力部１４０１は、言語判定タグが付与された１つ以上の音素モデルと、言語判定タグが付与されていない１つ以上の音素モデルとを入力するものである。
【００９３】
候補削除部１４１３は、生成された分割候補のうち、２つの子集合の少なくとも一方に言語判定タグが付与された音素モデルのみが含まれる場合に、当該分割候補を削除するものである。
【００９４】
次に、このように構成された第２の実施の形態にかかるクラスタリング装置１４００によるクラスタリング処理について説明する。第２の実施の形態では、入力部１４０１による音素モデルの入力処理、および候補削除部１４１３による候補削除処理が、第１の実施の形態のクラスタリング処理と異なっている。
【００９５】
すなわち、第２の実施の形態では、第１の実施の形態のクラスタリング処理を表す図５のステップＳ５０１で、入力部１４０１が判定タグの代わりに言語判定タグが付与された音素モデルを入力する点、および、ステップＳ５０４で、候補削除部１４１３が、ある分割候補の２つの子集合のうち少なくとも１つの子集合が、言語判定タグが付与された音素モデルのみから構成される場合に、当該分割候補を削除する点が変更されている。
【００９６】
その他の処理（ステップＳ５０２〜ステップＳ５０３、ステップＳ５０５〜ステップＳ５０９）は、第１の実施の形態と同様の処理なので、その説明を省略する。
【００９７】
このように、第２の実施の形態にかかるクラスタリング装置では、学習用の音声データが少量しか利用できない言語の音素モデルに対して、学習用の音声データが比較的大量に利用できる言語の１つ以上の音素モデルが必ず同じクラスタに含まれるという制約を満たした上で、ツリー構造を用いた音素モデルのクラスタリングを行うことができる。このため、少量の音声データしか利用できない音素モデルに対して、大量の音声データを利用できる類似する音素モデルを選択して適応学習を実行できる。
【００９８】
（第３の実施の形態）
学習用の音声データが大量に利用できる音素モデルは、クラスタリングによって類似する音素モデルを求め、適応学習を実行する必要がない。したがって、ツリー構造の生成の過程で、学習用の音声データが大量に利用できる音素モデルのみから構成される音素モデルの集合を含むノードが生成された場合、当該ノードからは分割候補をそれ以上生成する必要はない。そこで、第３の実施の形態にかかるクラスタリング装置は、判定タグが付与された音素モデルを１つ以上含むノードのみを対象として分割候補を生成するものである。
【００９９】
図１５は、第３の実施の形態にかかるクラスタリング装置１５００の構成を示すブロック図である。図１５に示すように、クラスタリング装置１５００は、記憶部１３０と、入力部１０１と、ツリー生成部１５１０と、クラスタリング部１２０と、を備えている。
【０１００】
第３の実施の形態では、ツリー生成部１５１０内の候補生成部１５１２の機能が第１の実施の形態と異なっている。その他の構成および機能は、第１の実施の形態にかかるクラスタリング装置１００の構成を表すブロック図である図１と同様であるので、同一符号を付し、ここでの説明は省略する。
【０１０１】
候補生成部１５１２は、子ノードを有さず、かつ、判定タグが付与された音素モデルを１つ以上含むノードに対してのみ、当該ノードに含まれる音素モデルの集合を２つの子集合に分割した分割候補を生成するものである。
【０１０２】
次に、このように構成された第３の実施の形態にかかるクラスタリング装置１５００によるクラスタリング処理について説明する。第３の実施の形態では、候補生成部１５１２による候補生成処理が、第１の実施の形態のクラスタリング処理と異なっている。
【０１０３】
すなわち、第３の実施の形態では、第１の実施の形態のクラスタリング処理を表す図５のステップＳ５０３で、候補生成部１５１２が、子ノードを持たず、かつ、判定タグが付与された音素モデルを１つ以上含むすべてのノードを対象として候補生成処理を実行する点が、第１の実施の形態と異なっている。
【０１０４】
その他の処理（ステップＳ５０１〜ステップＳ５０２、ステップＳ５０４〜ステップＳ５０９）は、第１の実施の形態と同様の処理なので、その説明を省略する。
【０１０５】
このように、第３の実施の形態にかかるクラスタリング装置では、判定タグが付与された音素モデルを１つ以上含むノードのみを対象として分割候補を生成することができる。これにより、不要な分割候補の生成が抑制され、ツリー構造を用いた音素モデルのクラスタリング方法を実行する際の処理コストを削減することができる。
【０１０６】
次に、第１〜第３の実施の形態にかかるクラスタリング装置のハードウェア構成について図１６を用いて説明する。図１６は、第１〜第３の実施の形態にかかるクラスタリング装置のハードウェア構成を示す説明図である。
【０１０７】
第１〜第３の実施の形態にかかるクラスタリング装置は、ＣＰＵ（Central Processing Unit）５１などの制御装置と、ＲＯＭ（Read Only Memory）５２やＲＡＭ５３などの記憶装置と、ネットワークに接続して通信を行う通信Ｉ／Ｆ５４と、各部を接続するバス６１を備えている。
【０１０８】
第１〜第３の実施の形態にかかるクラスタリング装置で実行されるクラスタリングプログラムは、ＲＯＭ５２等に予め組み込まれて提供される。
【０１０９】
第１〜第３の実施の形態にかかるクラスタリング装置で実行されるクラスタリングプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ（Compact Disk Read Only Memory）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Compact Disk Recordable）、ＤＶＤ（Digital Versatile Disk）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【０１１０】
さらに、第１〜第３の実施の形態にかかるクラスタリング装置で実行されるクラスタリングプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、第１〜第３の実施の形態にかかるクラスタリング装置で実行されるクラスタリングプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【０１１１】
第１〜第３の実施の形態にかかるクラスタリング装置で実行されるクラスタリングプログラムは、上述した各部（入力部、ツリー生成部、クラスタリング部）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ５１が上記ＲＯＭ５２からクラスタリングプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、各部が主記憶装置上に生成されるようになっている。
【産業上の利用可能性】
【０１１２】
以上のように、本発明にかかる装置、方法およびプログラムは、ツリー構造のノードをクラスタとして音素モデルをクラスタリングする装置、方法およびプログラムに適している。
【図面の簡単な説明】
【０１１３】
【図１】第１の実施の形態にかかるクラスタリング装置の構成を示すブロック図である。
【図２】入力される音素モデルの一例を示す図である。
【図３】クラスタリングに用いるツリー構造の一例を示す図である。
【図４】質問リストのデータ構造の一例を示す図である。
【図５】第１の実施の形態におけるクラスタリング処理の全体の流れを示すフローチャートである。
【図６】ルートノードの一例を示す図である。
【図７】分割候補の一例を示す図である。
【図８】削除された分割候補の一例を示す図である。
【図９】選択された分割候補の一例を示す図である。
【図１０】生成された子ノードの一例を示す図である。
【図１１】生成されたツリー構造の一例を示す図である。
【図１２】分割候補の例を示す図である。
【図１３】図１２の分割候補に対して候補削除処理によって削除された分割候補の一例を示す図である。
【図１４】第２の実施の形態にかかるクラスタリング装置の構成を示すブロック図である。
【図１５】第３の実施の形態にかかるクラスタリング装置の構成を示すブロック図である。
【図１６】第１〜第３の実施の形態にかかるクラスタリング装置のハードウェア構成を示す説明図である。
【符号の説明】
【０１１４】
５１      ＣＰＵ
５２      ＲＯＭ
５３      ＲＡＭ
５４      通信Ｉ／Ｆ
６１      バス
１００    クラスタリング装置
１０１    入力部
１１０    ツリー生成部
１１１    ノード初期化部
１１２    候補生成部
１１３    候補削除部
１１４    類似度算出部
１１５    候補選択部
１１６    ノード生成部
１２０    クラスタリング部
１３０    記憶部
１４００  クラスタリング装置
１４０１  入力部
１４１０  ツリー生成部
１４１３  候補削除部
１５００  クラスタリング装置
１５１０  ツリー生成部
１５１２  候補生成部
【図１】
0004405542.tif 000003
【図２】
0004405542.tif 000004
【図３】
0004405542.tif 000005
【図４】
0004405542.tif 000006
【図５】
0004405542.tif 000007
【図６】
0004405542.tif 000008
【図７】
0004405542.tif 000009
【図８】
0004405542.tif 000010
【図９】
0004405542.tif 000011
【図１０】
0004405542.tif 000012
【図１１】
0004405542.tif 000013
【図１２】
0004405542.tif 000014
【図１３】
0004405542.tif 000015
【図１４】
0004405542.tif 000016
【図１５】
0004405542.tif 000017
【図１６】
0004405542.tif 000018