JP2006293489A - 学習装置および学習方法、並びに学習プログラム - Google Patents
学習装置および学習方法、並びに学習プログラム Download PDFInfo
- Publication number
- JP2006293489A JP2006293489A JP2005110072A JP2005110072A JP2006293489A JP 2006293489 A JP2006293489 A JP 2006293489A JP 2005110072 A JP2005110072 A JP 2005110072A JP 2005110072 A JP2005110072 A JP 2005110072A JP 2006293489 A JP2006293489 A JP 2006293489A
- Authority
- JP
- Japan
- Prior art keywords
- learning
- time
- node
- series pattern
- series
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
【課題】 時系列データの教師なし学習を、容易に行うことができるようにする。
【解決手段】 ノード学習部4−6−1乃至4−N−1は、時系列データのパターンである時系列パターンを表現する複数の時系列パターンモデルの更新に関する処理を行い、ネットワーク学習部4−4は、ノード学習部4−6−1乃至4−N−1を並列的に用いて、時系列パターンモデルを有する複数のノードから構成されるネットワークである時系列パターン記憶ネットワーク4−5の更新を行う。本発明は、例えば、時系列データの時系列パターンを学習する装置に適用できる。
【選択図】図4
【解決手段】 ノード学習部4−6−1乃至4−N−1は、時系列データのパターンである時系列パターンを表現する複数の時系列パターンモデルの更新に関する処理を行い、ネットワーク学習部4−4は、ノード学習部4−6−1乃至4−N−1を並列的に用いて、時系列パターンモデルを有する複数のノードから構成されるネットワークである時系列パターン記憶ネットワーク4−5の更新を行う。本発明は、例えば、時系列データの時系列パターンを学習する装置に適用できる。
【選択図】図4
Description
本発明は、学習装置および学習方法、並びに学習プログラムに関し、特に、例えば、音声のような時系列のデータである時系列データの教師なし学習を、容易に行うことができるようにする学習装置および学習方法、並びに学習プログラムに関する。
パターンを学習して認識を行う技術は、一般にパターン認識(pattern recognition)と呼ばれ、パターン認識における学習は、教師あり学習(supervised learning)と、教師なし学習(unsupervised learning)とに分けることができる。
教師あり学習とは、各パターンの学習データがどのクラスに属するかの情報(これを正解ラベルと呼ぶ)を与えて、各パターンごとに、そのパターンに属する学習データを学習する方法であり、テンプレートマッチング、ニューラルネットワーク、HMM(Hidden Markov Model)などを用いた学習方法が数多く提案されている。
教師あり学習では、学習に利用する学習データが、想定したカテゴリ(クラス)(例えば、各音素のカテゴリや、各音韻のカテゴリ、各単語のカテゴリなど)ごとに用意される。例えば、"A","B","C"という発声の音声データを学習する場合、"A","B","C"それぞれの多数の音声データが用意されることになる。
一方、学習に利用するモデル(各カテゴリの学習データを学習させるモデル)も、想定したカテゴリごとに用意される。ここで、モデルは、パラメータによって定義される。例えば、音声データの学習には、モデルとして、HMMなどが用いられるが、HMMは、ある状態から他の状態(元の状態を含む)に遷移する状態遷移確率や、HMMから出力される観測値の確率密度を表す出力確率密度関数などによって定義される。
教師あり学習では、各カテゴリ(クラス)のモデルの学習が、そのカテゴリの学習データのみを用いて行われる。即ち、カテゴリ"A"のモデルの学習は、カテゴリ"A"の学習データを用いて行われ、カテゴリ"B"のモデルの学習は、カテゴリ"B"の学習データを用いて行われる。同様に、カテゴリ"C"のモデルの学習も、カテゴリ"C"の学習データを用いて行われる。
一方、教師なし学習は、各パターンの学習データがどのカテゴリに属するかを未知として行われる学習である。教師なし学習は、カテゴリごとに学習を行うことができないという点で、教師あり学習とは大きく異なる。
学習データがベクトルで与えられる場合、教師なし学習として代表的な手法の一つに、K-平均法(K-means clustering method)がある。K-平均法は、初期状態として、セントロイドベクトルを適当に配置し、学習データとしてのベクトルを、最も距離の近いセントロイドベクトルに割り当て、各セントロイドベクトルに割り当てられた学習データの平均ベクトルによってセントロイドベクトルを更新することを繰り返す学習手法である。
また、学習データを観測するたびに、その学習データを用いて学習を行い、パラメータ(セントロイドベクトルなど)を少しずつ更新する学習方法としては、コホネン(T.Kohonen)の提案したSOM(self-organization map)による学習(学習方法)が有名である。SOMによる学習では、入力層と出力層の結合重みが、学習データを観測するたびに少しずつ更新(修正)されていく。
具体的には、SOMの出力層のノードにおいて、結合重みとしてのベクトルと、学習データとしてのベクトルとの距離が最も近いノードが、勝者ノードとして決定され、その勝者ノードの結合重みとしてのベクトルが、学習データとしてのベクトルに近づくように更新される。さらに、勝者ノードの近傍のノードの結合重みも、学習データに少しだけ近づくように更新される。その結果、学習が進むにつれ、結合重みとしてのベクトルが類似したノードどうしは近くなるように、類似しないノードは遠くなるように、出力層の上に配置されていく。従って、出力層には、あたかも学習データに含まれるパターンに応じた地図が構成されていくことになる。このように、学習が進むにつれて、類似するノード(結合重みとしてのベクトルが類似するノード)どうしが近い位置に配置され、学習データに含まれるパターンに応じた地図が構成されていく学習は、自己組織的な学習または自己組織化(self-organization)と呼ばれる。
なお、SOMに関しては、例えば、非特許文献1に記載されている。
ところで、上述のSOMは、いわば静的な信号パターンであるベクトル、つまり一定の長さのデータ系列を対象とした教師なし学習を提供する。従って、音声データのような時系列のデータ(時系列データ)、つまり長さが不定の、いわば動的な信号パターンに対して、そのまま適用することはできない。
また、連続するベクトルの系列を連結し、高次元のベクトルを定義することで、時系列データとしての時系列のベクトルを、静的な信号パターンとして扱う方法が提案されているが、この方法も、音声データのように長さが固定されていない(不定の)時系列データに対して、そのまま通用することはできない。
一方、時系列データのパターン認識、即ち、例えば、音声データの認識(音声認識)で広く利用されている技術の1つに、HMMを用いるHMM法がある(例えば、非特許文献2参照)。
HMMは、状態遷移を有する確率モデルである状態遷移確率モデルの1つであり、上述したように、状態遷移確率と、各状態における出力確率密度関数で定義され、HMM法では、学習すべき時系列データの統計的な特性がHMMによってモデル化される。なお、HMMを定義する出力確率密度関数としては、例えば混合正規分布などが用いられる。また、HMMの学習、即ち、HMMのパラメータ(HMMを定義する状態遷移確率と出力確率密度関数)の推定の方法としては、Baum-Welch 法が広く使われている。
HMM法は、現在実用化されている孤立単語音声認識から大語彙連続音声認識にまで幅広く適用されているが、HMMの学習は、通常、教師あり学習であり、どのカテゴリに属するかが既知である学習データを用いて行われる。即ち、例えば、ある単語を認識するHMMの学習は、その単語に対応する学習データ(その単語の発話によって得られる音声データ)を用いて行われる。したがって、学習データが属するカテゴリが未知である場合の学習に、HMMの学習を適用するのは、非常に難しい問題となる。
T.コホネン、「自己組織化マップ」、シュプリンガー・フェアラーク東京 Laurence Rabiner, Biing-Hwang Juang 共著、「音声認識の基礎(上・下)」、NTTアドバンステクノロジ株式会社
T.コホネン、「自己組織化マップ」、シュプリンガー・フェアラーク東京 Laurence Rabiner, Biing-Hwang Juang 共著、「音声認識の基礎(上・下)」、NTTアドバンステクノロジ株式会社
以上のように、従来においては、SOMのような静的なパターンの教師なし学習や、HMMのような動的な時系列データの教師あり学習を実現する方法は提供されていたが、どちらも動的な時系列データの教師なし学習を実現するには不十分であった。
本発明は、このような状況に鑑みてなされたものであり、時系列データの教師なし学習を、容易に行うことができるようにするものである。
本発明の学習装置は、時系列データのパターンである時系列パターンを表現する時系列パターンモデルを有する複数のノードから構成されるネットワークである時系列パターン記憶ネットワークを、時系列データの観測値に基づいて、自己組織的に更新する学習手段を備えることを特徴とし、その学習手段は、1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行う複数のノード学習手段と、複数の前記ノード学習手段を並列的に用いて時系列パターン記憶ネットワークの更新を行うネットワーク学習手段とによって構成されることを特徴とする。
本発明の学習方法は、時系列データのパターンである時系列パターンを表現する時系列パターンモデルを有する複数のノードから構成されるネットワークである時系列パターン記憶ネットワークを、時系列データの観測値に基づいて、自己組織的に更新する学習ステップを含むことを特徴とし、その学習ステップは、1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行う複数のノード学習ステップと、並列的に処理が行われる複数の前記ノード学習ステップにおける処理の結果を利用して時系列パターン記憶ネットワークの更新を行うネットワーク学習ステップとによって構成されることを特徴とする。
本発明の学習プログラムは、時系列データのパターンである時系列パターンを表現する時系列パターンモデルを有する複数のノードから構成されるネットワークである時系列パターン記憶ネットワークを、時系列データの観測値に基づいて、自己組織的に更新する学習ステップを含むことを特徴とし、その学習ステップは、1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行う複数のノード学習ステップと、並列的に処理が行われる複数の前記ノード学習ステップにおける処理の結果を利用して時系列パターン記憶ネットワークの更新を行うネットワーク学習ステップとによって構成されることを特徴とする。
本発明の学習装置、学習方法、および学習プログラムにおいては、時系列データのパターンである時系列パターンを表現する時系列パターンモデルを有する複数のノードから構成されるネットワークである時系列パターン記憶ネットワークが、時系列データの観測値に基づいて、自己組織的に更新される。
本発明によれば、時系列データの教師なし学習を、容易に行うことができる。特に、時系列パターン記憶ネットワークのノード数を増加させた場合でも、短い時間で学習を行うことができる。
以下に本発明の実施の形態を説明するが、請求項に記載の構成要件と、発明の実施の形態における具体例との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする具体例が、発明の実施の形態に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、構成要件に対応するものとして、ここには記載されていない具体例があったとしても、そのことは、その具体例が、その構成要件に対応するものではないことを意味するものではない。逆に、具体例が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その具体例が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
さらに、この記載は、発明の実施の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明の実施の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。
請求項1に記載の学習装置は、
時系列のデータである時系列データに基づき、学習を行う学習装置(例えば、図4)において、
前記時系列データのパターンである時系列パターンを表現する時系列パターンモデルを有する複数のノードから構成されるネットワークである時系列パターン記憶ネットワークを、前記時系列データの観測値に基づいて、自己組織的に更新する学習手段を備え、
前記学習手段は、
1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行う複数のノード学習手段(例えば、図4のノード学習部4−6−1乃至4−N−1)と、
複数の前記ノード学習手段を並列的に用いて時系列パターン記憶ネットワークの更新を行うネットワーク学習手段(例えば、図4のネットワーク学習部4−4)と
によって構成される
ことを特徴とする。
時系列のデータである時系列データに基づき、学習を行う学習装置(例えば、図4)において、
前記時系列データのパターンである時系列パターンを表現する時系列パターンモデルを有する複数のノードから構成されるネットワークである時系列パターン記憶ネットワークを、前記時系列データの観測値に基づいて、自己組織的に更新する学習手段を備え、
前記学習手段は、
1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行う複数のノード学習手段(例えば、図4のノード学習部4−6−1乃至4−N−1)と、
複数の前記ノード学習手段を並列的に用いて時系列パターン記憶ネットワークの更新を行うネットワーク学習手段(例えば、図4のネットワーク学習部4−4)と
によって構成される
ことを特徴とする。
請求項4に記載の学習装置は、
前記学習手段は、
前記時系列パターン記憶ネットワークを構成する複数のノードのうちの、前記時系列データの観測値に最も適合するノードである勝者ノードを決定する勝者ノード決定手段(例えば、図7の勝者ノード決定部7−2)と、
前記時系列パターンが受ける前記時系列データの観測値の影響の度合いを表す重みを、前記勝者ノードに基づいて前記ノードに対して決定する重み決定手段(例えば、図7の重み決定部7−3)と、
前記時系列パターンモデルを前記重みに基づいて更新することにより、前記時系列パターン記憶ネットワークを更新する更新手段(例えば、図7のネットワーク更新部7−4)と
を有し、
前記勝者ノード決定手段と前記重み決定手段と前記更新手段の処理において、前記ノード学習手段は、1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行い、前記ネットワーク学習手段は、複数の前記ノード学習手段を並列的に用いて時系列パターン記憶ネットワークを更新する
ことを特徴とする。
前記学習手段は、
前記時系列パターン記憶ネットワークを構成する複数のノードのうちの、前記時系列データの観測値に最も適合するノードである勝者ノードを決定する勝者ノード決定手段(例えば、図7の勝者ノード決定部7−2)と、
前記時系列パターンが受ける前記時系列データの観測値の影響の度合いを表す重みを、前記勝者ノードに基づいて前記ノードに対して決定する重み決定手段(例えば、図7の重み決定部7−3)と、
前記時系列パターンモデルを前記重みに基づいて更新することにより、前記時系列パターン記憶ネットワークを更新する更新手段(例えば、図7のネットワーク更新部7−4)と
を有し、
前記勝者ノード決定手段と前記重み決定手段と前記更新手段の処理において、前記ノード学習手段は、1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行い、前記ネットワーク学習手段は、複数の前記ノード学習手段を並列的に用いて時系列パターン記憶ネットワークを更新する
ことを特徴とする。
請求項12に記載の学習方法は、
時系列のデータである時系列データに基づき、学習を行う学習方法において、
前記時系列データのパターンである時系列パターンを表現する時系列パターンモデルを有する複数のノードから構成されるネットワークである時系列パターン記憶ネットワークを、前記時系列データの観測値に基づいて、自己組織的に更新する学習ステップを含み、
前記学習ステップは、
1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行う複数のノード学習ステップ(例えば、図8のステップ8−3−1乃至8−3−N、および8−6−1乃至8−6−N)と、
並列的に処理が行われる複数の前記ノード学習ステップにおける処理の結果を利用して時系列パターン記憶ネットワークの更新を行うネットワーク学習ステップ(例えば、図8のステップ8−4および8−5、並びに8−7)と
によって構成される
ことを特徴とする。
時系列のデータである時系列データに基づき、学習を行う学習方法において、
前記時系列データのパターンである時系列パターンを表現する時系列パターンモデルを有する複数のノードから構成されるネットワークである時系列パターン記憶ネットワークを、前記時系列データの観測値に基づいて、自己組織的に更新する学習ステップを含み、
前記学習ステップは、
1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行う複数のノード学習ステップ(例えば、図8のステップ8−3−1乃至8−3−N、および8−6−1乃至8−6−N)と、
並列的に処理が行われる複数の前記ノード学習ステップにおける処理の結果を利用して時系列パターン記憶ネットワークの更新を行うネットワーク学習ステップ(例えば、図8のステップ8−4および8−5、並びに8−7)と
によって構成される
ことを特徴とする。
請求項13に記載の学習プログラムは、
時系列のデータである時系列データに基づく学習をコンピュータに行わせる学習プログラムにおいて、
前記時系列データのパターンである時系列パターンを表現する時系列パターンモデルを有する複数のノードから構成されるネットワークである時系列パターン記憶ネットワークを、前記時系列データの観測値に基づいて、自己組織的に更新する学習ステップを含み、
前記学習ステップは、
1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行う複数のノード学習ステップ(例えば、図8のステップ8−3−1乃至8−3−N、および8−6−1乃至8−6−N)と、
並列的に処理が行われる複数の前記ノード学習ステップにおける処理の結果を利用して時系列パターン記憶ネットワークの更新を行うネットワーク学習ステップ(例えば、図8のステップ8−4および8−5、並びに8−7)と
によって構成される
ことを特徴とする。
時系列のデータである時系列データに基づく学習をコンピュータに行わせる学習プログラムにおいて、
前記時系列データのパターンである時系列パターンを表現する時系列パターンモデルを有する複数のノードから構成されるネットワークである時系列パターン記憶ネットワークを、前記時系列データの観測値に基づいて、自己組織的に更新する学習ステップを含み、
前記学習ステップは、
1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行う複数のノード学習ステップ(例えば、図8のステップ8−3−1乃至8−3−N、および8−6−1乃至8−6−N)と、
並列的に処理が行われる複数の前記ノード学習ステップにおける処理の結果を利用して時系列パターン記憶ネットワークの更新を行うネットワーク学習ステップ(例えば、図8のステップ8−4および8−5、並びに8−7)と
によって構成される
ことを特徴とする。
以下、図面を参照して、本発明の実施の形態について説明する。
本発明は、状態遷移確率モデルを一つのノードとするネットワークを用いて、そのネットワークのパラメータを自己組織的に学習する学習手段を備えることで、時系列データの学習を行う学習装置に関する。本発明を適用した学習装置において、状態遷移確率モデルとしては、例えば、HMMが適用され、学習される時系列データの統計的な特性を記憶することが可能となる。この状態遷移確率モデルは、例えば、時系列パターンの認識および生成に利用される。
図1は、この発明の学習に関する概念を示している。
図1において、学習データ1−1に、どのようなカテゴリのデータが含まれているのかは未知であり、カテゴリ数も未知であるものとする。したがって、カテゴリ分類された学習データを用いて、各カテゴリごとに状態遷移確率モデルのパラメータを学習するという、いわゆる教師あり学習の手法を用いることができない。
この問題を解決するために、状態遷移確率モデルをノードとするネットワークを導入する。これが時系列パターン記憶ネットワーク1−3と呼ばれるものである。ここで、図1において、時系列パターン記憶ネットワーク1−3は、ノード1−4乃至1−9で構成されている。そして、このネットワーク全体(時系列パターン記憶ネットワーク1−3)によって、学習データ1−1の特徴をうまく表現できるように、学習部1−2による学習が行われる。つまり、それぞれのノードにおいて、自己組織的に学習が行われる。
時系列パターン記憶ネットワーク1−3は、複数のノードで構成され、ノードとノードは結合関係を持つことができる。この結合関係をリンクと呼ぶ。このリンクによって、ノードの空間的な配置構造が決定され、その空間上でのノード間の距離関係が決定される。
図2は、一つのノードについて詳細に示したものである。
一つのノードは、時系列パターンを表現する状態遷移確率モデル2−1と、そのパラメータを学習するためのデータを記憶しておく学習データ記憶部2−5で構成される。状態遷移確率モデル2−1としては、例えば、HMMが利用される。
図2は、状態遷移確率モデル2−1に、left-to-right型の3状態2−2乃至2−4を有するHMMを適用した例について示している。図2の状態遷移確率モデル2−1における○印は状態を表し、矢印は状態遷移を表している。状態遷移には状態遷移確率が与えられ、各状態には出力確率密度関数が与えられる。出力確率密度関数としては、例えば、混合正規分布などが利用される。
このような状態遷移確率モデル2−1のパラメータの推定方法として、Baum-Welch法が利用される。これは、パラメータ更新前の状態遷移確率モデル2−1のパラメータを初期値とし、学習データ記憶部2−5に記憶された学習データに基づいて、パラメータを最尤推定する手法である。
ここで、時系列パターン記憶ネットワークの学習にはオンライン学習が適用され、観測信号が入力されるたびにパラメータが少しずつ更新される。具体的には、学習データ記憶部2−5に記憶されたデータが、学習が進むにしたがって少しずつ変化し、その変化に伴って状態遷移確率モデル2−1のパラメータが更新される。
図3は、時系列パターン記憶ネットワークを用いた学習の処理のフローチャートを示したものである。
まず最初に、時系列パターン記憶ネットワークのパラメータの初期化が行われる(ステップ3−1)。
そして、学習データが一つ入力される(ステップ3−2)と、時系列パターン記憶ネットワークの各ノードに対応する状態遷移確率モデルとのスコア計算が行われる(ステップ3−3)。
状態遷移確率モデルがHMMで与えられる場合には、例えば、ビタビアルゴリズム(Viterbi algorithm)によって計算される対数尤度がスコアとして利用される。このスコアを比較することによって、最もスコアの良いノード、すなわち勝者ノードの決定が行われる(ステップ3−4)。
この勝者ノードを中心として各ノードの学習の重みが決定される(ステップ3−5)。
そして、各ノードの状態遷移確率モデルのパラメータの更新が、学習の重みに応じて行われる(ステップ3−6)。
以上のステップ3−2からステップ3−6までの処理が、データが入力される度に繰り返される。以上の学習手法により、時系列パターンを自己組織的に学習することが可能となる。
さて、時系列パターン記憶ネットワークのノード数を大きくすると、それに伴って計算量が増大するため、学習に要する時間が増加することになる。そこで、時系列パターン記憶ネットワークの各ノードが行う処理を並列化する機能と、ネットワーク全体の学習を統合する機能を備えることで、効率的に負荷を分散し、学習に要する時間の削減を実現する。
図4は、本発明を適用した学習装置の実施の形態の構成例を示す図である。
図4の学習装置において、観測信号4−1が、信号入力部4−2に入力される。観測信号4−1は、例えば音や画像の信号、LED(Light Emitting Diode)の明るさの信号、モーターの回転角度や回転角速度などの信号である。また、システムに入力される信号およびシステムが出力する信号のどちらも、観測信号4−1の対象となる。
信号入力部4−2は、例えば、観測信号4−1が音の信号である場合、マイク(マイクロフォン)に対応し、観測信号4−1が画像信号である場合、カメラに対応する。また、信号入力部4−2は、モーターの回転角度や回転速度を計測する計測装置などにも対応する。以下では、観測信号4−1が、主に音声信号である場合を例として説明する。また、音声信号は、音声区間検出装置などによって、音声として検出された区間の信号とされ、その区間の信号(音声信号)が信号入力部4−2に入力されるものとして説明を行う。
特徴抽出部4−3では、信号入力部4−2に入力された観測信号4−1からの特徴量の抽出が行われる。例えば、特徴抽出部4−3では、音声信号に対して一定時間間隔で周波数分析などの処理が施され、メルケプストラムなどの時系列データが抽出される。ここで、メルケプストラムとは、音声認識などで広く利用されている特徴量である。この結果、その観測信号4−1に対応する時系列データが特徴量として抽出されることになる。この特徴量は、特徴抽出部4−3からネットワーク学習部4−4に送られる。この、特徴抽出部4−3からネットワーク学習部4−4に送られてくるデータ(特徴量)を、時系列データと呼ぶ。
ネットワーク学習部4−4は、特徴抽出部4−3から送られてきた時系列データを用いて、時系列パターン記憶ネットワーク4−5のパラメータ更新を行う。このパラメータ更新のことを学習と呼ぶ。学習の結果、時系列パターン記憶ネットワーク4−5の各ノードには、学習に利用された時系列データに基づく特徴的な時系列パターンが記憶される。
時系列パターン記憶ネットワーク4−5は、複数のノードで構成されるネットワークである。ノードの一つ一つは、時系列パターンを保持するために利用される。そして、ノードとノードは結合関係を持ち、この結合関係をリンクと呼ぶ。
図5は、時系列パターン記憶ネットワークの代表的な例として、すべてのノードを2次元的に配置し、縦方向および横方向に隣接するノード間にリンクを与えた例を示している。図5の時系列パターン記憶ネットワーク5−1において、リンクによって与えられる空間的なノード5−2乃至5−10の配置構造に基づき、その空間上での距離関係が決定される。
例えば、図5では、あるノードに着目したとき、その着目したノードにリンクで結合された隣接のノードは、着目したノードから最も近く、その隣接ノードから先のリンクを順にたどっていくことで到達するノードは、着目したノードから少しずつ遠くなっていく。この距離関係に基づき、学習の重みが決定される。
また、図4の時系列パターン記憶ネットワーク4−5の各ノードは、図2に示されるような、状態遷移確率モデル2−1と、そのパラメータを学習するためのデータを記憶しておく学習データ記憶部2−5で構成される。状態遷移確率モデル2−1としては、例えば、HMMが利用される。HMMに関しては、図2に関する説明の中で述べた通りである。
ここで、図4の学習装置で行われる学習の処理において、時系列パターン記憶ネットワーク4−5の各ノードに関連する処理を並列化することで負荷分散するために、ネットワーク学習部4−4は、ノード学習部4−6−1乃至4−N−1に接続されている。また、ノード学習部4−6−1乃至4−N−1は、それぞれ時系列パターン記憶ノード4−6−2乃至4−N−2を保持している。
時系列パターン記憶ノード4−6−2乃至4−N−2とは、時系列パターン記憶ネットワーク4−5の対応するノードが保持する情報のコピーを保持したものであり、図2に示されるような、状態遷移確率モデル2−1と、そのパラメータを学習するためのデータを記憶しておく学習データ記憶部2−5によって構成される。
つまり、時系列パターン記憶ネットワーク4−5の、一つ一つのノードに関連する処理をノード学習部4−6−1乃至4−N−1が行えるようになっており、ネットワーク学習部4−4は、それらを統合する処理を行えるようになっている。
ネットワーク学習部4−4は、特徴抽出部4−3から送られてきた時系列データを、全てのノード学習部4−6−1乃至4−N−1に送信する。ノード学習部4−6−1乃至4−N−1は、時系列パターン記憶ノード4−6−2乃至4−N−2に保持された状態遷移確率モデル2−1(図2)を用いて、受信した時系列データに対するスコア計算を行う。
このスコア計算は、状態遷移確率モデル2−1としてHMMを利用する場合には、Viterbi algorithmに基づいて計算される対数尤度の計算に対応する。また、時系列データは、この後に行うパラメータの更新に利用するために、そのまま記憶(後述する時系列データ記憶部7−8(図7)が記憶)しておくものとする。計算結果であるスコアは、ノード学習部4−6−1乃至4−N−1から、ネットワーク学習部4−4に送信される。
ネットワーク学習部4−4は、時系列パターン記憶ネットワーク4−5の各ノードに対応するスコアを、すべて受信した後、最もスコアの高いノードを勝者ノードとして決定する。そして、ネットワーク学習部4−4は、この勝者ノードからの距離を、時系列パターン記憶ネットワーク4−5の各ノード間のリンクに基づく距離関係から求め、その距離に応じた学習の重みを決定する。
この学習の重みは、勝者ノードの重みが最も大きく、かつ、勝者ノードからの距離が遠くなるに従って重みが小さくなるように決定される。
図6は、学習の重みに関する概念について示したものである。
図6において、ノード6−1が、勝者ノードとして示されており、勝者ノードから距離の近い順にノード6−2からノード6−6までが、並べられている。図6の右のグラフは、学習の重みと勝者ノードからの距離との関係を示しており、横軸は学習の重み、縦軸は勝者ノードからの距離を示している。この学習の重みと距離の関係を与えるグラフは、学習の進行に応じて調整が行われる。図6のグラフを用いて、ネットワーク学習部4−4において学習の重みが求められるが、その詳細については、後述する。
ネットワーク学習部4−4において求められた学習の重みは、ネットワーク学習部4−4から、ノード学習部4−6−1乃至4−N−1のうちの、求められた学習の重みに対応するノード学習部に送られる。学習の重みを受け取ったノード学習部は、その学習の重みに基づき、スコア計算時に記憶しておいた時系列データを用いて、学習データ記憶部2−5(図2)の学習データを更新し、その更新された学習データを用いて、状態遷移確率モデル2−1(図2)のパラメータの更新を行う。
例えば、ある学習の重みがノード学習部4−6−1に送られると、ノード学習部4−6−1は、記憶しておいた時系列データと学習の重みを用いて、時系列パターン記憶ノード4−6−2の学習データを更新した後、状態遷移確率モデルのパラメータの更新を行う。
次に、図7は、図4のノード学習部4−6−1とネットワーク学習部4−4の構成例を示している。ネットワーク学習部4−4は、図4に示すように複数のノード学習部4−6−1乃至4−N−1と接続されているが、ここでは、一つのノード学習部4−6−1に着目して説明を行うものとする。
特徴抽出部4−3からネットワーク学習部4−4に送られてきた時系列データ(の観測値)は、ネットワーク学習部4−4の時系列データ供給部7−1からノード学習部4−6−1乃至4−N−1(図4)に送られる。即ち、ノード学習部4−6−1に着目した場合、時系列データ(の観測値)は、時系列データ供給部7−1から、ノード学習部4−6−1のスコア計算部7−5に送られる。
スコア計算部7−5は、時系列データ供給部7−1から送られてきた時系列データを時系列データ記憶部7−8に記憶し、その時系列データに適合する度合いをスコアとして求め、そのスコアを勝者ノード決定部7−2に供給する。ここで、適合の度合いを与えるスコアとは、時系列データ記憶部7−8に記憶された時系列データが、時系列パターン記憶ノード4−6−2に記憶された時系列パターンモデルと適合する度合いを数量化したものである。
即ち、ノードが有する時系列パターンモデルが、例えば、図2の状態遷移確率モデル2−1としてのHMMである場合には、スコア計算部7−5は、時系列パターン記憶ノード4−6−2に記憶された時系列パターンモデルとしてのHMMから、時系列データ記憶部7−8に記憶された時系列データが観測される尤度を求め、そのノードのスコアとして、勝者ノード決定部7−2に供給する。
勝者ノード決定部7−2は、時系列パターン記憶ネットワーク4−5において、時系列データ記憶部7−8に記憶された時系列データに最も適合するノードを求め、そのノードを、勝者ノードとして決定する。即ち、勝者ノード決定部7−2は、時系列パターン記憶ネットワーク4−5を構成するノードのうちの、スコア計算部7−5から供給されるスコアが最も高いノードを勝者ノードとして決定する。
ここで、勝者ノード決定部7−2は、複数のスコア計算部からスコアを供給される。即ち、時系列パターン記憶ネットワーク4−5の一つ一つのノードに対応するノード学習部4−6−1乃至4−N−1がスコア計算部を有し、それらのスコア計算部がノードに対応するスコアを勝者ノード決定部7−2に供給する。そして、勝者ノード決定部7−2は、勝者ノードを表す情報を、重み決定部7−3に供給する。
ここで、時系列パターン記憶ネットワーク4−5を構成するノードに、各ノードを識別するためのラベルであるノードラベルを付しておき、勝者ノードを表す情報、および、その他のノードを表す情報としては、そのノードラベルを採用することができる。
重み決定部7−3は、勝者ノード決定部7−2から供給されるノードラベルが表す勝者ノードに基づき、時系列パターン記憶ネットワーク4−5を構成する各ノードについて、後述する更新重みを決定し、学習データ更新部7−6に供給する。
即ち、重み決定部7−3は、時系列パターン記憶ネットワーク4−5を構成する各ノード(勝者ノードを含む)の更新重みを、そのノードと、勝者ノードとのノード間距離に基づいて決定し、ノード学習部4−6−1乃至4−N−1(図4)に送信する。即ち、ノード学習部4−6−1に着目した場合、重み決定部7−3は、ノード学習部4−6−1の対応するノードの更新重みを、ノード学習部4−6−1が有する学習データ更新部7−6に供給する。
ここで、ノードが有する時系列パターンモデルは、時系列データ記憶部7−8に記憶された新たな時系列データを用いて更新されるが、ノードの更新重みとは、そのノードが有する時系列パターンモデルの更新によって、その時系列パターンモデルが受ける新たな時系列データの影響の度合いを表す。従って、ノードの更新重みが0であれば、そのノードが有する時系列パターンモデルは、新たな時系列データの影響を受けない(更新されない)。
なお、重み決定部7−3において、時系列パターン記憶ネットワーク4−5を構成する各ノードの更新重みを決定する際のノード間距離としては、図5の時系列パターン記憶ネットワーク5−1を用いて説明したように時系列パターン記憶ネットワークのノード間にリンクが与えられている場合には、そのノードと勝者ノードとの結合関係(リンク)に基づくノード間距離を採用するものとする。
即ち、重み決定部7−3は、時系列パターン記憶ネットワーク4−5を参照し、時系列パターン記憶ネットワーク4−5のノードそれぞれと、勝者ノード決定部7−2からのノードラベルが表す勝者ノードとの結合関係に基づくノード間距離を求め、そのノード間距離に基づいて、時系列パターン記憶ネットワーク4−5のノードそれぞれの更新重みを決定する。
学習データ更新部7−6は、時系列パターン記憶ノード4−6−2が有する学習データ記憶部2−5(図2)に記憶された学習データを更新する。
即ち、学習データ更新部7−6は、時系列パターン記憶ノード4−6−2が有する学習データ記憶部2−5に既に記憶されている学習データと、時系列データ記憶部7−8に記憶された時系列データとを、重み決定部7−3から供給される更新重みにしたがって混合し、その混合結果を、新たな学習データとして、時系列パターン記憶ノード4−6−2が有する学習データ記憶部2−5に記憶させることで、その学習データ記憶部2−5の記憶内容を更新する。
学習データ更新部7−6は、以上のように、時系列パターン記憶ノード4−6−2が有する学習データ記憶部2−5に記憶された学習データを、更新重みにしたがって更新すると、その更新が終了した旨の終了通知を、モデル学習部7−7に供給する。
モデル学習部7−7は、学習データ更新部7−6から終了通知を受けると、その学習データ更新部7−6による更新後の時系列パターン記憶ノード4−6−2に記憶された学習データを用いて、時系列パターン記憶ノード4−6−2が有する時系列パターンモデルの学習を行うことにより、その時系列パターンモデルを更新する。
従って、モデル学習部7−7による、時系列パターン記憶ノード4−6−2が有する時系列パターンモデルの更新は、その時系列パターン記憶ノード4−6−2に記憶されていた学習データ(の一部)と、時系列データ記憶部7−8に記憶された新たな時系列データとに基づいて行われる。なお、時系列パターンモデルの学習に利用される学習データは、更新重みにしたがって更新されることから、モデル学習部7−7による、時系列パターンモデルの更新は、更新重みに基づいて行われるということもできる。
モデル学習部7−7によって更新された時系列パターン記憶ノード4−6−2に記憶された時系列パターンモデルは、モデル学習部7−7からネットワーク更新部7−4に供給される。即ち、ノード学習部4−6−1乃至4−N−1(図4)は、それぞれモデル学習部を有し、それぞれのモデル学習部から更新された時系列パターンモデルが、ネットワーク更新部7−4に供給されることになる。
ネットワーク更新部7−4は、モデル学習部7−7から供給された時系列パターンモデルに基づき、時系列パターン記憶ネットワーク4−5の対応するノードが保持する時系列パターンモデルを更新する。即ち、ネットワーク更新部7−4は、ノード学習部4−6−1乃至4−N−1が有するそれぞれのモデル学習部から供給される時系列パターンモデルに基づき、時系列パターン記憶ネットワーク4−5のノードが保持する時系列パターンモデルを更新する。
つまり、時系列パターン記憶ノード4−6−2乃至4−N−2に記憶された時系列パターンモデルが更新されると、ネットワーク更新部7−4によって、時系列パターン記憶ネットワーク4−5の対応するノードの時系列パターンモデルも更新され、時系列パターン記憶ネットワーク4−5の状態は、学習の進行に合わせて最新の状態に保たれることになる。
以上の処理は、図4の学習装置に観測信号4−1が入力される度に行われる。
図8は、この処理のフローチャートを示したものである。
まず最初に、時系列パターン記憶ネットワーク4−5と時系列パターン記憶ノード4−6−2乃至4−N−2のパラメータの初期化が行われる(ステップ8−1)。
ここで、初期化されるパラメータは、時系列パターン記憶ネットワーク4−5のノードと時系列パターン記憶ノード4−6−2乃至4−N−2の対応するノードどうしが同じ値になるように、初期化される。そして、学習データ(観測信号4−1)が一つ入力されると、この学習データはネットワーク学習部4−4からノード学習部4−6−1乃至4−N−1へ送信される(ステップ8−2)。
ノード学習部4−6−1乃至4−N−1は、対応する時系列パターン記憶ノード4−6−2乃至4−N−2の状態遷移確率モデルを用いて、受信した学習データに対するスコア計算を行い、その計算結果であるスコア値をネットワーク学習部4−4に送信する(ステップ8−3−1乃至ステップ8−3−N)。
ネットワーク学習部4−4は、受信したスコア値を比較することで、最もスコアの良いノード、すなわち勝者ノードを決定する(ステップ8−4)。
そして、ネットワーク学習部4−4は、この勝者ノードを中心として各ノードの学習の重みを決定し、その学習の重みをノード学習部4−6−1乃至4−N−1に送信する(ステップ8−5)。
ノード学習部4−6−1乃至4−N−1は、受信した学習の重みとスコア計算に用いた学習データによって、時系列パターン記憶ノード4−6−2乃至4−N−2の学習データを更新し、更新された学習データに基づいて、状態遷移確率モデルのパラメータを更新する(ステップ8−6−1乃至ステップ8−6−N)。
更新された結果は、ノード学習部4−6−1乃至4−N−1からネットワーク学習部4−4に送られ、それに基づき、ネットワーク学習部4−4によって、時系列パターン記憶ネットワーク4−5の対応するノードのパラメータが更新される。つまり、時系列パターン記憶ネットワーク4−5として、統合されたパラメータの更新が行われる(ステップ8−7)。
以上のステップ8−2からステップ8−7までの処理は、図4の学習装置にデータ(観測信号4−1)が入力される度に繰り返されることになる。
ここで、それぞれのノード学習部4−6−1乃至4−N−1が行うスコア計算の処理(ステップ8−3−1乃至ステップ8−3−N)と、パラメータ更新の処理(ステップ8−6−1乃至ステップ8−6−N)は、並列的に行われる。つまり、学習の処理過程において、各ノードに関連する処理は、並列的に行われる。
また、勝者ノードの決定の処理(ステップ8−4)、学習の重みの決定の処理(ステップ8−5)、さらに時系列パターン記憶ネットワークとしての統合されたパラメータ更新の処理(ステップ8−7)など、ネットワークとして統合的に行われる処理は、ネットワーク学習部4−4において集中的に管理して行われることになる。
なお、本実施の形態では、データが入力され、時系列パターン記憶ノード4−6−2乃至4−N−2においてパラメータ更新が行われる度に、時系列パターン記憶ネットワーク4−5のノードのパラメータの更新を統合して統合更新処理(ステップ8−7)を行うものとして説明を行ったが、時系列パターン記憶ネットワーク4−5の各ノードの状態と対応する時系列パターン記憶ノード4−6−2乃至4−N−2の状態を同じに保つ必要がなければ、この統合更新処理(ステップ8−7)は不要となるので、省略することができる。あるいは、ネットワーク学習部4−4が、適当な時間間隔で統合更新処理(ステップ8−7)を行ったり、データの入力が複数回おこなわれた時点で統合更新処理(ステップ8−7)を行うなど、統合更新処理を行う頻度を少なくすることも可能である。
次に、学習の重みに基づく時系列パターンモデルの更新方法について説明する。
ノードに対する学習の重み(以下、適宜、更新重み、または、ノードの更新重みという)は、図6に示すような、勝者ノードとのノード間距離の増加に対して更新重みが減少する関係を表す曲線(以下、距離/重み曲線という)にしたがって、決定される。以下では、ノード間距離をd、ノードの更新重みをαと示す。距離/重み曲線によれば、勝者ノードとのノード間距離dが近いノードほど、大きな更新重みαが決定され、ノード間距離dが遠いノードほど、小さな更新重みαが決定される。
更新重みαとパターン間距離dとの関係、すなわち、図6に示したような距離/重み曲線は、例えば、式(1)によって与えられる。
ここで、式(1)において、定数Gは、勝者ノードの更新重みを表す定数であり、γは、減衰係数で、0<γ<1の範囲の定数である。また、変数Δは、勝者ノードの近傍のノード(勝者ノードとのノード間距離dが近いノード)の更新重みαを調整するための変数である。
勝者ノードに対するノード間距離dとして、0が与えられ、以下、他のノードのノード間距離dとして、勝者ノードとの距離にしたがって、1,2,・・・が与えられる場合、式(1)において、例えば、G=8,γ=0.5,Δ=1であれば、勝者ノードとなっているノードの更新重みαとして、8(=G)が求められる。以下、勝者ノードとの距離が大きくなるにしたがって、ノードの更新重みαとしては、4,2,1,・・・と小さくなる値が求められる。
ここで、式(1)における変数Δが大きな値である場合には、ノード間距離dの変化に対する更新重みαの変化は緩やかになり、逆に、変数Δが0に近い値である場合には、ノード間距離dの変化に対する更新重みαの変化は急峻になる。
従って、変数Δを、例えば、上述した1から少しずつ0に近づけていくように調整すると、ノード間距離dの変化に対する更新重みαの変化は急峻になっていき、更新重みαは、ノード間距離dが大きくなるにしたがって、より小さい値となる。そして、変数Δが0に近くなると、勝者ノード(となっているノード)以外のノードの更新重みαは、ほとんど0となる。
変数Δは、例えば、時系列パターン記憶ネットワークの更新(学習)の開始時は大きな値にし、時間の経過とともに、即ち、更新の回数が増加するにしたがって小さな値になるようにすることができる。この場合、時系列パターン記憶ネットワークの更新の開始時は、ノード間距離dの変化に対する更新重みαの変化が緩やかな距離/重み曲線にしたがって、時系列パターン記憶ネットワークの各ノードの更新重みαが決定され、更新(学習)が進む(進行する)につれ、ノード間距離dの変化に対する更新重みαの変化が急峻になっていく距離/重み曲線にしたがって、時系列パターン記憶ネットワークの各ノードの更新重みαが決定される。
即ち、この場合、勝者ノードの更新は、学習(更新)の進行にかかわらず、入力された時系列データの観測値の影響を強く受けるように行われる。一方、勝者ノード以外のノードの更新は、学習の開始時は、比較的広い範囲のノード(勝者ノードとのノード間距離dが小のノードから、ある程度大のノード)に亘って、入力された時系列データの観測値の影響を受けるように行われる。そして、学習が進行するにつれ、勝者ノード以外のノードの更新は、徐々に狭い範囲のノードについてのみ、入力された時系列データの観測値の影響を受けるように行われる。
図7の重み決定部7−3は、以上のようにして、時系列パターン記憶ネットワーク4−5の各ノードの更新重みαを決定し、各ノード学習部が有する学習データ更新部に送信する。ノード学習部4−6−1に着目した場合には、重み決定部7−3から学習データ更新部7−6に更新重みαが送られ、時系列パターン記憶ノード4−6−2に記憶される学習データが、そのノードの更新重みαに基づいて更新される。
いま、時系列パターン記憶ノード4−6−2には、学習データが既に記憶されており、さらに、時系列パターンモデルは、その学習データを用いて既に学習が行われたものであるとする。ここで、学習データは、例えば、図2の学習データ記憶部2−5に記憶された学習データに対応し、この時、時系列パターンモデルは、図2の状態遷移確率モデル2−1としてのHMMに対応する。
学習データ更新部7−6は、上述したように、時系列パターン記憶ノード4−6−2に既に記憶されている学習データ(以下、適宜、旧学習データという)と、時系列データ記憶部7−8に記憶された新たな時系列データとを、重み決定部7−3から送られてくる更新重みαにしたがって混合し、その混合結果を、新たな学習データとして、時系列パターン記憶ノード4−6−2に記憶させることで、その時系列パターン記憶ノード4−6−2に記憶された学習データを、新たな学習データに更新する。
即ち、学習データ更新部7−6は、旧学習データに対して、新たな時系列データを追加することで、旧学習データと新たな時系列データとを混合した新たな学習データとするが、旧学習データに対する新たな時系列データの追加(旧学習データと新たな時系列データとの混合)は、更新重みαに対応する比にしたがって行われる。
ここで、新たな時系列データと旧学習データとを、1:0の比率で混合すると、その混合によって得られる新たな学習データは、新たな時系列データだけとなる。逆に、新たな時系列データと旧学習データとを、0:1の比率で混合すると、その混合によって得られる新たな学習データは、旧学習データだけとなる。時系列パターンモデルの更新は、新たな学習データを用いた学習によって行われるため、新たな時系列データと旧学習データとを混合する比率を変えることによって、更新により時系列パターンモデルが受ける新たな時系列データの影響の度合い(強さ)を変えることができる。
新たな時系列データと旧学習データとを混合する比率としては、更新重みαに対応した値が採用され、例えば、更新重みαが大であるほど、新たな時系列データの比率が大となる(旧学習データの比率が小となる)ような値とされる。
具体的には、時系列パターン記憶ノード4−6−2には、一定の数の時系列データ(学習データ)が記憶されるものとし、その一定の数をHとする。この場合、時系列パターンモデルの学習は、常に、H個の学習データ(時系列データ)を用いて行われる。
時系列パターン記憶ノード4−6−2に、常に、一定の数Hの学習データが記憶される場合、新たな時系列データと旧学習データとの混合によって得られる新たな学習データの個数は、H個である必要があり、そのような、新たな時系列データと旧学習データとの混合を、更新重みαに対応した比率で行う方法としては、新たな時系列データと旧学習データとを、比率α:H-αで混合する方法がある。
新たな時系列データと旧学習データとを、比率α:H-αで混合する具体的な方法としては、例えば、H個の旧学習データのうちのH-α個の旧学習データに対して、α個の新たな時系列データを追加することにより、H個の新たな学習データを得る方法がある。
この場合、時系列パターン記憶ノード4−6−2に記憶される時系列データの数Hが、例えば、100であり、更新重みαが、例えば、8であれば、時系列パターン記憶ノード4−6−2の記憶内容は、100個の旧学習データのうちの92個の旧学習データに対して、8個の新たな時系列データを追加することによって得られる100個の新たな学習データに更新される。
H個の旧学習データのうちのH-α個の旧学習データに対する、α個の新たな時系列データの追加は、α個の新たな時系列データが得られるのを待って行う方法があるが、この方法では、1個の新たな時系列データが得られるごとに、時系列パターン記憶ノード4−6−2の記憶内容を更新することができない。
そこで、時系列パターン記憶ノード4−6−2の記憶内容の更新は、1個の新たな時系列データが得られるごとに、その新たな時系列データをα個だけ、H-α個の旧学習データに追加することにより行うことができる。即ち、1個の新たな時系列データをコピーしてα個の新たな時系列データとし、そのα個の新たな時系列データを、H個の旧学習データから古い順にα個を除外して残ったH-α個の旧学習データに追加することにより、時系列パターン記憶ノード4−6−2の記憶内容の更新を行う。これにより、1個の新たな時系列データが得られるごとに、時系列パターン記憶ノード4−6−2の記憶内容を更新することができる。
以上のように、時系列パターン記憶ノード4−6−2の記憶内容の更新を行うことにより、常に、新しい順のH個の時系列データだけが、学習データとして保持されることになり、その学習データに占める新たな時系列データの割合(比率)は、更新重みαによって調整されることになる。このような学習データの更新は、各ノードに対応する学習データ更新部によって、それぞれに対応する時系列パターン記憶ノード4−7−2乃至4−N−2(図4)に対して行われる。
モデル学習部7−7は、時系列パターン記憶ノード4−6−2に記憶された更新後の学習データを用いて、時系列パターン記憶ノード4−6−2に記憶された時系列パターンモデルの学習を行う。例えば、時系列パターンモデルが、図2の状態遷移確率モデル2−1としてのHMMで与えられる場合、学習データを用いてBaum-Welch法を適用することで学習が行われる。
さて、以上のような学習の処理を動作させるハードウェアとして、複数のCPU(central processing unit)を備えたコンピュータを利用する場合を考える。時系列パターン記憶ネットワークのノード数をNとした場合、もしN+1個のCPUが利用できるならば、図4に示されたノード学習部4−6−1乃至4−N−1の処理をそれぞれCPUに一つずつ割り当て、ネットワーク学習部4−4の処理を残りのCPUの一つに割り当てれば、図8に示したスコア計算の処理(ステップ8−3−1乃至ステップ8−3−N)と、パラメータ更新の処理(ステップ8−6−1乃至ステップ8−6−N)は、完全に並列的に行うことが可能となる。つまり、ノード数の増加に応じて学習時間が増加するという問題は、大きく改善されることになる。
CPUの個数に制限がある場合には、ノード学習部をCPUに一つずつ割り当て、各ノード学習部が処理すべき時系列パターン記憶ノードを複数個ずつ割り当てるものとする。
図9は、この場合の構成例、即ち、本発明を適用した学習装置の第2の構成例を示したものである。
図9において、観測信号9−1は図4の観測信号4−1に、信号入力部9−2は図4の信号入力部4−2に、特徴抽出部9−3は図4の特徴抽出部4−3に、ネットワーク学習部9−4は図4のネットワーク学習部4−4に、時系列パターン記憶ネットワーク9−5は図4の時系列パターン記憶ネットワーク4−5に、それぞれ対応しており、その説明は省略する。
図9の学習装置において、N+1個のCPUが利用できる場合、ノード学習部9−6−1乃至9−N−1の処理をそれぞれCPUに一つずつ割り当て、ネットワーク学習部9−4の処理を残りのCPUの一つに割り当てる。
この場合、図8のスコア計算の処理(ステップ8−3−1乃至ステップ8−3−N)では、ノード学習部9−6−1乃至9−N−1は、対応する複数の時系列パターン記憶ノード9−6−2乃至9−N−2それぞれに対してスコア計算を行い、その計算結果をネットワーク学習部9−4に送ることになる。
また、パラメータ更新の処理(ステップ8−6−1乃至ステップ8−6−N)では、ノード学習部9−6−1乃至9−N−1は、対応する複数の時系列パターン記憶ノード9−6−2乃至9−N−2それぞれに対して学習データの更新とそれに伴うパラメータ更新を行い、その更新結果をネットワーク学習部9−4に送ることになる。
なお、ノード学習部に割り当てる時系列パターン記憶ノードの個数は、完全に同じである必要はない。また、学習装置が、図4の構成である場合には、各ノード学習部が並列的にスコア計算やパラメータ更新の処理を行うため、最も処理時間の長いノード学習部が、学習の時間を左右することになる。つまり、処理時間の短いノード学習部は、最も処理時間の長いノード学習部の処理が完了するまで、待ち状態となる。
この待ち状態の間に、別の処理を行うことが可能であることから、図9の学習装置のように、複数の時系列パターン記憶ノードの処理を各ノード学習部が行うようにしたとしても、その個数の増加分だけ、全体の学習時間が長くなるわけではない。例えば、図4の学習装置の構成に対して、CPUの個数を半分にし、図9の学習装置の構成に変更したとしても、学習時間が単純に2倍になるわけではない。
図10は、本発明を適用した学習装置の第3の構成例に関して示したものである。
図10において、観測信号10−1は図4の観測信号4−1に、信号入力部10−2は図4の信号入力部4−2に、特徴抽出部10−3は図4の特徴抽出部4−3に、ネットワーク学習部10−4は図4のネットワーク学習部4−4に、時系列パターン記憶ネットワーク10−5は図4の時系列パターン記憶ネットワーク4−5に、それぞれ対応しており、その説明は省略する。
図10の学習装置が図4の学習装置と違う点は、ノード学習部が時系列パターン記憶ノードを保持するのではなく、ノード学習部10−6乃至10−Nは時系列パターン記憶ネットワーク10−5のノードの情報に直接アクセスできるようになされていることである。この場合、図10の学習装置においては、各ノードの情報のコピーを、例えば、図4の時系列パターン記憶ノード4−6−2乃至4−N−2のように、保持する必要がなくなるため、各ノード毎のパラメータ更新に応じて、ネットワーク全体としてパラメータの統合更新を行う必要もなくなる。
そして、図10の学習装置において、最も重要な点は、ノード学習部10−6乃至10−Nは、割り当てられたノードに対応する処理だけを行うのではなく、時系列パターン記憶ネットワーク10−5のノードの中で、まだ処理が行われていないノードがあれば、順に処理を行うことができるようになっているということである。つまり、処理が行われていないノードが存在するにもかかわらず、ノード学習部が待ち状態になるという問題を改善することができ、効率的にノード学習部が処理を行うことが可能となる。
次に、図11乃至図13を参照して、本発明の効果を確認するために行った実験結果について説明する。
まず、実験条件について説明する。音声信号として「あ」「い」「う」「え」「お」という5種類に関して、男性4名と女性4名の合計8名が、それぞれ10回ずつ発話した音声信号を用意する。音声信号の総数は400である。この音声信号をランダムな順序で、学習装置に、順に入力する。学習装置は、音声信号からメルケプストラム係数を特徴量として抽出し、その特徴量を39次元のベクトルの時系列データに変換する。
一方、実験では、時系列パターン記憶ネットワークのノード数を15、30、60と変化させ、各ノードをHMMで与えるものとする。ここで、各HMMはleft-to-right型の10状態のHMMとし、HMMの各状態の出力確率密度関数は、混合数1のガウス分布で与える。HMMのパラメータの学習にはBaum-Welch法を適用し、スコア計算にはViterbi algorithmを適用する。学習において、400個の音声データは繰り返し利用するものとし、合計10000回の信号の入力を行った。
図10は、CPUを1つだけ利用した場合の結果を示している。学習が完了するまでに要した時間を実行時間として計測した。それぞれのノード数に対応した実行時間が示されている。この結果から、ノード数の増加に比例して、実行時間が増加していることが分かる。
これに対して、図11は、CPUの数をノード数に応じて増加させた結果を示している。図4の構成に対応しており、ノード1つに対応してCPUを一つ割り当てた結果である。図10の結果と比較するとノード数の増加に対して、実行時間の増加の割合は非常に小さく、並列化による効果が確認できる。
さらに、図13は、ノード数が30と60である場合に、CPUの数を半分に減らした場合の結果を示している。図9の構成に対応している。図12の結果と比較すると、例えば、ノード数が30である場合に、CPUの数を30から15に減らしたとしても、実行時間が倍になるわけではなく、実行時間は34分から39分に増加しているだけである。同様の傾向はノード数が60である場合も確認できる。つまり、CPUの数が制限される場合でも、効率的に処理の並列化が行われていることが分かる。
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
そこで、図14は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク14−11やROM14−9に予め記録しておくことができる。
あるいはまた、プログラムは、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体14−5に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体14−5は、いわゆるパッケージソフトウエアとして提供することができる。
なお、プログラムは、上述したようなリムーバブル記録媒体14−5からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部14−3で受信し、内蔵するハードディスク14−11にインストールすることができる。
コンピュータは、CPU(Central Processing Unit)14−8を内蔵している。CPU14−8には、バス14−7を介して、入出力インタフェース14−6が接続されており、CPU14−8は、入出力インタフェース14−6を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部14−2が操作等されることにより指令が入力されると、それにしたがって、ROM(Read Only Memory)14−10に格納されているプログラムを実行する。あるいは、また、CPU14−8は、ハードディスク14−11に格納されているプログラム、衛星もしくはネットワークから転送され、通信部14−3で受信されてハードディスク14−11にインストールされたプログラム、またはドライブ14−4に装着されたリムーバブル記録媒体14−5から読み出されてハードディスク14−11にインストールされたプログラムを、RAM(Random Access Memory)14−10にロードして実行する。
また、コンピュータは、CPU14−8の他に、N個のCPU14−8−1乃至14−8−Nを内蔵している。CPU14−8は、バス14−7およびバス14−7−1乃至14−7−Nを介して、CPU14−8−1乃至14−8−Nと接続されており、通信を行うことができる。CPU14−8−1乃至14−8−Nは、ROM14−9−1乃至14−9−Nに格納されているプログラムを実行する。あるいは、また、CPU14−8−1乃至14−8−Nは、ハードディスク14−11−1乃至14−11−Nに格納されているプログラム、衛星もしくはネットワークから転送され、通信部14−3で受信されてハードディスク14−11−1乃至14−11―Nにインストールされたプログラム、またはドライブ14−4に装着されたリムーバブル記録媒体14−5から読み出されてハードディスク14−11−1乃至14−11−Nにインストールされたプログラムを、RAM14−10−1乃至14−10−Nにロードして実行する。
CPU14−8はネットワーク学習部4−4(図4)の処理を行い、CPU14−8−1乃至14−8−Nはノード学習部4−6−1乃至4−N−1(図4)の処理を行う。これにより、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。
そして、CPU14−8は、その処理結果を、必要に応じて、例えば、入出力インタフェース14−6を介して、LCD(Liquid Crystal Display)やスピーカ等で構成される出力部14−1から出力、あるいは、通信部14−3から送信、さらには、ハードディスク14−11に記録等させる。
1−1 学習データ, 1−2 学習部, 1−3 時系列パターン記憶ネットワーク, 1−4乃至1−9 ノード, 2−1 状態遷移確率モデル,2−2乃至2−4 状態, 2−5 学習データ記憶部, 4−1 観測信号, 4−2 信号入力部, 4−3 特徴抽出部, 4−4 ネットワーク学習部, 4−5 時系列パターン記憶ネットワーク, 4−6−1乃至4−N−1 ノード学習部, 4−6−2乃至4−N−2 時系列パターン記憶ノード, 5−1 時系列パターン記憶ネットワーク, 5−2乃至5−10 ノード, 6−1乃至6−6 ノード, 7−1 時系列データ供給部, 7−2 勝者ノード決定部, 7−3 重み決定部, 7−4 ネットワーク更新部, 7−5 スコア計算部, 7−6 学習データ更新部, 7−7 モデル学習部, 7−8 時系列データ記憶部, 9−1 観測信号 9−2 信号入力部, 9−3 特徴抽出部, 9−4 ネットワーク学習部, 9−5 時系列パターン記憶ネットワーク, 9−6−1乃至9−N−1 ノード学習部, 9−6−2乃至9−N−2 時系列パターン記憶ノード, 10−1 観測信号 10−2 信号入力部, 10−3 特徴抽出部, 10−4 ネットワーク学習部, 10−5 時系列パターン記憶ネットワーク, 10−6乃至10−N ノード学習部, 14−1 出力部, 14−2 入力部, 14−3 通信部, 14−4 ドライブ, 14−5 リムーバブル記録媒体, 14−6 入出力インタフェース, 14−7および14−7−1乃至14−7−N バス, 14−8および14−8−1乃至14−8−N CPU, 14−9および14−9−1乃至14−9−N ROM, 14−10および14−10−1乃至14−10−N RAM, 14−11および14−11−1乃至14−11−N ハードディスク
Claims (13)
- 時系列のデータである時系列データに基づき、学習を行う学習装置において、
前記時系列データのパターンである時系列パターンを表現する時系列パターンモデルを有する複数のノードから構成されるネットワークである時系列パターン記憶ネットワークを、前記時系列データの観測値に基づいて、自己組織的に更新する学習手段を備えることを特徴とし、
前記学習手段は、
1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行う複数のノード学習手段と、
複数の前記ノード学習手段を並列的に用いて時系列パターン記憶ネットワークの更新を行うネットワーク学習手段と
によって構成される
ことを特徴とする学習装置。 - 前記時系列パターンモデルは、状態遷移を有する確率モデルである状態遷移確率モデルである
ことを特徴とする請求項1に記載の学習装置。 - 前記時系列パターンモデルは、HMM(Hidden Markov Model)である
ことを特徴とする請求項1に記載の学習装置。 - 前記学習手段は、
前記時系列パターン記憶ネットワークを構成する複数のノードのうちの、前記時系列データの観測値に最も適合するノードである勝者ノードを決定する勝者ノード決定手段と、
前記時系列パターンが受ける前記時系列データの観測値の影響の度合いを表す重みを、前記勝者ノードに基づいて前記ノードに対して決定する重み決定手段と、
前記時系列パターンモデルを前記重みに基づいて更新することにより、前記時系列パターン記憶ネットワークを更新する更新手段と
を有し、
前記勝者ノード決定手段と前記重み決定手段と前記更新手段の処理において、前記ノード学習手段は、1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行い、前記ネットワーク学習手段は、複数の前記ノード学習手段を並列的に用いて時系列パターン記憶ネットワークを更新する
ことを特徴とする請求項1に記載の学習装置。 - 前記ノード学習手段は、前記時系列データの観測値に基づいて、関連する1つ以上のノードが有する前記時系列パターンモデルとの適合の度合いを決定する
ことを特徴とする請求項4に記載の学習装置。 - 前記ノード学習手段は、前記時系列データの観測値、および前記重みに基づいて、関連する1つ以上のノードが有する前記時系列パターンモデルを更新する
ことを特徴とする請求項4に記載の学習装置。 - 前記ネットワーク学習手段は、複数の前記ノード学習手段が決定する前記時系列データの観測値と前記時系列パターンモデルとの適合の度合いに基づいて前記勝者ノードを決定し、その勝者ノードに基づく前記ノードに対する前記重みを決定する
ことを特徴とする請求項5に記載の学習装置。 - 前記ネットワーク学習手段は、複数の前記ノード学習手段が更新する前記時系列パターンモデルに基づき、前記時系列パターン記憶ネットワークの更新を行う
ことを特徴とする請求項6に記載の学習装置。 - 前記ネットワーク学習手段は、前記時系列パターン記憶ネットワークの更新を所定の時間間隔、あるいは、所定の更新回数の間隔で行う
ことを特徴とする請求項8に記載の学習装置。 - 前記ノード学習手段は、あらかじめ決定された1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行う
ことを特徴とする請求項1に記載の学習装置。 - 前記ノード学習手段は、時系列パターンモデルの更新が行われていないノードを決定し、そのノードが有する時系列パターンモデルの更新に関連する処理を行う
ことを特徴とする請求項1に記載の学習装置。 - 時系列のデータである時系列データに基づき、学習を行う学習方法において、
前記時系列データのパターンである時系列パターンを表現する時系列パターンモデルを有する複数のノードから構成されるネットワークである時系列パターン記憶ネットワークを、前記時系列データの観測値に基づいて、自己組織的に更新する学習ステップを含み、
前記学習ステップは、
1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行う複数のノード学習ステップと、
並列的に処理が行われる複数の前記ノード学習ステップにおける処理の結果を利用して時系列パターン記憶ネットワークの更新を行うネットワーク学習ステップと
によって構成される
ことを特徴とする学習方法。 - 時系列のデータである時系列データに基づく学習をコンピュータに行わせる学習プログラムにおいて、
前記時系列データのパターンである時系列パターンを表現する時系列パターンモデルを有する複数のノードから構成されるネットワークである時系列パターン記憶ネットワークを、前記時系列データの観測値に基づいて、自己組織的に更新する学習ステップを含み、
前記学習ステップは、
1つ以上のノードが有する時系列パターンモデルの更新に関連する処理を行う複数のノード学習ステップと、
並列的に処理が行われる複数の前記ノード学習ステップにおける処理の結果を利用して時系列パターン記憶ネットワークの更新を行うネットワーク学習ステップと
によって構成される
ことを特徴とする学習プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005110072A JP2006293489A (ja) | 2005-04-06 | 2005-04-06 | 学習装置および学習方法、並びに学習プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005110072A JP2006293489A (ja) | 2005-04-06 | 2005-04-06 | 学習装置および学習方法、並びに学習プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006293489A true JP2006293489A (ja) | 2006-10-26 |
Family
ID=37414030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005110072A Pending JP2006293489A (ja) | 2005-04-06 | 2005-04-06 | 学習装置および学習方法、並びに学習プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006293489A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008186171A (ja) * | 2007-01-29 | 2008-08-14 | National Institute Of Information & Communication Technology | 空間−時間パターンを同時に学習し認識するためのシステム |
WO2008111349A1 (ja) * | 2007-03-09 | 2008-09-18 | Nec Corporation | 生存分析システム、生存分析方法および生存分析用プログラム |
JP2008276290A (ja) * | 2007-04-25 | 2008-11-13 | Sony Corp | データ処理装置、データ処理方法、及びプログラム |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06266384A (ja) * | 1993-03-16 | 1994-09-22 | A T R Jido Honyaku Denwa Kenkyusho:Kk | 音響モデル適応方式 |
JPH1185184A (ja) * | 1997-09-04 | 1999-03-30 | Atr Onsei Honyaku Tsushin Kenkyusho:Kk | 音声認識装置 |
JP2000122689A (ja) * | 1998-10-20 | 2000-04-28 | Mitsubishi Electric Corp | 話者適応化装置及び音声認識装置 |
JP2001075588A (ja) * | 1999-09-06 | 2001-03-23 | Mitsubishi Electric Corp | 教師なし話者適応化装置、音声認識装置、教師なし話者適応化方法、音声認識方法、教師なし話者適応化プログラムを記録した記録媒体及び音声認識プログラムを記録した記録媒体 |
JP2001100781A (ja) * | 1999-09-30 | 2001-04-13 | Sony Corp | 音声処理装置および音声処理方法、並びに記録媒体 |
-
2005
- 2005-04-06 JP JP2005110072A patent/JP2006293489A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06266384A (ja) * | 1993-03-16 | 1994-09-22 | A T R Jido Honyaku Denwa Kenkyusho:Kk | 音響モデル適応方式 |
JPH1185184A (ja) * | 1997-09-04 | 1999-03-30 | Atr Onsei Honyaku Tsushin Kenkyusho:Kk | 音声認識装置 |
JP2000122689A (ja) * | 1998-10-20 | 2000-04-28 | Mitsubishi Electric Corp | 話者適応化装置及び音声認識装置 |
JP2001075588A (ja) * | 1999-09-06 | 2001-03-23 | Mitsubishi Electric Corp | 教師なし話者適応化装置、音声認識装置、教師なし話者適応化方法、音声認識方法、教師なし話者適応化プログラムを記録した記録媒体及び音声認識プログラムを記録した記録媒体 |
JP2001100781A (ja) * | 1999-09-30 | 2001-04-13 | Sony Corp | 音声処理装置および音声処理方法、並びに記録媒体 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008186171A (ja) * | 2007-01-29 | 2008-08-14 | National Institute Of Information & Communication Technology | 空間−時間パターンを同時に学習し認識するためのシステム |
WO2008111349A1 (ja) * | 2007-03-09 | 2008-09-18 | Nec Corporation | 生存分析システム、生存分析方法および生存分析用プログラム |
JP2008276290A (ja) * | 2007-04-25 | 2008-11-13 | Sony Corp | データ処理装置、データ処理方法、及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7346595B2 (en) | Method and apparatus for learning data, method and apparatus for generating data, and computer program | |
US7499892B2 (en) | Information processing apparatus, information processing method, and program | |
KR101182965B1 (ko) | 데이터 학습용 방법 및 장치, 데이터 인식용 장치, 및 데이터 생성용 장치 | |
JP5326892B2 (ja) | 情報処理装置、プログラム、および音響モデルを生成する方法 | |
Seltzer et al. | Multi-task learning in deep neural networks for improved phoneme recognition | |
US7590537B2 (en) | Speaker clustering and adaptation method based on the HMM model variation information and its apparatus for speech recognition | |
JP5175325B2 (ja) | 音声認識用wfst作成装置とそれを用いた音声認識装置と、それらの方法とプログラムと記憶媒体 | |
JP2006113570A (ja) | 音声分類および音声認識のための隠れ条件付確率場モデル | |
Sadhu et al. | Continual Learning in Automatic Speech Recognition. | |
Zhang et al. | A general artificial neural network extension for HTK | |
Price et al. | Speaker adaptation of deep neural networks using a hierarchy of output layers | |
JP2019219574A (ja) | 話者モデル作成システム、認識システム、プログラムおよび制御装置 | |
KR20170086214A (ko) | 음성인식 장치 및 방법 | |
Sankar | Experiments with a Gaussian merging-splitting algorithm for HMM training for speech recognition | |
JPWO2007105409A1 (ja) | 標準パタン適応装置、標準パタン適応方法および標準パタン適応プログラム | |
JP2006293489A (ja) | 学習装置および学習方法、並びに学習プログラム | |
JP2009086581A (ja) | 音声認識の話者モデルを作成する装置およびプログラム | |
JP4534769B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
Gales et al. | Support vector machines for noise robust ASR | |
Liu et al. | The Cambridge University 2014 BOLT conversational telephone Mandarin Chinese LVCSR system for speech translation | |
JP3919475B2 (ja) | 話者特徴抽出装置および話者特徴抽出方法、音声認識装置、並びに、プログラム記録媒体 | |
JP7125608B2 (ja) | 音響モデル学習装置、音声合成装置、及びプログラム | |
JP6158105B2 (ja) | 言語モデル作成装置、音声認識装置、その方法及びプログラム | |
JP2004117503A (ja) | 音声認識用音響モデル作成方法、その装置、そのプログラムおよびその記録媒体、上記音響モデルを用いる音声認識装置 | |
Tomashenko et al. | Exploring GMM-derived features for unsupervised adaptation of deep neural network acoustic models |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110614 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20111013 |