(57)【特許請求の範囲】
【請求項１】
ファイル読み込み装置および時系列データを計測するセンサを有する入力部と、処理部と、出力部から構成される神経回路網モデルの大域的加速化学習装置であって、
前記処理部は、
神経回路網モデルの重みの初期値、学習率の初期値、学習率の増減率、平滑化微係数、慣性率、補正係数の初期値、極値探索および大域的探索の停止基準値、制約条件の係数、および大域的最適化に関する係数を前記入力部から転送されて初期設定する変数初期化手段と、
学習すべき入力データを前記入力部から転送されて一時的に蓄積し、該入力データの全パターンを神経回路網モデルに提示し、各入力パターンに対して神経回路網モデルの出力値を計算し、この出力値と教師データから計算される全パターンに対する評価基準値に基づいて現在の反復点（ｋ反復目とする）における重みに関する評価関数の一次偏微分である勾配を計算するデータ提示手段と、
１から平滑化微係数を引いた値を前記データ提示手段で求めたｋ反復目の勾配に乗じ、この値と１反復前（ｋ−１反復目とする）の平滑化微分に平滑化微係数を乗じた値を加算し、ｋ反復目における平滑化微分値を計算して求める平滑化微分値算出手段と、
前記平滑化微分値算出手段で求めたｋ反復目の勾配およびｋ−１反復目の平滑化微分値を各要素毎に個別に乗じた演算結果が正値の場合、学習率に学習率の増加率を加えて学習率を増加させて各学習率を個別に更新し、演算結果が負値の場合、学習率に学習率の減少率を乗じて学習率を減少させ、各学習率を個別に更新する学習率更新手段と、
前記データ提示手段で求めた勾配、および前記学習率更新手段で求めた各重みに対応した個別の学習率を乗じた修正量を各要素毎に個別に計算し、この修正量にｋ−１反復目の重みの修正量に慣性率を乗じた修正量を各重みに個別に加えて、重みの修正量を計算する重み更新手段と、
前記データ提示手段で求めたｋ反復目の勾配とｋ−１反復目の勾配から勾配の差分（ｋ反復目における勾配の差分とする）を計算し、この結果を補正項付加判断手段に転送する勾配差分計算手段と、
前記勾配差分計算手段で求めたｋ反復目の勾配の差分と１反復前のｋ−１反復目の勾配の差分の内積を計算し、この結果が負値の場合には補正項を追加すると判断して補正量計算手段に重みを転送し、前記内積の結果が正値の場合には補正量を付加しないと判断して極値探索収束判定手段に重みを転送する補正項付加判定手段と、
前記重み更新手段で求めた重みの修正量に、更にｋ反復目の勾配の差分とｋ反復目の重みの修正量の内積値をｋ反復目の勾配の差分の大きさ（ノルム）の２乗および２で除算した結果（スカラー量）にｋ反復目の勾配の差分を乗じた補正量を計算し、この結果を重み補正手段に転送する補正量計算手段と、
前記補正量計算手段から転送された重みの補正量に基づき、重みを要素毎に個別に更新し、前記極値探索収束判定手段に転送する重み補正手段と、
極値探索により探索された点である局所解を初期値として、局所解における評価関数の極値を取り除いた新たな評価関数を構成し、この評価関数を最小化することにより大域的探索を行う大域的探索手段と、
前記重み更新手段あるいは前記重み補正手段から転送された重みを用いて極値探索を行い、極値探索の停止基準を満たす場合には、極値探索を終了して大域的探索手段による処理を実行し、極値探索の停止基準を満たさない場合には、該停止基準を満たすまで前記データ提示手段による処理から反復実行させる極値探索収束判定手段と、
前記大域的探索手段による大域的探索の実行結果が大域的最適化の停止基準を満たしているか否かを判定し、該大域的最適化の停止基準を満たしている場合は処理を終了させる大域的探索収束判定手段と、
前記大域的収束判定手段により大域的最適化の停止基準を満たさないと判定されたとき、局所解における評価関数値よりも更に小さな評価関数値を有する解が探索できた場合は、制約条件に関するパラメータを調整した後、前記データ提示手段による処理以降の極値探索を実行させる制約条件係数更新手段と、
前記大域的収束判定手段により大域的最適化の停止基準を満たさないと判定されたとき、局所解における評価関数値よりも更に小さな評価関数値を有する解が探索できない場合は、大域的最適化に関する係数を調整した後、前記大域的探索手段による処理に戻り、大域的探索を反復実行し、指定された回数だけ反復実行した場合は処理を終了する大域的最適化係数調整手段と
を有することを特徴とする神経回路網モデルの大域的加速化学習装置。
【請求項２】
ファイル読み込み装置および時系列データを計測するセンサを有する入力部と、処理部と、出力部から構成される神経回路網モデルの大域的加速化学習装置であって、
前記処理部は、
神経回路網モデルの重みの初期値、学習率の初期値、学習率の増減率、平滑化微係数、慣性率、補正係数の初期値、極値探索および大域的探索の停止基準値、制約条件の係数、および大域的最適化に関する係数を前記入力部から転送されて初期設定する変数初期化手段と、
学習すべき入力データを前記入力部から転送されて一時的に蓄積し、該入力データの全パターンを神経回路網モデルに提示し、各入力パターンに対して神経回路網モデルの出力値を計算し、この出力値と教師データから計算される全パターンに対する評価基準値に基づいて現在の反復点（ｋ反復目とする）における重みに関する評価関数の一次偏微分である勾配を計算するデータ提示手段と、
１から平滑化微係数を引いた値を前記データ提示手段で求めたｋ反復目の勾配に乗じ、この値と１反復前（ｋ−１反復目とする）の平滑化微分に平滑化微係数を乗じた値を加算し、ｋ反復目における平滑化微分値を計算して求める平滑化微分値算出手段と、
前記平滑化微分値算出手段で求めたｋ反復目の勾配およびｋ−１反復目の平滑化微分値を各要素毎に個別に乗じた演算結果が正値の場合、学習率に学習率の増加率を加えて学習率を増加させて各学習率を個別に更新し、演算結果が負値の場合、学習率に学習率の減少率を乗じて学習率を減少させ、各学習率を個別に更新する学習率更新手段と、
前記データ提示手段で求めた勾配、および前記学習率更新手段で求めた各重みに対応した個別の学習率を乗じた修正量を各要素毎に個別に計算し、この修正量にｋ−１反復目の重みの修正量に慣性率を乗じた修正量を各重みに個別に加えて、重みの修正量を計算する重み更新手段と、
前記データ提示手段で求めたｋ反復目の勾配とｋ−１反復目の勾配から勾配の差分（ｋ反復目における勾配の差分とする）を計算し、この結果を補正項付加判断手段に転送する勾配差分計算手段と、
前記勾配差分計算手段で求めたｋ反復目の勾配とｋ−１反復目の平滑化微分を各要素毎に計算し、この結果が負値の場合には、前記重み更新手段で求めた重みの修正量に、現在の反復点における勾配の差分に固定値の補正係数を乗じた補正量を各要素毎に個別に各重みに加えるかまたは前記学習率更新手段で求めた勾配と平滑化微分の内積値が正値の場合には補正量を付加しない補正量計算手段と、
ｋ反復目の勾配とｋ−１反復目の平滑化微分を乗算した結果が正値の場合は補正係数を減少し、乗算結果が負値の場合は補正係数を増加する補正係数増減手段と、
前記重み更新手段および補正量計算手段で求めた重みの修正量を用いて重みを要素毎に個別に更新する重み補正手段と、
極値探索により探索された点である局所解を初期値として、局所解における評価関数の極値を取り除いた新たな評価関数を構成し、この評価関数を最小化することにより大域的探索を行う大域的探索手段と、
極値探索の停止基準を満たす場合には、極値探索を終了して、前記大域的探索手段による処理を実行し、極値探索の停止基準を満たさない場合には、前記データ提示手段による処理に戻り、極値探索の停止基準を満たすまで前記データ提示手段による処理を反復実行する極値探索収束判定手段と、
前記大域的探索手段による大域的探索の実行結果が大域的最適化の停止基準を満たしているか否かを判定し、該大域的最適化の停止基準を満たしている場合は処理を終了させる大域的探索収束判定手段と、
前記大域的収束判定手段により大域的最適化の停止基準を満たさないと判定されたとき、局所解における評価関数値よりも更に小さな評価関数値を有する解が探索できた場合は、制約条件に関するパラメータを調整した後、前記データ提示手段による処理以降の極値探索を実行させる制約条件係数更新手段と、
前記大域的収束判定手段により大域的最適化の停止基準を満たさないと判定されたとき、局所解における評価関数値よりも更に小さな評価関数値を有する解が探索できない場合は、大域的最適化に関する係数を調整した後、前記大域的探索手段による処理に戻り、大域的探索を反復実行し、指定された回数だけ反復実行した場合は処理を終了する大域的最適化係数調整手段と
を有することを特徴とする神経回路網モデルの大域的加速化学習装置。
【請求項３】
前記平滑化微分値算出手段は、１から平滑化微係数を引いた値をｋ−１反復目の平滑化微分値に乗じ、この値と平滑化微係数を勾配に乗じた値を加算し、ｋ反復目における平滑化微分値を各要素毎に個別に計算する手段を有し、
前記学習率更新手段は、前記平滑化微分値算出手段で求めたｋ反復目の平滑化微分およびｋ−１反復目の平滑化微分値を各要素毎に個別に乗じ、この演算結果が正値の場合、学習率に学習率の増加率を加えて学習率を増加させ、演算結果が負値の場合、学習率に学習率の減少率を乗じて学習率を減少させるように学習率を要素毎に個別に更新する手段を有し、
前記補正量計算手段は、前記平滑化微分値算出手段で求めたｋ反復目の平滑化微分とｋ−１反復目の平滑化微分を各要素毎に乗算し、この結果が負値の場合には、前記平滑化微分値算出手段で求めた重みの修正量に、ｋ反復目における勾配の差分に可変の補正係数を乗じた補正量を求めるかまたはｋ反復目およびｋ−１反復目の平滑化微分の乗算結果が正値の場合には補正量を計算しない手段を有し、
前記補正係数増減手段は、ｋ反復目の平滑化微分とｋ−１反復目の平滑化微分を乗算した結果が正値の場合は補正係数を減少し、乗算結果が負値の場合は補正係数を増加する手段を有することを特徴とする請求項２記載の神経回路網モデルの大域的加速化学習装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ニューラルネットを用いた処理、非線形最適化法を用いた処理などに適用できる神経回路網モデルの大域的加速化学習法およびその装置に関し、更に詳しくは、学習データが提示される毎に重み振動を抑制した逐次学習を用いて学習時間の短縮化を図ると共に最適解を探索する際に乱数探索に変更して局所的極小値を回避し、大域的極小値に探索しうる神経回路網モデルの大域的加速化学習法およびその装置に関する。
【０００２】
【従来の技術】
初めに、本発明が適用できる神経回路網モデルの一例を挙げ、これに対する学習法を説明する。ここでは、典型例として階層型神経回路網モデルを用いるが、再帰結合をもつ神経回路網モデルなど、他の構造をもつモデルにも適用できる。
【０００３】
階層型神経回路網モデルは、図２に示すように、１層の入力層、複数層の中間層、１層の出力層からなる層状のネットワークモデルであり、各層はユニット、重み、バイアスから構成される。ユニットは、前層のユニットの出力値（ｘｉ      （ｉ＝１，２，…，Ｌ，Ｌ：前層のユニット数）と重み（ｗｉ  ，ｉ：重みの番号）の積の総和、およびバイアス（ｂｉ  ，ｉ：ユニットの番号）を加算した値を入力値として受け、入力値にある非線形変換（ｆ（・））を施した値（ｙ）を出力し、この出力値を次層のユニットへ伝達する構造をもつ（図２、式（１））。但し、ここでは、入力層のユニットの入出力変換関数は、線形、入力層以外の層のユニットの非線形変換関数ｆ（・）は、典型例であるシグモイド関数を用いる（式    （１））が、モデルに応じて他の変換関数を用いることも考えられる。
【０００４】
【数１】
0003597341.tif 000002
【外１】
0003597341.tif 000003
る評価基準を最小化するような重みの値を推定するための学習則を考える。ここでは、評価基準の典型例として神経回路網モデルの出力値（Ｏｊ  （ｊ＝１，２，…，Ｍ），Ｍ：出力層のユニットの番号）と学習用出力値である教師データ（Ｔｊ  （ｊ＝１，２，…，Ｍ））の残差二乗和（式（２））を用いる。
【０００５】
【数２】
0003597341.tif 000004
Ｄ．Ｅ．Ｒｕｍｅｌｈａｒｔ  らは神経回路網モデルの学習法として重みの更新則に慣性項を付加した学習法を提案した。しかし、評価関数曲面が谷の形状を成す場合、学習過程において、重みが谷を横切る方向に振動するため、重みは、最適解が存在する谷を降下する方向に更新されず、収束速度が低下するという問題がある。この問題を解決するために、落合らは、重みの振動を抑制するＫｉｃｋ  Ｏｕｔ法を提案した（文献：落合慶広、戸田尚宏、臼井支朗：“重みの振動を抑制する階層型ニューラルネットワークの加速化−Ｋｉｃｋ  Ｏｕｔ法−”、電気学会論文誌、Ｖｏｌ．１１３−Ｃ，Ｎｏ．１２，ｐｐ．１１５４−１１６２（１９９３）参照）。
【０００６】
この学習法を以下に示す。
【０００７】
【数３】
0003597341.tif 000005
【０００８】
一方、評価関数曲面上に局所的極小値が存在する場合、探索過程において局所的極小値に収束するため、大域的極小値を探索できないという問題がある。
【０００９】
これを解決する学習則として、極値探索において局所的極小値が求められた場合、その局所解を中心としたペナルティー関数を構成し、極小値を消滅させた評価関数（（９）式）を構成し、これに基づいて新たな極小値を探索するダイナミックトンネルアルゴリズム（文献：Ｙ．Ｙａｏ：”Ｄｙｎａｍｉｃ  ｔｕｎｎｅｌｉｎｇ  ａｌｇｏｒｉｔｈｍ  ｆｏｒ  ｇｌｏｂａｌ  ｏｐｔｉｍｉｚａｔｉｏｎ”，ＩＥＥＥ  Ｔｒａｎｓ．ｏｎ  Ｓｙｓ．Ｍａｎ  ａｎｄ  Ｃｙｂｅｒｎ．ＳＭＣ−１９−５，ｐｐ．１２２２−１２３０（１９８９）参照）が提案されている。この方法は、２つのアルゴリズムから構成される。次のような最適化問題が与えられた場合、
【外２】
0003597341.tif 000006
【００１０】
【数５】
0003597341.tif 000007
【００１１】
【外３】
0003597341.tif 000008
【００１２】
【数６】
0003597341.tif 000009
【００１３】
【外４】
0003597341.tif 000010
【数７】
0003597341.tif 000011
【外５】
0003597341.tif 000012
【００１４】
【数８】
0003597341.tif 000013
前述したように、ダイナミックトンネルアルゴリズムでは、極値探索と大域探索を繰り返して用いることにより、大域的最適解を求めている。
【００１５】
しかしながら、この大域的最適化法で用いられている極値探索アルゴリズムは、原始的な最急降下法を用いており、収束が非常に遅く、また、数値積分による常微分方程式の解を求めるのも収束速度の点では遅いという問題がある。
【００１６】
また、実際的には、大域的探索を行う際に調整しなければならないパラメータとしてｋｊ  ，ｋがあるが、この調整は経験的にしか調整することができず、その調整も非常に困難である。
【００１７】
【発明が解決しようとする課題】
Ｋｉｃｋ  Ｏｕｔ法は、評価関数曲面における谷の形状に対して加速化の効果を発揮する極値探索型のアルゴリズムであり、Ｋｉｃｋ  Ｏｕｔ法のみでは、評価関数曲面上に局所的な極小値が存在する場合、これを回避することは困難である。
【００１８】
また、ダイナミックトンネリングアルゴリズムは、大域的な最小値を探索するアルゴリズムであるが、収束が非常に遅いという問題がある。
【００１９】
更に、Ｋｉｃｋ  Ｏｕｔ法は、学習すべきパターンを全て提示した後に１回だけ重みを更新する一括学習法を用いており、重みの振動を補正するための補正項の係数は、全学習パターンを提示した後にしか求めることができない。従って、学習アルゴリズムを一反復するために要する時間は、パターン数の増加に対して指数関数的に増加し、学習時間も膨大になるという問題がある。これを改善するためには、学習パターンを１パターン提示する度に重みを更新する逐次学習を導入する必要があるが、一括学習型のＫｉｃｋ  Ｏｕｔ法を単純に逐次学習型に変更しても、Ｋｉｃｋ  Ｏｕｔ法と同程度の加速効果は得られないという問題がある。
【００２０】
本発明は、上記に鑑みてなされたもので、その目的とするところは、評価関数曲面上に局所的極小値が存在しても大域的な極小値を探索することができると共に学習の収束の速さを加速して短時間で大域的極小値を探索しうる神経回路網モデルの大域的加速化学習装置を提供することにある。
【００２１】
【課題を解決するための手段】
上記目的を達成するため、請求項１記載の本発明は、ファイル読み込み装置および時系列データを計測するセンサを有する入力部と、処理部と、出力部から構成される神経回路網モデルの大域的加速化学習装置であって、前記処理部は、神経回路網モデルの重みの初期値、学習率の初期値、学習率の増減率、平滑化微係数、慣性率、補正係数の初期値、極値探索および大域的探索の停止基準値、制約条件の係数、および大域的最適化に関する係数を前記入力部から転送されて初期設定する変数初期化手段と、学習すべき入力データを前記入力部から転送されて一時的に蓄積し、該入力データの全パターンを神経回路網モデルに提示し、各入力パターンに対して神経回路網モデルの出力値を計算し、この出力値と教師データから計算される全パターンに対する評価基準値に基づいて現在の反復点（ｋ反復目とする）における重みに関する評価関数の一次偏微分である勾配を計算するデータ提示手段と、１から平滑化微係数を引いた値を前記データ提示手段で求めたｋ反復目の勾配に乗じ、この値と１反復前（ｋ−１反復目とする）の平滑化微分に平滑化微係数を乗じた値を加算し、ｋ反復目における平滑化微分値を計算して求める平滑化微分値算出手段と、前記平滑化微分値算出手段で求めたｋ反復目の勾配およびｋ−１反復目の平滑化微分値を各要素毎に個別に乗じた演算結果が正値の場合、学習率に学習率の増加率を加えて学習率を増加させて各学習率を個別に更新し、演算結果が負値の場合、学習率に学習率の減少率を乗じて学習率を減少させ、各学習率を個別に更新する学習率更新手段と、前記データ提示手段で求めた勾配、および前記学習率更新手段で求めた各重みに対応した個別の学習率を乗じた修正量を各要素毎に個別に計算し、この修正量にｋ−１反復目の重みの修正量に慣性率を乗じた修正量を各重みに個別に加えて、重みの修正量を計算する重み更新手段と、前記データ提示手段で求めたｋ反復目の勾配とｋ−１反復目の勾配から勾配の差分（ｋ反復目における勾配の差分とする）を計算し、この結果を補正項付加判断手段に転送する勾配差分計算手段と、前記勾配差分計算手段で求めたｋ反復目の勾配の差分と１反復前のｋ−１反復目の勾配の差分の内積を計算し、この結果が負値の場合には補正項を追加すると判断して補正量計算手段に重みを転送し、前記内積の結果が正値の場合には補正量を付加しないと判断して極値探索収束判定手段に重みを転送する補正項付加判定手段と、前記重み更新手段で求めた重みの修正量に、更にｋ反復目の勾配の差分とｋ反復目の重みの修正量の内積値をｋ反復目の勾配の差分の大きさ（ノルム）の２乗および２で除算した結果（スカラー量）にｋ反復目の勾配の差分を乗じた補正量を計算し、この結果を重み補正手段に転送する補正量計算手段と、前記補正量計算手段から転送された重みの補正量に基づき、重みを要素毎に個別に更新し、前記極値探索収束判定手段に転送する重み補正手段と、極値探索により探索された点である局所解を初期値として、局所解における評価関数の極値を取り除いた新たな評価関数を構成し、この評価関数を最小化することにより大域的探索を行う大域的探索手段と、前記重み更新手段あるいは前記重み補正手段から転送された重みを用いて極値探索を行い、極値探索の停止基準を満たす場合には、極値探索を終了して大域的探索手段による処理を実行し、極値探索の停止基準を満たさない場合には、該停止基準を満たすまで前記データ提示手段による処理から反復実行させる極値探索収束判定手段と、前記大域的探索手段による大域的探索の実行結果が大域的最適化の停止基準を満たしているか否かを判定し、該大域的最適化の停止基準を満たしている場合は処理を終了させる大域的探索収束判定手段と、前記大域的収束判定手段により大域的最適化の停止基準を満たさないと判定されたとき、局所解における評価関数値よりも更に小さな評価関数値を有する解が探索できた場合は、制約条件に関するパラメータを調整した後、前記データ提示手段による処理以降の極値探索を実行させる制約条件係数更新手段と、前記大域的収束判定手段により大域的最適化の停止基準を満たさないと判定されたとき、局所解における評価関数値よりも更に小さな評価関数値を有する解が探索できない場合は、大域的最適化に関する係数を調整した後、前記大域的探索手段による処理に戻り、大域的探索を反復実行し、指定された回数だけ反復実行した場合は処理を終了する大域的最適化係数調整手段とを有することを主旨とする。
【００２８】
請求項１記載の本発明にあっては、評価関数曲面上に局所的極小値が存在するような場合でも、大域的な極小値を探索することが可能となるとともに、局所的極小値を探索する際、谷などの条件数の大きい曲面が存在する場合、この領域において発生する重みの振動を抑制することにより収束を加速化し、大域的な極小値を探索する時間を短縮することができる。
【００２９】
また、請求項２記載の本発明は、ファイル読み込み装置および時系列データを計測するセンサを有する入力部と、処理部と、出力部から構成される神経回路網モデルの大域的加速化学習装置であって、前記処理部は、神経回路網モデルの重みの初期値、学習率の初期値、学習率の増減率、平滑化微係数、慣性率、補正係数の初期値、極値探索および大域的探索の停止基準値、制約条件の係数、および大域的最適化に関する係数を前記入力部から転送されて初期設定する変数初期化手段と、学習すべき入力データを前記入力部から転送されて一時的に蓄積し、該入力データの全パターンを神経回路網モデルに提示し、各入力パターンに対して神経回路網モデルの出力値を計算し、この出力値と教師データから計算される全パターンに対する評価基準値に基づいて現在の反復点（ｋ反復目とする）における重みに関する評価関数の一次偏微分である勾配を計算するデータ提示手段と、１から平滑化微係数を引いた値を前記データ提示手段で求めたｋ反復目の勾配に乗じ、この値と１反復前（ｋ−１反復目とする）の平滑化微分に平滑化微係数を乗じた値を加算し、ｋ反復目における平滑化微分値を計算して求める平滑化微分値算出手段と、前記平滑化微分値算出手段で求めたｋ反復目の勾配およびｋ−１反復目の平滑化微分値を各要素毎に個別に乗じた演算結果が正値の場合、学習率に学習率の増加率を加えて学習率を増加させて各学習率を個別に更新し、演算結果が負値の場合、学習率に学習率の減少率を乗じて学習率を減少させ、各学習率を個別に更新する学習率更新手段と、前記データ提示手段で求めた勾配、および前記学習率更新手段で求めた各重みに対応した個別の学習率を乗じた修正量を各要素毎に個別に計算し、この修正量にｋ−１反復目の重みの修正量に慣性率を乗じた修正量を各重みに個別に加えて、重みの修正量を計算する重み更新手段と、前記データ提示手段で求めたｋ反復目の勾配とｋ−１反復目の勾配から勾配の差分（ｋ反復目における勾配の差分とする）を計算し、この結果を補正項付加判断手段に転送する勾配差分計算手段と、前記勾配差分計算手段で求めたｋ反復目の勾配とｋ−１反復目の平滑化微分を各要素毎に計算し、この結果が負値の場合には、前記重み更新手段で求めた重みの修正量に、現在の反復点における勾配の差分に固定値の補正係数を乗じた補正量を各要素毎に個別に各重みに加えるかまたは前記学習率更新手段で求めた勾配と平滑化微分の内積値が正値の場合には補正量を付加しない補正量計算手段と、ｋ反復目の勾配とｋ−１反復目の平滑化微分を乗算した結果が正値の場合は補正係数を減少し、乗算結果が負値の場合は補正係数を増加する補正係数増減手段と、前記重み更新手段および補正量計算手段で求めた重みの修正量を用いて重みを要素毎に個別に更新する重み補正手段と、極値探索により探索された点である局所解を初期値として、局所解における評価関数の極値を取り除いた新たな評価関数を構成し、この評価関数を最小化することにより大域的探索を行う大域的探索手段と、極値探索の停止基準を満たす場合には、極値探索を終了して、前記大域的探索手段による処理を実行し、極値探索の停止基準を満たさない場合には、前記データ提示手段による処理に戻り、極値探索の停止基準を満たすまで前記データ提示手段による処理を反復実行する極値探索収束判定手段と、前記大域的探索手段による大域的探索の実行結果が大域的最適化の停止基準を満たしているか否かを判定し、該大域的最適化の停止基準を満たしている場合は処理を終了させる大域的探索収束判定手段と、前記大域的収束判定手段により大域的最適化の停止基準を満たさないと判定されたとき、局所解における評価関数値よりも更に小さな評価関数値を有する解が探索できた場合は、制約条件に関するパラメータを調整した後、前記データ提示手段による処理以降の極値探索を実行させる制約条件係数更新手段と、前記大域的収束判定手段により大域的最適化の停止基準を満たさないと判定されたとき、局所解における評価関数値よりも更に小さな評価関数値を有する解が探索できない場合は、大域的最適化に関する係数を調整した後、前記大域的探索手段による処理に戻り、大域的探索を反復実行し、指定された回数だけ反復実行した場合は処理を終了する大域的最適化係数調整手段とを有することを主旨とする。
【００３０】
請求項２記載の本発明にあっては、評価関数曲面上に局所的極小値が存在するような場合でも、大域的な極小値を探索することが可能となるとともに、重みおよび学習率を個別に更新することが可能となり、多くの学習パターンを有する課題の学習または時系列データなどを用いた逐次学習などにおいて学習時間の大幅な短縮が可能となる。
【００３１】
更に、請求項３記載の本発明は、請求項２記載の発明において、前記平滑化微分値算出手段は、１から平滑化微係数を引いた値をｋ−１反復目の平滑化微分値に乗じ、この値と平滑化微係数を勾配に乗じた値を加算し、ｋ反復目における平滑化微分値を各要素毎に個別に計算する手段を有し、前記学習率更新手段は、前記平滑化微分値算出手段で求めたｋ反復目の平滑化微分およびｋ−１反復目の平滑化微分値を各要素毎に個別に乗じ、この演算結果が正値の場合、学習率に学習率の増加率を加えて学習率を増加させ、演算結果が負値の場合、学習率に学習率の減少率を乗じて学習率を減少させるように学習率を要素毎に個別に更新する手段を有し、前記補正量計算手段は、前記平滑化微分値算出手段で求めたｋ反復目の平滑化微分とｋ−１反復目の平滑化微分を各要素毎に乗算し、この結果が負値の場合には、前記平滑化微分値算出手段で求めた重みの修正量に、ｋ反復目における勾配の差分に可変の補正係数を乗じた補正量を求めるかまたはｋ反復目およびｋ−１反復目の平滑化微分の乗算結果が正値の場合には補正量を計算しない手段を有し、前記補正係数増減手段は、ｋ反復目の平滑化微分とｋ−１反復目の平滑化微分を乗算した結果が正値の場合は補正係数を減少し、乗算結果が負値の場合は補正係数を増加する手段を有することを主旨とする。
【００３２】
請求項３記載の本発明にあっては、評価関数曲面上に局所的極小値が存在するような場合でも、大域的な極小値を探索することが可能となるとともに、学習時の収束の不安定性を減少させることができる。
【００３３】
【発明の実施の形態】
以下、図面を用いて本発明の実施の形態について説明する。
【００３４】
図１は、本発明の第１ないし第３の実施形態に適用される神経回路網モデルの大域的加速化学習法を実施する学習装置の構成を示すブロック図である。図１に示す学習装置は、入力部１００、処理部２００および出力部３００から構成され、入力部１００は、学習に用いる学習率などの各種変数などを読み込むためのファイル読み込み装置１０１、時系列データを計測する各種センサ１０２、ＴＶカメラ１０３などからなる。処理部２００は、変数初期化部２０１、データ提示部２０２、学習率更新部２０３、重み更新部２０４、勾配差分計算部２０５、補正項付加判断部２０６、補正量計算部２０７、重み補正部２０８、極値探索の収束判定部２０９、大域的探索部２１０、大域的探索収束判定部２１１、制約条件係数更新部２１２、大域的最適化係数更新部２１３からなる。
【００３５】
本発明の第１の実施形態に係る神経回路網モデルの大域的加速化学習法は、Ｋｉｃｋ  Ｏｕｔ法とトンネルアルゴリズムを融合させた学習法とし、トンネルアルゴリズムにおいて収束が遅いおよびパラメータｋの調整が困難であるという問題点を解決するために、次の手順により探索する。始めに、局所的極小値を見い出すために（３）〜（６）式のＫｉｃｋ  Ｏｕｔ法を用いて極値探索を行う。そして、極値探索において局所的最小値が見い出された後、この局所的最小値よりも更に小さな評価関数値をもつ点を見つけるために、次の手順に基づいた大域的探索を行う。
【００３６】
大域的探索を行う際の評価関数を次式のように定義する。
【００３７】
【数９】
0003597341.tif 000014
これに対して、大域的探索においてもＫｉｃｋ  Ｏｕｔ法を適用する。
【００３８】
【数１０】
0003597341.tif 000015
また、ダイナミックトンネリングアルゴリズムでは、経験的にしか調整することができなかったパラメータkj、λを次のように調整する。
【００３９】
（１）ｋｊ  ，μ０  ，α＞０，０＜β＜１を設定する。
【００４０】
【外６】
0003597341.tif 000016
【数１１】
0003597341.tif 000017
条件（（１５）式）を満足しないで、大域的探索により、極値解における評価関
【外７】
0003597341.tif 000018
合、すなわち、
【数１２】
0003597341.tif 000019
【外８】
0003597341.tif 000020
開始点として、（６）以下を実行する。（１６）式を満たす点を見い出せなかった場合、（４）以下を実行する。
【００４１】
【数１３】
0003597341.tif 000021
【００４２】
【外９】
0003597341.tif 000022
外ならば、μｋ＋１  ＝μｋ  、ｋ＝ｋ＋１として（２）へ戻る。しかし、大域的探索を指定された回数だけ反復実行しても、大域的探索の停止基準を満たさない場合は終了する。
【００４３】
本発明の第２の実施形態に係る大域的加速化学習法では、重みが振動する際、各要素ごとに個別に重みの値を補正する補正法を備えた逐次型の学習法であり、本学習法における補正項の計算方法は、重みの振動を判定するために、評価関数曲面上の大域的な勾配を表す平滑化微分、および勾配を利用して求めている。
【００４４】
記憶容量、計算量を極力低減させるために、学習率の更新基準、または重みの補正基準としてｋ反復目の勾配とｋ−１反復目の平滑化微分の積を用いている。更に、補正係数として計算値ではなく設定値を用いることにより、第１の実施形態で用いていた内積演算を排除し、重みの振動を各要素ごとに個別に補正することを可能にする。
【００４５】
第２の実施形態において、第１の実施形態の中で用いられているＫｉｃｋ  Ｏｕｔ法に相当する部分の学習則を以下に示す。
【００４６】
【数１４】
0003597341.tif 000023
但し、上記は極値探索における学習則であり、大域的探索においては、下記の記号に置き換えた学習則を使用する。
【００４７】
ｇｋ，ｉ    →  ｅｋ，ｉ                    …（２３）
ｙｋ，ｉ    →  ｚｋ，ｉ                    …（２４）
本発明の第３の実施形態の学習法では、学習を安定して収束するためには、学習率、および補正項付加の判断基準に用いる勾配などの評価関数曲面の情報として全パターンに対する大域的な情報を用いる必要があるため、ｋ、およびｋ−１反復目の平滑化微分の積を用いている。更に、補正係数を学習の状況に応じて変化させることにより、適切な補正を可能にする。
【００４８】
第３の実施形態で用いられる学習則を以下に示す。
【００４９】
【数１５】
0003597341.tif 000024
但し、上記は極値探索における学習則であり、大域的探索においては、下記の記号に置き換えた学習則を使用する。
【００５０】
ｇｋ，ｉ    →  ｅｋ，ｉ                    …（２９）
ｙｋ，ｉ    →  ｚｋ，ｉ                    …（３０）
次に、図３および図４に示すフローチャートを参照して、作用を説明する。
【００５１】
図１において、入力部１００からセンサ１０２、ＴＶカメラ１０３などを用いて計測した時系列データなどを入力し、データ提示部２０２に学習用データを転送する（ステップＳ１１）。従って、データ提示部２０２には時系列データが一時的に蓄えられる。また、ファイル読み込み装置１０１から、学習に必要な学習率などの値を読み込み、変数初期化部２０１に転送される（ステップＳ１３）。
【００５２】
変数初期化部２０１は、神経回路網モデルの重み、および学習率などの初期値を設定し（ステップＳ１５）、データ提示部２０２は、センサ１０２、ＴＶカメラ１０３などから転送されてきた時系列データを１パターンずつ神経回路網モデルに提示し、前向きの計算により、神経回路網モデルの出力値を計算し（ステップＳ１７）、このモデル出力と教師データを用いて、予め、与えられた評価基準値を計算する。この後、上記の評価基準値に基づいて神経回路網モデルの逆方向計算を行い、勾配を計算する（ステップＳ１９）。
【００５３】
学習率変更部２０３は、勾配または平滑化微分の符合に基づいて学習率を更新し（ステップＳ２１）、重み更新部２０４は、上述した学習率、勾配などとを用いて重みを更新し、勾配などを勾配差分計算部２０５に転送する（ステップＳ２３）。
【００５４】
勾配差分計算部２０５は、データ提示部２０２において求められた勾配を用いてｋ，ｋ−１の反復点における勾配の差分を計算し、この情報などを補正項付加判断部２０６に転送する（ステップＳ２５）。
【００５５】
補正項付加判断部２０６は、転送された勾配などに基づき、第１の実施形態においては、平滑化微分の積を、第２の実施形態においては、勾配と平滑化微分の積を計算し、この値が負値の場合、補正量計算部２０７に重みの値などを転送する。または、上記の値が正値の場合には、収束判定部２０９に重みの値などを転送する（ステップＳ２７）。
【００５６】
補正量計算部２０７では、補正項付加判断部２０６の指令に従い、転送された重み、勾配の差分などから、重みの補正量を計算し、これを重み補正部２０８に転送する（ステップＳ２９）。
【００５７】
重み補正部２０８は、転送された重みの補正量に基づき重みの値を補正し、補正した重みを収束判定部２０９に転送する（ステップＳ３１）。
【００５８】
極値探索収束判定部２０９は、重み補正部２０８または重み更新部２０４から転送された重みを用いて、極値探索の停止基準が満たされているかを判定する    （ステップＳ３３）。
【００５９】
大域的探索部２１０は、新たに設定された評価関数Ｅ（ｗ）に対して最小化を実行することにより、評価関数値Ｅ（ｗ）がより小さくなる点を探索する（ステップＳ３５）。
【００６０】
大域的探索収束判定部２１１は、大域的探索を実行した結果見い出された点が大域的最適化の停止基準を満たしているかを判定する（ステップＳ３７）。
【００６１】
制約条件係数更新部２１２は、大域的探索の結果、評価関数値がより小さな点が見い出された場合には、制約条件の係数を更新する（ステップＳ３９）。
【００６２】
大域的最適化係数更新部２１３は、大域的探索の結果、評価関数値がより小さな点が見い出されなかった場合、大域的最適化の係数を更新する（ステップＳ４１）。以上の処理を大域的探索を指定した回数だけ反復しても終了していない場合には、終了する。
【００６３】
上記各実施形態の学習装置には、（１）全ての学習率を同じ値に設定し、この値を学習過程において固定（学習率の増加率を０、学習率の減少率を１と設定）、または可変とした場合、（２）平滑化微係数を０と設定した場合、すなわち、重みの補正基準、学習率の更新基準に勾配のみを用いる場合、（３）慣性率の値を０に設定した場合も含まれる。
【００６４】
また、第２の実施形態の学習装置には、（１）補正係数を増加させる際、補正係数に正の値を加算する場合、または１より大きい値を乗算する場合、（２）補正係数を減少させる際、補正係数に、０より大きく、かつ、１未満の値を乗じる場合、または補正係数から正の値を減算する場合、（３）上記（１），（２）を併用して、補正係数を増減する場合、（４）補正係数を増減せずに、一定値に設定する場合も含まれる。
【００６５】
【発明の効果】
以上説明したように、本発明によれば、評価関数曲面上に局所的極小値が存在するような問題に対して、大域的な極小値を探索することが可能となるとともに、局所探索においては、評価関数曲面上で谷の構造が存在する場合には、収束を加速化し、短時間で大域的な極小値を探索することができる。
【００６６】
また、本発明によれば、評価関数曲面上に局所的極小値が存在するような場合でも大域的な極小値を探索することが可能となるとともに、少ない記憶領域および計算量により時系列データなどのように学習データが無限個存在する課題の学習を短時間で終了することができる。
【００６７】
更に、本発明によれば、評価関数曲面上に局所的極小値が存在するような場合でも大域的な極小値を探索することが可能となるとともに、時系列データなどのように学習データが無限個存在する課題の学習を短時間で終了し、かつ安定した収束が可能となる。
【図面の簡単な説明】
【図１】本発明の第１ないし第３の実施形態に適用される神経回路網モデルの大域的加速化学習法を実施する学習装置の構成を示すブロック図である。
【図２】神経回路網モデルの一例を示す図である。
【図３】図１に示す神経回路網モデルの大域的加速化学習法の手順の一部を示すフローチャートである。
【図４】図１に示す神経回路網モデルの大域的加速化学習法の手順の残りの部分を示すフローチャートである。
【符号の説明】
１００  入力部
２００  処理部
２０１  変数初期化部
２０２  データ提示部
２０３  学習率更新部
２０４  重み更新部
２０５  勾配差分計算部
２０６  補正項付加判断部
２０７  補正量計算部
２０８  重み補正部
２０９  極値探索収束判定部
２１０  大域的探索部
２１１  大域的探索収束判定部
２１２  制約条件係数更新部
２１３  大域的最適化係数更新部
３００  出力部
【図１】
0003597341.tif 000025
【図２】
0003597341.tif 000026
【図３】
0003597341.tif 000027
【図４】
0003597341.tif 000028