(57)【特許請求の範囲】
【請求項１】
情報プロセッサを再構成するための改良動作が指示されるか否かを判断するための方法であって、当該方法は、
（ａ）入力プロセッサが、現在タイムトライアルについて測定された入力値（３０）の反復を受け取るステップと、
（ｂ１）前記入力プロセッサが、前記測定された入力値（３０）に基づいて入力特性値（３４）のベクトルをマルチカーネルプロセッサに供給するステップと、
（ｂ２）前記マルチカーネルプロセッサの各カーネルが、１以上の前記入力特性値（３４）を受け取るステップと、
（ｂ３）前記カーネルが、
受け取った前記入力特性値（３４）を基に１つ以上の出力特性値を計算するための数理関係を規定する接続スペシフィケーション（４２）と、
受け取った前記入力特性値および計算された前記出力特性値の間の回帰係数を示す接続ウェイト（４０ａ、ｂ）と、
受け取った前記入力特性値（３４）を基に前記接続ウェイト（４０ａ、ｂ）を更新するための数理関係を規定する学習ウェイト（５５）と、
を読み出すステップと、
（ｂ４）前記カーネルが、受け取った前記入力特性値（３４）、前記接続ウェイト（４０ａ、ｂ）及び前記接続スペシフィケーション（４２）に基づいて前記出力特性値を計算するステップと、
（ｂ５）前記カーネルが、受け取った前記入力特性値（３４）、前記接続ウェイト（４０ａ、ｂ）、前記接続スペシフィケーション（４２）及び前記学習ウェイト（５５）に基づいて更新接続ウェイト（４０ａ、ｂ）を計算するステップと、
（ｃ）応答ユニットが、前記各カーネルによって計算された前記出力特性値に基づいてトランスデューサーにて計算された出力値のベクトルを出力するステップと、
（ｄ）マネージャ（１６）が、前記更新された接続ウェイト（４０ａ、ｂ）に基づいて、前記改良動作が指示されるかどうかを決定するステップと
を有し、
前記マネージャ（１６）は、前記改良動作として、１）前記接続ウェイトの更新が繰り返される場合において、前記更新された接続ウェイトの一つが零に近づくとき、当該接続ウェイトが表す特性値を無効として削除する動作及び、２）前記更新が繰り返される場合において、更新された複数の接続ウェイトが同じ値に近づくとき、当該複数の接続ウェイトが表す複数の冗長な特性値を一つの特性値で置き換える動作の少なくとも一つを実行する
方法。
【請求項２】
前記入力特性値のベクトルを供給するステップは、前記測定された入力値（３０）及び入力特性スペシフィケーション（３５，８０４）に基づいて前記入力特性値を計算するステップを含む請求項１記載の方法。
【請求項３】
前記入力特性値を計算するステップは、
前記測定された入力値の代数的組み合せに基づいて前記入力特性値を計算するステップと、
前記測定された入力値によって定義された関数を近似する多項式に対応する係数に基づいて入力特性値を計算するステップと、
前記測定された入力値によって定義された関数に対応する微分方程式に対応する係数に基づいて入力特性値を計算するステップと、
前記測定された入力値によって定義された関数に対応する周波数領域の関数に対応する係数に基づいて入力特性値を計算するステップと、
を含むグループから選択された１つの数学的な操作を有する請求項２記載の方法。
【請求項４】
前記トランスデューサーが、前記出力特性値及び出力特性スペシフィケーションに基づいて前記出力値を計算するステップを含む請求項２記載の方法。
【請求項５】
改良動作が指示されると、
無効な入力特性値又は出力特性値を削除するステップと、
余分な入力特性値又は出力特性値を組み合わせるステップと、
新たな入力特性値又は出力特性値を特定するステップと、
複数のタイムトライアルについて前記測定された入力値及び前記計算された出力値に基づいて前記入力特性スペシフィケーションを再計算するステップと、
複数のタイムトライアルについて前記測定された入力値及び前記計算された出力値に基づいて前記学習ウェイトを再計算するステップと、
複数のタイムトライアルについて前記測定された入力値及び前記計算された出力値に基づいて前記接続スペシフィケーションを再計算するステップと、
複数のタイムトライアルについて前記測定された入力値及び前記計算された出力値に基づいて前記出力特性スペシフィケーションを再計算するステップと、
を含むグループから選択された１以上の改良動作を実行するステップをさらに有する請求項４記載の方法。
【請求項６】
前記出力特性値を計算するステップは、
１以上の履歴タイムトライアルについての入力特性値に基づいて、前記現在タイムトライアルについての出力特性値を計算するステップと、
現在タイムトライアルについての入力特性値に基づいて、モニタされた出力特性値を計算するステップと、
前記履歴タイムトライアルについての入力特性値に基づく出力特性値及び前記モニタされた出力特性値に基づいて逸脱値を計算するステップと、
前記モニタされた出力特性値に基づいて前記計算された出力値を設定するステップと、
を含む請求項４記載の方法。
【請求項７】
前記応答ユニットが、
各逸脱値を関連する閾値と比較するステップと、
前記逸脱値の１つがその関連する閾値を越えると、
アラーム状態を指示するステップと、
前記関連する閾値を越えた逸脱値に関連する出力特性値について、前記計算された出力値の基準として、前記モニタされた出力特性値でなく、前記履歴タイムトライアルについての入力特性値に基づく出力特性値を設定するステップと、
を含むグループから選択された１以上の逸脱操作を実行するステップと、
を実行する請求項６記載の方法。
【請求項８】
出力特性値を計算するステップは、将来タイムトライアルについての出力特性値を前記接続ウェイトの更新前に予測するステップを含む請求項１記載の方法。
【請求項９】
出力特性値を計算するステップは、
現在タイムトライアルについての出力特性値を１以上の履歴タイムトライアルについての入力特性値に基づいて計算するステップと、
将来タイムトライアルについての出力特性値を前記接続ウェイトの更新前に予測するステップと、
を含む請求項１記載の方法。
【請求項１０】
前記応答ユニットが、
前記計算された出力値の表現をディスプレイ装置に表示するステップ又は、
警告状態を表示するステップ
を実行する請求項１記載の方法。
【請求項１１】
前記マルチカーネルプロセッサは、
入力値が測定されるとともに出力値が予測される空間的に連続したフィールドに対応する各空間位置用カーネルのアレイを含み、
前記アレイの各カーネルは、隣接位置での測定入力値の１組に基づいて計算された出力値の１つを計算するように構成されている請求項１に記載の方法。
【請求項１２】
前記マルチカーネルプロセッサの各カーネルは、前記測定された入力値に基づいた相互に排他的で時間に特有の価格予想に対応し、
各カーネルは、前記測定された入力値に基づいて、当該カーネルに対応する相互に排他的で時間に特有の価格予想を前記接続ウェイトの更新前に予測するように構成された
請求項１記載の方法。
【請求項１３】
前記マルチカーネルプロセッサの各カーネルは映像イメージのピクセルに対応し、
各測定された入力値は前記映像イメージのピクセルの１つの測定された強度に対応し、
各計算された出力値は前記映像イメージのピクセルの１つの計算された強度に対応する、
請求項１記載の方法。
【請求項１４】
前記マルチカーネルプロセッサは、
入力値が測定され、出力値が予測される時間ベースのインデックスに対応する各時間用カーネルのアレイを含み、
前記アレイの各カーネルは、測定された入力値に基づいて前記時間ベースのインデックス値の相互に排他的な１つを前記接続ウェイトの更新前に予測するように構成された請求項１に記載の方法。
【請求項１５】
前記測定された入力値は、
商品価格インデックスと、
通貨その他の商品についての価格インデックスと、
を有する請求項１４記載の方法。
【請求項１６】
前記マルチカーネルプロセッサは、
入力値がそこから測定され且つ出力値がそれに対して前記接続ウェイトの更新前に予想される時間ベース指標に対応する複数の時間的専用カーネルを各々が備えて成る複数のカーネル群を備え、
各カーネル群が、測定入力値に基づき相互に排他的な時間ベース指標値の構成要素を予測するように各々が構成されて成る複数の個別カーネルを備え、
複数の時間的専用カーネル群が空間的専用カーネル群のアレイを画成し、
各カーネル群が時間ベース指標の構成要素を計算するように構成された
請求項１記載の方法。
【請求項１７】
前記時間ベースのインデックスは電力の需要インデックスを含み、
各カーネルのグループは、複数の電力の配送地点に対応し、
前記測定された入力値は、電力の需要及び天気のデータを含む、
請求項１６記載の方法。
【請求項１８】
前記プロセッサの各カーネルは、前記受け取った入力値、前記接続ウェイト、前記接続スペシフィケーション及び前記学習ウェイトに基づいて前記更新接続ウェイトを計算するために動作し、
前記接続ウェイトは逆共分散行列を含み、
前記更新接続ウェイトの計算は、
前記逆共分散行列を更新するステップ又は、
前記逆共分散行列に対応する分散行列を更新し、当該更新された分散行列の逆行列を求めるステップ
を含む請求項１に記載の方法。
【請求項１９】
情報プロセッサを再構成するための改良動作が指示されるか否かを判断するための装置であって、
（ａ）現在タイムトライアルについて測定された入力値（３０）の反復を受け取り、当該入力値（３０）に基づいて入力特性値（３４）のベクトルを出力する入力プロセッサと；
（ｂ）前記入力特性値（３４）のベクトルを受け取るマルチカーネルプロセッサであって、
当該マルチカーネルプロセッサの各カーネルが、
（ｂ１）１以上の前記入力特性値（３４）を受け取り、
（ｂ２）受け取った前記入力特性値（３４）を基に１つ以上の出力特性値を計算するための数理関係を規定する接続スペシフィケーション（４２）と、受け取った前記入力特性値および計算された前記出力特性値の間の回帰係数を示す接続ウェイト（４０ａ、ｂ）と、受け取った前記入力特性値（３４）を基に前記接続ウェイト（４０ａ、ｂ）を更新するための数理関係を規定する学習ウェイト（５５）とを読み出し、
（ｂ３）受け取った前記入力特性値（３４）、前記接続ウェイト（４０ａ、ｂ）及び前記接続スペシフィケーション（４２）に基づいて前記出力特性値を計算し、
（ｂ４）受け取った前記入力特性値（３４）、前記接続ウェイト（４０ａ、ｂ）、前記接続スペシフィケーション（４２）及び前記学習ウェイト（５５）に基づいて更新接続ウェイト（４０ａ、ｂ）を計算するものと；
（ｃ）前記各カーネルによって計算された前記出力特性値に基づいてトランスデューサーにて計算された出力値のベクトルを出力する応答ユニットと；
（ｄ）前記更新された接続ウェイト（４０ａ、ｂ）に基づいて、前記改良動作が指示されるかどうかを決定するマネージャ（１６）；とを有し、
前記マネージャ（１６）は、前記改良動作として、１）前記接続ウェイトの更新が繰り返される場合において、更新された接続ウェイトの一つが零に近づくとき、当該接続ウェイトが表す特性値を無効として削除する動作及び、２）前記更新が繰り返される場合において、更新された複数の接続ウェイトが同じ値に近づくとき、当該複数の接続ウェイトが表す複数の冗長な特性値を一つの特性値で置き換える動作の少なくとも一つを実行する
装置。
【発明の詳細な説明】
技術分野
本発明は、ニューラルネットワーク情報処理システムに関し、特に、ネットワークがモニタリングをしながら特徴値間の相関関係を学習し、測定された入力値を帰属させ、また将来の出力値を予想するように構成されたマルチ−カーネル・ニューラルネットワーク計算機アーキテクチャに関する。
発明の背景
前進するコンピュータテクノロジーにおけるブームの間、その注意の多くは、手近のパーソナルコンピュータからメインフレームコンピュータに至るまでの広範囲の計算機システムに見られるように、連続的情報処理システムに集中していた。一般に、「フラットファイル」連続的情報処理システムの多くは入力、出力、演算が予め知られているタスクを実行するのには非常に有効である。しかし、これらは入力、出力、演算が環境要素の変化、物理的特徴の変化などに応じて時間がたつにつれて変化する適応性のあるタスクを実行するにはあまり適さない。言い換えると、典型的な「フラットファイル」連続的情報処理システムは学習に関わるタスクを実行するのにはあまり適していない。
ニューラルネットワークは、学習システムを実行するのに使われ得るコンピュータ技術の範疇である。特に、ニューラルネットワークコンピュータアーキテクチャは、思考有機体で起こる情報処理をまねるように発展してきた。ニューラルネットワーク技術はよく平行処理論理アレイのような専用のハードウエア処理装置を用いて実行される。一般的にニューラルネットワークは、与えられた接続点の出力がその接続点の入力の総量によって駆動される入力及び出力を有する相互に連絡された接続点のシステムであると説明されている。ニューラルネットワークは、入力値及び出力値が連続したタイムトライアル中に測定され得る物理的パラメータに相当するモニタリング、予想、制御の適用に適している。同じ値をモニタリング及び予想することは、測定された入力値及び出力値に対して施された経験的分析を通して入力値及び出力値間の関係が学習されるのを可能にする。この学習された関係は、その後、測定された入力値から予想される出力値に適用される。
典型的なニューラルネットワークシステムを物理的に適用するため、ニューラルネットワークは与えられた適用に対して適切な入力及び出力で構成されている。一度構成されると、ネットワークは養成段階の間、入力と出力の両方の測定値を含む連続的タイムトライアルにさらされる。養成段階の間の経験的分析を通して、ネットワークは測定された入力及び出力間の関係を学習する。ネットワークが養成された後、それが続いて予想段階におけるタイムトライアルの間、測定された入力から予想される出力を計算するのに用いられる。即ち、予想段階の間ネットワークは、養成段階で学習された関係に基づいて予想される出力を計算するのに、測定された入力を用いる。予想の適用においてネットワークは、一般に、将来のタイムトライアルの間の出力値に相当する測定量を受け取る。これらの測定された出力値はその後、予想された出力値と比較されてネットワークの性能あるいは予想の正確さが評価される。
ニューラルネットワークはまた、時々再養成され、その結果として養成−予想演算サイクルができる。このタイプの従来のニューラルネットワークは予想分析を実行するのに学習された入力−出力関係を効果的に適用することができるが、ネットワークは、予想分析が実行される前に別個の養成段階を必要とする。換言すると、ネットワークは、予想段階の間に関係を学習することはできない。同様にネットワークは、養成段階の間予想分析を行うことはできない。この欠点は従来のニューラルネットワークの有用さをある状況においては制限することになる。
特に、従来のニューラルネットワークが学習と予想を同時にすることができないことが、入力及び出力間の関係をできる限り速く確認しなければならない適用においてこれらのネットワークの有効性を制限するが、その関係を学習するのに何回のタイムトライアルが必要なのか知られていない。この状況においては、ネットワークを養成するのに何回のタイムトライアルが適当なのかを決定するのは困難である。同様に、従来のニューラルネットワークは入力及び出力間の関係が未知のあるいは予想できない仕方で変わり得る適用にあまり適合しない。この状況においては、ニューラルネットワークをいつ維持するのかを決定するのが困難である。
その結果、従来のニューラルネットワークは、入力及び出力間の関係を非常に速く確認しなければならない、また、入力及び出力間の関係が未知のあるいは予想できない仕方で変わるようなモニタリング、予想、制御のタスクに適用される際に重大な制限を受ける。当然、多くのモニタリング、予想、制御のタスクがこれらの範疇に入る。例えば、ミサイルコントローラや情報パケットルータのような機械は、非常にすばやく確認されなければならない入力−出力関係の迅速な変化を経験する。例えば構造上の部材が崩壊するあるいはミサイルが制御不能に進路を変えるというような重大な機能不全を経験する可能性のある機械に関わるその他のモニタリング及び制御演算は、しばしば未知のあるいは予想できない仕方で変わる入力−出力関係を示す。
従来のニューラルネットワークはまた、測定されない、また多くの場合測定できない要因の変化に応じて時間を通じて入力−出力関係が変化する適用における有効性の制限も経験する。例えば商品の価格指数は、在庫の程度、その商品への需要、金銭供給の流動性、取引業者の心理状態などの要因の変化に応じて、予測できない仕方で時間を通じて変化することが予期できる。同様に、電気に対する需要と天候との間の関係は、人口統計学、暖房あるいは冷房装置技術、経済状況などの要因の変化に応じて予測できない仕方で時間を通じて変化することが予期できる。
従来のニューラルネットワークにおいて遭遇する別の制限は、ネットワークの物理的な構造が一般に特定の入力及び出力のセットに適合するようにされているという事実から生ずる。ネットワークはこれらの入力及び出力間の関係を容易に学習するが、ネットワークは測定された履行に応じてその入力及び出力を再定義するようには構成されていない。これはネットワークによって適用される入力−出力の連結重量がネットワークが再養成される際に変わる可能性があるが、入力及び出力は同じままだからである。効果的な入力−出力改善処理なしには、ネットワークは効果のないあるいは余分の入力及び出力を特定することができない。その結果、ネットワークは変化する状態あるいは特別な適用のための継続的な予想の改善に適合できない。
面白いことに、上述した従来のニューラルネットワークに関連した二つの欠点、即ち、同時に学習及び予想をすることができないこと及び効果的な入力−出力改善過程の欠如は、最も原始的な思考する有機体でさえも明らかに征服してきたものである。実際、同時に予想及び学習をする能力は思考する有機体の起きているあるいは認識状態の重要な面である。そして、タスクの繰り返しに応じてより増進した入力−出力処理能力を割り当てる能力は、思考する有機体における学習の重要な面である。その結果、これらの特性に欠ける従来のニューラルネットワークは、思考する有機体の知性のあるふるまいをまねるのに重大な制限を受ける。
例えば、ジャナローネ（Jannarone）による米国特許第５８３５９０８号（国際公報ＷＯ９６／１４６１６）は、出力値の計算と学習を同時に実行可能な単一カーネルプロセッサを記載している。しかし、この文献は、このプロセッサについての効率的な入力出力改良処理を記載していない。また、この文献は、このプロセッサについての実効的な入力出力改良処理を記載していない。また、この文献は、入力出力改良処理をタスク実行に応じたカーネル間の計算資源の再割り当てに用いることができるマルチ・カーネル・プロセッサも記載していない。例えば、前記第５８３５９０８号特許は、前述した学習の重要な態様である繰り返しに応じた入力出力処理容量の増加する量を割り当てる能力を有するプロセッサを記載していない。
１９８９年１１月１３日から１７日までのネバダ州レノにおけるスーパーコンピュータ会議のＩＥＥＥ議事録（IEEE proceedings）で掲載されたアール・マナー（R．Manner）等による「ＮＥＲＶによるニューラル・ネットワークのマルチプロセッサ・シミュレーション」というタイトルの論文の４５７〜４６５頁（IEEE Computer Society Order No．2021）には、ニューラル・ネットワークについての汎用マルチ・プロセッサ・シミュレーションシステムが記載されている。しかし、前記５８３５９０８号特許と同様に、この文献はこのシミュレーションシステムについての実効的な入力出力改良処理を記載していない。さらに、この文献は、入力出力改良処理をタスク実行に応じて多数のプロセッサ間での計算資源の再割り当てに用いることができるシステムを記載していない。
従って、従来技術において同時に学習及び予想ができるモニタリング、予想、制御システムへの一般的な要求がある。さらに、効果的な入力−出力改善処理を含むモニタリング、予想、制御技術への要求がある。
発明の概要
本発明は、ネットワークがモニタリングし及び測定された入力値に帰属させ、また将来の出力値を予想する際の特徴値間の相互関係を学習するように構成されたマルチ−カーネル・ニューラルネットワーク計算機アーキテクチャにおける上述した要求を満たす。同時学習情報処理装置（CIP）として参照されるこの計算機アーキテクチャは、同時に学習及び予想する知的能力を持つマルチ−カーネル・ニューラルネットワークアレイを含む。CIPはまた、マネージャと入力−出力の改善に使われる入力−出力変換器を含む。これらの構成要素は、マルチ−カーネルアレイの計算能力が、測定されたパフォーマンスあるいはその他の要因に応じて再び割り当てられることを可能にする。マルチ−カーネルアレイによって計算され、変換器の出力処理装置によって処理された出力特徴値は、計算された出力値に応じて様々なモニタリング、予想、制御演算を実行するように応答ユニットに供給される。特徴の機能スペック、接続スペック、学習する重量予定などのようなCIPの重要な特徴は、図表によるユーザーインターフェースを通じて専門家によってセットされる。
アレイの各カーネルが各タイムトライアルに対して予想−学習サイクルを実行するという点で、マルチ−カーネルアレイは「リアルタイム」で同時に学習及び予想をする。リアルタイムで同時に学習及び予想をするCIPの能力は、ニューラルネットワーク技術における重要な進歩を意味する。入力−出力変換器と共に、マルチ−カーネルアレイの入力−出力関係を時々再定義するマネージャの能力は、もう一つの重要な進歩である。マルチ−カーネルアレイは、CIPを様々なタイプの物理的適用に適合させるため、様々なタイプのサブアレイへと組織される。マルチ−カーネルアレイは、一般に、少なくとも一列のモニタリング・サブアレイと少なくとも一列の予想サブアレイとを含む。モニタリング・サブアレイは、現タイムトライアルに対する入力及び出力特徴値を帰属させる。これらの帰属された特徴値は、現タイムトライアルに対する逸脱値を計算するために用いられ、また、必要であれば見つからないまたは許容誤差外の測定入力値に対して帰属された特徴値を供給する。予想サブアレイは、将来のタイムトライアルに対する出力特徴値を予想する。
モニタリング・サブアレイ及び予想サブアレイを含むマルチ−カーネルアレイの各タイムトライアルに対する演算サイクルは、帰属予想（モニタリング・サブアレイにおける予想）、予想学習（予想サブアレイにおける学習）、帰属学習（モニタリング・サブアレイにおける学習）である。このシークエンスはモニタリング・サブアレイが学習する前に現タイムトライアルに対してその帰属機能を実行するのを可能にし、その後、予想サブアレイが予想する前に現タイムトライアルから学習することを可能にする。モニタリング・サブアレイにおける学習は、予想サブアレイが、予想された出力値が入手可能になるのを速めるため、そのサイクルを完了するまで遅らされる。
モニタリング及び予想カーネルは、CIPを様々な物理的適用に適合させるためにグループに分けられる。例えば、マルチ−カーネルアレイの構造は、入力及び出力の空間的構造、入力及び出力の時間的構造、または、入力及び出力の空間的及び時間的構造に相当するかもしれない。特定の例として、空間的構造は画像処理の適用に適合され、時間的構造は商品の価格予想に適合され、あるいは、結合された空間的及び時間的構造はエネルギー要求予想適用に適合されてもよい。
概して、本発明は、現タイムトライアルの間及び１回かそれ以上の過去のタイムトライアルの間に受け取られた測定された入力値に基づいて、計算機で計算された出力値に対して応答する方法であると説明されている。測定された入力値は現タイムトライアルに対して受け取られ、入力特徴値のベクトルは測定された入力値に基づいて集められる。入力特徴値はマルチ−カーネル処理装置に供給される。処理装置の各カーネルは、入力特徴値の１つ以上を受け取り、その入力特徴値を用いていくつかの演算を実行するように作動できる。
特に、各カーネルは結合受け取った入力特徴値に基づいて一つ以上の出力特徴値を計算するための数学的関係を定義する連結スペックを引き出す。カーネルはまた、受け取った入力特徴値と計算された出力特徴値の間の回帰係数を示す１セットの連結重量を引き出す。カーネルはまた、受け取った入力特徴値に基づいて連結重量をアップデートするための数学的関係を定義する１セットの学習重量も引き出す。カーネルはその後、受け取った入力特徴値、連結重量、連結スペックに基づき出力特徴値を計算する。
カーネルはさらに、受け取った入力特徴値、連結重量、連結スペック、そして学習重量に基づき、アップデートされた連結重量も計算する。連結重量は、逆共分散行列の要素を定義し、アップデートされた連結重量を計算する段階は、逆共分散行列をアップデートすることを含むかもしれない。代わりに、アップデートされた連結重量を計算する段階は逆共分散行列に相当する共分散行列をアップデートして、それからそのアップデートされた共分散行列を反転させてもよい。
出力特徴値は、概して、現タイムトライアルに対して帰属された出力特徴値と将来のタイムトライアルに対する予想出力特徴値を含む。各カーネルは、その出力特徴値へのアクセスを供給する。このことが各カーネルによって計算された出力特徴値に基づいて計算された出力値のベクトルが集められるのを可能にする。逸脱操作あるいは制御操作のような操作は、こうして計算された出力値のベクトルに応じて実行される。
本発明の一面によれば、入力特徴値のベクトルは計測された入力値と入力特徴スペックに基づいて計算されてもよい。例えば入力特徴値は、測定された入力値の代数の結合、測定された入力値によって定義される関数に接近する多項式に対応する係数、測定された入力値によって定義される関数に対応する微分方程式に対応する係数、または測定された入力値により定義された関数に対応する周波数領域に対応する係数に基づいてもよい。同様に、出力値は出力特徴値及び出力特徴スペックに基づいて計算されてもよい。特に、出力値は測定された入力値に対応して実行される数学的演算の数学的反転を実行することによって計算されてもよい。
本発明の別の面によると、出力特徴値は、一つ以上の過去のタイムトライアルに対する入力特徴値に基づいて帰属された出力特徴値を含んでもよい。出力特徴値はまた、現タイムトライアルに対する入力特徴値に基づきモニタされた出力特徴値を含んでもよい。逸脱値はモニタされた出力特徴値から帰属された出力特徴値を引き算することによって計算される。逸脱値はそれから警報状況あるいは制御操作を行う必要があるのかを決定するために閾値と比較される。出力値は、一般に、モニタされた出力特徴値に基づく。
逸脱値の一つが、その値と関連するしきい値を超える場合には、例えば、警告状態を表示したり、又は関連するしきい値を超える逸脱値と関連した出力特性値に対する監視された出力特性値よりも、帰属された出力特性値に基づく出力特性値の基礎とする等の、逸脱した操作が行われてもよい。表示装置における計算された出力値の表示し、又は制御されたパラメーターを作動させて出力値を計算することにより示される状態を補うこと等の制御操作が、計算された出力値に対する応答において行われてもよい。
また、本発明の他の局面により、改良操作が行われてもよい。これらの改良操作は、有効でない入力及び出力特性値を削除し、重複した入力及び出力特性値を統合し、新規な入力及び出力特性値を特定し、複数のタイムトライアルに対して測定された入力値及び計算された出力値に基づいて特性値のスペックを再計算し、複数のタイムトライアルに対する値として測定された入力値及び計算された出力値に基づく学習ウェイト・スペックを再計算し、複数のタイムトライアルに対して測定された入力値及び計算された出力値に基づく結合スペックを再計算し、及びカーネルにおいて機能的に割り当てを含んでもよい。
マルチカーネルプロセッサーは、一又はそれ以上のモニタリング・サブアレイ及び一又はそれ以上の予測サブアレイを含んでもよい。最初に、モニタリング及び予測カーネルを共に含む構成に対して、モニタリング・サブアレイに対する入力された出力特性値は、一又はそれ以上の履歴タイムトライアルに対する入力特性値、結合ウェイト及び結合・スペックに基づいて計算される。次に、予測サブアレイに対してアップデートした結合ウェイトが、現タイムトライアルに対して受けとった入力特性値、結合ウェイト、結合・スペック、学習ウェイト及び帰属した出力特性値に基づいて計算される。次に、予測サブアレイに対する出力特性値が、一又はそれ以上の履歴タイムトライアルに対する入力特性値、アップデートされた結合ウェイト及び結合スペックに基づいて計算される。次に、予測サブアレイに対する結合した結合ウェイトが、受け取った入力特性値、結合ウェイト、結合スペック及び学習ウェイトに基づいて計算される。
マルチ−カーネルプロセッサの構成は、特に物理的応用に適用するようにしてもよい。例えば、マルチ−カーネルプロセッサは、一のモニタリングカーネル及び数個予測カーネルを各々が含む数個のサブアレイを含んでもよい。第一の構成において、マルチ−カーネルプロセッサは、入力値が測定される場所から出力値を予測するために連続した空間のフィールドに相当する空間専用カーネルのアレイを含む。この構成において、各カーネルは、隣接する測定された入力値の一のセットに基づいて、一の出力値が計算されるよう構成される。特に、マルチ−カーネルプロセッサの各カーネルは、映像におけるピクセルに相当してもよく、各測定された入力値は、測定された映像のピクセルの強さに相当してもよく、及び各計算された出力値は、計算された映像のピクセルの強さに相当してもよい。
第二の構成において、マルチ−カーネルプロセッサは、入力値が測定されたところから及び出力値を予測するために、時間ベースの表示に相当する時間専用のカーネルのアレイを含む。この構成において、各カーネルは、相互に排他的な、測定された入力値に基づく時間ベースの表示値を予測するために構成される。例えば、マルチ−カーネルプロセッサの各カーネルは、相互に排他的な、商品の値段表示に対する時間特異的な予測をするよう構成されてもよく、また、各カーネルは、測定された入力値に基づいて、相互排他的な時間特異的な価格予測に相当するものを予測するよう構成されてもよい。この場合には、測定された入力値は、流通及び他の商品に対する価格表に沿った商品価格表示を一般に含む。
第三の構成において、マルチ−カーネルプロセッサは、入力値が測定される場所から、及び出力値を予測するために、時間ベースの表示に相当する多数の時間特異的カーネルを各々含む複数のカーネルグループを含む。各カーネルグループは、測定された入力値に基づく相互排他的な時間ベースの表示の構成要素を予測するように各々が構成された数個の特有のカーネルを含む。時間専用カーネルのグループは、各カーネルグループは時間ベースの表示の構成要素を計算するために構成される時間専用のカーネルグループのアレイを定義する。例えば、時間ベースの表示は、電力供給表示の構成要素を計算するよう構成してもよく、各カーネルグループは、数個の電力配送地点に相当してもよく、また、測定された入力値は電力需要及び短期間の天気予報を含んでもよい。
本発明は、現タイムトライアルに対する測定された入力値の反復を受け取るよう、及び測定された入力値に基づく入力特性値のベクターをアセンブルするように構成された入力プロセッサを含むコンピューターシステムを提供する。このコンピューターシステムは、入力プロセッサに連結し及び入力特性値のベクターを受け取るよう構成されたマルチ−カーネルプロセッサをも含む。プロセッサの各カーネルは、一又はそれ以上の入力特性値を受け取るための作動をする。
カーネルはまた、受け付けた入力特性値に基づいて一又はそれ以上の出力特性値を計算するための数学的関係を定義する接続仕様を得るために機能する。カーネルはまた、得られた入力特性値と計算された出力特性値における回帰係数（リグレッション係数）を表す１セットの接続ウェイトを得るためにも機能する。カーネルは、また、受け付けた入力特性値に基づいて接続ウェイトを更新するための数学的関係を定義する学習ウェイトの一セットを得るためにも機能する。さらにカーネルは、受け付けた入力特性値、接続ウェイト、及び接続仕様に基づいて出力特性値を計算するためにも機能する。
カーネルは、また、受け付けた入力特性値、接続ウェイト、接続仕様、及び学習ウェイトに基づいて更新された接続ウェイトを計算するためにも機能する。接続ウェイトを更新するために、それぞれのカーネルは反転分散行列を更新してもよいし、或いはその代わりに、分散行列を更新した後にその更新された分散行列を反転させてもよい。カーネルはまた、計算された出力特性値に対するアクセスを提供する機能も果たす。
コンピュータシステムはまた、マルチカーネルアレイに結合され、計算された出力値ベクトルを、各々のカーネルによって計算された出力特性値に基づいてアセンブルするよう構成された出力プロセッサを有する。コンピュータシステムはまた、出力プロセッサに結合され、計算された出力値ベクトルに応答するよう構成された応答ユニットを有する。
コンピュータシステムはまた、複数のタイムトライアルの間に測定された入力値と計算された出力値とに基づいて学習ウェイトを再計算するよう構成されたマネジャーを有する。マネジャーはまた、一続きのタイムトライアルの間に測定された入力値と計算された出力値とに基づいて接続仕様を再計算するよう構成されることができる。マネジャーはまた、有効でない入力又は出力特性値を消去し、冗長な入力又は出力特性値を組み合わせ、新たに入力又は出力特性値を取り上げて、複数のタイムトライアルの間に測定された入力値と計算された出力値とに基づいて入力又は出力特性仕様を再計算し、カーネルにおける機能性（ファンクショナリティ）を再度割り当てるよう構成されることができる。
コンピュータシステムはまた、マルチカーネルアレイに結合され、マルチカーネルアレイから接続ウェイトを受け付け、その接続ウェイトを記憶し、接続ウェイトをマルチカーネルアレイに提供するよう働く、収得パラメータメモリを有することができる。コンピュータシステムの応答ユニットは、計算された出力値を表現したものを表示デバイスに表示し、”アラーム”の状態表示を行い、計算された出力値によって示された状態の補償を行うために制御パラメータを始動させるよう働くことができる。
以下に示す、本発明の例証的実施例、図面並びにクレームの記述によって、本発明が従来のニューラルネットワークシステムの問題点を改善し、これまで述べたような優位性を成就することが明らかとなるであろう。
【図面の簡単な説明】
図１は、本発明の１実施例に従った同時学習情報プロセッサの機能ブロック図である。
図２は、同時学習情報プロセッサのためのサブアレイ構造を例示している。
図３は、同時学習情報プロセッサと思考生体（thinking organism）における情報プロセスとの間のアナロジーを説明するものである。
図４Ａは、入力と出力の空間配置に応じて組織されたカーネルを有する、同時学習情報プロセッサに用いるマルチカーネルアレイの一つのカーネルを説明した図である。
図４Ｂは、入力と出力の空間配置に応じて組織されたカーネルを有する、同時学習情報プロセッサに用いるマルチカーネルアレイを説明した図である。
図５は、入力と出力の一時的配置に応じて組織されたカーネルを有する、同時学習情報プロセッサに用いるマルチカーネルアレイを説明した図である。
図６は、入力と出力の空間／一時の混合的配置に応じて組織されたカーネルを有する、同時学習情報プロセッサに用いるマルチカーネルアレイを説明した図である。
図７Ａは、同時学習情報プロセッサに用いる、典型的な学習ウェイトスケジュールを説明した図である。
図７Ｂは、図７Ａの学習ウェイトスケジュールの場合と比較して、より最近のタイムトライアルにより積極的にウェイト付けしている、同時学習情報プロセッサに用いる一つの学習ウェイトスケジュールを説明した図である。
図７Ｃは、繰り返し発生する特定タイムトライアルにのみ基づいて学習が行われる、同時学習情報プロセッサに用いる一つの学習ウェイトスケジュールを説明した図である。
図７Ｄは、より最近のタイムトライアルがより積極的にウェイト付けされるよう改良を加えた、図７Ｃの学習ウェイトスケジュールを説明した図である。
図８Ａは、同時学習情報プロセッサのトランスデューサにおいて適用される、典型的な入力特性関数を示した図である。
図８Ｂは、電力需要測定と天気予報データとから電力需要予測を計算するよう構成された同時学習情報プロセッサを説明した図である。
図９は、同時学習情報プロセッサの動作を示した論理フローダイアグラムである。
図１０は、同時学習情報プロセッサの、モニタリング、予測（フォーキャスト）、並びに学習（ラーニング）ルーチンを示した論理フローダイアグラムである。
図１１は、同時学習情報プロセッサの、入力／出力精密化（リファインメント）ルーチンを示した論理フローダイアグラムである。
望ましい実施例の詳細な説明
本発明は、専用ハードウェア計算装置又は従来のシークエンス処理計算機において具現化されるであろう並列学習情報処理装置（CIP）である。専用ハードウェア具体例としては、非常に高速の処理が要求されるアプリケーションに最も適合しており、一方、ソフトウェア具体例としては、非常に遅い処理速度に耐えるであろうソフトウェアに最も適合している。一般に、ソフトウェア具体例は、既製品であるコンピュータ装置上で実行するので、具備するのに非常に安価なものになるであろう。他方、ハードウェアは、特別に作られた専用ハードウェア計算装置を必要とする。CIP構造は、入力−出力関係の再設定を許すマネージャーとトランスデューサーを含むから、１つのハードウェア具体例は、広い範囲の異なるタスクを果たすよう設定されるかもしれない。このため、ソフトウェアとハードウェアの両具体例は、マルチ−パーパス（多目的）プロセッサーとして、そして、多くの点で一般目的プロセッサーとして用いられることができる。
ソフトウェアの具体例は、望ましくは、CIPの個別コンポーネントが個別のオブジェクトにおいてプログラムされるようにオブジェクト指向アーキテクチャーに設定される。それぞれのオブジェクトは、オブジェクトに関するデータのやり取りや交換のためのプロトコルを定義する予め決められたインターフェースを含む。個別のオブジェクトにおいてソフトウェア具体例を設定することによって、それぞれのオブジェクトは、ハードウェア類似体において、対応する個別の物理的要素又は一まとまりの要素をもつことができる。このソフトウェアとハードウェアの具体例間の関係から、ソフトウェアのモデルを開発し試験することが容易になり、そして一旦完成すれば、ハードウェアの具体例の大量生産が容易になる。それにもかかわらず、本発明は、他のタイプのオブジェクト指向アーキテクチャーに具現化でき、オブジェクト指向プログラミング以外のソフトウェア技術をも用いることができることは理解されるべきである。
CIPの主要なコンポーネントは、入力−出力トランスデューサー、マルチ−カーネル・ニューラル・ネットワーク・アレイ（配列）、マネージャー、応答ユニット、そして、ユーザー・インターフェースである。特定のタイム・トライアルのための処理シークエンスは、トランスデューサーが測定入力値を受け取った時に始まる。トランスデューサーは、マネージャーによって供給される入力特徴値のスペックに応じて、測定入力値を入力特徴値に変換する入力プロセッサーを含む。マルチ−カーネル・アレイは、入力特徴値、マネージャーによって供給される接続スペック、そして、学習パラメータ・メモリにストアされる回帰係数に基づいて、出力特徴値を計算する。出力特徴値は、トランスデューサーにリターン（返）されるが、そのトランスデューサーは、マネージャーによって供給される出力特徴スペックに従って、出力特徴値を計算された出力値へと変換する出力プロセッサーを含む。計算された出力値は、そこで、多様なモニタリングや予想（フォキャスティング）を実行し、出力値に応じてオペレーションをコントロールするであろう応答ユニットへと送られる。
マルチ−カーネル・アレイの各カーネルは、各タイムトライアルに対するオペレーションの予測とオペレーションの学習を実行する。アレイは典型的に、１又はそれ以上のモニタリング・カーネル―モニタリング・サブアレイ（配列）と呼ばれるが―と１又はそれ以上の予想カーネル―予想サブアレイ（配列）と呼ばれるが―とを含む。モニタリング・サブアレイは、入力特徴値を帰属させ、帰属入力特徴値に基づいて逸脱値を計算する。この場合、帰属とは、最近の使った特徴メモリにストアされたヒストリ（履歴）データに基づいて入力特徴値を予想することを意味する。逸脱値は、そこで、帰属された入力特徴値と現タイムトライアルに対する測定入力値に基づく入力特徴値との差として計算される。逸脱値は、アラーム状態を表示する又は後に続く計算における測定特徴値よりもむしろ帰属された特徴値を使用する等のような逸脱オペレーションをトリガーする許容値（閾値）と比べられる。後に続く計算において帰属特徴値を使用することは、測定入力値を失ったり破壊した時に、特に有用である。
予想サブアレイは、将来のタイムトライアルに対する出力特徴値を予言する。予想サブアレイは、将来のタイムトライアルにのみ関係するので、将来のタイムトライアルに対する出力データを予言する前に現在のタイムトライアルに対する入力値から学習するように設定されるであろう。モニタリング・サブアレイは、他方、現在のタイムトライアルに対する値を帰属することにより予言し、そして、現在のタイムトライアルに対する入力値から学習する。従って、各タイムトライアル処理に対するオペレーティング・サイクルは、帰属予言（モニタリング・サブアレイにおける予言）、予想学習（予想サブアレイにおける学習）、予想予言（予想サブアレイにおける予言）そして帰属学習（モニタリング・サブアレイにおける学習）である。このシークエンスは、モニタリング・サブアレイに学習の前に現在のタイムトライアルに対するその帰属機能を実行することを許し、そして、予想サブアレイにその予言機能を実行する前に現在のタイムトライアルから学習することを許す。モニタリング・サブアレイに対する学習は、予想サブアレイが出力値の有効性を早めるサイクルを完成した後まで、遅れる。
CIPは、精練オペレーションが指示されるまで、多数のタイムトライアルに対する定常状態モードにおける先行するオペレーティング・サイクルを繰り返す。何千ものオペレーション・サイクルが各精練オペレーション間において典型的に繰返される。精練オペレーションの間、マネージャーは、しばしばユーザー・インターフェースを通して受取られるパラメータや他の指示に応答して、多くの状態にCIPを再設定するかもしれない。殊に、マネージャーは、記述的な統計を出力し、効果的でない特徴値を削除し、重複特徴値を統合し、新しい特徴値を指定し、マルチ−カーネル・アレイに対する接続スペックを再定義し、トランスデューサー入力プロセッサーに対する入力特徴スペックを再定義し、トランスデューサー出力プロセッサーに対する出力特徴スペックを再定義し、接続ウェイトをアップデイトするための学習ウェイト・スペックを再定義し、トランスデューサー機能性を再設定し、そして、マルチ−カーネル・アレイの計算キャパシティを再設定してもよい。精練オペレーションは、測定パフォーマンス、ユーザー指示、及び、他の要素に応答して、CIPにそれ自身を再設定する能力を与える。
図１と以下の論議は、本発明が組み込まれるかもしれない適当な計算アーキテクチャーの一般的説明を提供することを意図している。本発明は、専用ハードウェア・ニューラル・ネットワーク・コンピュータのコンテキスト又はシークエンス処理コンピュータ上で走る類似のオブジェクト指向ソフトウェアにおいて説明されるであろう。即ち、以下の説明は、専用ハードウェア・ニューラル・ネットワーク及び類似オブジェクト指向ソフトウェア・プログラムの両方に適用される。当業者は、しかしながら、別のタイプの計算システムとソフトウェア・アーキテクチャーにもまた本発明は組み込まれるかもしれないと気が付くであろう。更に、本発明は、タスクがコミュニケーション・ネットワークを通してリンクされる遠隔プロセッシング装置によって実行されるディストリビューテッド・コンピューティング環境においても実施されるかもしれない。インターネットのようなディストリビューテッド・コンピューティング環境において、プログラム・モジュールは、ローカル及び遠隔メモリ・ストーレッジ（保存）装置の両方に置くことができる。
本発明の典型的な具体例は、添付された図面に関して以下のように説明される。この説明において、幾つかの図面を通して、同様の要素が同様の要素番号によって示される。図1は、CIP１０の機能的ブロックダイアグラムである。主要なCIP１０のコンポーネントは、入力−出力トランスデューサー１２、マルチ−カーネル・ニューラル・ネットワーク・アレイ１４、マネージャー１６、応答ユニット１８、そして、ユーザー・インターフェースである。マルチ−カーネル・ニューラル・ネットワーク・アレイ１４は、１又はそれ以上のモニタリング・カーネル―モニタリング・サブアレイ２２と呼ばれるが―と１又はそれ以上の予想カーネル―予想サブアレイ２４と呼ばれるが―とを含む。モニタリング・サブアレイ２２と予想サブアレイ２４はそれぞれ関連された学習パラメータ・メモリ２６ａと２６ｂを持つ。実際、図３に最もよく示されているように、各サブアレイの各カーネルは、望ましくは関連された学習パラメータ・メモリを持つ。
CIP１０は、一連のタイムトライアルの各々の間、測定入力値３０の繰り返しを受け取る。特定のタイムトライアルに対する処理シークエンスは、トランスデューサー１２が測定入力値３０の繰り返しを受取る時に始まる。各タイムトライアル中に受取られた測定入力値は、多数のタイムトライアルに対する２次元配列を形成する１次元ベクトルとみなされうる。測定入力値３０は、CIP１０が設定されるための多様な物理的アプリケーションのどれからをも値を表す。例えば、測定入力値３０は、ビデオ・イメージのピクセルの強度、ストレイン・ゲージ又はタンク・レベルの読取り、情報を送るデータ・パケット、物価や他の経済指数、電力要求と天気予報データ、などを表すことができる。
トランスデューサー１２は、マネージャー１６によって供給される入力特徴スペック３５に従って、測定入力値を入力特徴値３４に変換する入力プロセッサー３２を含む。入力特徴値３４は、シークエンス処理において測定入力値を表すが、マルチ−カーネル・アレイ１４において独立した変数として用いられる。最も簡単なケースでは、入力プロセッサー３２は、測定入力値３０をベクトルへと単にアセンブルし、アセンブルしたベクトルをマルチ−カーネル・アレイ１４に渡す。
より複雑なケースでは、入力プロセッサー３２は、入力特徴値３４を計算するために測定入力値３０を数学的に操作する。これらの計算は、マネージャー１６によって供給される入力特徴スペック３５に従って実行される。例えば、入力特徴値３４は、測定入力値３０、測定入力値によって定義される関数の多項近似に対応する係数、測定入力値によって定義される関数に対応する微分方程式に対応する係数、測定入力値によって定義される関数に対応する周波数領域関数に対応する係数、などの代数的組合わせに基づいてもよい。他のタイプの入力特徴スペックは、CIPが異なるタイプの特定の物理的アプリケーションに対して設定されるというように、当業者には明白になるかもしれない。
測定入力値３０のように、特定のタイムトライアルに対する入力特徴値３４は、１次元ベクトルとみなされるかもしれない。入力プロセッサー１２は、最近の特徴メモリ３６において、一連のヒストリ（履歴）タイムトライアルに対する入力特徴値３４の２次元配列をストアする。２者択一的に、最近の特徴メモリ３６は、一連のヒストリ（履歴）タイムトライアルに対する入力値３０の２次元配列をストアするかもしれない。入力プロセッサー１２は、入力特徴値３４を計算する時に、入力特徴スペック３５を適用するために最近の特徴メモリ３６においてヒストリ（履歴）データを用いるかもしれない。このようなタイプの入力特徴値計算の例は、図８A-Bに関係して以下に説明する。
入力プロセッサー１２は、また、失った又は壊れた入力測定を検出するために最近の特徴メモリ３６におけるヒストリ（履歴）データをも用いるかもしれない。それに対して、入力プロセッサー１２は、壊れた入力測定を無視し、現在のタイムトライアルに対してある測定が失われつつあるとカーネル・アレイ１４に告げる値を計算するかもしれない。例えば、多数の測定入力値３０が合計され１つの入力特徴値３４になるとするならば、入力プロセッサー１２は、入力特徴値に含まれる有効測定の数を示す量子カウントを計算するかもしれない。２者択一的に、入力プロセッサー１２は、失われる測定入力値３０の影響を取り去るために入力特徴値３４を規格化するかもしれない。入力プロセッサー１２は、そこで、規格化された入力特徴値３４をカーネル・アレイ１４に渡すかもしれない。
入力プロセッサー１２は、入力特徴値３４をマルチ−カーネル・アレイ１４に伝達する。ハードウェアの具体例においては、入力特徴値は、並列処理ニューラル・ネットワークとして作動するマルチ−カーネル・アレイ１４に同時に伝達されるように、１つの分離コンダクターが、各入力特徴値３４に対して与えられる。マルチ−カーネル・アレイ１４は、学習パラメータ・メモリ２６にストアされる接続ウェイト４０と入力特徴値３４に基づいて出力特徴値３８が計算される。マルチ−カーネル・アレイ１４の各カーネルの入力−出力設定は、マネージャー１６によって時々変えられるかもしれないので、マルチ−カーネル・アレイ１４は、マネージャー１６によって供給される接続スペック４２を受取る。接続スペック４２は、典型的に、各カーネルに対する入力−出力の数を示し、また、各カーネルに対してどの入力特徴値３４が供給されるかをも決定するかもしれない。従って、ハードウェアの具体例において、接続スペック４２は、マルチ−カーネル・アレイ１４の種々のカーネルへと入力特徴値３４の送信をコントロールするロジック・ゲートを開けるかもしれない。
前記接続ウエイト４０は、共分散マトリックスに基づく学習された戻り係数を表現し、前記共分散マトリックスは、従属変数として取り扱われる出力特性値３８を、独立変数として取り扱われる前記入力特性値３４に関連づける。言い換えれば、前記多重カーネルアレイ１４は、各出力値３８を、前記入力特性値３４の荷重された和として計算し、そこにおいて前記接続ウエイト４０は、前記共分散マトリックスの要素である。前記接続ウエイト４０は、ヒストリカル・タイムトライアルについて、前記入力特性値３４と前記出力特性値３８へ適用される後戻り解析を介して学習される。接続ウエイト学習を出力特性値予測と同時に行うために、各タイムトライアルの間に、前記接続ウエイト４０は、前記学習パラメータメモリ２６から呼び出され、出力特性値を予測するために使用され、前記タイムトライアルの間に受信された新しい情報について更新される。前記更新された接続ウエイト４０は、前記学習パラメータメモリに再び格納される。
より詳細には、前記多重カーネルアレイ４０の各々のカーネルは、前記共分散マトリックスの逆を、前記入力特性値３４へ掛け合わせ、前記各々の出力特性値３８を計算する。前記カーネルは、この操作を、前記共分散マトリックスを更新し且つしかる後前記更新された共分散マトリックスを逆にすることにより行う。この場合、前記学習パラメータメモリ２６に格納された前記接続ウエイト４０は、前記共分散マトリックスの要素を逆転することに基づく。しかし前記共分散マトリックスを逆転することは、コンピューター的には厳しい操作であり、避けるのが好ましい。その代わり、前記カーネルは、前記逆共分散マトリックスを直接更新する。この場合、前記学習パラメータメモリ２６に格納される接続ウエイト４０は、前記逆共分散マトリックスの要素に直接基づく。マトリックス逆転を実行するために要求されるハードウェア接続が回避される故に、前記共分散マトリックスではなく、前記逆共分散マトリックスを保持することは、前記カーネル操作のスピードを著しく増加させ、かつ前記カーネルのハードウェア実施形態の物理的構成を簡単化する。
したがって、前記マルチカーネルアレイ１４の各カーネルは、逆共分散マトリックスを用いて、各タイムトライアルについて予想-学習サイクルで好適に動作し、学習後戻り（復帰）係数を計算する。前記逆共分散マトリックスを更新するために形成された単一カーネルのハードウェア実施形態の好適な構造及び、前記後戻り係数を計算するための前記逆共分散マトリックスの使用及び、前記構成を支援するための数学的導出は、以下の共有される米国特許に記載される。前記米国特許は、１９９４年１１月２日に出願された、発明者ロバート・Ｊ・ジョナローネの「学習及び実行情報同時処理システム」と題される。この特許は、米国特許出願第０８／３３３，２０４として現在継続しているが、ここに参照により取り入れられる。
前記マルチカーネルアレイ１４は、種々のタイプのサブアレイに組織され、種々のタイプの物理的応用へ前記ＣＩＰ１０を適合させる。特定のサブアレイ構造の例が図４乃至６を参照して説明される。他の特定の構造は、当業者が、将来において種々の物理的応用に対して前記ＣＩＰマシンを設計する際に、当該当業者には明らかとなるであろう。種々のサブアレイの各カーネルの動作は、モニタカーネルの動作が、前記予測カーネルの動作と若干異なることを除いて同様である。この相違についての記載を容易にするために、前記多重カーネルアレイ１４は、モニタサブアレイ２２及び予測サブアレイ２４をもって図１において示される。
各タイムトライアルの間、前記モニタサブアレイ２２は、現在タイムトライアルについて前記入力及び／又は出力特性値３８を付属せしめる。これらの付属された特性値は必要に応じて、前記現在タイムトライアルについて逸脱値を計算し且つ失われた或いは誤差許容値の範囲外の特性値３８について付属された特性値を供給するために使用される。前記予測サブアレイ２４は、将来タイムトライアルについての出力特性値を予測する。前記モニタサブアレイ２２は、前記現在タイムトライアルについて前記入力及び又は出力特性値３８を付属せしめる。したがって、それが前記現在タイムトライアルについて前記入力及び又は出力特性値３８を付属せしめる前に前記モニタサブアレイ２２が学習した（すなわち、各々の接続ウエイトを更新した）場合には、その目的は無視される。このため、前記モニタサブアレイ２２は、各タイムトライアルについて予想-学習サイクルで動作する。一方、前記予測サブアレイ２４は、将来タイムトライアルについて前記出力特性値３８を予測する。したがって前記予測サブアレイ２４は、各タイムトライアルについて学習-予測サイクルで動作する。というのは、それは、予想する前に、現在タイムトライアルから学習することにより利益を受るからである。
更に、前記モニタサブアレイ２２は、好適には、前記予測サブアレイ２４が学習する前に予測する。前記予測サブアレイ２４は、前記付属された出力特性値３８ではなく現在タイムトライアルについての有効な測定データに基づく出力特性値３８を用いて学習するのが好ましい。しかし、前記モニタサブアレイ２２は、データの欠損あるいは間違いを検出することがある。現在タイムトライアルについての前記欠損あるいは間違いデータに対応する前記入力及び又は出力特性値３８のために、前記予測サブアレイ２４は、前記無効な測定データに基づく前記入力及び又は出力特性値３８ではなく、前記モニタサブアレイ２２により計算された前記付属入力及び又は出力特性値３８を用いて学習するのが望ましい。前記付属入力及び又は出力特性値３８は、前記モニタサブアレイ２２により計算される。したがって、前記予測サブアレイ２４は、好適には、前記モニタサブアレイ２２が好適に予想した後学習する。
前記予測サブアレイ２４により計算される前記予測出力特性値２４の利用可能性をスピードアップするために、前記モニタサブアレイ２２についての予測-学習サイクルの学習フェーズは、前記予測サブアレイ２２についての学習-予測サイクルの最後まで遅延され得る。すなわち、前記モニタサブアレイ２２は、好適には、前記予測サブアレイ２４が現在タイムトライアルについてのその学習-予測サイクルを完了した後学習する。前記各タイムトライアルについての結果としての動作サイクルは、付属予測（前記モニタサブアレイ２２における予測フェーズ９）及び予測学習（前記予測サブアレイ２４における学習フェーズ）及び、予測予想（前記予測サブアレイ２４における予想フェーズ）及び、付属学習（前記モニタサブアレイ２２における学習フェーズ）である。
前記出力特性値３８は、前記トランスデューサ１２の出力プロセッサ４４へ戻され、前記トランスデューサ１２の出力プロセッサ４４は、前記出力特性値を、前記マネジャ１６により供給される出力特性明細４９に応じて計算出力値４６へ変換する。前記出力プロセッサ４４は、広範な種々の動作を行うが、少なくとも前記動作のいくつかは典型的には前記入力プロセッサ３２により実行される数学的動作の逆である。このことは、前記計算された出力値４６の少なくともいくつかが前記測定された入力値３０のいくつかに対応することを可能とする。予測された値を測定された値と比較することは、前記ＣＩＰ１０がその予測動作の精度を測定することを可能とする。例えば、天気予報データに基づいて電気要求を予想するように形成されたＣＩＰにおいては、前記測定入力値３０は、計量化された電気要求データ及び天気予測データを含む。この場合、計算された出力値４６は、予測された電気要求データを含む。このことは、現在タイムトライアルについて計算された予測電気要求データが、将来タイムトライアルの間に受信された対応する計量化された電気要求データと比較されることを可能とする。前記ＣＩＰは、したがってその電気要求予測の精度を検出するように構成される。
次に、計算された出力値４６が、応答ユニット１８に伝達される。応答ユニット１８は、出力値に応じて、モニター、予測、及び制御操作などの種々のことを実行する。例えば、応答ユニット１８は、計算された出力値４６を表示装置に表示することが一般的である。出力値に基づいて任意の具体的な行為がとられる前に、さらにユーザーインタープリテーションがなされることが適切であるシステムにとっては、単に計算された出力値４６を表示することで十分であろう。例えば、商品の価格目録を予測するように適合されたＣＩＰでは、商人は、出力値と共に、投資に利用できる総額のような、ＣＩＰで提供されたものでない他の関連した情報を、投資の決断をする前に、参照することを好むであろう。
他の状況では、応答ユニット１８が、計算された出力値４６に応じて自動的に処理を行うことであってもよい。応答ユニット１８は、例えば、警報状態を示すなど、予め定められた許容範囲の外にある計算された出力値４６に応じて逸脱状態処理を自動的に行うことであってもよい。ＣＩＰ１０は、許容範囲外にある、計測された入力値３０や入力特性値３４のような他の値に応じて他の逸脱状態処理を自動的に行うことであってもよい。特に、ＣＩＰ１０は、測定され又は後続の計算の中で失われた無効なデータに基づいた特性値よりも、帰属特性値を用いて、許容範囲外の入力値に応答することであってもよい。
応答ユニット１８は、計算された出力値４６に応答して自動的に制御操作を行うように適合されていることであってもよい。もちろん、この特定の自動制御操作は、ＣＩＰ１０が適合された物理的応用例に依存することになる。町の水道システムでは、水供給バルブは、タンクの予測された水面高に応答して自動的に作動されることになる。引っ張り試験装置では、張力付与機が、予測された張力ゲージの値に応答して逆転される。電力需要予測システムでは、発電機が電力需要の予測値に応答してラインに接続される。他の物理的応用例用に適合されたＣＩＰシステムにとって適当な他の自動制御操作は、将来、当業者が異なる物理的応用例用にＣＩＰマシーンを設計するときに、当業者にとって自明となるであろう。
ＣＩＰ１０は、多数回タイムトライアル用の定常状態モードでは、改良操作の指示があるまで、上記した学習−予測サイクルを繰り返す。改良操作間では、一般的に、数千回の動作サイクルが繰り返される。改良操作中は、マネージャー１６は、ＣＩＰ１０をいろいろな方法で再適合させるであろうし、再適合は、多くの場合、ユーザーインターフェイス２０を介して受理されたパラメータ及び他の指令に応じて行われるであろう。ユーザーを補助するために、マネージャー１６は、ユーザーインターフェイス２０に記述的統計や他の情報を出力し、また、ユーザーインターフェイス２０によって実行されるメニュー駆動型ユーティリティを介して、予め定められたパラメータ用のユーザー定義可能な値を受理する。マネージャー１６は、ユーザーインターフェイス２０から受理した情報をマネージャー１６の他の要素と結びつけるコーディネイター４８を有している。
マネージャー１６によって実行される改良操作は、ユーザーによって定義されることであってもよく、マネージャー１６によって自動的に計算されることであってもよい。改良操作は、無効である特性値を削除すること、余分な特性値を結合すること、及び新しい特性値を特定することを一般に含む。これらの操作は、結合重み４０を分析する結合制御部５０で実行される。ゼロに近い結合重みは、無効である特性値を表し、このような特性値は、結合制御部５０によって削除されるであろう。同じ値に近い結合重みは、余分な特性値を示す。余分な特性値は、結合制御部５０が、余分な値の平均値となっている単一の特性値に置き換えることが一般的である。無効な特性値が削除され、かつ、余分な特性値が結合されると、結合制御部５０は、カーネル配列１４において利用できる特性値キャパシティ及びトランスデューサ１２で利用できる入力−出力キャパシティを作る。故に、結合制御部５０は、このフリードアップキャパシティのために、新しい、測定された入力値、特性値、及び出力値を自動的に選択するように適合されていてもよい。
これらの新しい、測定された入力値、特性値、及び出力値は、ユーザーインターフェイス２０を介して提供された予め定められたリストから選択されるのが一般的である。このような方法で、ＣＩＰ１０は、多数の入力−出力の組合せを規則正しく評価し、予測される値が小さいものを削除し、予測される値が高いものを維持するように適合されることができる。従って、時間に従い、ＣＩＰ１０は、候補である入力の大きな母集団の中から、所定の物理的応用例に関する最も有用な測定された入力を割り出すことができる。これは、候補となる入力を数多く入手できるが、どの入力値が予測値となるかは分からないという状況下において強力な改良技術である。例えば、このタイプの改良技術は、多数の経済的統計の中を選別し、特定の商品の価格を予測するのに最も有益な統計を割り出すのに有効であろう。この場合、ＣＩＰ１０は、経済的統計及び特定の商品の価格の間で、直感的に明白ではない共分散関係を割り出すことができる。
結合制御部５０は、結合重みが小さすぎたり大きすぎたりして、その結果、特定の数値又は計算が不安定になったときにマルチ−カーネル配列１４に生じうる数値的問題を処理するために「技術的訂正」といわれる操作をも実行する。結合制御部５０は、不安定な状態となる傾向がある結合重みを割り出し、かつ、その値を、一般に、予め定められた最小又は最大値で計算された結合重みで置き換えることにより制限するように適合されている。
マネージャー１６は、特性機能制御部５２をも有する。特性機能制御部５２は、トランスデューサ１２の入力プロセッサ３２に入力特性スペック３５を与え、出力プロセッサ４４に出力特性スペック４９を与える。マネージャー１６は、学習重み制御部５４をも有する。学習重み制御部５４は、結合重み４０を更新するための学習重み計画５５を提供する。学習重み計画のいくつかの例が、図７Ａ−Ｄとともに以下に説明されている。マネージャー１６は、実行部５６をも有する。実行部５６は、ＣＩＰ１０の種々の構成部分の動作のタイミングを制御する。改良操作は自動的なものであってよいのにも拘わらず、ＣＩＰ１０が、ユーザーインターフェイス２０を介して技術者が改良操作を制御することを許容するように適合されていることであってもよい。ユーザーインターフェイス２０により可能となる、改良操作を制御することの自由度は、ユーザーの要求に従って変更されることであってもよい。
図２はＣＩＰ１０の典型的なサブアレイ構造２００を示す。この構造はカーネル「Ａ」２０２ａからカーネル「Ｎ」２０２ｎによって表される多数のカーネルを含み、その各々は学習パラメータ・メモリ「Ａ」２０４ａから学習パラメータ・メモリ「Ｎ」２０４ｎによって表される関連学習パラメータ・メモリを有する。このサブアレイ構造は、個々のカーネル及びその関連学習パラメータ・メモリが同じチップ上に置かれているハードウェア実施形態において接続重みづけ交換を容易にする。ソフトウェア実施形態は、好ましくは対応するハードウェア実施形態のオブジェクト指向相似型として構成されるから、サブアレイ構造２００も本発明のソフトウェア実施形態とすることが好ましい。しかし、他の構成には他のサブアレイ構造が使用できるかも知れない。
図３はＣＩＰ１０と思考有機体の情報プロセス３００との間の類推を示す。この類推は、ＣＩＰ１０が思考有機体の情報プロセスと全く同じように機能することを主張するものではない。むしろ、この類推はＣＰＩ構造の理解を助ける幾つかの対比を示すことを意図されている。図１及び図３を参照すると、ＣＩＰ１０の測定された入力値３０は思考有機体の感知入力３０２になぞらえることができる。ＣＩＰ１０の計算された出力値３０は、思考有機体の認識応答３０４になぞらえることができる。ＣＩＰ１０の近時特徴メモリ３６は思考有機体の短期メモリになぞらえることができる。ＣＩＰ１０の変換器１２は思考有機体の感知プロセスになぞらえることができる。カーネル・アレイ１４は思考有機体の自律プロセスになぞらえることができる。学習パラメータ・メモリ２６は思考有機体の長期メモリになぞらえることができる。更に、マネージャ１６は思考有機体の大脳プロセスになぞらえることができる。
この類推において、ＣＩＰ１０の定常学習予測サイクルは、思考有機体の覚醒、認識機能になぞらえることができる。他方、ＣＩＰ１０の洗練動作は睡眠中に生じる思考有機体の機能になぞらえることができる。覚醒した思考有機体と同じように、ＣＩＰ１０は、入力を受け取り応答するとき、同時に学習及び予測を行うことができる。また、休眠中の思考有機体と同じように、ＣＩＰ１０は、ヒストリカルな経験の離散的単位に応答して、その情報プロセスを定期的に洗練する。従って、思考有機体と同じように、ＣＩＰ１０のライフ・サイクルは「覚醒した」定常期間の次に「睡眠中の」洗練期間が続く反復サイクルである。
図４Ａは、カーネルが入力及び出力の空間構成に対応するように組織化されるマルチカーネル・アレイのカーネル構造４００を示す。このタイプの構造は、強度情報が欠落又は破壊されたピクセルの強度を転嫁するように構成された画像処理システムに有用であろう。例えば、画像のビデオ・シーケンスにおいて、画像処理システムは、欠落又は破壊されたピクセル・データの値を転嫁するために、一連のタイム・トライアル、この場合はビデオ・フレームにわたって近隣ピクセルの有効データを使用する。
カーネル構造４００は、図４Ａの中央に置かれる個々のピクセル４０２へ専用される。ピクセル４０４ａ〜ｈはラスタ像における８つの近隣ピクセルを表す。各々の近隣ピクセル４０４ａ〜ｈの強度は、カーネル４０６へ入力として与えられる。カーネル４０６の出力は、中央ピクセル４０２の強度を駆動するめたに使用することができる。このようにして、カーネル４０６は、近隣ピクセル４０４ａ〜ｈの強度に基づいてピクセル４０２の強度を転嫁するために使用される。これによって、カーネル４０６は、測定された強度データが欠落又は破壊されたとき、中央ピクセル４０２の強度を転嫁することができる。
図４Ｂは、カーネル構造４００ａ〜ｎが入力及び出力の空間構成に対応するように組織化されるマルチカーネル処理アレイ４０８を示す。各々のカーネル構造４００ａ〜ｎは、図４Ａに関して説明されたカーネル構造４００と同じように構成される。従って、マルチカーネル・アレイ４０８は、下層にあるラスタ像のピクセル構造に対応するカーネル構造４００ａ〜ｎの格子を含む。理解すべきは、図を明瞭にするために、図４Ｂはラスタ像のピクセルの半分についてのみカーネル構造４００を示すことである。
図５は、カーネルが入力及び出力の時間構成に対応するように組織化されるマルチカーネル処理アレイ５００を示す。このタイプの構造は、商品のヒストリカルな価格傾向に基づいて商品の価格を予測するように構成される商品価格予測システムに有用である。商品のヒストリカルな価格傾向は図５で示される唯一の測定入力であるが、他の商品のインデックス、通貨、及び他のタイプの情報のような他の入力も又含ませることができる。
マルチカーネル処理アレイ５００は１つの監視カーネル５０２及び幾つかの予測カーネル５０４ａ〜ｎを含み、これらの各々は相互に排他的な将来時点のための商品価格インデックス５０６を計算することに専用される。例えば、カレント・タイム・トライアル「ｔ」の間に、監視カーネル５０２はカレント・タイム・トライアルの商品価格インデックス５０６を転嫁し、カーネル５０４ａは将来のカレント・タイム・トライアル「ｔ＋１」の商品価格インデックスを推定し、カーネル５０４ｂは他の将来のカレント・タイム・トライアル「ｔ＋２」の商品価格インデックスを推定し、以下同様である。測定値は中空ドットとして示され、予測値は実ドットとして示される。
更に、監視カーネル５０２は、カレント・タイム・トライアルのために転嫁値５１２の許容値５１０ａ〜ｂを計算する。許容値５１０ａ〜ｂは典型的には転嫁値５１２からの１つまたは２つの標準偏差として計算される。更に、監視カーネル５０２は、カレント・タイム・トライアルの間に、商品価格インデックスについて転嫁値５１２と測定値５１４の間の差として偏差値５１６を計算することができる。偏差値５１６は、測定値５１４の欠落又は破壊が最も起こりやすい時間を決定するために使用することができる。測定値５１４が欠落又は破壊されるこの場合は、カレント・タイム・トライアルの間に予測カーネル５０４ａ〜ｎによって実行される計算のような後続の計算で、転嫁値５１２を使用することができる。更に、転嫁値５１２は後続のタイム・トライアルで監視カーネル５０２及び予測カーネル５０４ａ〜ｎによって使用されてよい。
図６は、カーネルが入力及び出力の空間及び時間結合構成に対応するように組織化されるマルチカーネル処理アレイ６００を示す。このタイプの構造は、電力需要の現在のレベル、現在の気象データ、及び気象予報データに基づいて電力需要を予測するように構成される電力予測システムに有用である。マルチカーネル処理アレイ６００は一群のサブアレイ６０２ａ〜ｎを含み、各サブアレイは１つの監視カーネル及び幾つかの予測カーネルを含む。このように、各サブアレイは、図５を参照して前に説明したマルチカーネル処理アレイ５００と構造において同じである。各々のサブアレイ６０２ａ〜ｎは、測定された電力需要データ、測定された気象データ、及び関連地域のための気象予報データに基づいて、典型的な配電サブステーション又は給電地点によってサービスされるエリアのような地域のために電力需要予測を生成する。
更に、サブアレイ６０２ａ〜ｎは、図４Ａ〜図４Ｂを参照して説明されたカーネル・アレイ４０８に類似した空間構成に組織化される。しかし、マルチカーネル処理アレイ６００については、各サブアレイは特定の地域をカバーする。従って、この構造は、１つのサブアレイが各々の配電サブステーション又は給電地点に割り当てられた、全電力サービス領域のための電力需要予測システムを構成するために使用することができる。その場合、サブアレイ６０２ａ〜ｎの出力は全サービス領域のための総電力需要予測６０４を生成するために合計される。理解すべきは、マルチカーネル処理アレイ６００が地理的に連続したサービス・エリアに適用される必要はなく、多数の市町村、多数の離散的ビジネス又は企業サイト、多数の島、その他のような、地理的に分断された多数のサービス供与地点を含む電力サービス・プロフィルのために使用されてよいことである。
図７Ａ乃至７Ｄは、ＣＩＰ１０の接続重み４０を更新するための一般的な学習重みスケジュールを示す。共通学習重みスケジュールは、接続重みの全てに適用でき、個々の学習重みスケジュールは、各個々の接続重みに適用でき、又は接続重みは、各々のグループが共通学習重みスケジュールを有する多数のグループに編成され得る。
図７Ａに示される学習重みスケジュール７０２は、それがより最近のタイムトライアルの間に受信された測定に対してより大きな重みを与えるという点において積極的なスケジュールである。図７Ｂに示される学習重みスケジュール７０４は、学習重みスケジュール７０４がより最近のタイムトライアルの間に受信された測定に対して一層より大きな重みを与えるという点において前記学習重みスケジュール７０２よりも一層積極的なスケジュールである。積極的な学習重みスケジュールは、演算された出力値が学習重みスケジュールで表される多くのタイムトライアル中に迅速に変化する傾向がある場合に適する。
図７Ｃは、学習が循環的に生ずる幾つかのタイムトライアルのみに基づく学習重みスケジュール７０６を示す。このタイプの学習重みスケジュールは、重み付けされたタイムトライアルがピークロード期間（周期）に対応するピークロード電気予測システムに対して適する。図７Ｄは、より最近のタイムトライアルがより積極的に重み付けられるように変更された点を除いてスケジュール７０６に類似する学習重みスケジュール７０８を示す。他のタイプの学習重みスケジュールは、それらが異なる物理的用途のＣＩＰマシンを設計するものとして当業者には明らかである。
図８Ａは、ＣＩＰ１０のトランスジューサ１２に適用される一般的な入力特徴関数を示す。この入力関数において、入力関数値は、測定された入力値により定義される関数を近似する多項式８０４の係数に対応する。例えば、電気要求信号が測定された入力値８０６であり多項式８０４に対応する係数がトランスジューサ１２により演算された入力関数値８０８であるかもしれない。このタイプの入力特徴関数は、適切な長さの多項式８０４を構成するために非常に多くのタイムトライアルに亘る測定入力値に依存する。従って、測定された入力値の履歴記録が図１に示される最近の特徴メモリ３６に記憶される。
図８Ａに示される入力特徴関数は、典型的な地理学的な領域に対する電気要求信号のような多項式により確実に近似され得る繰り返しパターンを定義する一連の測定された入力値に対して適する。他のタイプの測定された入力値は他の関数領域中の繰り返しパターンを形成する。このため、トランジューサ１２により演算された入力特徴値は、異なる式の係数、周波数領域関数、或いは特定の測定された入力値に適する他のタイプの関数に対応し得る。
図８Ｂは、電気要求測定、及び好ましくは測定された現在の天気データ及び短期の電気予測データを含む天気予報データから電気要求予測を演算するように構成されたＣＩＰ８２０を示す。従って、ＣＩＰ８２０は、計量された電気の要求データ、計量された天気データ、及び天気予報データを含む入力値８２４に基づく電気要求予測８２２を生成する。図６を参照して述べられた多核アレイ構造、図７Ａ乃至図７Ｄを参照して述べられた学習重みスケジュール、及び図８Ａを参照して述べられた入力特徴関数８０３は、現在電気要求予測ＣＩＰ８２０に適すると信じられている。
図９乃至１１は、ＣＩＰ１０の動作を示す論理フロー図である。これらの図の記述では、図１に示されるＣＩＰ１０の機能ブロック図を参照する。図９は、ＣＩＰ１０の典型的な動作ルーチン９００を示す論理フロー図である。ルーチン９００は、ステップ９０２で開始し、このステップ９０２で、ＣＩＰ１０は、例えば、“ファイル終了”レコードをチェックすることにより終了コマンドが受信されたか否かを決定する。ＣＩＰ１０は、学習予測サイクルの開始時に終了コマンドをチェックするが、この照会は、学習予測サイクルの終了時或いはルーチン９００の他の場所で同様に生じ得る。例えば、ＣＩＰ１０は、安定状態処理機関に続きＣＩＰ１０が向上動作を実行する前に処理が停止できる終了コマンドをチェックできる。終了コマンドが受信されると、ステップ９０２から“終了”ステップへの“肯定”分岐へ処理が移行し、ルーチン９００を終了する。
終了コマンドが受信されないならば、ステップ９０２からステップ９０４への“否定”分岐に処理が移行する。このステップ９０４で、ＣＩＰ１０は、トランスジューサ１２の入力プロセッサ３２で現在のタイムトライアルに対する測定された入力値３０を受信する。ステップ９０４に続きルーチン９０６では、ＣＩＰ１０が同時に現在のタイムトライアルに対する監視、予測、学習動作を実行する。ルーチン９０６は、図１０を参照して以下に記述される。
ルーチン９０６に続きステップ９０８では、ＣＩＰ１０が異常動作を実行すべきか否かを決定する。もしＣＩＰ１０が、異常動作を実行すべきであると決定すると、ステップ９０８からステップ９１０への“肯定分岐に移行し、このステップ９１０で、ＣＩＰ１０は、異常動作を実行する。これらの異常動作は、一般的に警告状態を示すこと及び／又は引き続く演算における測定値ではなくて入力又は予測値を使用することを含む。異常動作（例えば、引き続く演算における測定値に基づく特徴値ではなくて入力値の使用）は、監視サブアレイ２２での入力段階の後及び予測サブアレイ２４での学習段階の前に発生してもよい。
ステップ９０８においてＣＩＰ１０が異常動作を実行すべきでないと決定すると、ステップ９１２への“否定”分岐に移行し、このステップ９１２でＣＩＰ１０は、典型的には、応答ユニット１８により制御動作が実行されるべきか否かを決定する。ステップ９１２も、ステップ９１０に続く。ＣＩＰ１０が制御動作を実行すべきであると決定すると、ステップ９１２からステップ９１４への“肯定”分岐へ移行する。このステップ９１４でＣＩＰ１０は、制御動作を実行する。これらの制御動作は、一般的には、予測された出力値４６を表示する事を含み、又バルブの開放、データパケットルーチング命令の変更、スイッチの作動等の自動応答動作を行うことを含み得る。
ステップ９１２でＣＩＰ１０が制御動作をすべきでないと決定すると、ステップ９１６への“否定”分岐に移行し、ここでＣＩＰ１０は、マネージャ１６により実行されるべきか否かを決定する。ステップ９１６も、ステップ９１４に続く。ＣＩＰ１０が向上動作を実行すべきであると決定すると、ステップ９１６からルーチン９１８への“肯定”分岐へ移行する。このステップ９１８において、ＣＩＰは制御動作を実行する。ルーチン９１８は図１１を参照して以下に述べられる。ルーチン９１８に続き、ルーチン９００は、ステップ９０２へループし、ルーチン９００は他のタイムトライアルに対する安定状態モードで繰り返す。
図１０は、ＣＩＰ１０における監視、予測、及び学習のためのルーチン９０６をしめす論理図である。ルーチン９０６は、図９に示されるステップ９０４に続く。ステップ１００２において、ＣＩＰ１０は、現在のタイムトライアルに対する測定入力値３０を含むレコードを読み取りチェックする。ステップ１００２で行われたチェックでレコードが無効であることが示された場合、ルーチン９０６は、そのレコードをスキップして処理を中断し、警告状態又は他の予め定義された動作を行うよう指示する。ステップ１００２にステップ１００４が続き、ここでトランスジューサ１２の入力プロセッサ３２は、測定された入力値３０及び特徴関数コントローラ５２により提供された入力特徴仕様３５に基づき入力値３４のベクトルをアセンブルする。典型的な入力仕様は、図８Ａを参照して上述される。
ステップ１００４にステップ１００６が続き、ここで監視サブアレイ２２が帰属予測を実行する。ステップ１００６は、現在のタイムトライアルに対する入力及び／又は出力特徴値を帰属させることを含む。図５に示される例では、ステップ１００６において、監視サブアレイ２２は、現在のタイムトライアルに対する出力特徴値５１２を帰属させる。現在のタイムトライアルに対する入力及び／又は出力特徴値を帰属させるために、監視サブアレイ２２は、学習されたパラメータメモリ２６ａから接続重み４０ａを探索し、接続重み４０ａを入力特徴値３４へ適用して帰属された出力値３８を演算する。
ステップ１００６にはステップ１００８が続き、ここで監視サブアレイ２２は、帰属された特徴値に対する許容バンドを演算する。図５の例では、ステップ１００８において、監視サブアレイ２２は、現在のタイムトライアルに対する許容値５１４ａ−ｂを演算する。許容値は、典型的には現在のタイムトライアルに対する帰属された特徴値からの一つ又は二つの標準偏差として演算される。ステップ１００８にステップ１０１０が続き、このステップ１０１０で予測サブアレイ２４は、現在のタイムトライアルに対する入力特徴値３４を使用して学習及び技術的修正を実行する。ステップ１０１０は、好ましくは、学習重みコントローラ５４により提供される学習重みスケジュール５５を使用して逆共分散マトリックスに基づく回帰係数の更新により、学習パラメータメモリ２６ｂに記憶された修正重み４０ｂの更新を含む。学習パラメータメモリ２６ｂに記憶された接続重み４０ｂは、好ましくは逆共分散マトリックスに基づく回帰係数に対応する。予測サブアレイ２４は、接続重み４０ｂを検索してそれを更新する。次に、更新された接続重み４０ｂは、学習パラメータメモリ２６ｂに戻される。
更新された接続重み４０ｂが学習パラメータメモリ２６ｂに戻される前に、接続コントローラ５０が更新された接続重み４０ｂに技術的な修正を行って、そうでない場合にＣＩＰ１０がストールするかも知れない数値的問題を回避する。上記されたように、接続コントローラ５０は、一般的には、演算された接続重みを予め定義された最小又は最大値で置きかえることによって、不安定状態へ向かう傾向にある接続重みを識別してその値を制限するように構成される。
ステップ１０１０に続くステップ１０１２では、予測サブアレイ２４が、予測予報を実行する。ステップ１０１２は、将来のタイムトライアルに対する出力特徴値３８の予報を含む。図５に示される例では、ステップ１０１２において、予測サブアレイ２４は、将来のタイムトライアル“ｔ＋１”から“ｔ＋ｎ”までの出力値５１８ａから５１８ｎまでを予報する。将来のタイムトライアルに対する出力特徴値３８を予報するために、予報サブアレイ２４は、学習パラメータメモリ２６ｂから更新された接続重み４０ｂを検索し、この接続重み４０ｂを入力特徴値３４へ適用して予報出力特徴値３８を演算する。
ステップ１０１２に続くステップ１０１４では、予測サブアレイ２４が予報出力特徴値３８に対する許容バンドを演算する。図５の例では、ステップ１０１４において、予測サブアレイ２４が将来のタイムトライアル“ｔ＋１”から“ｔ＋ｎ”までの許容バンド５２０を演算する。許容バンドは、典型的には、将来のタイムトライアルに対する予報出力値３８から一つ又は二つの標準偏差として演算される。
ステップ１０１４に続くステップ１０１６では、トランスジューサ１２の出力プロセッサ４４が予測サブアレイ２４及び監視サブアレイ２２により演算された出力特徴値３８に基づき出力値４６を演算する。出力プロセッサ４４は、ステップ１０１６において広範囲に亘る演算を実行してもよいが、演算の少なくともいくつかは、典型的には、ステップ１００４での入力プロセッサ３２により実行される演算の逆数学的演算である。これにより演算された出力値４６の少なくとも幾つかは、測定された入力値３０の幾つかと対応し得る。予測値と測定値を比較することによりＣＩＰ１０は、その予測性能の精度を測定し得る。
ステップ１０１６に続くステップ１０１８において、監視サブアレイ２４は、現在のタイムトライアルに対する入力特徴値３４を使用して学習及び技術的修正を実行する。ステップ１０１８は、好ましくは、学習重みコントローラ５４により提供された学習重みスケジュール５５を使用して逆共分散マトリックスに基づき回帰係数を更新することにより学習パラメータメモリ２６ａに記憶された接続重み４０ａを更新することを含む。学習パラメータメモリ２６ａに記憶された接続重み４０ａは、好ましくは、逆共分散マトリックスに基づく回帰係数に対応する。監視サブアレイ２２は、接続重み４０ａを検索してそれを更新する。次に、更新された接続重み４０ａは、学習パラメータメモリ２６ａに戻される。
更新された接続重み４０ａが学習パラメータメモリ２６ａに戻される前に、接続コントローラ５０が更新された接続重み４０ｂへの技術的修正を実行して、そうでない場合にＣＩＰ１０がストールする可能性がある数値的問題を回避する。ステップ１０１８に続くステップ１０２０では、典型的には、先入れ先出しペースで最近の特徴メモリ３６内の履歴データが更新される。他のパラメータは、適宜に、次のタイムトライアルのためにＣＩＰ１０を準備するためにセーブされてもよいし、ステップ１０２０で更新されてもよい。ステップ１０２０に続くステップ１０２２では、図９に示されるステップ９０８に戻る。
図１１は、ＣＩＰ１０の入出力詳細化ルーチン９１８を示す論理フローチャートである。ルーチン９１８は図９に示すステップ９１６に従う。ルーチン９１８のすべてのステップが、ＣＩＰ１０が詳細化動作を実行する毎に必ずしも実行されるわけではないことを理解すべきである。むしろ、ルーチン９１８は、必要に応じてＣＩＰ１０が実行する詳細化動作のようなものである。特定の詳細化動作に対する必要性はマネージャ１６によって自動的に決定されるか、またはユーザーによって決定され、ユーザーインタフェース２０を介してＣＩＰ１０に通信される。フレキシビリティのレベルの変更は、ユーザーの必要性に応じて、詳細化動作に対してユーザーインタフェース２０によって可能とされる。
ステップ１１０２では、マネージャ１６のコーディネータ４８はユーザーインタフェース２０に記述的統計を出力する。ステップ１１０２の後にはステップ１１０４が続くが、このステップ１１０４では、コーディネータ４８はユーザインタフェース２０からユーザー定義の命令と他のパラメータを受信する。ステップ１１０４の後にはステップ１１０６が続き、ここでは接続コントローラ５０が無効の特徴値を削除する。ステップ１１０６の後にはステップ１１０８が続き、ここでは接続コントローラ５０は冗長特徴値を組み合わせる。ステップ１１０８の後にはステップ１１１０が続き、ここでは接続コントローラ５０は新しい特徴値を指定する。
無効な特徴値は消去され、冗長特徴値は組み合わされ、接続コントローラ５０はカーネル配列１４中で特徴値容量を利用可能とし、トランスジューサ１２中では入出力容量を利用可能なものとする。したがって、接続コントローラ５０は、このフリーアップ容量の新たに測定された入力値、特徴値及び出力値を自動的に選択するように構築してもよい。これらの新たに測定された入力値、特徴値及び出力値は一般的には、ユーザーインタフェース２０を介して提供された事前定義済みのリストから選択される。このようにして、ＣＩＰ１０は多くの入出力組み合わせを体系的に評価し、ほとんど予測的な値のないものを消去し、高度に予測的な値のものを保持する。したがって、時間が経つにつれて、広範囲の候補入力から所与の物理的応用に対するもっとも有用な測定済み入力を識別するように構築してもよい。
したがって、ステップ１１１０の後にはステップ１１１２が続くが、ここでは接続コントローラ５０は接続仕様４２を再定義する。ステップ１１１２の後にはステップ１１１４が続くが、ここでは特徴機能コントローラ５２が入力特徴仕様３５を再定義する。特徴機能コントローラ５２は新しい入力特徴仕様３５をトランスジューサ１２の入力プロセッサ３２に送信する。ステップ１１１４の後にはステップ１１１６が続くが、ここでは特徴機能コントローラ５２が出力機能仕様４９を再定義する。特徴機能コントローラ５２は新しい出力特徴仕様４９をトランスジューサ１２の出力プロセッサ４４に送信する。ステップ１１１６の後にはステップ１１１８は続き、ここでは学習ウエイト・コントローラ５４が学習ウエイト・スケジュール５５を再定義する。
上記の広範囲にわたる詳細化動作に鑑み、マネージャ１６はトランスジューサ１２の機能性をかなり再構築するように、そして複数カーネル配列１４の接続をかなり再構築するように動作することが理解されよう。言い換えれば、上記の詳細動作全体によって、マネージャ１６は、さまざまな物理的応用に対してＣＩＰ１０を根本的に再構築することが可能となる。このフレキシビリティはステップ１１２０で表されるが、ここではマネージャ１６は、トランスジューサ１２の機能性を再構築し、マネージャ１６が複数カーネル配列１４の計算容量を再割り当てする。ステップ１１２２の後にはステップ１１２４が続き、ここから図９のステップ９０２に戻る。
したがって、本発明は、リアルタイムで同時に学習して予測する複数カーネル中立ネットワークを監視し、予測し、制御するシステムを提供する。このシステムは、測定された性能や他の要因に反応して自身を再構築することを可能とする有効な入出力詳細化プロセスを含んでいる。この詳細化プロセスはまた、物理的応用が変わる毎にユーザー・コマンドに従ってシステムを再構築することを可能とする。上記の説明は本発明の好ましい実施形態に関するだけであり、本発明の精神と範囲から逸脱することなく本書に述べる実施形態に対して多くの変更が可能であることを理解すべきである。
【図１】
0004300281.tif 000002
【図２】
0004300281.tif 000003
【図３】
0004300281.tif 000004
【図４Ａ】
0004300281.tif 000005
【図４Ｂ】
0004300281.tif 000006
【図５】
0004300281.tif 000007
【図６】
0004300281.tif 000008
【図７Ａ】
0004300281.tif 000009
【図７Ｂ】
0004300281.tif 000010
【図７Ｃ】
0004300281.tif 000011
【図７Ｄ】
0004300281.tif 000012
【図８Ａ】
0004300281.tif 000013
【図８Ｂ】
0004300281.tif 000014
【図９】
0004300281.tif 000015
【図１０】
0004300281.tif 000016
【図１１】
0004300281.tif 000017