(57)【要約】【課題】複数音源から発せられた音の分離学習が可能な音学習装置を提供する。【解決手段】複数個の競合学習ニューロン１を備え、各競合学習ニューロン１は複数個の入力部２を備えて、内部電位値が閾値を超えたときに発火するように構成され、勝者ニューロンについて参照ベクトルが入力ベクトルに近づくように結合重みを更新することを、各入力ベクトルについて繰り返すことにより学習を行い、各入力部２に対応してパルス信号の立ち上がりを検出するＯＮニューロン４が設けられ、各ＯＮニューロン４は、パルス信号の立ち上がり時から所定時間だけ発火するように構成され、各ＯＮニューロン４が出力したパルス信号を用いて、各競合学習ニューロン１の各入力部２の結合重みを、パルス信号の立ち上がり時から所定時間だけ非零となるように変化させる音学習装置。【選択図】図７−１
2008077177.tif 000002
【特許請求の範囲】
【請求項１】
複数個の競合学習パルスニューロンモデル部（以下、「競合学習ニューロン」と言う。）を備え、
前記各競合学習ニューロンは、音信号から生成されたパルス信号が入力される複数個の入力部を備えて、各入力部が有する結合重みと各入力部に入力されたパルス信号とを用いて演算された内部電位値が、該競合学習ニューロンが有する閾値を超えたときに、発火するように構成され、
前記内部電位値が最も高かった前記競合学習ニューロン（以下、「勝者ニューロン」と言う。）について、結合重みから構成されてノルムを１としたベクトル（以下、「参照ベクトル」と言う。）が、入力されたパルス信号から構成されるベクトル（以下、「入力ベクトル」と言う。）に近づくように、結合重みを更新することを、各入力ベクトルについて繰り返すことにより学習を行う音学習装置において、
前記各入力部に対応して、パルス信号の立ち上がりを検出するための立ち上り検出パルスニューロンモデル部（以下、「ＯＮニューロン」と言う。）が設けられ、
前記各ＯＮニューロンは、パルス信号の立ち上がり時から所定時間だけ発火するように構成され、
前記各ＯＮニューロンが出力したパルス信号を用いて、前記各競合学習ニューロンの各入力部の結合重みを、パルス信号の立ち上がり時から所定時間だけ非零となるように変化させる
ことを特徴とする音学習装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パルスニューロンモデルを用いた音学習装置に関する。
【背景技術】
【０００２】
下記非特許文献１には、聴覚情報処理システムのためのパルスニューロンモデルを用いた競合学習ニューラルネットワークが開示されている。以下、この非特許文献１に開示された競合学習ニューラルネットワークである音学習装置を「ＣＯＮＰ」と言う。
【０００３】
パルスニューロンモデル（以下、「ＰＮモデル」と言う。）とは、入出力信号としてパルス列を用いるニューロンモデルを言う。図１に、ＰＮモデルの模式図を示す。このＰＮモデルでは、ｉ番目の入力チャンネルからパルスｘi（ｔ）＝１がｉ番目の入力部に到着すると、ｉ番目の入力部の局所膜電位ｐi（ｔ）が結合重みｗi分上昇し、その後時定数τで静止電位まで減衰する。ＰＮモデルの内部電位Ｉ（ｔ）は、その時刻の各局所膜電位の総和として表される。ＰＮモデルは、この内部電位が閾値ＴＨ以上となった時発火（すなわち、出力パルス「１」を発生）する。但し、神経細胞には発火に関する不応期ＲＰが存在するため、このＰＮモデルにおいても、ある発火からＲＰの間は内部電位が閾値を超えた場合でも発火しない。以下、ＰＮモデルを単にニューロンとも言う。
【０００４】
ＣＯＮＰは、聴覚情報処理システムにおける多次元ベクトルの次元圧縮及び代表ベクトルを用いたパターン変動の吸収を目的とする、ＰＮモデルのみを用いたベクトル量子化ネットワークであり、Kohonenの競合学習モデルならびに自己組織化マップ（Self-Organizing Maps  以下、「ＳＯＭ」と言う。）をパルスニューラルネットワークに適用したものである。
【０００５】
従来のＳＯＭを用いた競合学習及び認識処理の動作フローを、図２に示す。この図は、Ｍ個のニューロンを有するパルスニューラルネットワークの各ニューロンに、ｎ個のチャンネルを介して、入力パルスを各要素とする入力ベクトル（ｎ次元データベクトル）ｘiが入力された場合の動作フローである。このニューラルネットワークは、入力ベクトルｘiが入力されると（Ｓ０１）、各ニューロンの評価値１／｜ｗj−ｘi｜を演算する（Ｓ０２）。なお、ｗjはニューロンの参照ベクトル（結合重みを各要素とするベクトル）である。ニューロンの評価値は、参照ベクトルｗjと入力ベクトルｘiとのユークリッド距離が近い程高くなる。次に、ニューロンのうち評価値が最大となるもの（以下、「勝者ニューロン」とも言う。）を検索し（Ｓ０３）、学習フェイズであれば、勝者ニューロンの参照ベクトルｗjが入力ベクトルｘiに近づくように結合重みを更新するとともに（Ｓ０４）、勝者ニューロンの近傍のニューロンについても同様に結合重みを更新する（Ｓ０５）。そして、評価値が最大のニューロンのラベルｊを出力する（Ｓ０６）。なお、既に学習を終えて実際に認識を行う場合、すなわち、学習フェイズでない場合は、結合重みの更新は行わない。そして、結合重みの更新（参照ベクトルの更新）のための係数を更新して、次の入力ベクトルについて、ステップＳ０１〜Ｓ０６の処理を行う（Ｓ０７）。
【０００６】
ＳＯＭアルゴリズムでは、参照ベクトルが入力ベクトルに最も近いニューロンを勝者ニューロンとし、勝者ニューロンの参照ベクトルを入力ベクトルに近づけるのみならず、勝者ニューロンの周辺のニューロンについても参照ベクトルを入力ベクトルに近づける。これにより、ＳＯＭでは、入力ベクトル群の位相関係を保持したベクトル量子化が可能となる。
【０００７】
ＣＯＮＰでは、かかるＳＯＭアルゴリズムにより学習を行う。但し、ＣＯＮＰでは、入力ベクトルに近いか否かを、ユークリッド距離ではなく、入力ベクトルと参照ベクトルの内積ＥＶ＝cosθ|ｗ||ｘ|（ｗ：参照ベクトル、ｘ：入力ベクトル、θ：両ベクトルのなす角）で評価し、この評価値の最も高かったニューロンを勝者ニューロンとしている。内部電位は局所膜電位の総和であり、局所膜電位の大きさは結合重みに比例し、かつ入力パルスの頻度に比例するため、入力ベクトルと参照ベクトルの内積による評価は、内部電位による評価と等価である。
【０００８】
また、ＣＯＮＰでは、評価値が最も高かったニューロンを検索するために、最も高い評価値を持ったニューロンだけが発火するように構成している。詳しくは、図３に示すように、外部に複数個の状態検出ニューロン、すなわち、競合学習ニューロンが１つも発火していないときに発火する無発火検出ニューロン（以下、「ＮＦＤニューロン」と言う。）１１と、競合学習ニューロンが２つ以上発火しているときに発火する複数発火検出ニューロン（以下、「ＭＦＤニューロン」と言う。）１２の２つの状態検出ニューロンを設け、それらの状態検出ニューロンの発火状況に応じて競合学習ニューロンの閾値を一律に変化させることで、唯一つの競合学習ニューロンが発火する状況を保持している。なお、ＮＦＤニューロン１１、ＭＦＤニューロン１２等との区別のために必要なときは、競合学習を行うニューロンを競合学習ニューロン（Competitive Learning Neuron）と言う。
【０００９】
図４−１、４−２に、ＣＯＮＰの動作フローを示す。ＣＯＮＰでは、ｎ個のデータパルスからなる入力ベクトルｘ（ｔ）＝（ｘ1（ｔ），ｘ2（ｔ），…，ｘi（ｔ），…，ｘn（ｔ））が、単位時間毎に入力される（Ｓ１０１）。なお、ｔは時刻である。すると、ＣＯＮＰでは、ＮＦＤニューロンの出力値ｙnfd（ｔ）を演算するとともに、ＭＦＤニューロンの出力値ｙmfd（ｔ）を演算する（Ｓ１０２、Ｓ１０３）。次に、ＣＯＮＰの有するＭ個の競合学習ニューロンの内部電位Ｉj（ｔ）  （ｊ＝１，…，Ｍ）を演算し（Ｓ１０４）、内部電位Ｉj（ｔ）が閾値ＴＨを超えたニューロンについては、ｙ（ｔ）＝１を出力し、それ以外のニューロンについては、ｙ（ｔ）＝０を出力する（Ｓ１０５）。なお、詳しい演算方法については後述する。そして、「１」を出力したニューロンについて結合重みを更新するとともに（Ｓ１０６）、そのニューロンの近傍のニューロンについても結合重みを更新し（Ｓ１０７）、参照ベクトルをノルム１に正規化する（Ｓ１０８）。なお、学習フェイズでない場合は、結合重みの更新は行わない。そして、結合重みの更新のための係数を更新して、次の入力ベクトルについて、ステップＳ１０１〜１０８の処理を行う（Ｓ１０９）。
【００１０】
ＣＯＮＰにおける演算方法について説明する。まず、ＣＯＮＰにおけるＰＮモデルの動作を明確にするために、下記の式（数１）、（数２）により以下のように定義する。
【００１１】
システムをサンプリング周波数Ｆｓの離散時間系とし、△ｔ＝１／Ｆｓとする（△：デルタ）。ここで、引数として、時刻ｔ、減衰時定数τ、結合重みｗ、時刻ｔにおける入力信号ｘ（ｔ）の４つを持つ関数Ｆを導入し、下記（数１）のように定義する。
【００１２】
【数１】
2008077177.tif 000003
すると、時刻ｔにおけるＰＮモデルの内部電位Ｉ（ｔ）は、局所膜電位ｐi（ｔ）の総和として、下記（数２）のように記述できる。
【００１３】
【数２】
2008077177.tif 000004
ここで、τはｐi（ｔ）の減衰時定数である。ＰＮモデルの不応期をＲＰ、時刻ｔにおける前回発火からの経過時間をＥＴ（ｔ）とし、ＥＴ（０）＞ＲＰとすると、ＰＮモデルの出力値ｙ（ｔ）は、以下のアルゴリズムにより計算される。
【００１４】
ｉｆ  Ｉ（ｔ）≧ＴＨ  ａｎｄ  ＥＴ（ｔ）＞ＲＰ
ｔｈｅｎ  ｙ（ｔ）＝１，ＥＴ（ｔ）＝０
ｅｌｓｅ  ｙ（ｔ）＝０，ＥＴ（ｔ）＝ＥＴ（ｔ−△ｔ）＋△ｔ
パラメータτ、ｗ1、ｗ2、…、ｗn、ＴＨは、各ＰＮモデルにより可変の値であり、この組合せにより各ＰＮモデルの動作は決定される。
【００１５】
ＣＯＮＰでは、各ニューロンにおける入力ベクトルの類似度の評価値としてニューロンの内部電位Ｉ（ｔ）を用いる。なお、上述したように、入力ベクトルと参照ベクトルの内積による評価と、内部電位による評価とは、同等である。そして、上述したように、状態検出ニューロンを用いて、最も評価値の高いニューロンのみが発火するように構成する。このように、ＣＯＮＰではネットワークにおいて発火した競合学習ニューロンを勝者ニューロンとするため、各ニューロンが発火した場合に学習を行う。学習すべき入力パターンの表現法としては、結合重みを１に固定したシナプスにおける局所膜電位ｐｃｗi（ｔ）を用いる。図５に図３に対して学習に必要な要素を加えた競合学習用パルスニューロンモデルを示す。ここで入力パルス列数はｎであり、このニューロンはＭ個ある競合学習ニューロンのｈ番目とする。図５において，時刻ｔにおけるＮＦＤニューロン１１、ＭＦＤニューロン１２の出力をそれぞれｙnfd（ｔ）、ｙmfd（ｔ）、競合学習ニューロンのＮＦＤニューロン１１、ＭＦＤニューロン１２に対する結合重みをそれぞれｗfd、−ｗfd（但し、ｗfd＞０）とすると、時刻ｔにおけるｈ番目の競合学習ニューロンの内部電位Ｉh（ｔ）は前述の関数Ｆを用いて次式（数３）のように記述できる。
【００１６】
【数３】
2008077177.tif 000005
なお、ＣＯＮＰにおいてはｐnfd、ｐmfdを発火閾値の動的変化量として扱うことで制御を行うため、減衰時定数τfdは時定数τに対して充分大きいものと仮定する。時刻ｕにおける勝者ニューロンの結合重みｗwin,i(u)の更新は、学習係数をαとしたとき次式（数４）で表すことができる。
【００１７】
【数４】
2008077177.tif 000006
各更新の後，結合重みベクトルｗ（ｕ）＝（ｗwin,1(u)，…，ｗwin,n(u)）はノルムが１となるよう正規化される。
【００１８】
入力パルス列によって発生する内部電位の総量が大きく変動する場合，この変動量を吸収するために閾値の変化が生じることになり、閾値の変化が入力ベクトルの方向変化に追従できない場合がある。そこで、ＣＯＮＰでは内部電位Ｉ（ｔ）に対して、ｐｃｗiの総和を一定の比率βpcw（但し、０≦βpcw≦１）であらかじめ差引くことで、入力信号のノルム変動に対する内部電位の変化を抑制している。これにより上記（数３）のＩh（ｔ）は以下の（数５）のように修正される。
【００１９】
【数５】
2008077177.tif 000007
以上のアルゴリズムによりパルスニューラルネットワークにおいてKohonenの競合学習を実現することが可能であり、これにより入力信号に含まれるスペクトルパターンなどが時々刻々と変化する場合でも、これを統計的に学習、ベクトル量子化することが可能である。なお、これまで述べて来た結合重みの更新を勝者ニューロンの近傍のニューロンに対しても適用することにより、ＳＯＭアルゴリズムは容易に実現可能である。
【００２０】
そして、ＣＯＮＰでは、非特許文献１の第５節に記載されているように、パルス頻度変調された時系列信号に対して競合学習が可能であり、聴覚情報処理システムのための競合学習ニューラルネットワークとして、十分な時間分解能、量子化分解能を持つことが確認されている。
【００２１】
なお、出願人による音源定位のための時間差検出器についての出願に、下記特許文献１がある。また、関連する文献として下記非特許文献２、３、４、５、６がある。
【特許文献１】特願２００５−３６２９１５
【非特許文献１】黒柳奨、岩田彰、「聴覚情報処理システムのためのパルスニューロンモデルを用いた競合学習ニューラルネットワーク」、電子情報通信学会論文誌（Ｄ−ＩＩ）、２００４年７月、第Ｊ８７−Ｄ−ＩＩ巻、第７号、ｐ．１４９６−１５０４
【非特許文献２】黒柳奨、平田浩一、岩田彰、「パルスニューラルネットワークのための競合学習手法」、電子情報通信学会ＮＣ研究会技術研究報告、社団法人電子情報通信学会、２００２年３月、ＮＣ２００１−２１０、ｐ．１１３−１２０
【非特許文献３】坂口晋也、黒柳奨、岩田彰、「環境把握のための音源識別システム」、電子情報通信学会ＮＣ研究会技術研究報告、社団法人電子情報通信学会、１９９９年１２月、ＮＣ９９−７０、ｐ．６１−６８
【非特許文献４】駒木根隆士、平原達也、「蝸牛の周波数分析機能を模擬するフィルターバンクの一構成法」、電子情報通信学会技術研究報告、社団法人電子情報通信学会、１９８７年、ＳＰ８７−４５、ｐ．６５−７２
【非特許文献５】早川昭二、梶田将司、坂倉文忠、「蝸牛フィルタを用いた話者の個人性の分析・認識」、電子情報通信学会技術研究報告、社団法人電子情報通信学会、１９９２年、ＥＡ９２−１９、ｐ．１７−２３
【非特許文献６】黒柳奨（Susumu Kuroyanagi）、岩田彰（Akira Iwata）、「聴覚情報処理パルスニューラルネットワークモデルを用いた音源定位のための両耳間時間差及び音圧差の抽出（Auditory Pulse Neural Network Model to Extract the Inter-Aural Time and Level Difference for Sound Localization）」、英文論文誌（情報・システム）（Transactions on Information and Systems）、電子情報通信学会（IEICE）、１９９４年、Ｅ７７−ＤNo.４、ｐ．４６６−４７４
【発明の開示】
【発明が解決しようとする課題】
【００２２】
音による周辺環境把握の基本機能は音源定位と音源認識である。音源定位については、非特許文献２において、２つの入力信号間の時間差情報を抽出した発火パターンを、ＣＯＮＰにより位相情報を保持したまま低次元に写像することで、自動的に入力信号の方位をマッピングできることが確認されている。また、音源認識についても、ＣＯＮＰにより稼働環境における代表的な周波数スペクトルパターンを統計的に学習できることが期待できる。
【００２３】
ところが、実環境にＣＯＮＰを適用することを考えた場合、一般に音には残響成分又は持続成分が存在するため、入力音には複数の音源からの音が混在していることを前提とする必要があるが、ＣＯＮＰは入力ベクトルをそのまま量子化するため、複数の音源から発せられた各音に残響等がある場合には、その混在パターンを学習してしまうという問題があった。
【００２４】
かかる問題について、図６を用いて説明する。図６は、ＣＯＮＰによる学習例を示す。図６(a）は、人工的に作成した入力データである。図６(a)において、横軸は時間、縦軸は入力チャンネルを示し、各マスは10msecあたりのパルス頻度を濃淡で表しており、色が濃いほどパルス頻度が高いことを示す。この入力データは計１１チャンネルのパルス列であり、４種類の入力信号を想定している。１と２、３と４、５と６チャンネルは、それぞれ1000／secの発火頻度で同時に立ち上がった後に次第に頻度が減少する入力を意味し、７〜１１チャンネルは１〜６チャンネルとは独立に発生する瞬時入力を想定したものである。これら４種類の入力信号はそれぞれ異なるタイミングで発生している。
【００２５】
この入力データをＣＯＮＰに入力して、ＳＯＭアルゴリズムにより競合学習を行った。システムのサンプリング周波数は48kHzとし、競合学習ニューロンは６個用意して、終端が存在しないようにループ上にした１次元上に配置した。各ニューロンの結合重みの初期値は乱数により与え、2000回の学習を行った。
【００２６】
図６(b)は、この学習後のネットワークに対して学習に用いた入力データを改めて入力したときの出力を示す。図６(b)において、横軸は時間、縦軸は競合学習ニューロンの番号を表す。また、図６の最下段の左図は、学習後の各ニューロンの結合重みを示し、同右図は、学習後の理想的な各ニューロンの結合重みを示す。図６の最下段の各図において、縦軸は競合学習ニューロンの番号を表し、横軸は各ニューロンにおける各入力チャンネルの結合重みを表す。
【００２７】
図６(b)より、このニューラルネットワークでは、新しいパターンが入力されるたびに勝者ニューロンは変化しており、入力パターンの変化に追従してベクトル量子化が行われたことを示している。しかし、図６の最下段の左図より、各時刻における全１１チャンネルの入力パターンを学習したために、第２、３、４、５ニューロンにおいて複数信号の混合パターンを学習しており、４種類の入力信号に対して６パターンの結合重みが生成されていることがわかる。つまり、ＣＯＮＰでは、複数の信号が同時刻に存在する場合には、これを元の信号とは別のパターンとして学習していることが確認された。
【００２８】
この発明は、上述した問題を解決するものであり、複数音源から発せられた音の分離学習が可能な音学習装置を提供することを目的とする。
【課題を解決するための手段】
【００２９】
本発明の音学習装置は、複数個の競合学習パルスニューロンモデル部（以下、「競合学習ニューロン」と言う。）を備え、前記各競合学習ニューロンは、音信号から生成されたパルス信号が入力される複数個の入力部を備えて、各入力部が有する結合重みと各入力部に入力されたパルス信号とを用いて演算された内部電位値が、該競合学習ニューロンが有する閾値を超えたときに、発火するように構成され、前記内部電位値が最も高かった前記競合学習ニューロン（以下、「勝者ニューロン」と言う。）について、結合重みから構成されてノルムを１としたベクトル（以下、「参照ベクトル」と言う。）が、入力されたパルス信号から構成されるベクトル（以下、「入力ベクトル」と言う。）に近づくように、結合重みを更新することを、各入力ベクトルについて繰り返すことにより学習を行う音学習装置において、前記各入力部に対応して、パルス信号の立ち上がりを検出するための立ち上り検出パルスニューロンモデル部（以下、「ＯＮニューロン」と言う。）が設けられ、前記各ＯＮニューロンは、パルス信号の立ち上がり時から所定時間だけ発火するように構成され、前記各ＯＮニューロンが出力したパルス信号を用いて、前記各競合学習ニューロンの各入力部の結合重みを、パルス信号の立ち上がり時から所定時間だけ非零となるように変化させることを特徴とする。
【発明の効果】
【００３０】
本発明の音学習装置によれば、各競合学習ニューロンの各入力チャンネルの結合重みを、入力信号の立ち上がり時から所定時間だけ非零となるように変化させるので、入力信号の立ち上り部分のみが学習に用いられることとなり、残響成分等の影響を受けずに複数音源から発せられた音の分離学習が可能となる。
【発明を実施するための最良の形態】
【００３１】
以下、本発明の一実施形態である競合学習ニューラルネットワークからなる音学習装置（以下、「ＣＯＮＰ−II」と言う。）について、図面に基づいて説明する。
【００３２】
上述したＣＯＮＰは各時刻の入力ベクトルを競合学習によりベクトル量子化することが可能であり、入力信号の変化に追従して自動的に勝者ニューロンを変化させることが可能である。よってこのＣＯＮＰの入力に対して、各周波数成分の立ち上がりから特定期間のみに特異的に反応するアクティブフィルタを適用すれば、ほぼ同時刻に立ち上がった周波数成分のみを次々にベクトル量子化すなわちグルーピングすることが可能となる。つまり、
（１）各周波数成分の立ち上がりに反応して，立ち上がりからある特定の期間だけゲートを開くアクティブフィルタ、及び、
（２）ＣＯＮＰの競合学習によるグルーピング効果
を組み合わせることで複数音源からの混合信号を分離し、競合学習することが可能である。以上の考えに基づき、ＣＯＮＰ−IIは構成されている。図７−１に、ＣＯＮＰ−IIの模式図を示す。ＣＯＮＰ−IIは、複数個の競合学習ニューロン１を備え、各競合学習ニューロン１は、音信号から生成されたパルス信号が入力される複数個の入力部２を備えている。
【００３３】
ＣＯＮＰ−IIの元となるＰＮモデルも、ＣＯＮＰの場合と同じく、図１に示す構成を有し、このＰＮモデルの動作は、上記の式（数１）、（数２）により定義される。そして、ニューロンの不応期をＲＰ、時刻ｔにおける前回発火からの経過時間をＥＴ（ｔ）とし、ＥＴ（０）＞ＲＰとすると、ＰＮモデルの出力値ｙ（ｔ）は、上述したように、以下のアルゴリズムにより決定される。
【００３４】
ｉｆ  Ｉ（ｔ）≧ＴＨ  ａｎｄ  ＥＴ（ｔ）＞ＲＰ
ｔｈｅｎ  ｙ（ｔ）＝１，ＥＴ（ｔ）＝０
ｅｌｓｅ  ｙ（ｔ）＝０，ＥＴ（ｔ）＝ＥＴ（ｔ−△ｔ）＋△ｔ
また、ＣＯＮＰ−IIは、ＣＯＮＰと同じく、各ニューロンの閾値を制御するために、競合学習ニューロンが１つも発火していないときに発火するＮＦＤニューロンと、競合学習ニューロンが２つ以上発火しているときに発火するＭＦＤニューロンの２つの状態検出ニューロン（図７−１では、「Control Neurons」と表記。）を有する。そして、これら状態検出ニューロンの出力パルスに応じて、各競合学習ニューロンの閾値を一律に変化させることで、最も高い評価値を持つニューロンすなわち勝者ニューロンのみが発火するように構成されている。
【００３５】
そして、ＣＯＮＰ−IIは、図７−１に示すように、各入力チャンネルの立ち上がりを検出するＯＮニューロン４を、ＣＯＮＰに追加した構造を有する。ＯＮニューロン４は各入力部２に対応して設けられる。入力チャンネルがｎチャンネルであれば、各競合学習ニューロン１における入力部２もｎ個であり、ＯＮニューロン４もｎ個となる。図７−１において、入力信号はｎチャンネルの時系列パルス信号であり、各競合学習ニューロンにはｎチャンネルの入力パルス信号と、ＯＮニューロンの出力パルス信号の合計２ｎチャンネルが入力される。競合学習ニューロンの数はＭ個とする。
【００３６】
図７−２に示すように、ＯＮニューロンは、時間Ｔdの遅れ素子である時間遅れ発生部５を設けることにより、ＰＮモデルで実現可能である。図７−２は、１番目の入力チャンネルｘ1に対するＯＮニューロンの模式図である。今、ｉ番目の入力チャンネルｘiに対するＯＮニューロンの時刻ｔの内部電位をＩONi（ｔ）とすると、下記（数６）のように記述できる。
【００３７】
【数６】
2008077177.tif 000008
ここで、τON、ｗONはＯＮニューロンの減衰時定数および結合重みで，いずれのチャンネルにおいても同じ値を用いる。ＯＮニューロンはこのＩONi（ｔ）により閾値ＴＨONに従い出力ｙONi（ｔ）を生成する。
【００３８】
これにより、各ＯＮニューロンは、入力信号と、その入力信号を所定時間だけ遅れさせた信号とを用いて、入力信号の立ち上がり時（すなわち、内部電位ＩONi（ｔ）が閾値ＴＨONを超えた時）から所定時間だけ発火するように構成される。詳しくは、（数６）から分かるように、ＯＮニューロンでは、時間遅れのない入力信号によって演算される局所膜電位Ｆ（ｔ，τON，ｗON，ｘi（ｔ））から時間Ｔdだけ遅れた入力信号によって演算される局所膜電位Ｆ（ｔ−Ｔd，τON，ｗON，ｘi（ｔ−Ｔd））を減じたものを内部電位ＩONi（ｔ）とすることによって、入力信号の立ち上がり時から所定の短時間だけ発火する（すなわち、入力信号の立ち上がり時から所定の短時間だけ１を出力して後は０を出力する）ように構成さる。
【００３９】
競合学習ニューロンの入力信号において上述のアクティブフィルタを実現するためには、ＯＮニューロンが発火した時刻より一定時間だけ非零となるようなフィルタ値を作成し、この値と入力パルス列による局所膜電位をかけ合わせたものを各競合学習ニューロンの局所膜電位とすればよい。また、このフィルタ値は ＯＮニューロンの出力パルスを入力とする局所膜電位で実現可能である。今、ＣＯＮＰ−IIにおけるｈ番目（ｈ＝１，…，Ｍ）の競合学習ニューロンのｉ番目（ｉ＝１，…，ｎ）のチャンネルにおけるフィルタ値をＡＦ*hi（ｔ）とすると、下記（数７）のように記述できる。
【００４０】
【数７】
2008077177.tif 000009
なお、τAFはフィルタ値の減衰時定数である。
【００４１】
よって競合学習ニューロンにおける結合重みをｗ′hi、局所膜電位の減衰時定数をτ、入力信号をｘi（ｔ）とすると、求める局所膜電位ｐ*hi（ｔ）は、下記（数８）で記述できる。
【００４２】
【数８】
2008077177.tif 000010
しかし、この演算のためにはＰＮモデル内において乗算を実装する必要があり、ＰＮモデルの演算コストが大幅に増加してしまう。そこで、結合重みｗ′hiが固定値であることに着目し、この値をＯＮニューロンの出力値により動的に変化させることで上記膜電位の演算を実装することとした。
【００４３】
ＯＮニューロンの出力値ｙONi（ｔ）を入力とし、結合重みｗ′hi、減衰時定数τAFで変化する局所膜電位を改めてＡＦhi（ｔ）とすると、下記（数９）のように記述できる。
【００４４】
【数９】
2008077177.tif 000011
このＡＦhi（ｔ）を競合学習ニューロンのｉ番目の入力に対する結合重みとして用いることで、所望する局所膜電位を得ることができる。よって、時刻ｔにおけるｈ番目のＣＯＮＰ−IIにおける競合学習ニューロンの内部電位ＩCONP2h（ｔ）は、次式（数１０）のように記述できる。
【００４５】
【数１０】
2008077177.tif 000012
図８にＣＯＮＰ−II用の競合学習ニューロン１の模式図を示す。この図において、局所膜電位ＡＦhn（ｔ）の値が局所膜電位ｐ′hn（ｔ）の結合重みの値（図中黒丸で示す。）となる。ＮＦＤ、ＭＦＤの各状態検出ニューロンもＣＯＮＰと同じものがそのまま流用可能であり、閾値の制御方式もＣＯＮＰと同様である。学習に関してもＣＯＮＰと同様に発火した競合学習ニューロンを勝者ニューロンと考え、学習が行われる。ただし、学習に用いる局所膜電位は（数４）のｐｃｗi（ｕ）のかわりに下記（数１１）のｐｃｗ′i（ｕ）を用いる。
【００４６】
【数１１】
2008077177.tif 000013
以上の手法により，ほぼ同時刻に立ち上がった周波数成分のみを次々にベクトル量子化する競合学習ネットワークが実現できる。このＣＯＮＰ−IIのための競合学習ニューロンを従来の競合学習ニューロンと比較した場合、内部で保持すべき局所膜電位の数が倍に増えてはいるが、それ以外の構造は同じものであり、従来のＰＮモデルを用いて実装が可能であることがわかる。また、あらたに導入されたＯＮニューロンも同様に従来のＰＮモデルで実装が可能であり、ＣＯＮＰ−IIはＣＯＮＰ同様、ＰＮモデルから構成されたネットワークモデルとして実現可能なことがわかる。
【００４７】
図９−１、９−２に、上述したＣＯＮＰ−IIの動作フローを示す。ＣＯＮＰ−IIでは、ｎ個のデータパルスからなる入力ベクトルｘ（ｔ）＝（ｘ1（ｔ），ｘ2（ｔ），…，ｘi（ｔ），…，ｘn（ｔ））が、単位時間毎に入力される（Ｓ２０１）。なお、ｔは時刻である。すると、ＣＯＮＰ−IIでは、ＮＦＤニューロンの出力値ｙnfd（ｔ）、ＭＦＤニューロンの出力値ｙmfd（ｔ）を演算する一方（Ｓ２０２、Ｓ２０３）、ＯＮニューロンの出力値ｙONi（ｔ）を計算し（Ｓ２０４）、Ｍ個のニューロンの各々のアクティブフィルタベクトルＡＦj（ｔ）  （ｊ＝１，…，Ｍ）を計算する（Ｓ２０５）。次に、ＣＯＮＰ−IIの有するＭ個の競合学習ニューロンの内部電位ＩCONP2j（ｔ）  （ｊ＝１，…，Ｍ）を演算し（Ｓ２０６）、内部電位ＩCONP2j（ｔ）が閾値ＴＨを超えたニューロンについては、ｙ（ｔ）＝１を出力し、それ以外のニューロンについては、ｙ（ｔ）＝０を出力する（Ｓ２０７）。そして、学習フェイズであれば、「１」を出力したニューロンについて結合重みを更新するとともに（Ｓ２０８）、そのニューロンの近傍のニューロンについても結合重みを更新し（Ｓ２０９）、参照ベクトルをノルム１に正規化する（Ｓ２１０）。なお、学習フェイズでない場合は、結合重みの更新は行わない。そして、結合重みの更新のための係数を更新して、次の入力ベクトルについて、ステップＳ２０１〜２１０の処理を行う（Ｓ２１１）。
【００４８】
以下、コンピュータにおいてソフトウェアによりＣＯＮＰ及びＣＯＮＰ−IIを実現し、シミュレーションを行った結果について説明する。なお、ニューロンへの入力信号が十分に小さい場合において発火閾値が下がりすぎることを防ぐため、ＣＯＮＰにおいてはｐｃｗi（ｔ）、ＣＯＮＰ−IIにおいてはｐｃｗ′i（ｕ）の総和がある閾値ＴＨgよりも小さくなった場合には，内部ポテンシャルに関わらず発火を停止し，また制御ニューロンからの入力をキャンセルするようにした。
【００４９】
〈実験１〉人工データによる学習実験
まず、人工的に作成したデータを用いて、ＣＯＮＰ−IIの動作確認ならびにＣＯＮＰとの動作比較を行った。
【００５０】
図１０(a)に実験に用いた入力データを示す。この図において横軸は時間、縦軸は入力チャンネルを示す。各マスは10msec あたりのパルス頻度を濃淡で表しており、色が濃いほどパルス頻度が高いことを示す。本データは計１１チャンネルのパルス列であり、４種類の入力信号を想定している。１と２、３と４、５と６チャンネルは、それぞれ1000/secの発火頻度で同時に立ち上がったあとに次第に頻度が減少する入力を意味し、７から１１チャンネルは１から６チャンネルとは独立に発生する瞬時入力を想定したものである。これらの４つの信号はそれぞれ異なるタイミングで発生しており、本実験においてはそれぞれを独立した信号として分離して学習することを期待する。
【００５１】
このデータをＣＯＮＰおよびＣＯＮＰ−IIに入力して、ＳＯＭアルゴリズムにより競合学習を行った。システムのサンプリング周波数は48kHzとし、競合学習ニューロンはそれぞれ６個用意した。各ニューロンは終端が存在しないようにループ状にした１次元上に配置しているとする。すなわち、ｈ番目のニューロンとｈ−１番目及びｈ＋１番目のニューロン（ｈ＝２，３，４，５）、そして１番目と６番目のニューロンが隣接関係を持つ。学習半径は、学習回数により、ニューロンの個数Ｍすなわち６からリニア（linear）に減少し、所定回数ＥＮ0＝２００で０になるものとした。各ニューロンの結合重みの初期値は乱数により与えられ、それぞれ2000回の学習を行った。なお、ＣＯＮＰについては、図６に示した学習例と同じ実験となる。
【００５２】
なお、学習にはＳＯＭアルゴリズムを用いているため、結果として全ての競合学習ニューロンは学習の初期に入力パターンの平均値を学習しており、本実験においてはKohonen 学習則を用いたときのような学習結果の初期値依存性は解消されている。ただし、結合重みの初期値によって学習後の結合重みの順番が位相関係を保持したままループ的にシフトをすることが考えられるが、これは実験結果の評価には影響をあたえない。
【００５３】
実験に用いたネットワークの各種パラメータは表１の通りである。表中のｗnfd、ＴＨnfd、τnfd、ｗmfd、ＴＨmfd、τmfdは、それぞれＮＦＤニューロン、ＭＦＤニューロンの結合重み、発火閾値、膜電位減衰時定数を表す。ＣＯＮＰおよびＣＯＮＰ−IIで異なる値については、I/IIの順で併記してある。
【００５４】
【表１】
2008077177.tif 000014
学習後のネットワークに対して学習データをあらためて入力した時のＣＯＮＰ、ＣＯＮＰ−IIそれぞれのネットワークの出力を図１０(b)(c)に示す。これらの図においては縦軸は競合学習ニューロンの番号をあらわす。また、図１１に学習後のＣＯＮＰおよびＣＯＮＰ−IIのそれぞれの競合学習ニューロンの結合重みを示す。
【００５５】
以上の実験結果より、まず、ＣＯＮＰ−IIでは、図１０(c)より、新しいパターンが入力されるたびに勝者ニューロンが変化しており、10msec程度の時間解像度においては、入力パターンの変化に追従してベクトル量子化が行われていることがわかる。また、図１１(b)より、第１、３、４、５ニューロンの結合重みにより４種類の入力信号を分離して学習していることがわかる。なお入力信号のパターン数に比べて用意した競合学習ニューロンが多かったため、第２ニューロンは一度も発火しないデッドノードとなっており、第６ニューロンは第１ニューロンとほぼ同じパターンを学習している。
【００５６】
ＣＯＮＰ−IIでは、各信号の立ち上がりに反応するアクティブフィルタとしてＯＮニューロン群を内蔵しているため、入力信号が持続的なものであっても信号の立ち上がりからある一定時間が経過するとニューロンへの入力信号が消滅してしまう。このため各ニューロンの発火の持続時間は最大でも約50msecとなっている。
【００５７】
次に、ＣＯＮＰにおいては、図１０(b)より新しいパターンが入力されるたびに勝者ニューロンは変化しており、ベクトル量子化が行われたことを示しているが、図１１(a)より、各時刻における全１１チャンネルの入力パターンを学習したために第２、３、４、５ニューロンにおいて複数信号の混合パターンを学習しており、４種類の入力信号に対して６パターンの結合重みが生成されていることがわかる。つまり、ＣＯＮＰにおいては、複数の信号が同時刻に存在する場合にはこれを元の信号とは別のパターンとして学習していることが確認された。
【００５８】
以上の結果より、ＣＯＮＰ−IIにより新たに提示された信号をそれ以前の入力から分離して学習可能であることが明らかとなり、複数信号の混合信号に対するＣＯＮＰ−IIの有効性が確認できた。
【００５９】
〈実験２〉混合音による学習実験
次に、シンセサイザにより生成された混合器楽音を用いて音信号に対するＣＯＮＰ−IIの評価実験を行った。音の作成にはCakewalk 社のAudio Workstation Software SONAR4 を使用し、Software Synthesiser TTS-1 により生成された３音程のフルートの音（サンプリング周波数48kHz、16bit量子化）とバックグランドホワイトノイズの計４つの音を混合した。３つのフルート音はそれぞれC4、E5、G6の音程で、同音量である。ホワイトノイズは各フルート音に対して−２４dBの音量で混合した。図１２に各音の発音タイミングを示す。この図において、横軸は時間を示し、一つのマスが50msecを表す。C4、E5、G6のそれぞれの音について発音した時間（音が持続している時間）を黒帯で示した。ホワイトノイズについては終始発音し、混合した。本実験ではこの音をＣＯＮＰおよびＣＯＮＰ−IIにて学習し、ＣＯＮＰ−IIにおいては、各音の立ち上がり成分以外を除去して学習することにより、発音タイミングの違いから混合音を分離して学習することを期待する。
【００６０】
なお、ＣＯＮＰ−IIにおいては、複数の音程がほぼ同時に発音した場合には、これらの混合音をひとつの音として認識することを想定している。このような音はいわゆる和音であり、各音程の音とは別の新種類の音として識別することが妥当であろう。ただし、別種類の音源からの音がほぼ同時に発音した場合には、それぞれの音の包絡線（音圧の時間変化）情報が異なることにより別々の立ち上がりが検出され、独立したふたつの音として学習されることは妥当である。また、今回は単一センサによるモノラル音源を想定しているが、複数のセンサを用いた場合には同時発音した音であっても、その音源の定位方向の違いを用いることで音を分離学習することが可能であろう。
【００６１】
本学習実験では上述の４つの混合音信号をパルス列に変換してネットワークへの入力信号とした。以下、その変換方法を簡潔に述べる。入力信号は、まず、駒木根らのLyon 型バンドパスフィルタ群（非特許文献４、５参照）により、周波数成分に分解される。なお、今回は周波数方向の分解能を向上させるために各フィルタの中心周波数をBark軸上の１／３から２０まで、１／３[Bark]ごとに６０チャンネル用意し、このうちの第６（中心周波数約0.20kHz）から第５５チャンネル（中心周波数約4.8kHz）の５０チャンネルを使用した。各周波数成分は非特許文献６で述べた非線形変換によりエンベロープの検出を行い、生成パルス間隔はこのエンベロープの大きさに反比例するとして、パルス列を生成した。また、発火頻度による振幅情報の表現能力を十分に持たせるため、１チャンネルあたり１０本のパルス列を用いた。なお各パルス列はＣＯＮＰ、ＣＯＮＰ−IIのニューロンと同様の不応期ＲＰを持つとし、最高発火頻度が1000/secに制限されている。以上の方法で生成された入力パルス信号を図１３(a）に示す。この図において各マスは20msecあたりの発火頻度を示し、発火頻度が高いほど濃い色で塗り潰されている。最大発火頻度は200/マスである。この図から３つのフルート音それぞれが別の倍音構成をもっており、混合音はそれら倍音の混合から構成されていることがわかる。
【００６２】
ＣＯＮＰ、ＣＯＮＰ−IIを用いて、上述のデータを学習し、学習後のネットワークに対してデータをあらためて入力した時のネットワークの出力を図１３(b)、(c)、(d)、(e)に示す。図１３(b)、(c)はＣＯＮＰ、(d)、(e)はＣＯＮＰ−IIを用いて学習し、競合学習ニューロンの数を(b)、(d)は４、(c)、(e)は８とした。実験１と同様にシステムのサンプリング周波数は48kHzとし、各競合学習ニューロンは終端が存在しないようにループ状に配置した。これらの図において各マスは図１３(a)と同様に20msecあたりの競合学習ニューロンの発火頻度を表し、最大発火頻度は20/マスである。実験に用いたネットワークの各種パラメータは表２の通りである。この表においてＣＯＮＰおよびＣＯＮＰ−IIで異なる値、もしくは競合学習ニューロンの数を変えた場合に異なる値については、I/IIまたはI-4（ＣＯＮＰでニューロン数４の場合）/I-8（ＣＯＮＰでニューロン数８の場合）/IIのように併記した。ＮＦＤ、ＭＦＤニューロンについては実験１と同じパラメータを用いているため省略した。
【００６３】
【表２】
2008077177.tif 000015
また、図１４(a’)に、図１３(a)より抜粋した入力音C4、E5、G6 に対応する入力信号の発火パターンを示し、図１４(c)、(d)に、図１３(c)および(d)で用いたネットワークにより得られた学習後の各競合学習ニューロンの結合重みを示す。図１４(c)、(d)の縦軸はニューロン番号を表し、図１３(c)、(d)の縦軸に相当する。横軸は周波数チャンネルを表し、図１３(a)の縦軸に相当する。
【００６４】
これら実験結果より、ＣＯＮＰの実験結果では、図１３(b)、(c)ともに競合学習ニューロンの中に発火タイミングが同期しているニューロンがないことから、それぞれすべての競合学習ニューロンを使って入力信号をベクトル量子化しており、入力として用いた独立音３種以上のパターンをベクトル量子化している事がわかる。また、図１４(c)においても、たとえば第４、６ニューロンはそれぞれG6、E5の単独音を学習しているが、その間にある第５ニューロンはこの２音の混合音を学習していることが確認でき、上述の通りＣＯＮＰは混合前の単独音ではなく、各時刻における全周波数チャンネルの入力パターンをベクトル量子化していることがわかる。
【００６５】
これに対して、ＣＯＮＰ−IIの実験結果については、まず、図１３(e)では入力パターンのバリエーションに対して競合学習ニューロンの数が多すぎるためにデッドニューロンが存在しており（第１、２、５ニューロン）、かつ同一のパターンを複数のニューロンが学習する様子が確認できる(第７および第８ニューロン)。そして図１３(d)では４つのうち２つのニューロンが同一のパターンを学習している（第３および第４ニューロン）ため、結局３種類のパターンを学習していることがわかる。ここで、図１３(d)より、第１、２、３ニューロンはそれぞれC4、E5、G6の構成周波数に相当するパターンを学習しており、混合音を構成する３つの音をそれぞれ学習していることが確認できる。なお、図１４(d)において第４ニューロンはG6のパターンを基本として若干C4のパターンを付加したパターンを学習している。これは競合学習ニューロンをループ上に配置したために、第１ニューロンと第３ニューロンの両方のパターンを学習したと考えることができる。
【００６６】
以上の実験結果から、ＣＯＮＰ、ＣＯＮＰ−IIいずれにおいても競合学習により入力信号をベクトル量子化できているが、ＣＯＮＰでは複数の音が同時に存在する場合にはその混合音をベクトル量子化しているのに対し、ＣＯＮＰ−IIでは各音の立ち上がりの違いを用いてそれぞれの構成音を分離してベクトル量子化していることが確認できた。これより、ＣＯＮＰ−IIを用いることで立ち上がりのそろった周波数成分のみをひとつのパターンとみなしてベクトル量子化が可能であり、それぞれ独立して発生した混合音を分離して競合学習可能であることが明らかとなった。
【００６７】
以上の計算機シミュレーションの結果より、音の立ち上がりをずらした複数の音を混合した信号に対してＣＯＮＰ−IIを用いることで、それぞれの音を分離してベクトル量子化が可能であることが確認できた。すなわち、ＣＯＮＰ−IIは、複数の音源からの音が混在する状況においてそれぞれの音の残響成分を除去することにより、各音を分離して競合学習することが可能である。
【００６８】
ＣＯＮＰ−IIは、各周波数成分の立ち上がりの同期性を用いてそれぞれの音をグルーピングすることが可能であり、ＰＮモデルの持つダイナミクスを有効に利用することで、かかる機能を実現している。また、このような機能を実装する場合、通常はアクティブフィルタと入力信号の乗算演算が必要となりモデルの計算コストが増大するが、ＣＯＮＰ−IIではＰＮモデルにおける結合重みの値をアクティブフィルタ値とする（すなわち、入力信号の立ち上がりから所定時間だけ非零とする）ことで、乗算を用いることなくかかる機能を実現できた。このため、ＣＯＮＰ−IIによれば、計算コストの増大を防止できる。
【００６９】
なお、上記実施形態ではコンピュータ上でソフトウェア的にＣＯＮＰ−IIを実現したが、ＦＰＧＡ等のデバイスを用いてハードウェア的にＣＯＮＰ−IIを実現することも可能である。
【００７０】
また、ＳＯＭアルゴリズムを用いない（すなわち、勝者ニューロンの周辺のニューロンについては結合重みの更新を行わない）形態とすることも可能である。
【図面の簡単な説明】
【００７１】
【図１】ＰＮモデルの模式図である。
【図２】従来のＳＯＭアルゴリズムを示すフローチャートである。
【図３】従来の競合学習ニューラルネットワークの模式図である。
【図４−１】従来の競合学習ニューラルネットワークにおける処理の流れを示すフローチャートである。
【図４−２】従来の競合学習ニューラルネットワークにおける処理の流れを示すフローチャートである。
【図５】従来の競合学習用ＰＮモデルの模式図である。
【図６】従来の競合学習ニューラルネットワークによる学習例を示す図である。
【図７−１】本発明の一実施形態に係る競合学習ニューラルネットワークの模式図である。
【図７−２】本発明の一実施形態に係るＯＮニューロンの模式図である。
【図８】本発明の一実施形態に係る競合学習用ＰＮモデルの模式図である。
【図９−１】本発明の一実施形態に係る競合学習ニューラルネットワークにおける処理の流れを示すフローチャートである。
【図９−２】本発明の一実施形態に係る競合学習ニューラルネットワークにおける処理の流れを示すフローチャートである。
【図１０】実験１における学習結果を示す図である。
【図１１】実験１における各ニューロンの学習後の結合重みを示す図である。
【図１２】実験２における入力信号を示す図である。
【図１３】実験２における学習結果を示す図である。
【図１４】実験２における各ニューロンの学習後の結合重みを示す図である。
【符号の説明】
【００７２】
１…競合学習パルスニューロンモデル部（競合学習ニューロン）
２…入力部
４…立ち上がり検出パルスニューロンモデル部（ＯＮニューロン）
【図１】
2008077177.tif 000016
【図２】
2008077177.tif 000017
【図３】
2008077177.tif 000018
【図４−１】
2008077177.tif 000019
【図４−２】
2008077177.tif 000020
【図５】
2008077177.tif 000021
【図７−１】
2008077177.tif 000022
【図７−２】
2008077177.tif 000023
【図８】
2008077177.tif 000024
【図９−１】
2008077177.tif 000025
【図９−２】
2008077177.tif 000026
【図１２】
2008077177.tif 000027
【図６】
2008077177.tif 000028
【図１０】
2008077177.tif 000029
【図１１】
2008077177.tif 000030
【図１３】
2008077177.tif 000031
【図１４】
2008077177.tif 000032