説明

最大射影を規定する重みを含む人工ニューロン

【課題】複数の入力と、それぞれの1つが該複数の入力のそれぞれの1つと関連付けされた複数のデンドライトとを含む人工ニューロンを提供する。
【解決手段】人工ニューロンは、入力部とそれぞれの1つが入力部のそれぞれの1つに関連付けされたデンドライト700とを含む。それぞれのデンドライトはそれぞれの重みのべき級数730を含む。べき級数の所定の累乗内の重みは最大射影を示す。それぞれの累乗は少なくとも1つのスイッチも含み、射影内のホールを識別する。最大射影を提供することによって、線形のスケーリングが最大射影に提供され、また準線形のスケーリングが人工ニューロンに提供されると同時に、関連付けの損失のない圧縮が可能にされる。このため、ヘテロ連想及び/又は自己連想の呼び出しが、入力の関数として幾何学的スケーリングを必要とせずに、多数の入力に対して提供される。

【発明の詳細な説明】
【技術分野】
【0001】
[仮出願の相互参照]
本出願は、2001年8月10日に出願され、本出願の譲受人に譲渡された、「Compre
ssion of Power Series of Weights and Counts That Represent Row and Column Associ
ations」という題名の仮の米国特許出願第60/311,316号に基づく利益を求める
。この特許出願の開示内容は、その全てを引用することによって、あたかも本願に完全に
記載されているように本願明細書の一部をなすものとする。
【0002】
[発明の分野]
本発明は人工知能のシステム、方法及びコンピュータプログラム製品に関し、より詳細
には、人工ニューロンのシステム、方法及びコンピュータプログラム製品に関する。
【背景技術】
【0003】
連想メモリ(または、結合メモリ、associative memory)は内容参照可能メモリ(cont
ent addressable memory)とも呼ばれ、パターンマッチング及び識別、エキスパートシス
テム、並びに人工知能の分野で広く使用されている。広く使用されている連想メモリは、
ホップフィールド形人工ニューラルネットワーク(Hopfield artificial neural network
)である。ホップフィールド形人工ニューラルネットワークは、例えば、「Electronic N
etwork for Collective Decision Based on Large Number of Connections Between Sign
als」という題名の、Hopfieldに与えられた米国特許第4,660,166号の中で説明
されている。
【0004】
連想メモリは従来の後方伝達ネットワーク(back-propagation network)の問題を避け
ることができるが、連想メモリにはスケーリング(scaling)及び偽記憶(spurious memo
ry)の問題がある。連想メモリにおける最近の改良では、これらのまた他の問題を解決す
る試みがなされている。例えば、「Artificial Neural Networks Including Boolean-Com
plete Compartments」という題名の、共同発明者のAparacio, IVらへの米国特許第6,0
52,679号では、それぞれの1つが人工ニューロンのそれぞれの対に関連付けされ複
数の人工ニューロン及び複数のブーリアンコンプリート区切り(Boolean-complete compa
rtment)が提供されている。ブーリアンコンプリート区切りを提供することによって、ス
プリアス補足メモリ(spurious complement memory)を避けることができる。
【0005】
連想メモリは、市販もされている。例えば、International Business Machines Corpor
ation社 (IBM)により販売されているMemoryAgentとして周知の製品は、低レベルのアプリ
ケーションプログラミング用インターフェースの集合を提供する。このインターフェース
は、「Smart Assistance」という用語によって特徴付けられる埋込み学習エージェント(
embedded learning agent)を構築するために使用できる。「Report: IBM's Memory Agen
t」という題名の出版物、Intelligence In Industry、第8巻、No.1、1999年1
月、ページ5〜9、を参照されたい。Haley Enterprises社及びIntellix A/S社を含む他
のベンダーも、連想メモリのツールを販売している。特に、Haley Enterprises社は、「T
he Intelligent Memory」と呼ばれる連想メモリを市販している。haley.comを参照された
い。Intellix A/S社は、SOUL (Self-Optimizing Universal Learner)と呼ばれるソフトウ
ェア手法を用いる、「Knowman」と呼ばれる別の連想メモリを市販している。intellix.co
mを参照されたい。ベンダーの中には、「Self-Organizing Neural Network for Pattern
Classification」という題名のYodaへの米国特許第5,870,729号及び「System a
nd Method for Categorizing Objects in Combined Categories」という題名のPragerへ
の米国特許第5,943,670号の中で説明されているような、自己組織化フィーチャ
ーマップ(self-organizing feature map)を販売する者もいる。それらも連想メモリの
一形態である。連想メモリは、Caidらへの「System and Method of Context Vector Gene
ration and Retrieval」という題名の米国特許第5,619,709号の中で示されてい
るように、電子商取引にも応用されている。連想メモリの他のアプリケーションには、3C
om社が販売しているPalm Pilotのようなハンドヘルド装置の中の手書き文字認識が含まれ
る。さらに、記憶に基づく推論機能は、現在では、SAS Institute社やOracle Corporatio
n社などによって販売されているようなデータマイニングシステムの中に含まれる。
【0006】
連想メモリは最近になって市販されたに過ぎないが、それらはパーソナルに用いられ、
知識管理を意図するアプリケーションに対して急速に成長することが期待される。実際に
、ある専門家は、「自己連想メモリの製造は極めて大きな事業になるだろう−そのうちに
他のどのような目的よりも多くのシリコンが、そのような装置の製造に消費されるであろ
う」と予測している。Technology Review、第102巻、No.4、1999年7月/8
月号、ページ79を参照されたい。
【0007】
残念なことに、現実の問題を解くために連想メモリの使用を限定するような、基本的な
スケーリングの問題がある。特に、多くの連想メモリは、線形の重みを使用する。図1A
に示すように、重みWA〜WEに基づいて、各入力を各出力に一度関連付けることができる
。しかしながら、そのような線形ネットワーク内の入力は、一般に、互いには結び付かな
い。このことは、共通の要求事項又は入力間のトレードオフの中で見出すことができる入
力間の相互作用のような、起こり得る非線形性を学習し表現するため、ネットワークの能
力を著しく制限する可能性がある。
【0008】
図1Aの線形ネットワークに対する別の方法は、図1Bの幾何学的ホップフィールド形
ネットワーク(Hopfield network)である。ホップフィールド形ネットワークでは、1対
1の接続が全てのノード間に行われ、重みがノード間の各アーチに対して設けられる。図
1Bに示すように、全ての入力の間に設けられた重みが多くなりすぎるため、実際のアプ
リケーションに対してホップフィールド形ネットワークの規模を合わせることは困難であ
る。非線形ネットワークは一般に全ての互いの入力を阻止するので、N2又は幾何学的な
スケーリング関数を生成する。より具体的に言うと、入力間の接続数は、一般に、N(N
−1)/2に等しい。ここで、Nは入力の数である。
【0009】
この幾何学的なスケーリングは、一般に、そのような技術を保証する複雑性の規模にお
いてアプリケーションに対応するには非現実的である。例えば、多目的の検索及び個人的
なモデリングに対しては、処理すべき何万もの入力変数及び何百万ものモデルを取り扱う
必要がある。それとは正反対に、オペレーティングシステムの機械学習においては、クラ
イアントの機械が無線装置までより小形になるにつれて、一層効率的であることが必要と
される。このような状況では、ユーザのモデルはわずか1つしか必要とされないが、コン
テクスト及び入力変数の数は依然として極めて大きい。数人の家庭用のレベルでさえ、入
力の数はおよそ数十万の程度になる。このため、次の数年中に期待されるようなメモリの
容量の物理的な増大をもってしても、そのようなアプリケーションに現在の技術を使用す
ることは不合理であろう。従って、そのような環境に対するエージェントベースの学習の
ためのアプリケーションが現在登場しているが、これらのアプリケーションに対応する学
習技術は、学習のスケーリングの問題及び非線形的な連想を使用するために実行すること
が困難である。
【発明の概要】
【0010】
本発明の実施形態は、複数の入力と、それぞれの1つが該複数の入力のそれぞれの1つ
と関連付けされた複数のデンドライトとを含む人工ニューロンを提供することができる。
少なくともいくつかのデンドライトは、重みのべき級数を含む。べき級数の少なくとも1
つの累乗内の重みの少なくともいくつかは、最大射影を規定する。他の実施形態では、そ
れぞれのデンドライトは重みのべき級数を含み、そのべき級数のそれぞれの累乗のそれぞ
れの重みは最大射影を規定する。最大射影を提供することによって、線形のスケーリング
が最大射影に対して提供され、準線形のスケーリングが人工ニューロンに提供されると同
時に、本発明のいくつかの実施形態の中で、関連付けにおいて損失のない圧縮が可能にさ
れる。このため、本発明のいくつかの実施形態では、ヘテロ連想及び/又は自己連想の呼
び出し(recall)が、入力の関数として幾何学的スケーリングを必要とせずに、多数の入
力に対して適用され得る。
【0011】
本発明のいくつかの実施形態では、べき級数の少なくとも1つの累乗は、射影における
ホールを識別するために少なくとも1つのスイッチも含む。本発明のいくつかの実施形態
では、重みのべき級数は基数を2とする重みのべき級数であり、べき級数の少なくとも1
つの累乗における少なくともいくつかの重みは、最大の行射影及び/又は最大の列射影を
規定する。この最大の行射影及び/又は最大の列射影は、それぞれ行射影及び/又は列射
影の合計によってソートされる。
【0012】
本発明の別の実施形態では、人工ニューロンは関連付けされた入力部において入力信号
に応答するトレースも含む。このトレースは、入力信号の活性化を最大行射影及び/又は
最大列射影内の位置にマッピングするように構成される。本発明のさらに別の実施形態で
は、人工ニューロンはルータも含み、このルータはべき級数の少なくとも1つの累乗内の
少なくともいくつかの重みをマッピングするように構成されて、最大行射影及び/又は最
大列射影を規定する。
【0013】
読取り動作を提供するために、本発明のいくつかの実施形態によれば、複数の最大行射
影及び/又は最大列射影内の活性化されたサブセットが、トレースに呼応して決定される
。活性化されたサブセットの各列に対して、列のインデックスよりも大きいか等しい最小
の行射影が選択される。他の実施形態では、関連付けされた列のインデックスよりも大き
いか等しい最小の行射影が活性化されたサブセットの列に対して蓄積されて、これにより
、入力信号の重みに対する関連性を得る。別の実施形態では、書込みすなわち記憶動作が
、トレースを最大射影及びスイッチの中に埋め込むことによって提供される。いくつかの
実施形態では、トレースと最大射影との間の冗長な射影が見出される。
【0014】
本発明のいくつかの実施形態によれば、重みのべき級数が最大射影と共に使用されるが
、本発明の他の実施形態では、最大射影が重みのべき級数なしで使用されることは理解さ
れよう。本発明はシステム、方法、コンピュータプログラムの製品及び/又はその組合せ
として具体化されることも理解されよう。
【図面の簡単な説明】
【0015】
【図1】図1A及び図1Bは、それぞれ従来の線形及び幾何学的なニューラルネットワークのブロック図である。
【図2】小脳皮質のニューロンの図である。
【図3】観察を極位相(polar phase)として概念的に示す図である。
【図4】観察を位相図表に分離したことを概念的に示す図である。
【図5】位相図表を重みなしの図表に分離したことを概念的に示す図である。
【図6】動的なプログラムの重みを概念的に示す図である。
【図7】1つの観察位相に対する本発明のいくつかの実施形態による神経樹状構造(neurodendritic structure)のブロック図である。
【図8】本発明のいくつかの実施形態による複数の観察位相を含む多極ニューロンのブロック図である。
【図9】1つの観察位相に対する本発明のいくつかの実施形態によるトレース波動の伝搬を概念的に示す図である。
【図10】本発明のいくつかの実施形態によるトレース形成に関する動作を説明するフローチャートである。
【図11】本発明のいくつかの実施形態によるトレース形成に関する動作を説明するフローチャートである。
【図12】本発明のいくつかの実施形態に基づいて、ニューラルネットワークに対して記憶を行うためのブロック図である。
【図13】本発明のいくつかの実施形態に基づいて記憶を行う動作のフローチャートである。
【図14】本発明のいくつかの実施形態に基づいて記憶を行う動作のフローチャートである。
【図15】本発明のいくつかの実施形態による二重整合/フィルタ処理(Double Match/Filter)のブロック図である。
【図16】本発明のいくつかの実施形態による図15の二重の一致/フィルタ処理の動作の実施例を示す図である。
【図17A】本発明のいくつかの実施形態による二重整合/フィルタ用の動作のフローチャートである。
【図17B】本発明のいくつかの実施形態による二重整合/フィルタ用の動作のフローチャートである。
【図17C】本発明のいくつかの実施形態による二重整合/フィルタ用の動作のフローチャートである。
【図18】本発明のいくつかの実施形態による二重整合/フィルタ用の動作のフローチャートである。
【図19】本発明のいくつかの実施形態による読取り動作のブロック図である。
【図20】本発明のいくつかの実施形態による読取り動作のフローチャートである。
【図21】本発明のいくつかの実施形態による読取り動作のフローチャートである。
【図22】異なる図表が同じ前の/次の重みを持つことができる方法を説明する図である。
【図23】前の/次の及び行/列の射影を等価にすることができる方法を示す図である。
【図24】未ソートの行および列の射影のビット行列を示す図である。
【図25】ソートされた射影のビット行列を示す図である。
【図26】本発明のいくつかの実施形態による最大射影のビット行列を示す図である。
【図27】本発明のいくつかの実施形態による最大射影並びに行および列のインデックスを用いたビット行列を示す図である。
【図28】本発明のいくつかの実施形態による人工ニューロンのブロック図である。
【図29】本発明のいくつかの実施形態によるトレースの活性化を示す図である。
【図30】本発明のいくつかの実施形態によるトレースの読取りを示す図である。
【図31】本発明のいくつかの実施形態による読取り動作のフローチャートである。
【図32】本発明のいくつかの実施形態によるスイッチを用いた最大射影を示す図である。
【図33】本発明のいくつかの実施形態に基づいてスイッチを発見する動作のフローチャートである。
【図34】本発明のいくつかの実施形態に基づいて、最大射影及び/又はスイッチを発見する動作のフローチャートである。
【図35】本発明のいくつかの実施形態による書込み動作のブロック図である。
【図36】本発明のいくつかの実施形態に基づいて、第1のトレースからの最大射影を用いてビット行列を作るための、第1の観察の書込みを示す図である。
【図37】本発明のいくつかの実施形態に基づいて、最大射影を用いてビット行列への第2の観察の書込みを示す図である。
【図38】本発明のいくつかの実施形態に基づいて、最大射影を用いてビット行列への第3の観察の書込みを示す図である。
【発明を実施するための形態】
【0016】
本発明の実施形態が示されている添付の図面を参照しながら、本発明を以下のようによ
り完全に説明する。しかしながら、本発明を本願に記載された実施形態に限定されると解
釈してはならない。むしろ、この開示が詳細で完全であり、また発明の範囲を当業者に十
分に伝えるように、これらの実施形態が提供される。同じ参照番号は全体を通して同じ要
素を指す。
【0017】
本発明の実施形態はこれから、図3〜図37の図面を用いて説明される。図面の要素及
び図面の要素の組合せは、指定された機能又はステップを実行する一般的な及び/又は専
用のハードウェアベースのシステムによって、又は一般的な及び/又は専用のハードウェ
アとコンピュータ命令との組合せによって実行することができることは理解されよう。
【0018】
[序文]
これらのプログラム命令はプロセッサに送られて、このプロセッサ上で実行する命令が
図面の中で指定された機能を実行するための手段を作り出すような装置を作る。コンピュ
ータのプログラム命令はプロセッサによって実行されて、プロセッサに一連の動作ステッ
プを実行させ、プロセッサ上で実行する命令が図面の中で指定された機能を実行するため
のステップを提供するためにコンピュータが実行する処理を作る。このため、図3〜図3
7は、指定された機能を実行する手段の組合せ、指定された機能を実行するステップの組
合せ及び指定された機能を実行するプログラム命令に対応する。
【0019】
ニューラルネットワークの分野における進歩は、本願の譲受人に譲渡された、「Artifi
cial Neurons Including Power Series of Weights and Counts That Represent Prior a
nd Next Associations」という名称の米国特許出願第09/436,925号の中で説明
されている。その開示内容は、その全てを引用することによって、あたかも本願に完全に
記載されているように本願明細書の一部をなすものとする。米国特許出願第09/436
,925号の中で説明されているように、人工ニューロンは複数の入力と、それぞれの1
つが複数の入力のそれぞれの1つと関連付けされる複数のデンドライトとを含む。各デン
ドライトは重みのべき級数を含み、べき級数内の各重みは関連付けされた累乗に対する関
連した計数を含む。重みは概ね計数用の記入子(place-holder)であり、別個の物理的実
体である必要はないことは理解されよう。重みのべき級数は基数2の重みのべき級数であ
り、基数2のべき級数における各重みはビット位置を示す関連する計数を含むことが好ま
しい。重みのべき級数は、例えば、図5として本願に再現された、米国特許出願第09/
436,925号の図5の中で示されている。米国特許出願第09/436,925号に
よれば、べき級数として重みを部分的に示すことによって、従来の人工ニューロンにおけ
る入力の関数としての幾何学的なスケーリングを、入力の関数として線形スケーリングに
まで減少できることが判明した。現実世界のシステムを用いて多数の入力を処理すること
により、現実世界のアプリケーションを解くことができる。
【0020】
また米国特許出願第09/436,925号の中で説明されているように、関連した累
乗に対する計数は統計的な計数であることが好ましい。より詳細には、デンドライトは連
続的に順序付けられることが好ましく、重みのべき級数は第1及び第2の重みのべき級数
一対を含むことが好ましい。第1のべき級数内の各重みは前のデンドライトの関連付けの
関数である第1の計数を含み、第2のべき級数内の各重みは次のデンドライトの関連付け
の関数である第2の計数を含む。前の/次の計数は、例えば、図6として本願に再現され
た、米国特許出願第09/436,925号の図6の中で示されている。
【0021】
しかしながら、前の/次の計数は重み無しの図表を完全に反映しないことが、現在では
分かっている。例えば、図22は、異なる図表が前の/次の重みをいかにして持つことが
できるかを示している。図22の左側の小さい図表は、前の/次の重みは2つの可能な配
置の間を区別できないことを示している。すなわち、AはDと関連付け(または結合、as
sociate)され、BはCと関連付けされるか、又は、BがDと関連付けされるのと同様に
、AがCと関連付けされる。実際に、前の/次の表現は圧縮を提供できるが、この圧縮は
損失が多い。
【0022】
この損失の多い圧縮は、多くのアプリケーションでは重要ではない。例えば、米国特許
出願第09/436,925号は、ヘテロ連想の呼び出し(hetero-associative recall
)に基づいて、スコアリング(scoring)用のアプリケーションを説明している。入力ベ
クトルが与えられると、アプリケーションは一般的な類似性の尺度を返す。損失の多い圧
縮は、図22の右側にある前の/次の重みの大きな配列から分かるように、このアプリケ
ーションにはほとんど影響しない。重みは、任意の1つのノードとその後の他のノードと
の間の関連付けの統計的な意味しか与えない。D−Eの関連付けはD−Gの関連付けと混
同しやすいが、全ての関連付けが与えられると、これらのエラーはヘテロ連想の呼び出し
にはあまり影響を与えない。
【0023】
他方、前の/次の計数に損失が多いことにより、自己連想の呼び出しが提供されはしな
い。入力ベクトルが既知の値の場合、特定の関連付けを未知の値に戻すことが望ましい可
能性がある。このアプリケーションについては、連想メモリが入力間の正確な関連付けを
示すことが望ましい。
【0024】
本発明を完全に理解することを容易にするために、米国特許出願第09/436,92
5号の中で説明されているように、観察行列(observation matrix)の線形構造への分離
及び再構成の理論的な説明を最初に行う。米国特許出願第09/436,925号による
人工ニューロンの構造を、次に詳細に説明する。次に、トレース波動の生成(generation
)及び伝搬(propagation)をおおまかに説明する。記憶(書込み)及び想像(読取り)
に対する米国特許出願第09/436,925号の動作を詳細に説明する。本願の図1〜
図21は、米国特許出願第09/436,925号の図1〜図21の複製である。
【0025】
次に、本発明の実施形態による最大射影(maximal projection)を示す重みを含む人工
ニューロンを説明する。最大射影の理論的な説明の後で、本発明の実施形態の説明及び本
発明の実施形態による読取り及び書込みの説明が行われる。
【0026】
[重みのべき級数と前の及び次の関連付けを示す計数とを含む人工ニューロン]
<理論的考察>
本発明のいくつかの実施形態は、自己連想形のメモリであると長く信じられていた小脳
構造(cerebellar structure)が手掛りとなった。小脳は、無意識に運動技能を記録及び
演ずると従来は考えられていたが、現在では全ての認知活動、特に一般的に想像及び意思
決定に役割を演ずると理解されている。
【0027】
図2は、Llinasによる「The Cortex of the Cerebellum」、Scientific American誌、
第232巻、No.1、ページ56〜71、1975年、から複製した小脳皮質の神経を
再現したものである。小脳内のプルキンエ・ニューロン(Purkinje neuron)Puは、そ
れ自体連想メモリを示すと考えられている。それぞれのプルキンエ・ニューロンは、他の
どの種類のニューロンよりも多い100,000もの入力シナプスを有する。この入力を
全て計算し合計して、各プルキンエ・ニューロンは小脳から1つの軸索を送る。この莫大
なファンイン数を考えると、1つの仮定は、これらの入力の出力に対する関連付けの態様
は、各入力における単純なシナプスの重み及びこれらの入力とシナプスの重みとの合計(
ドット積)に基づいていて、線形であるということである。しかしながら、このニューロ
ンや大部分の他のニューロンの真のダイナミックスが極めて非線形であることは周知であ
る。このため、これらの真の極めて発達したシステムには非線形の計算能力が存在するよ
うであるが、連想メモリを作る計算の本質は依然として未知のようである。しかしながら
、プルキンエ・ニューロンの構造はツリーであり、ホップフィールドのニューラルネット
ワークによって規定された連想装置の中で使用されるような、O(100,0002)オ
ーダーの相互接続の天文学的な込み入ったものというわけではないことは明白なようであ
る。
【0028】
本発明のいくつかの実施形態は、入力間の学習された相互作用を事実上表すことができ
、実現可能なシステム内で物理的に実現できる人工ニューロンのシステム、方法、及び/
又はコンピュータプログラムの製品を提供することができる。実際に、O(N2)の仮想
表示の近似値は、O(N)の物理的な装置として示される。そのような純粋な直線性によ
って、インターネットから小形の無線装置までの高性能の予測及びパターンマッチングの
スケーリングを行うことができる。
【0029】
理論的な考察は、統計学で使用される2X2観察行列から開始する。(2つのコインの
反転のような)任意の2つのバイナリ入力の変数を考えると、4つの可能な観察がある。
この2x2観察行列は、観察された組合せに対する4つのカウンタの集合である。例えば
、図3Aは2つの変数A及びBを示す。Aはオン又はオフ、すなわち、それぞれA又は!
Aになることができる。これはBに対しても同様である。観察計数は、例えば、A及びB
が同時に生成することが3回観察されることを示す。全体としては、A及びBは互いに排
除する(強い確率的XOR関係を示す)傾向があるように思われる。
【0030】
図3Bに示すように、4つのセルカウンタの各々は、4つの位相の1つとして表示でき
る。各位相は、2つの入力のそれぞれのON(1)又はOFF(0)の状態に関連して0
0,01,10又は11により特定される。この場合、下位ビットはA座標を示し、また
上位ビットはB座標を表示する。
【0031】
3つ以上の入力変数を考える場合、O(N2)数の2X2行列を必要とする。例えば、
図4Aに示すように、3つの入力(A,B及びC)に対して、3つの行列(AXB,AX
C,BXC)がある。入力が増えると幾何学的なスケーリングが生ずるため、4入力は6
個の行列を使用し、5入力の場合は10個の行列を使用する、等々となる。しかしながら
、3入力の単純な図表は、三角形として全ての関係をより明確に示す。その三角形の各2
つ1組の辺は2X2の観察行列を有する。観察の合計は異なる可能性があり、このことに
より、真、偽、及び未知のトライステートの入力値が可能になることに注意されたい。
【0032】
本発明のいくつかの実施形態は、関連付けのこの表示を線形形式に圧縮することができ
る。任意の2つの行列間の共通性を見つける可能性はほとんどないと思われる。例えば、
4個の観察計数が互いに一致する場合、まさに2つのそのような行列の圧縮しか得られな
い。最悪の場合、全ての可能な2つ1組の行列は互いに異なることがあり、これによりい
くつかの組合せによる圧縮は不可能になる。しかしながら、本発明のいくつかの実施形態
では、そのような計数をそれらの圧縮が可能な方法で分離することができる。
【0033】
これらの行列の2つの再配列により、適当な特性を有する図表を結果として生ずること
ができる。第1の再配列は位相の各々を互いから分離し、それらを各位相に対して1つず
つ4つの図表に再度関連付けされる。図4Bを参照されたい。各図表は結果として、重み
の行列ではなく1つの重みだけを図表の各辺上に配置する。
【0034】
第2の再配列は、位相図表の各重みをべき級数に、好ましくは基数2のべき級数に分離
する。図5は、入力変数A,B及びC間の重みが3,6及び5の1つの位相図表を示す。
各重みのバイナリ表示も示されている。重みの各ビットは、その重みの基数2の累乗を示
す。
【0035】
これらのビットの累乗は重み全体の大きさを示す場合に加法的(6=22+21)である
ため、各位相図表を各ビットに対して1つの累乗図表の集合にさらに分離することができ
る。図5は、22,21及び20の大きさの3つの累乗図表に分離された実施例の位相図表
を示す。図表の累乗は図表自体に関連しているが、各図表はここでは重みなしとすること
ができ、このことは、各アークは特定の位相及び累乗に対する任意の2つの入力間の関連
付け1つが生成したこと又は不生成であったことを示す。
【0036】
このため、重みなしの図表の集合を作ることができる。これらの図表の各々は幾何学的
な寸法とすることができ、さらに減少させることができるが、そのような図表の数はここ
では含まれる。2X2の行列表示の場合は(他の基本的な形式にそれなりに分解すること
もできる)、位相は4つしかない。指数的に大きな重みを効率的にバイナリ表示する場合
と同様に、次に任意の重みのバイナリ分離は累乗図表の数をlog2(重み)に制限する
。どの特定の重みも全体的なメモリのローディング数Mに制限され(全ての観察は位相上
のみに存在すると仮定する)、期待値はM/4である。
【0037】
理論的な説明を続けると、次に重みなしの図表を、各ノードの回りの統計値を用いて線
形形式に圧縮することができる。統計値はノードの回りの特性を示すが、特性値自体では
ない。例えば、各ノードに対するリンクの数はそのような統計値の数である。各ノードは
、そのノードの全ての他のノードに対する関連付けの数を示す1つの数によって特徴付け
られる。しかしながら、この統計値は、ノード同士の間の関連付けを実際に示すといった
極めて強い制約(constraint)を伝えるものではない。
【0038】
好ましい統計値は、動的計画法からのアナロジーによって得ることができる。動的計画
法技術は、組合せ論の複雑度を減らすことができる。動的計画法においては、全ての組合
せを明確に計数するのではなく、多くの要素の間接的な列挙を同時に行うことができる特
性を見つけることができる。動的計画法は、従来はツリー構造に使用されている。例えば
、ツリーの各ブランチは指数関数的な数のリーフノード(leaf node)を含むが、ブラン
チ全体を同時に計数できるという制約を有する問題もある。指数関数的な数のリーフは、
各リーフを実際に計数するというコンピュータの負担なしに暗黙のうちに計数される。
【0039】
図6は、この暗黙の計数を行うことができる好ましい統計値を示す。図5の累乗図表は
重みがないため、線形アレイの重みを使用して、図表の各頂点に属する辺の数に対して計
数を行う。例えば、20に対する図6の累乗図表は、Aが2つの辺を有していることを示
している。1つはBと、他の1つはCと関連付けする。1つのノードの他の全てのノード
に対する関連付けの合計は極めて強い制約を強制しないが、頂点を順序付けすること及び
各合計を前のノードへの関連付けの合計と次のノードへの関連付けの合計とに分離するこ
とは、極めて強い制約を強制することができ、このことは次に、特定の関連付けを計数す
るために使用することができる。
【0040】
より具体的に言うと、各累乗図表は順序付けられた重み対のべき級数として表示され、
各対の1つの重みはその前の入力(前の入力)に対する全ての関連付けを示し、他の重み
は順序付けの中のその後の入力(次の入力)に対する全ての関連付けを示す。その対に対
する記号は、[前]/[後]として示され、各対は1つの、ただ1つの入力に関連付けし
て示される。これらの重み対は、一般に互いに強く制約される。例えば、Aの重みは20
の重み累乗に対して0/2であり、B及びCとの2つの辺を示す。B及びCの重み対は、
1/0及び1/0である。A,B及びCの辞書的な順序を仮定すると、B及びCの前の重
みはAの次の重みに適合している。一般に、全ての前の重みの合計は、次の重みのコンプ
リメント合計(compliment sum)を有する。後で示すが、これらの対の間の制約は、実際
に非常に強くすることができる。
【0041】
図6は、入力の連続した順序が重み対の正確な配分を変更できることも示している。1
つの重みが図表の辺の数に常に対応するとは限らない。例えば、Bに対する重みは、Bが
単にAとCとの間に順序付けられているために、累乗図表21に対して1/1である。A
との1つの辺はその前にあり、Cとの1つの辺はその次にある。順序付け自体はそれ以外
の場合は任意である。
【0042】
これで、観察行列の線形構造への分離及び再構成に関する理論的な説明は完了する。具
体的に言うと、スケーリングファクターは概ね4*log2(M)*2Nである。4つの
位相がある。各位相に対する累乗図表の数は、観察Mのログ関数として増大する。各図表
は、Nがそのような入力の場合、各入力に対する2つの重みによって表示される。
【0043】
<人工ニューロンの構造>
図7は、本発明のいくつかの実施形態による人工ニューロンのブロック図である。図7
に示すように、人工ニューロン700は、複数の入力710a〜710c及び複数のデン
ドライト720a〜720cを含む。それぞれのデンドライトは、入力の1つづつと結び
付く。各デンドライトは、重みのべき級数730を含む。べき級数内の各重みは、関連付
けた累乗に対する関連付けた計数を含む。図7に示すように、重みのべき級数は基数2の
重みのべき級数であり、基数2のべき級数内の重みがビット位置を示す関連した計数を含
むことが好ましい。図7の人工ニューロン700は、1つの観察位相、本願では図6の観
察位相11を示す。各デンドライトは、図8により詳細に示すように、第2の観察位相に
対応する少なくとも第2の重みのべき級数を含むことが好ましい。最後に、図7をさらに
参照して、重みのべき級数が一対の第1及び第2の重みのべき級数を含むことが好ましい
。第1のべき級数内の各重みが前のデンドライトの関連付けの関数である第1の計数を含
み、第2のべき級数内の各重みが次のデンドライトの関連付けの関数である第2の計数を
含むことが好ましい。前の及び次のデンドライトの計数は「/」によって表示され、これ
により、例えば、デンドライト720cの22累乗に対する表示0/1は、前の関連付け
が0で次の関連付けが1であることを示す。
【0044】
このため、各入力すなわちセンサニューロン710a〜710cは、デンドライトのブ
ランチ720a〜720cの1つに接続される。このブランチを用いて、各累乗に対する
重み対が、最も強い重みから最も弱い重みに配列されることが好ましい。これらの重みは
永続性である。それらは特定の多極ニューロン(multipolar neuron)の中に記憶された
全ての蓄積された経験を表すことができる。
【0045】
さらに、各デンドライトは、トレースとも呼ばれる一時的なトレース記憶部(trace st
ore)740も含む。トレース740は、現在アクティブなセンサ信号を示す。このトレ
ースは、センサ信号によって生じたポストシナプスの生化学的なトレース(細胞内のカル
シウムの蓄積)に類似する。学習におけるそのような生化学的作用により、信号を記憶す
るための強い信号がセンサ信号の後に続く場合、トレース信号は記憶信号と相互作用して
デンドライトの重み内に永久的な変化をもたらす。
【0046】
本発明のいくつかの実施形態によるトレースの表示は、センサ信号の直接記録と同じぐ
らいには単純でないことが好ましい。トレース表示は、重みと同じ構造に、好ましくは前
の/次の関連付けのべき級数に変換されることが好ましい。ある意味では、トレースは最
も弱い「重み」と見なすことができる。センサ信号それ自体ではなくトレースが、ニュー
ロンの計算力学(computational dynamics)において使用される。重み及びトレースは、
以下に説明するように、2つとも最も効率的に計算するために同じ形式であることが好ま
しい。
【0047】
図7は1つの位相に対するデンドライトの配列を示すが、図8は多極ニューロン800
を提供するために、全ての位相、累乗、及び重み対を示している。図8は、そのようなニ
ューロンの初期化された状態を示す。全ての重み及びトレースはゼロに初期化され、より
大きな重みの累乗はない。ニューロン800の各主なブランチ810a〜810dは、可
能な観察位相の1つを示す。ブランチ810a〜810dの出力は合計ノード820で合
計され、多極の出力線830上に出力を送る。
【0048】
入力710a〜710cはセンサニューロンによって表示されることに注意されたい。
各センサニューロンは、その適当なレベルで横方向のデンドライトのブランチに接続する
。センサニューロンはそのレベルで全ての横方向のブランチと接続するが、このことは簡
単にするようには示されていない。各横方向のブランチは、図7に詳細に示すように、全
ての累乗にわたってその重み対を記憶する。
【0049】
数学的手法により、動的プログラミングのためにセンサ及びそれらの重みを任意に順序
付けすることが可能になるため、生物学的なニューロンのアーキテクチャは明らかに誕生
の順序で決定されてきた。「前の」及び「次の」という用語ではなく「近位の」及び「遠
位の」という用語が、それぞれ最も古いデンドライト及び最も新しいデンドライトを示す
ために図8においては使用される。後者の用語は、センサの誕生の順序及び多極ニューロ
ンへの接続を適切に表現できるが、前者の用語はより明瞭で一層構造的である。近位のデ
ンドライトは細胞体(合計ノード820)により近い。それらは、接続する最も初期のセ
ンサ入力によって最初に形成される。神経皮質系への類推により、新しい成長が遠位の「
表面」に付け加わる。言い換えると、より新しいデンドライトが、これに先立つデンドラ
イトの後の遠位に接続される。
【0050】
デンドライトの構造は、時間が経つと変化することがある。デンドライトの順序は図示
のように最も古いものから最も新しいものへと並ぶことができるが、この順序は性能を向
上するために、またより多くの情報を加えるために再配列することができる。例えば、よ
り強いデンドライトをより近位になるように、順序付けすることができる。このことは、
例えば位相01を10よりも弱いと考えることができるように、より強い位相の順序をオ
ーバーレイすることができる。
【0051】
<トレース波動の伝搬>
トレースの生成は、本発明のいくつかの実施形態による人工ニューロンに対して最も簡
単な多極のダイナミクスであり、どのように重み対の線形アレイが観察及びそれらのメモ
リを表示するかを示すことができる。このため、トレースの生成及びトレース波動の伝搬
をここで説明する。
【0052】
多極ニューロンのダイナミクスは、好ましくは1つのデンドライトから他のデンドライ
トへの波動の伝搬によって媒介される。そのような波動の伝搬は生物学的な神経系を通し
て周知であり、プルキンエ・ニューロンの中で極めて良く研究されてきた。図9は、波動
がデンドライトを横切って移動してセンサ信号をトレースする方法を示す。ここでの生物
活動においては並列した処理部によるものであり、各センサ信号が変化するにつれてトレ
ースを更新するが、コンピュータモデルにおいては、波動は多極ニューロンのソーマ(so
ma)(細胞体)から開始する。波動は近位のデンドライト(矢印920)から、次に1つ
の経路における遠位のデンドライト(矢印930)から移動することが好ましい。
【0053】
図9を参照すると、最初、波動は初期化されて、矢印910で示すように、デンドライ
トの所定の位相を示す。位相の2つのビット、すなわち上位ビット及び下位ビットは波動
の中にhighFilter及びlowFilterとして保持される。この「ハイ」及び「ロー」の設定は
、各デンドライトが次のような2つの考え方を想定するものである限り、任意とすること
ができる。すなわち、1)そのデンドライトへの関連付けをその前に計算すること、及び
2)そのデンドライトへの関連付けをその後で計算することである。そのようなデンドラ
イト間の関連付けの存在を計算するために、特定の位相を考える場合、1つのデンドライ
トは位相の1つのビットとして動作し、他のデンドライトは位相の他のビットとして動作
する。例えば、位相10については、デンドライトのうちの2つがそのような1つの関連
付けを表示するために、一方のデンドライトはその入力がONであるかどうかを決定する必
要があり、他方のデンドライトはその入力がOFFであるかどうかを判断しなければならな
い。取決めにより、前のデンドライトは上位ビットとして動作するように仮定され、一方
次のデンドライトは下位ビットとして動作する。より正確に言うと、各デンドライトは、
前のデンドライトへのその関連付けを計算する場合、最初は下位ビットとして動作し、次
にそれ自身の信号を次のデンドライトへの波動の中に送る場合は、上位ビットとして動作
する(前のデンドライトのように動作する)。
【0054】
波動がデンドライトを横切って移動するとき、highFilterは、他の遠位のデンドライト
に対して近位のデンドライトであるとの観点から、所定の位相内でアクティブと考えられ
るデンドライトについてのセンサ信号を表わす。lowFilterは反対の観点を取る、すなわ
ち、lowFilterは他の近位のデンドライトに対して遠位のデンドライトというデンドライ
トの観点に対するセンサ信号を表わす。繰り返すが、この「ハイ」及び「ロー」の割当て
は、単なる慣例によるものである。一般に、各デンドライトは1つの観点に対して位相の
1つのビットとして動作し、次に他の観点に対しては他のビットとして動作する。
【0055】
この波動のpriorSignalsカウンタは0に初期化される。波動がデンドライトを横切って
移動するにつれて、デンドライトは次のデンドライトに対して関連付けするための信号を
蓄積する。
【0056】
図10は、各デンドライト内の計算のフローチャートである。波動が最初にデンドライ
トを通るとき、このデンドライトは下位ビットで遠位のデンドライトの観点を取る。この
デンドライトは、波動のローフィルタをセンサの信号と比較する。それらが同じであれば
、この観点ではそれはアクティブである。近位でアクティブな関連付けの数が、前の信号
の波動の蓄積の中に見出される。第1のデンドライトはどの前の信号も見ないことは理解
されよう。
【0057】
次に、デンドライトは波動が次のデンドライトに移動する前に、上位ビットで近位のデ
ンドライトの観点を取る。波動の下位ビットのフィルタがセンサの信号に適合する場合、
デンドライトはこの観点ではこの位相に対してアクティブであり、それ自体を波動の前の
信号のカウンタに中に蓄積する。多極の動的プログラミングが最も簡単な形式であるため
に、トレース波動の伝搬は、1つのセンサ入力を示す1つのデンドライトが他のデンドラ
イトに対する全ての関連付け及びそれらの信号パターンをどのように間接的に列挙できる
かを示す。
【0058】
特に、ブロック1010では、センサ信号が波動の位相の下位ビットと同じであるかど
うかについての試験が行われる。同じである場合、ブロック1012において、近位のト
レースが波動内に蓄積されるように近位のデンドライトの信号の数に対して設定される。
同じでない場合は、ブロック1014において、センサ信号が波動の位相の上位ビットと
同じであるかどうかの試験が行われる。同じ場合は、ブロック1016において、波動内
に蓄積されたデンドライトの信号が、次のデンドライトに送るために増加される。ブロッ
ク1018において、遠位のデンドライトがさらにあるかどうかの試験が行われ、ある場
合には、ブロック1022で、トレース処理がこのさらなる遠位のデンドライト内で開始
される。遠位のデンドライトがこれ以上ない場合は、ブロック1024において、信号の
波動内の蓄積値が0に設定され、ブロック1026において、センサ信号が波動の位相の
上位ビットに等しいかどうかについての試験が行われる。等しい場合は、ブロック102
8において、遠位のトレースが波動内に蓄積された遠位にデンドライト信号の数に設定さ
れる。ブロック1032で、センサ信号が波動の位相の下位ビットと同じであるかどうか
の試験が行われる。同じである場合は、ブロック1034において、蓄積されたデンドラ
イトの信号が次のデンドライトに送るために波動内で増加される。
【0059】
デンドライトの構造は再帰的(recursive)であることが好ましい。各デンドライトは
、可能な次のデンドライトに接続される。各デンドライトはトレース信号を次のデンドラ
イトに伝え、最も遠位のデンドライトは波動をそれ自体リセットし(priorSignalsを0に
戻す)、また制御を前のデンドライトに再帰的に返す。元に戻る伝搬は、前方への伝搬と
同様に働くことが好ましい。波動の遠位のパスは近位のトレースを計算し、一方波動の近
位のパスは遠位のトレースを計算する。
【0060】
電子設計及び並列処理の当業者は、これらのトレースは物理的なハードウェアの中で伝
搬の途中にリアルタイムで更新されることを認めるであろう。例えば、変化するセンサに
関連したデンドライトから始まるどのような信号の変化も、同時に近くにまた遠くに伝搬
することができる。そのような波動は、前の信号ではなく信号内の前の変化を伝搬するが
、ダイナミックスは別な方法で識別することができる。前述した単一パスの動作は、順次
処理するコンピュータのアーキテクチャに対してはより効率的である。全てのセンサ信号
は、トレース信号が呼び出される場合、クランプされ安定していると想定される。全ての
可能な並列の伝搬は、1つの連続パスの中で一度計算される。
【0061】
図11は、図10と同じであるがプログラミングコードとしてのフローチャートを示す
。同じ参照番号がプライムを用いた表記法(’)により使用される。デンドライトのオブ
ジェクトは、その引数として波動オブジェクトを取るトレースのメンバ関数を有する。各
デンドライトは、そのメンバとしてSensorオブジェクトを有する。デンドライトはそのセ
ンサの信号を波動のフィルタと比較する(ブロック1010’,1014’,1026’
及び1032’)。lowFilterの場合に1つが他に等しい場合は、デンドライトはそのpro
ximalTraceを波動により実行されたpriorSignalsに設定する(ブロック1012’及び1
034’)。highFilterの場合は、デンドライトはセンサの信号を説明するために波動の
priorSignalsを増加する(ブロック1016’及び1028’)。
【0062】
各デンドライトオブジェクトは、他のより遠位のデンドライトに再帰的に接続される。
各デンドライトは、そのような次のデンドライトのトレースのメンバ関数を、それが存在
する場合は呼び出す。トレース関数はvoidを返す。
【0063】
<記憶>
本発明のいくつかの実施形態による人工ニューロンへの記憶すなわち書込みの説明をこ
れから行う。好ましくは2つ以上の波動伝搬を使用する記憶は、一般により複雑である。
複数波動の伝搬を、登上線維からの1つの信号がプルキンエ・ニューロン内で一気の集中
的活動の原因になるように、小脳の中で示すこともできる。図2は、登上線維(Cl)及
びそれがどのようにプルキンエ・ニューロンのデンドライトを取り巻くかを示す。トレー
ス信号からのセンサ信号の形成を考えると、登上線維は記憶信号を提供することができる

【0064】
生物現象と同様に、本発明のいくつかの実施形態の多極ニューロンへの記憶信号は一般
に、一気の波動活動を引き起こす。図12は、トレースの形成に酷似するように、ニュー
ロンは波動を初期化し(矢印910)、波動をデンドライト領域(矢印1220及び12
30)を通って伝搬させることを示す。しかしながら、重み構造はトレースよりも複雑で
あり、いくつかのパスを使用する。図示のように、各波動は重みの各累乗を通過する。記
憶信号は最も弱い20の重みの列から始めて、トレースをより永続的な重みに移動させる

【0065】
図12に示した実施例は単純である。トレースの重みは、20において永続的な重みに
単に蓄積される。しかしながら、観察重みの累乗図表への分離及びデンドライト領域内の
結果として生ずる累乗の列は、1つの重みの累乗から他の重みの累乗へ桁上げ関数を生成
することがある。例えば、バイナリコードにおける加算及び桁上げは簡単である。1つの
ビットを他のビットへ加える場合は、ビットの値は2倍にされ、このため、次の上位ビッ
トの列へシフトされる必要がある。上位ビットがオフの場合、それはオンにされる。上位
ビットがオンの場合は、それは2倍にされ、次の上位ビットの列に左シフトされる必要が
ある。この動作は、桁上げビットが適当に伝搬するまで続く。
【0066】
図12は、1つの重み列の結果を他の重み列に加算して桁上げするこの必要性を示す。
各重みの累乗については、いくつかの値を桁上げする必要があることを戻りの波動が示す
限り、多極ニューロンは波動を伝搬させる。メモリの負荷及び新しい信号パターンの効果
にもよるが、log2(0)数の波動バースト(wave burst)を期待することができる。
実算では、桁上げが最高位の累乗までずっと流れない場合は、波動は累乗のサブセットだ
けしか通過しないため、そのような波動のほんのわずかしか期待されない。
【0067】
記憶関数は複雑であるが、それは前述したトレース形成にいくらか類似しているように
みなされる。波動は一般に各デンドライトに連続して伝搬し、これにより、近位の重みを
修正(近位のトレースを形成するように)し、その活動を他のより遠位のデンドライトに
動的なプログラミングによって間接的に伝えるために波動も変更する。波動は近位の重み
を調整し、次に反転して遠位の重みを調整する。しかしながら、動的なプログラミングの
性質は、これから説明するように、より複雑であり洗練されている。
【0068】
記憶を最初に一般的に説明する。次に、1つの重みの累乗から他の重みの累乗に伝わる
ことについての詳細な説明を行う。図13は、全体的な記憶動作及び次に誘導される二重
の一致/フィルタ処理(Double Match/Filter)に対するその呼出しを示す。
【0069】
特に、波動が最初にデンドライトにはいるとき、このデンドライトは遠位のデンドライ
トの観点を取る。その近位の重み及びトレースの値の両方を考えると、デンドライトはト
レースによってもたらされた付加を現在の重みに加える又は次の累乗に桁上げする必要が
あるかどうかを判断しなければならない。この決定の論理はバイナリコーディングに酷似
している。すなわち、関連付けが存在しない場合、重みは存在するものであると設定され
る。関連付けが既に存在している場合は、新旧の関連付けは同じものの2つ(two-of-the
-same)を占め、上位の累乗に左シフトされる必要がある。後で説明するように、二重の
一致/フィルタ処理は、次の累乗に桁上げされる必要がある現在では周知の関連付けのそ
のような「倍加」を見出す。
【0070】
ここで図13を参照する。二重の一致/フィルタ処理(ブロック1302)は繰り越し
を行う必要がある近位の倍加の数を取り出し、デンドライトが次のデンドライトに(デン
ドライトが存在する場合(ブロック1304))送る(ブロック1306)波動の変更も
行う。波動は戻り(ブロック1308)、二重のマッチ/フィルタは再度呼び出され(ブ
ロック1312)、今回は遠位の倍加の数が引き出される(ブロック1314)。
【0071】
次の累乗に繰り越すための倍加の数が決定されると(ブロック1316)、現在の累乗
における重みを決定することができる(ブロック1318)。近位及び遠位の両方の重み
は、繰り越しが行われる必要がある関連付け(倍加)の数だけ減少される。言い換えると
、重みが既に関連付けを保持しセンサ信号がそれに再度加えられる場合、関連付けを現在
の累乗から除き、次の累乗を倍加する必要がある。次に、各重みは新しいトレース値を計
上するために増加され、古い関連付けに適合した値を減算し、桁上げされる倍数の中で計
数される。
【0072】
最後に、最も低い重みの累乗に対して行ったように、倍数は加算する次の重みの累乗に
対するトレースとしてそれらを割り当てることによって桁上げされる。実際に何らかの倍
数があり、それらが次の波動に対するトレース値として設定される場合、波動の桁上げト
リガは真に設定される。多極ニューロンは波動を一気に送る。それぞれの波動は、繰り越
す関連付けがなくなるまで上位の重みの累乗に対して調整される。
【0073】
時間の換算係数は、空間的な複雑性に対すると同様の線形関数O(N)である。ニュー
ロンは1つの波動を作り、その波動はそのデンドライトの領域の各位相に対して4倍に調
整される。各位相の中で、log2(O)数のバースト(最大の可能なバースト)が重みの
変化を完了させる。
【0074】
図14は、重み修正動作に対するプログラミングコードの実施例を示す。図13と同じ
参照番号は、プライム表記法(’)を用いて使用される。このDendriteオブジェクトは、
トレース関数と同様に、引数として波動を取る記憶のメンバ関数を有する。記憶するため
に次のデンドライトを呼び出す動作も再帰的であり、voidを返す。そうでない場合は、記
憶動作は、二重の一致/フィルタ処理工程を実行する別個の機能による、matchedProxima
lDoubles(ブロック1302’)及びmatchedDistalDoubles(ブロック1312’)の計
算を含む。各デンドライトは、二重にインデックスが付けられた重みの配列を含む。1つ
のインデックスはDISTAL又はPROXIMAL方向をポイントするが、他のインデックスは重みの
累乗を指し示す。このことは、波動をその累乗として追加させることによって決定される
。重みは2つの方法で調整される。第1の方法は、任意の一致した倍数が減算され(それ
らの倍数が桁上げされるため)、次にトレースが戻って加算される(任意の一致した倍数
を差し引く、これはまた桁上げされる必要があるものを示す)。ブロック1314’を参
照されたい。
【0075】
トレースが一致した倍数の数に対して再度割り当てられる。これは、次の波動の累乗に
桁上げされる値を示す。波動のその後のパスに対して同じ記憶関数を使用するために(ブ
ロック1306’)、これらの桁上げ値は、ちょうどあたかもそれらが次の重みの累乗−
実際に存在する−に対する入力信号を示すように、トレースの中に置かれる。
【0076】
デンドライトは戻る前に、実際にトレース内に桁上げするものが存在するかどうかを決
定する(ブロック1316’)。存在する場合は、デンドライトは波動のcarryTriggerを
動作させて(ブロック1318’)、より上位の波動の累乗を通過する。
【0077】
この線形スケーリングの最も複雑な部分は、倍数を見つける動作である。実際の累乗図
表は図表の辺を明示的に示すため、特定の関連付けが存在するかどうかを決定することが
できる。2つの入力間の特定の累乗の関連付けは、それぞれの入力の頂点間の1つのエッ
ジとして、また唯一のエッジとして示される。デンドライト内部の線形の重み機構は極め
て独特であり、幾何学的な数の関連付けを示すことができるが、1つのデンドライト/セ
ンサが他と関連付けされていることを見つけることは極めて難しい。
【0078】
しかしながら、波動の伝搬についての動的プログラミングは、これらの関連付けを考慮
することができる。図6に示したように、2の遠位の重みは適合する2つの近位の重みに
出くわすはずである。図6の最上位の累乗列を考えると、Aにおける2の重みは最初Bに
おける1(A及びBは関連付けされている)及びCにおける別の1に出会う(A及びCは
関連付けされている)。またB及びCは、近位及び遠位の一致した対を有することができ
るが、それらはこの実施例ではそのような関連付けはしていない。
【0079】
図15は、これらの制約を計算するための関連した値及び動作順序を設定する。図15
では、明確にするために概略的にニューロンが示されている。重み及びトレースが好まし
くは同じ形式であると仮定すると、波動がデンドライトを横切って通過するとき、波動は
それら2つを伝搬させ、また考慮することができる。実際には、波動はpriorWeights及び
priorTracesの両方についてのアキュームレータを有している。さらに、倍数の数は、一
般に、トラック及び一致に対してより重要な関係にある。波動は、priroDoublesに対する
アキュームレータを有する。ただ1つの関連付けを考えると、倍数は重み及びトレースと
同時に生成する。換言すると、関連付けは既に存在し、トレースを加えることによりそれ
が強化、すなわち2倍にされる。デンドライトの重みは関連付けの数を反映するため、倍
数は重み及びトレースのカウンタの最小値である。
【0080】
より具体的に言うと、一般に、デンドライトは可能な倍数の数だけを計算することがで
きる。デンドライトは数個の重みと数個のトレースとを持つことができるが、それらが同
じ関連付けを示すという局所的な保証は一般にない。例えば、入力AがBとは古い関連付
けを、Cとは新しいトレースを持つことがある。しかしAは、このことを決定するように
B又はCと明示的な関連付けは有していない。近位のデンドライトが、一致する他の倍数
があるかどうかを決定しようとしている他のデンドライトの重みを通して遠くから「見て
いる」ことを想像してほしい。そのような観点では、極めて多くのノイズや重みの混乱が
ある。幸いなことに、多数の複雑な制約があるため、そのような倍数に一致及びフィルタ
処理するための他の形式の動的なプログラミングが可能にされる。
【0081】
図16では、いくつかの実施例が提供される。二重の一致/フィルタ処理の細部は極め
て複雑であり、多数の入力を用いる場合は理解することが難しい。そのように複雑な場合
は、特に多数の入力を用いる全ての可能な重みの構成を説明できるが、本願に示した実施
例はより基本的で説明的なものである。
【0082】
第1の実施例(図16の第1の行)は、いくつかの関連付けが新しい観察によっていか
に2倍にされ、一方他の関連付けが新しい1つの関連付けとして単に加算されるままとな
るかを示す。第2の実施例(図16の第2の行)は、いくつかの可能な重みの倍加が1つ
のデンドライトの中にいかに現れ、しかし、次の処理に進むことによって、新しい関連付
けのどれもが前のメモリの重みに実際には一致していないことを示す。
【0083】
例えば、入力Aに対する初期の重み及びトレースは、両方の実施例に対しては同一であ
る。入力Aはその下の2つの関連付けの重みを有していて、1つの関連付けの新しいトレ
ースは既に記憶されている関連付けに一致すると仮定される。その場合、関連付けの倍加
は上位の累乗に桁上げされる必要がある。しかしながら、第1の実施例のみが、現在の関
連付けに対する真の倍加を有する。Aが2つの実施例の中に可能な倍数を有していると申
し出ても、第1の実施例はCのトレース値がその上のA及びB両方のトレースの計数を強
制することを示している。Aのトレース値はCによって計数されるが、対応する重みはな
い。CがAの重み−トレースの倍数に一致できる第1の実施例とは異なり、A内の可能な
倍数は分割されるため、第2の実施例では実際に倍数は存在しない。
【0084】
図17A〜図17Cは、基本的な+,−,最小及び最大の関数を用いて、そのような論
理のデータフロー工程の動作を概略的に示す。前述したように、波動は、priorWeights、
priroDoubles及びpriorTracesの数を蓄積したと仮定する。そのような記憶した波動を受
け取ると「思われる」遠位のデンドライトの観点から、デンドライトはその近位の重み及
びトレースの最小値として(それぞれブロック1702及びブロック1704)その可能
な倍数を計算することもできる(ブロック1706)。これにより、これらの候補の倍数
を引いた当初の重み及びトレースの数として、可能な重み(ブロック1708)及びトレ
ース(ブロック1712)の数が残される。
【0085】
これらの可能な倍数が真の倍数であり、関連付けの真の倍加として互いに一致すること
ができる場合、遠位のデンドライトの可能な重み及び残余のトレースは、波動内で重み及
びトレースを一致させることによって計数可能である。これは難しい制約である、すなわ
ち、遠位の波動を計数しているときに、デンドライトの全ての近位の計数が、波動の蓄積
値に一致するように計数されることが好ましい。一致した重み及びトレース(ブロック1
722及び1724)は、それぞれデンドライト及び波動の重み及びトレースの最小値(
ブロック1714及び1716)として計算される。
【0086】
デンドライトの可能な重み又はトレースが、波動の蓄積値と一致しているために計数で
きない場合は、波動内の可能な倍数は極めて貪欲(greedy)であったであろう。これは残
余の重み及びトレースを見つけることによって、すなわち、それぞれブロック1726及
び1728で一致されなかった可能な値を見つけることによって計算される。より大きな
残差は、計算のバランスを取るために、それらの別個の重み及びトレースに分割する必要
がある波動の倍数の数である。この強制的な分割(ブロック1736)は、波動の倍数の
蓄積から取り除かれ(ブロック1736)、その個々の重み及びトレースに与えられる(
ブロック1714及び1716)。
【0087】
次に、図17Bを参照する。デンドライトの可能な倍数(ブロック1706)は、波動
が移動する前に完全に計数される必要があり、真の倍数である可能性がある(ブロック1
736)が、それは波動がそれと一致する可能な倍数を運んでいる(ブロック1706)
場合に限る。これらの可能な倍数及び波動の倍数の最小値は、実際に真の倍数である。そ
れらの倍数は、一致した倍数として見つけられ互いに一致される。
【0088】
真のmatchedDoublesの数を知ることにより、真の重み及びトレースの数を計算すること
ができる。matchedDoublesは記憶された重みから差し引かれて、truePriorTracesを決定
する(ブロック1748)。matchedDoublesは記憶されたトレースからも減算されて、tr
uePriorTracesを決定する(ブロック1756)。
【0089】
最後に、図17Cを参照する。デンドライトは波動を次のデンドライトに送る前に遠方
を見るという観点を取る。デンドライトはその遠位の重み(ブロック1762)及びトレ
ース(ブロック1764)の最小値として可能な次の倍数を計算する(ブロック1766
)。繰り返すが、これらは、この工程が次のデンドライトの中で解決する可能な倍数であ
る。波動の重み及びトレースはまた、繰り返された動作に対して全ての関連付けの計算の
バランスを維持するために、デンドライトの遠位の観点から更新される。
【0090】
図18は、図17A〜図17Cの二重の一致フィルタ処理動作に対するプログラミング
コードの実施例を示す。各コードのブロック1802,1804及び1806は、それぞ
れ図17A〜図17Cに示したデータフローのロジックに対応しており、連続的に実行さ
れることが好ましい。第1のブロック1802は、デンドライト内の可能な倍数を計算し
、強制された分割を計算することにより偽の倍数を取り除く動作も含む。第2のブロック
1804は真の一致した倍数を計算し、波動から前の蓄積を計数する(取り出す)。次に
、第3のブロックは、次の計数値を波動の重み、倍数及びトレースについての蓄積に加え
る。これらのコードのブロックは、デンドライト・クラスの記憶及びイメージング方法に
よって呼出し可能な1つ以上の専用の方法(サブルーチン)として実行することが好まし
い。
【0091】
<読取り>
人工ニューロンの読取りをこれから説明する。一致した倍数の計算を書込み及び読取り
の両方の動作で使用する。記憶の項で説明したように、一致した倍数は、現在のセンサの
パターンの中でどの関連付けが次の重みの累乗に桁上げすることができるかということが
既に知られていることを示す。「想像する」とも呼ばれる読取り動作については、一致し
た倍数は、新しい観察(トレース)の中で関連付けに一致したメモリ(重み)内の関連付
けの数を示す。二重の一致/フィルタ処理工程は、この連想メモリの一致関数及びその類
似性/距離の尺度の核心となることもできる。
【0092】
読取り動作は、新しい観察の集合が与えられた場合、過去の関連付けの呼び戻し又は想
像としての役割を行う。言い換えると、観察の新しいパターンはセンサ入力のニューロン
に押し付けられ、多極ニューロンの1つに集中される。次に、この多極ニューロンは可能
な出力を想像し(フィードフォワード予測)、任意の他の出力に対する可能な関連付けを
想像する(フィードバックパターンの完了)。これら2つの読取り動作はヘテロ連想(he
teroassociation)(出力に対する入力)及び自己連想(autoassociation)(他の入力に
対する入力)と呼ばれることが多い。学習理論の心理学では、これらの要素は、それぞれ
刺激反応連想(stimulus-response associations)及び刺激刺激連想(stimulus-stimulu
s associations)と呼ばれる。
【0093】
二重の一致/フィルタ処理工程は、そのようなメモリの呼び戻しに使用されることが好
ましい。簡単に言うと、呼び戻しは、現在の観察のトレース関連付けと過去を示す永久的
な重み関連付けとの間の一致に対する比較である。ヘテロ連想及び自己連想のイメージの
強度は、過去の経験が現在の経験に一致する程度に直接的に相関される。
【0094】
図19は、イメージング波動の伝搬がメモリ関数のように「爆発的(bursty)」である
ことを示すが、これ以上の桁上げが要求されない場合は停止するのではなく、イメージン
グ関数は波動を全ての重みの累乗を通して送ることが好ましい。各累乗は、全てが加法的
ないくつかの可能な関連付けを示す。各累乗1910a〜1910bに対する波動の各パ
ス上で、デンドライトは現在の観察に対してその一致数1920を計算し、これらの一致
数を2つの方向、すなわち、適確性(relevance)と呼ばれる出力の合計に向かう前方及
びそれぞれのセンサに向かう後方、に蓄積する。蓄積された一致数は加算器1930で合
計される。
【0095】
各多極ニューロンが何らかの出力動作又は他のラベルカテゴリー(label-category)を
示すと仮定すると、適確性は現在の観察が動作又はカテゴリーに関連する程度である。こ
のことは、いかにうまく新しい観察がこの特定の出力に関連した観察の集合に属するかと
いうメンバーシップ関数として理解することもできる。
【0096】
図20は、本発明のいくつかの実施形態による読取りについての動作を示すフローチャ
ートである。読取りは書込み(図13)に類似しており、二重の一致/フィルタ処理を使
用できることが分かる。しかしながら、想像関数(imagine function)はブロック200
6において、重みを変更するのではなく、一致した倍数を蓄積する。全体的な適確性は、
デンドライトの再帰的な構造を通して蓄積され、各デンドライトはその近位及び遠位の一
致数の両方を加算する。一致数は適確性と呼ばれる値に蓄積される(ブロック2014)
。新しい観察は、そのパターンがメモリ内に記憶された全ての過去の観察のパターンに一
致する程度に関連する。
【0097】
この蓄積の非線形関数は、図1に取り入れられた線形及び非線形の両方の連想モデルか
ら得ることができる。任意の観察行列に対する適確性の値が、下記のように線形及び非線
形の両方の項から構成すると仮定する。
適確性=WAA+WBB−WABAB
各重みは、下記のように生の観察計数から計算することができる。
WA=w11+w01−w10−w00
WB=w11+w10−w01−w00
WAB=w11+w00−w01−w10
それらは、各位相の項の中の下記の部分的な公式に再構成することができる。
適確性00=w00(−A*B−A−B)
適確性01=w01(A−B+A*B)
適確性10=w10(B−A+A*B)
適確性11=w11(A+B−A*B)
位相が既にA及びBの信号状態のフィルタとなっていると仮定すると、センサの期間がど
の位相に対しても一定である、実際に各位相に対して1の定数であることが分かる。例え
ば、適確性00=w00である。言い換えると、各位相の部分的な適確性は、観察重みの
蓄積である。このため、本発明のいくつかの実施形態は、例え部分的な表示が線形であり
、呼び戻し関数が観察計数の蓄積であっても、線形及び非線形の両方の関連付けを計数す
ることができる。二重の一致/フィルタ処理動作は、現在の観察を示すこれらの観察計数
を選択する。
【0098】
図21は、図19のイメージングの実施形態に対するプログラミングコードを示す。プ
ライム表記法(’)が使用される。Dendriteオブジェクトは、引数としてまた波動を取る
メンバ関数のイメージを有する。他の関数と同様に、デンドライトの呼出しも再帰的であ
るが、このイメージ工程はREAD動作であり、デンドライトを通して蓄積されたtotalRelev
anceを返す(ブロック2014’)。記憶関数と同様に、イメージ動作は二重の一致/フ
ィルタ処理動作を呼び出して、近位及び遠位の一致した倍数の数を計算する。しかしなが
ら、記憶の場合(WRITE動作)のように重みを変更するのではなく、イメージ動作は適確
性を蓄積する。遠位及び近位の両方の一致した倍数に対して、適確性は重みの累乗を計数
する。この適確性における指数関数的な増加は、一致した倍数を左シフトすることによっ
て計算される。各デンドライトの計算の局所的な適確性は、他のデンドライトによって戻
された全適確性に加算される(ブロック2006’)。これで、読取り動作の説明は終わ
る。
【0099】
プルキンエ・ニューロンは多極ニューロンの1つの形式に過ぎないことは理解されよう
。大脳皮質のピラミッド形ニューロンも周知であるが、神経系は一般に、多くが複雑で多
極の極めて多種多様のデンドライト状の分岐パターンを示す。同様に、本発明のいくつか
の実施形態は、観察計数の他の多くの形式に適用することができる。2X2の観察行列が
、観察及び相互作用を記録する基本的な要素として取り入れられたが、当業者はより高い
次元の行列、極座標、カルノー図、ブール関数及び/又は階層構造を使用して観察計数を
集めることもできることは認識されよう。そして、前述したように、それらを分解及び圧
縮することができる。
【0100】
実際に、本発明のいくつかの実施形態は、その唯一のデンドライトの中で単極のニュー
ロンさえも使用できる。例えば、AとBとの間の比率は結果として1つの1X1のセル、
すなわち入力の各対を成す組合せに対する1つの値を生成する。これは1つの重み付けら
れた図表と等価であり、この図表は重み付けされない累乗の図表の集合に分解されること
ができ、これは今度は上述したように動的にプログラムされることができる。1つのデン
ドライトの反復は、恐らく単極のニューロンの中では唯一のものであり、次にそのような
比率の数を示すことができる。
【0101】
要約すると、観察の追加の学習及び呼び戻しは、各可能な2つ1組の期間の組合せに対
する主要なブランチから成る多極ニューロンの中で説明されている。他の多極構造を示す
ことができるが、この2X2の観察行列は4つの位相の実施例を提供した。各ブランチは
再帰的なデンドライトから成り、各デンドライトは1つの双極性の入力ニューロンに接続
され重み及びトレースの集合を含むことが好ましい。各デンドライトは重み対を記憶し、
1つの重みは他の近位のデンドライトとの関連付けの数を記憶し、別の重みは他の遠位の
デンドライトとの関連付けの数を記憶する。デンドライトが複数の重み対を記憶し、各対
が可能な重みの基数2の累乗であることが好ましい。このため、デンドライトに対する重
み対の全数を、全ての記憶された観察のlog2に限定することができる。各デンドライ
トはまた一対の一時的トレースを含むことが好ましい。この一時的トレースは、蓄積され
た重みの同じ近位/遠位の形式を使用する現在の観察を示す。
【0102】
動的プログラミングを使用するいくつかの動作は、例え計数が全ての入力間の非線形な
関連付けを概算するものである場合であっても、線形の空間及び時間の中でメモリからの
読取り及びメモリへの書込みを行うことができる。全ての動作は波動の伝搬を使用できる
。この波動の伝搬において、波動はデンドライトの位相の向きをフィルタ処理し、波動が
1つのデンドライトから他のデンドライトに移動するときにそれらの信号の蓄積を伝える
。二重の一致/フィルタ処理動作は、デンドライトの重みとトレースとの間の難しい制約
を処理して、結果として現在の観察において一致が得られている過去の関連付けを間接的
に列挙することができる。このため、記憶動作の間に、一方の重みの累乗から他方に重み
を加算及び伝えることができる。新しい観察の適確性とそのように適確性をもたらす各入
力の感度とを決定するために、重みは過去のメモリと新しい入力との間のパターンの一致
を測定することもできる。
【0103】
本発明のいくつかの実施形態のハイパーマシン(hypermachine)のスケーリングファク
タは、連想メモリの一般的な使用可能性を大いに広げることができる。本願で説明した実
施形態を実行する場合、非線形から線形のパラメータ無しの増分ローディング(incremen
tal-loading)への圧縮においていくらかの損失が認められるが、非線形の連想装置を、
インターネットの最大の規模及び無線装置の最小の規模の両方において、機械学習に対す
る新しい可能性を開くために線形の大きさ及び速度で今では物理的に実現することができ
る。
【0104】
[最大射影を規定する重みを含む人工ニューロン]
本発明のいくつかの実施形態は、前述したように、べき級数の分離と前の/次の計数と
に基づいている。しかしながら、ここで説明する本発明のいくつかの実施形態は、最大射
影を用いて関連付けを損失なく圧縮することができ、またヘテロ連想及び自己連想の呼び
戻しの両方の多くの用途に使用することができる。
【0105】
最大射影の理論的な説明を最初に行う。次に、本発明のいくつかの実施形態による最大
射影を含むニューラルネットワークの実施形態の説明を行う。最後に、本発明のいくつか
の実施形態による読取り及び書込みの詳細な説明を行う。
【0106】
<最大射影の理論的説明>
本発明のいくつかの実施形態によれば、断層撮影の再構成という関連のない分野におけ
る概念が、情報損失の潜在的な問題を解決するために有益であることが明らかとなった。
特に、行列用の行および列の重みを2進数の行列のエッジ方向の射影から探知することが
できるという、ディジタル断層撮影の問題を考えてみる。
【0107】
完全行列の行および列の合計を、図23に示すように、前の/次の合計の断層画像の生
成として考えてみる。行/列の合計は、そのような行列の計算では一般に{R,S}とし
て示される。「行」及び「列」という用語は、二次元の行列では絶対的な方向ではなく、
2つの異なる次元を示すために使用されていることは理解されよう。このため、「行」及
び「列」という用語は、全体を通して入れ替えることができる。
【0108】
ここで図23を参照すると、前の/次の及び行/列の射影は、三角行列に対して等価に
できることが分かる。図23は、どのように「前の」重みをRにおける「行」の重みへと
、すなわち行列の全ての行の合計のベクトルへとマッピングすることができるかを示して
いる。Sすなわち行列の「列」の重みに、「次の」重みをマッピングすることができる。
以下の説明には、行列数学のより一般的な表示として{R,S}表示が使用される。この
ことは、極めて大きな行列に対する本願の実施形態の潜在的な適用可能性も示す。
【0109】
本発明の実施形態は、ローレンツによる発見を利用することができる。ローレンツは、
2進行列内のビットのいくつかの配列は「最大」であることを見出した。これは、全ての
ビットをパッキング内にホール(holes)を生成させずに1つのコーナにうまく「パック
」するような方法で、行および列を再ソートすることができるということである。本発明
のいくつかの実施形態では、本発明のいくつかの実施形態の中で説明したようなべき級数
の分離は、ビット行列(2進値のみを含む行列の集合)を生成するために使用できる。こ
のビット行列から、{R,S}射影を効率的に処理及び使用できる。
【0110】
第1に、情報を失わずに行列の行および列を再ソートできることが示される。図24は
、ビット行列とそのソートされていない{R,S}射影とを示している。次に、{R,S
}の合計が降順になるように、行列をソートすることができる。図25は、そのようなソ
ートされた射影の行列を示す。ここでは、大部分の1のビットが左上にあることに注意さ
れたい。図24の影をつけた部分は、最大ビットのパッキングのこの領域の外側に全ての
ビットがあるように、図25ではより良く統合及び整理される。非最大領域は「スイッチ
」と呼ばれる。その理由は、ビットは{R,S}射影を変えずに異なる構成の中に移動又
はスイッチできるからである。
【0111】
ローレンツは図26に示すように{R,S}射影によって、最大行列そのような最大ビ
ットのパッキングを有するソートされた行列を完全に決定できることも発見した。行射影
は最大のR(Maximal R)と表わされ、列射影は最大のS(Maximal S)と表わされる。こ
の図では、射影は、スイッチ内にあるビットを除いた最大にパックされた行列の部分のみ
を示す。射影と行列は等価であり、相互に決定することができる。このため、完全行列は
射影と可逆である。
【0112】
断層撮影については、このことは、いくつかの射影を再ソートすることができ、またビ
ット位置を射影から決定できることを意味している。ローレンツは、i及びjのインデッ
クスが付いた行列のソートされた射影を考えると、最大行列の任意の要素aijも公式aij
=1 iff ri≧jによって求めることができると判断した。言い換えると、行の射影
(ri)が列のインデックスj以上である場合またその場合のみ、ビットをオンにする。
【0113】
図27は、最大射影を示す{R,S}及び行および列のインデックスを示す{R’,S
’}の最大行列を示す。{ξ,Ψ}は、これらの射影及びインデックスの入力ラベルを示
す。図27の影をつけて強調したように、行インデックス4及び列インデックス5の関連
部はONである。列インデックス5が行射影8よりも小さいため、この関連部は上記のよう
に計算することができる。ローレンツの公式では、ri=8≧j=5となる。このため、
a4,5はONである。このことは、図27でD・N=ONで示すように、DはNと明確な関
連付けを有していることを意味する。
【0114】
多くの行列及びそれらの射影が最大になるようなことはないことは理解されよう。むし
ろ、最大の行列は多くの行列の中でも特殊な場合である。しかしながら、図25に示すよ
うに、ソートすることによって、1つの連続した最大領域が存在するが、非最大のホール
もまだ残るように{R,S}を配列することができる。
【0115】
そのようなホールは「スイッチ」又は「4−スイッチ」と呼ばれる。そのようなスイッ
チの最も簡単な状態が、図23の影をつけた領域に示される。この場合、そのような対角
線配列では、2ビットがオンで2ビットがオフである。4つの位置が、図23に示した2
つの異なる配列が可能なスイッチを形成する。射影は一般に、スイッチ内のビットの位置
を決定できない。このため、4−スイッチが2進行列とその射影との間の不確定性及び非
可逆性の原因である。しかしながら、4−スイッチがそのようなエラーの唯一の原因であ
ることは周知である。このことは、行列が最大にならないようにするための唯一の数学的
な対象であることが知られている。
【0116】
<最大射影を示す重みを含む人工ニューロン>
本発明のいくつかの実施形態では、前述したべき級数の分離及び/又は射影の計数を使
用できるが、連想メモリ内の最大射影も使用できる。これらの新しいシステム、方法及び
/又はコンピュータプログラムの製品により、メモリからの読取り及びメモリへの書込み
の両方の動作を改良できる。一般的に言うと、最大行列の特性を使用することにより、読
取り速度を向上できる。さらに、下記に一層詳細に説明するように、4−スイッチによる
損失の原因を知ることにより、損失のない読取り及び書込みができるようになる。
【0117】
<最大射影を含む人工ニューロン>
ここで図28を参照すると、本発明のいくつかの実施形態による人工ニューロンのブロ
ック図が示されている。図28に示すように、本発明のいくつかの実施形態による人工ニ
ューロン2800は複数の入力部2810a〜2810m及び複数のデンドライト282
0a〜2820mを含み、デンドライトのそれぞれの1つは複数の入力部2810a〜2
810mのそれぞれの1つに関連付けされている。図28の実施形態では、それぞれのデ
ンドライト2820a〜2820mは、重み20〜2nを示すそれぞれのべき級数の重み2
830a〜2830nを含む。重みは概ね計数用の記入子であり、別個の物理的実体であ
る必要はないことは理解されよう。図28の実施形態では、べき級数内のそれぞれの重み
2830はそれぞれの射影2840を含む。図28の実施形態では、重み2830a〜2
830nのべき級数内のそれぞれの累乗に対する射影2840はソートされて、それぞれ
の最大射影2890a〜2890n、すなわち、関連した累乗に対して最大になるように
配列された複数の射影を規定する。関連した累乗に対する射影は、ルータ2900によっ
て、例えば前述した方法で射影長によりマッピングされ、ソートされ又はインデックスが
付けられて、最大射影2890a〜2890nを規定する、マッピングされ、インデック
スが付けられ又はソートされた射影を提供する。ルータ2900の中では、べき級数の各
累乗に対して別個のマッピング、ソート又はインデックス付けが行われる。
【0118】
いくつかの実施形態では、べき級数内の少なくともいくつかの重み2830a〜283
0nは、少なくとも1つのスイッチ2850も含む。射影及び/又はスイッチは特定の時
点には存在しないが、本発明のいくつかの実施形態では、べき級数内の全ての重み位置に
おける射影2840に対して記入子が提供され、また重み2830a〜2830nのべき
級数内の各累乗に対して少なくとも1つのスイッチが提供される。いくつかの実施形態で
は、重み2830a〜2830nのべき級数は基数2の重みのべき級数であり、この場合
、最大射影2890a〜2890nは複数の最大行射影及び/又は複数の最大列射影を含
む。別の実施形態では、最大行射影及び/又は最大列射影は、べき級数内の重みによって
示される、それぞれ行射影及び列射影の合計によってそれぞれソートされる。全てのデン
ドライト2820が重み2830のべき級数を含んでいるわけではなく、また全ての重み
2830が射影2840を含んでいるわけではないことも理解されよう。このため、いく
つかの実施形態では、少なくともいくつかのデンドライト2820は重みのべき級数を含
み、またべき級数の少なくとも1つの累乗内の少なくともいくつかの重みが最大射影28
90を規定している。
【0119】
図28の説明をさらに続ける。人工ニューロン2800の実施形態には、関連する入力
部における入力信号に応答するトレースすなわち活性化ベクトル(activation vector)
2860も含む。以後詳細に説明するように、トレース2860は入力信号の活性化を最
大行射影及び/又は最大列射影2890内の位置にマッピングするように構成される。ト
レース2860は、活性化をスイッチ2850にもマッピングする。
【0120】
さらに図28を参照する。リーダ2870は最大行射影及び/又は最大列射影2890
内の活性化されたサブセットをトレース2860から決定し、活性化されたサブセットの
各列に対してその列のインデックス以上の最小の行射影を選択するように構成される。別
の実施形態では、リーダ2870は、関連した列のインデックス以上の最小の行射影を活
性化されたサブセットの列に対して蓄積し、これにより、入力信号の重みとの関連付けを
得るようにさらに構成される。
【0121】
なおも図28を参照すると、ライタ2880も含まれて、このライタは、最大射影28
90及びスイッチ2850の中にトレース2860を埋め込むように構成される。いくつ
かの実施形態では、以下に詳細に説明するが、ライタ2880は、トレース2860と最
大射影2840との間に冗長な射影を見つけるように構成された行列圧縮部(matrix com
pressor)を含む。
【0122】
当業者は、他の実施形態では、デンドライト2820a〜2820mは重み2830a
〜2830nのべき級数を含む必要がないことも理解されよう。むしろ、べき級数の中に
はない1つ以上の重みが提供される。この場合、少なくともいくつかのデンドライトに対
する少なくともいくつかの重みが最大射影2840を規定する。この重みはルータ290
0によってソートされ、最大射影及びスイッチ2850を作る。これにより、本発明の実
施形態による最大射影及びスイッチが、本発明の実施形態による重みのべき級数に対して
別々に使用される。
【0123】
<読取り>
前述した本発明のいくつかの実施形態により、線形の読取り及び書込みが可能になった
。このことは、関連付行列が二次的にスケーリングされることを考える場合は望ましい。
しかしながら、関連付けのサブセットまでも計算するためには、前の/次の重みの集合の
全体を始めから終わりまでスキャンする必要がある。以下に説明する本発明のいくつかの
実施形態により、行および列射影のアレイ全体の長さには無関係に、個々の関連付けの読
取りを行うことができる。関連付けの強さをビットの集合の中に各行列に1つづつ分割す
ることができることを考えると、行および列内の任意の2つA及びBの入力を照合するこ
とによって、各ビットのレベルを読み取ることができる。各行列内のA及びBの射影及び
インデックスを知ることにより、A及びBがそのビットに対して関連しているかどうかを
判断できる。
【0124】
このことは、極めて大きなニューロンに対しても行うことができる。特に、いくつかの
実施形態では、読取り及び書込みは所定の入力ベクトルの大きさのみに依存し、ニューロ
ン全体の大きさに依存する必要はない。多くの用途においては、読み取られるベクトルは
通常、ニューロンメモリ全体における機能空間全体の数分の一である。例えば、いくつか
の実施形態では、例えメモリ全体が10K〜100Kの可能な属性値を持つ場合でも、1
00個の属性値のベクトルを数ミリセカンドで読み取ることができる。
【0125】
これに反して、読取り(及び書込み)時間は、一般に、ベクトル内の各属性値を他の属
性値のそれぞれについて検討する必要がある場合には二乗の時間がかかる。要求が多いい
くつかの用途については、入力ベクトルの大きさは1K〜10Kとすることができる。例
え読取り時間が1Mまでは関連付行列の大きさに無関係であっても、この幾何学的なスケ
ーリングをさらに向上させることができる。
【0126】
図29は、図28のトレース2960のようなトレースベクトルの活性化を示す。前述
したいくつかの実施形態におけるように、トレースは入力刺激(input stimulation)を
示す。図28の入力ベクトル2810a〜2810mのような入力ベクトルのそれぞれの
素子は、行列に対する入力線によって示される。入力ベクトルを与えると、トレースは全
ての適当な行および列にマッピングされる。
【0127】
例えば、図29に示すように、トレースTの入力項は{A,B,D,F,G,J,K,
N,P,Q,R,T}を含み、この特定の行列はJ〜Vとの関連付けA〜Iを記憶する。
これらの入力の活性化は、行列の行及び/又は列内のそれらの位置に対してマッピングさ
れる。このトレースの活性化に対して、図29は影をつけたセルのように、アクティブな
行とアクティブな列との間のアクティブな関連付けも強調して示す。アクティブな行およ
び列はより暗い網掛けで強調表示され、特定の関連付けに対するそれらの交点、すなわち
行列内のセルを示す。このトレースは、図29内では25の関連付けを活性化する。
【0128】
図29及び他の多くの図面の中に明確な行列が示されているが、本発明の実施形態を説
明するためには、本発明の実施形態によるシステム、方法及び/又はコンピュータプログ
ラムの製品の一部として使用する必要はないことが理解されよう。既に説明したように、
射影自体は行列を表示するのに十分である。行列は二次的にスケールされるが、射影は直
線的にスケールされる。下記の実施形態は、トレースの活性化の読取り及び蓄積を線形の
時間で行うために射影のみを使用する。
【0129】
図30は、図29で活性化された行列のサブセットを示す。活性化されたサブセットも
最大行列であるため、活性化された射影もこの行列のビットを表示及び読取りを行う場合
には損失が生じない。図30において、{R,S}は最初の射影を表示し続けるが、活性
化されたサブセットを示すために{+R,+S}と表示する。同様に、{+R’,+S’
}は、活性化された本来のインデックスを示す。また、{+R”,+S”}はサブセット
の行列のインデックスを示し、+Tは活性化されたトレースのサブセットを示す。
【0130】
最初の射影と{+R”,+S”}の加算のみを考えると、これは{+R,+S}の大き
さまで線形の時間で計算することができ、これらの実施形態は+R≧+S’のような+R
の最小の可能な射影を(各列に対して)選択する。言い換えると、+S”は行の射影がそ
れに到達するために十分に長い必要があるような列のインデックスを示す。言い方を変え
ると、概念上の観点からすると、列に到達するほど十分長い活性化された行の射影がある
場合、その行射影及びそれより長い全ての行射影は列に到達できる。射影は階数の順序で
あるため、+R’は最初の行列内のそのような行の数を示す。読取り要求は列に到達でき
る活性化された行の数にのみ関心があるため、+R”はそのような活性化された行の数を
与える。図30では、いかにこれらの+R”の値がそれぞれの列内の活性化の数に対応す
るかを見ることができる。
【0131】
最大行列の1つのセルに対する上記の推論は、線形の時間内で全ての活性化されたセル
をカバーするように拡張できる。このことは、図29から理解することができる。第1の
行(R’=1)及び13であるその射影(R)を見ると、それは下側又は13であるイン
デックス(S’)における全ての列の活性化(S)に拡張できる。列11はそのような最
大のインデックスであり、7番目のそのような活性化されたインデックスである。このた
め、13の活性化された射影は7個の列と交差する。これらの交差は25の1つの計数に
蓄積することができるか、又は活性化自体の最大射影とすることができる。{7,7,5
,4,2}のようなこのサブセットの射影は、行当たりのサブセットの関連付けの数を説
明する。トレースの全「点数」は25の関連付けとして蓄積できるが、それぞれの特定の
関連付けは完全に呼び戻される。例えば、Aのサブセットの射影は7であり、これはAが
真のトレースの集合{A,B,D,F,G,J,K,N,P,Q,R,T}内に他の項を
有する行列内に7の関連付けを有することを意味する。
【0132】
より具体的に言うと、図31は、本発明のいくつかの実施形態に基づいて読取りを実行
する動作のフローチャートである。R及びSの両方は行列に関して同じ情報を含むため、
どちらも使用できる。しかしながら、図31では、新しい行および列射影の両方の構築及
び戻りが示されている。
【0133】
ここで図31を参照する。トレース内の各Activated Value(活性値、AV)に対して
(ブロック3100)、活性化された属性値が行(ブロック3101)又は列(ブロック
3111)のいずれかに含まれる。全てのそのような行および列は、ブロック3102及
びブロック3112でそれらの射影{+R,+S}及びそれらのインデックス{+R’,
+S’}に従って蓄積される。次に、図31の左側を検討すると、+S内の最小の射影及
び+R’内の最小のインデックスから始めて(ブロック3103)、射影がインデックス
以上である(インデックスに「到達する」)場合(ブロック3104)、Rから活性化さ
れた射影はサブセットの行列内の+Sのインデックスに等しい(ブロック3106)。そ
うでない場合は、+S内の次に高い射影が評価され(ブロック3105)、これらの動作
は射影がインデックスに到達して(ブロック3106)、+S”から新しい射影がマーク
されるまで繰り返される。これらの動作は、+R’内の各連続するインデックスに対して
繰り返される。射影はブロック3107において戻される。列に対する類似の動作が、ブ
ロック3113〜ブロック3116で実行される。
【0134】
射影はソートされた順序(最大射影)となるので、+Sの最後の値は、+R’の次の繰
返しを開始するための最小の可能な値になる。言い換えると、この最後の特性により、本
発明の実施形態は+R’又は+Sのどちらか大きい方の寸法まで時間的に線形になること
ができる。
【0135】
各圧縮された行列からのこれらのビットの蓄積は、関連する重みを構築するために整数
として蓄積することができ、これらの整数はヘテロ連想及び自己連想の呼び戻しの両方に
使用できる。このため、本発明のいくつかの実施形態では、任意の他の属性値に対する任
意の属性値の正確な計数値は、損失なしに再構成することができる。本発明のいくつかの
実施形態の中でヘテロ連想機能に対して説明したような計数の全体的な蓄積に加えて、本
発明のいくつかの実施形態は自己連想の正確な計算−任意の他の属性値に対する任意の属
性値の計数−に対応できる。
【0136】
下記の代数は、この線形の読取りからどのように計算を集めることができるかを実証し
ている。特に、条件付き確率の加算は、下記のように、べき級数の射影の加算から計算す
ることができる。
【0137】
Bのような任意の変数とAのような目標変数との間の関連付けの条件付き確率は、Pr
ob(A|B)として与えられる。これはAB/Bとして計算することができ、ここでA
BはABに関連付けされている回数であり、BはBに対する全ての関連付けの合計である
。これら2つの値は、最大行列の射影から読み取ることができる。前述したように、分子
ABがオンかオフかを判断することは可能である。分母Bは、Bの全ての関連付けを示す
射影全体の値である。
【0138】
しかしながら、二次式の時間ではなく線形の時間内で最大行列に含まれた全ての条件付
き確率を読み取るために(各組合せの読取り)、前述した線形の読取りを使用できる。下
記のように、2つの条件付き確率を蓄積する必要性を仮定する。
P(A|B)+P(A|C)=AB/B+AC/C=(AB+AC)/(B+C)
そのような加算は同時確率の近似に過ぎないが、この公式はここではAB+AC及びB及
びCを計算することによって、最大行列から線形の時間内で蓄積することができる。本発
明のいくつかの実施形態のべき級数を使用することによって、任意の関連付けの整数値を
そのべき級数表示の中に分解することができる。AB及びACの整数の重みは、下記の式
のように分解できる。
AB=1*AB1+2*AB2+4*AB4
AC=1*AC1+2*AC2+4*AC4
ここで、AB1は20(1)におけるビットを表し、AB2は21(2)におけるビットを
表すなど、これは22(4)まで続く。各要素は、AB4が22(4)により乗算されるよ
うに、その累乗の強度によって乗算される。これらの項は下記のように再配列される。
AB+AC=1*(AB1+AC1)+2*(AB2+AC2)+4*(AB4+
AC4)
前述した線形の読取りは、ここではAB1及びAC1のような合計を計算するために利用
できる。言い換えると、20行列におけるB及びCのAに対する組み合わせた関連付計数
は、この行列内のAのサブセット射影によって与えられる。{A,B,C}のトレースを
考えると、Aのサブセット射影は下記のようになる。
rA1=AB1+AC1
ここで、rA1はべき級数内の第1の行列の射影に対するAのサブセットの行射影を示す
。べき級数全体にわたるサブセット射影の合計は、下記のように計算される。
rA=rA1+2*rA2+4*rA4
ここで、rAは全てのべき級数全体にわたる他の項に対するAの関連付強度を示す。この
関連付強度を条件付き確率の合計に変換するために、rAは下記のようにB及びCの重み
全体によって分割される。
P(A|B)+P(A|C)=rA/(B+C)
従って、Bの全重みは、べき級数内の全射影の合計から蓄積できる。例えば、Bの行射影
が20行列内で5に等しく、21行列内で3に等しい場合は、B=1*5+2*3=11に
なる。
【0139】
要約すると、多くの行列計算は、行列が最大の場合は線形時間内で計算できる。そうす
るためには、計算は前述したようなべき級数表示に分解され、それぞれの項は各べき級数
レベルのサブセットの射影又は全射影として収集可能及び読取り可能である。他の実施形
態では、べき級数の分解は最大射影と一緒に使用する必要はない。多くの2つ一組の条件
付き確率に対する線形時間内の同時計算は、そのような線形読取りの1つの例であるが、
他の多くの方法(例えば、変化量の測定)も本発明の実施形態に基づいて可能である。
【0140】
<書込み>
本発明のいくつかの実施形態による書込み動作をここで説明する。線形時間内で最大行
列を読み取る前述した能力を考え、これらの実施形態においてはそのような最大行列をど
のように抽出し、最大及び非最大の両方の区画を管理するかを説明する。
【0141】
離散型の断層撮影の目標は、これらの射影から行列内のビットの内部位置を評価するこ
とである。断層撮影の用途では、射影が与えられる。行列自体は対象物の中に隠されてい
て、断層撮影法は行列内部を「見て」、医用画像形成などのために行列を再生するために
使用される。連想メモリの書込み動作は、反対の問題を示すことがある。関連付行列は与
えられており、メモリは全ての関連付けをそのような効率的な射影の中に圧縮する。
【0142】
全ての関連付けがべき級数内の最大行列として配列されることが理想的である。そうな
る場合、前述した本発明のいくつかの実施形態の中で仮定したように、前の/次の射影は
線形形式でビットの圧縮を完全に示すことができる。しかしながら、そうでない場合は、
多くの関連付行列は最大となる区域を生ずるが、図25及び図32に示すように、残留す
る4スイッチも含む。最大区域は高く圧縮されるが、最初に4スイッチの存在及び位置を
求める必要がある。この4スイッチの問題を解決すれば、そのときは本発明のいくつかの
実施形態に基づいて、本発明のいくつかの実施形態における前の/次の計数の損失が多い
圧縮を減らす又は取り除くことができる。
【0143】
スイッチを発見する1つの方法は、行列の最大部分を非最大の部分から分離することで
ある。既に説明したように、射影をソートすることは、対角線に沿ってスイッチを集める
ことにつながる。次に、多くのソート技術を使用できる。いくつかの実施形態では、{R
,S}の特別な特性を除いて、Cソート(C-Sort)と呼ばれる従来の技術を使用できる。
Cソートは直線的にスケールするが、特別な仮定が必要なため多くは使用されない、すな
わち、ソートされる最大数はソートされる項数よりも大きくすることはできない。しかし
ながら、{R,S}射影はこの特性を有している。特に、ソートされた数はある行又は列
における他の行又は列に対する関連付けの数を示すため、関連付け数は行又は列の数より
も大きくなることはない。このため、Cソートは最大射影をソートするために使用できる
。しかしながら、従来のジャバソート(Java(登録商標)sort)などの他の多くのソートプログラム
も使用できる。
【0144】
射影がソートされると、次に記載する動作は4スイッチの座標を決定できる。図32が
実施例として提供される。図33は、本発明のいくつかの実施形態に基づいてスイッチを
発見するために使用できる動作のフローチャートである。
【0145】
ここで図32及び図33を参照する。スイッチを発見する(ブロック3300)ために
、ブロック3302で「カーン(karn)」が計算される。ローレンツの方法に関して、L
(R)及びL(S)内のLは、{R,S}射影の相互参照を示す。この計算に名前を与え
るために、「カーン」が「階数」のアナグラムとして使用される。各列に対して(例えば
)、L(S)=maxR’|R≧S’となる(ブロック3303)。同様に、L(R)=
maxS’|S≧R’である。言い換えると、Rのカーン(ブロック3302)は、ゼロ
ベースのインデクシング方式を用いて、行射影がRの列インデックス以上であるような最
大の行インデックスである。例えば、図32では、項CのLRは、たとえその射影が8に
等しいとしても、11に等しい。これは、列インデックス11は、列射影2がCのゼロベ
ースのインデックスよりも大きい最大インデックスであるからである。ゼロベースのイン
デックス=2を作るCに対するR’は3である。このため、11番目の列射影≧Cのゼロ
ベースのインデックス、2≧2、となる。概念的には、そのようなLS及びLRの値は、
不確実性の「エッジ」−最大区域及び各行および列に対するスイッチの外側のエッジ−を
決定するために見ることができる。
【0146】
なおも図33を参照する。ブロック3301及びブロック3305において、部分和が
比較される。言い換えると、ΣR,ΣS,ΣL(R),及びΣL(S)がそれぞれ、行お
よび列の最初のインデックスから最後のインデックスまで計算される。ΣS<ΣL(S)
及びΣR<ΣL(R)の場合はいつでも、行および列射影の「交差」がある。そのような
交差は行列の変数領域によって生じ、4スイッチの位置を示す。例えば、図32において
、入力項Cに対する部分和は互いに等しくない。ΣR=34であり、一方ΣL(R)=3
5である。言い換えると、射影の連続和(running sum)は、外側エッジの連続和よりも
小さい。これらの値が同じになる場合、射影は最大になる。不確実性の外側エッジが射影
よりも大きい場合は、全てのビットは「パック」されない。行Cにスイッチがある。これ
らの部分和が再度互いに等しくなる場合、スイッチは終了するが、スイッチはこの点を含
む。このため、行D及び行Eもスイッチの一部である。
【0147】
さらに図33を参照する。ブロック3306及びブロック3307において、動作は間
隔を置いて実行される。4スイッチを含む座標間隔が、行および列の互いとの交差を関連
付けすることによって発見される。例えば、図32は、行[C,E]が1つの間隔を形成
し、一方[G,H]が別の間隔を形成することを示している。同様に、[L,O]及び[
R,T]が列間隔を形成する。基本的な形状を使用して、4スイッチのコーナ座標(ブロ
ック3309)の中にこれらの間隔を関連付けする(ブロック3308)ことができる。
そのようなスイッチが行列の対角線上に存在するという制約を考えると、[C,E]行間
隔は[R,T]列間隔と交差し、一方[G,H]間隔は[L,O]間隔と交差する。各ス
イッチのコーナを決定する(ブロック3310)と、CRは1つのスイッチの左上のコー
ナにあるのに対して、ETは右下のコーナにある。一旦これらの位置が決定される(ブロ
ック3311)と、高く圧縮された{R,S}射影及び残余のスイッチの中に最大値を分
離することができる。
【0148】
スイッチを発見することは書込み動作の一部に過ぎないことは理解されよう。完全なシ
ステムは射影の各べき級数の最大部分を発見し記憶するだけではなく、残余のスイッチも
記憶できる。多くの従来の技術を使用して、スイッチを最大射影から別個のものとして表
示できるが、2進数の行列として明確に記憶することは、本発明のいくつかの実施形態の
中で使用できる1つの概念的に率直な技術である。
【0149】
図34は動作3400のフローチャートであり、最大射影と図34では「小さい」行列
と呼ぶスイッチ行列との両方を発見するために使用できる。小さいビットパターンはビッ
トアレイであり、そのまま極めて効率的に記憶することができる。行又は列の数がコンピ
ュータの符号化のワード長よりも小さい場合(ブロック3401)、この行列は小さい行
列として記憶される(ブロック3402)。例えば、32ビットの整数を使用する場合、
32ビットの射影が整数内に32ビットとして記憶され、行列が最大であろうとなかろう
と、書込み及び読取りのためにマシンレベルの動作により処理される。このため、16x
16の行列は各行を16ビットで表示できるのに対して、射影重みの整数表示は32ビッ
トと仮定できる。
【0150】
圧縮はより大きな行列に対して使用できる。この場合、図33で説明したようなスイッ
チを発見する動作(ブロック3403)は、任意のスイッチすなわち「ホール」を返す。
ホールがない場合(ブロック3404)、行列はブロック3405において最大行列とし
て戻され、その射影として直線的に記憶されることができる。ホールがある場合は、他の
いくつかの検討が行われる。さらなる圧縮が許可されない場合(ブロック3406)、動
作はその射影として最大行列を、小さい行列として4スイッチ区域を返す(ブロック34
07)。
【0151】
他方では、分割することができる比較的大きな4スイッチを持つこともでき、結果とし
て2つの最大行列が生ずる。分割動作(ブロック3408)の正確な技術は任意であるが
、始めの非最大の行列を2つに分割することは、少なくとも最大で潜在的に最も面倒なス
イッチを破壊することになる。2つの分割された行列はブロック3401に戻されて、そ
れらが小さい行列か、最大行列であるか、又はさらなる分割が必要かどうかが決定される

【0152】
本発明のいくつかの実施形態に基づいて、新しいトレース入力を現在の行列の中に埋め
込む動作(書込みすなわち記憶)が、図35で説明される。これらの実施形態では、カプ
セル化におけるオブジェクト指向の特性が使用される。これは全ての関連付けのビットご
との操作を避けることができ、いくつかの実施形態では、現在の表示を最も効率的で標準
的な表示にすることができる。このため、次の説明はマシン間隔の詳細な実現を指定しな
い。むしろ、その説明は多くの方法で実現できるいくつかの目的物の動作を指定する。
【0153】
図35では、すべての行列はIsummableのタイプである(ブロック3500)。このISu
mmableインターフェースでは、行列表示は3501において、その行および列の大きさ並
びにその行および列の射影を報告できる。最大行列及び小さい行列は、他の読取り及び書
込み機構の全てをこの差から切り離すことができるように、このインターフェースを実現
できる。
【0154】
さらに、ISummableは再帰的なものとすることができる。いずれか1つのISummableは、
リスト又はネストの中に他のISummableを幾つでも含むことができる。このため、ISummab
leを含むことにより、含まれたISummableの結果として生じた大きさ及び射影を照合する
ことができる。例えば、どの2つの最大射影も合算して、1つのISummableとして扱うこ
とができる。ISummable「ボックス」3500の外側からは、目的物が3501において
その大きさ(getNumRows及びgetNumCols)及び射影(getRowSums及びgetColSums)を報告
できる限り、それが1つの射影、多くの射影、又は小さい2進行列として実現されたもの
から構成されるかどうかは重要ではない。このため、行列の組合せを、それらの集合的な
大きさ及び射影により任意に構成及び処理することができる。
【0155】
図35に示すように、図28のライタ2880の一部とすることができる行列圧縮機3
503は、その内部構造を知らなくても、ISummable3500内の疑問符(?)で示すよ
うに、どのISummable3500も呼び出すことができる。その仮想的であるが完全な構造
のみを見れば、圧縮機3503は、最初の構成から最大行列3505及び新しい最適な構
成を作り出すことができる。
【0156】
図36は、第1のトレースからメモリを作るための第1の観察の実施例である。このト
レースは、図36の中でトレース行列と呼ばれる1つの最大行列の中で説明される。いく
つかの実施形態では、射影がトレース行列を反映できるため、完全な行列は使用されない
。さらに、行射影及び列射影も単独で完全な行列を表示できることを思い出してほしい。
このため、本発明のいくつかの実施形態では、行射影(図36ではTrace Rと呼ばれる)
のみしか表示する必要がない。第1の観察は、トレースの射影が、図36では20Memory
Matrixと呼ばれる、べき級数の第1のレベルにおいて第1のメモリになる場合である。
【0157】
第2の観察は別の新しいトレースの行列であり、これはこの実施例では、完全に満たさ
れた最大の三角行列である。図37はそのような完全行列は示していないが、新しいトレ
ースを所定のメモリに加えるためのISummableとして、どのように射影を処理できるかを
示している。
【0158】
第1に、図35の行列圧縮部3503は、どの素子がメモリと新しいトレースとの間で
冗長的であるかを発見する。これらのビット素子は、他の面のべき級数表示に対する桁上
げになる。前述した読取り方法を考えると、射影を用いてどの素子も決定することができ
る。メモリとトレースの両方でONのどの素子も図37の桁上げ位置に置かれて、メモリと
トレースの射影が低下される。図37の場合、トレース全体が桁上げになり、結果として
射影が低下されたメモリが生ずる。
【0159】
第2は、図37に示すように、当初の重みが変更されたので、それらはソートされた順
序ではない、このため、これらは再度ソートされる。
【0160】
第3は、行射影、列射影、及び完全行列は等価であり互いから導き出せるため、圧縮機
はcreateMatrix及びそのfindHoles方法(図34)を実行するために、行射影から列射影
を生成する。カーン及び部分和が計算される(図33)が、この場合、トレースをこのメ
モリ内に加えることにより、なおも最大であるメモリが結果として生ずるため、ホールは
存在しない。このため、更新され再ソートされた行射影は、べき級数内の第1のメモリを
正確に表示し続ける。図37に示すように、このメモリはその行射影として記憶されるが
、冗長な列射影は廃棄される。
【0161】
図37では、入力項の順序はその最初の順序から変更されていることに注意されたい。
特に、B及びCは交換されている。そのような細部は図37から除かれているが、本発明
の実施形態は外部の項を内部座標の中にマッピングするためにそのような変更を説明でき
る。説明できない場合は、本発明の実施形態は、項のリストを通して検索するたびに、各
項の射影を発見する必要がある。その代わり、本発明の実施形態は、各項に対してオフセ
ットのマップを保持することができる(ブロック3506)。これらのオフセットは、外
部の項からソートされた射影順序の中の内部位置へのマップとしての働きができる。
【0162】
最後に、桁上げはべき級数内の次のメモリに加えられるが、まだないため、最初のトレ
ースが図36で第1のメモリになったように、この桁上げはべき級数内の次のメモリにな
る。
【0163】
図38は、さらに別の実施形態を提供する。この場合この実施形態は、中に1つの小さ
いホールのオフセットとを含む最大射影から成る新しいISummable構成を作り出す。この
場合、最大射影として記憶された、CとEとの間の1つの新しい関連付けが、第1のべき
級数に加算される。しかしながら、関連付けが桁上げされるため、それは加算されるので
はなく除去されることに注意されたい。この記憶された射影に対する加算(実際は除去)
の結果、新しい複合のISummableが作られる。この複合のISummableは既にソートされた順
序であるため、再ソートする必要はない。上述したfindSwitches動作(図33)は、この
第1のべき級数の射影のCEの関連付けが実行された後、1つの小さい新しいホールを計
算する。射影のみからの判断では、CがE又はDと結び付いているかどうか(またそれに
より、Bがこの時E又はDと結び付いているかどうか)は不明である。しかしながら、IS
ummableの複合体を系統立てて調査することによって、真の状態を決定し、スイッチの明
確な行列の中に記憶することができる。スイッチの射影を最大射影から除くことによって
、射影の最大性が維持される。さらに、この実施例では、射影はスイッチを取り除いた後
でもソートの順序で続くため、再ソートを行う必要はない。
【0164】
要約すると、ISummableの事例の中の2つの行列の直接的な構成に対して、行列圧縮機
3503は、関連付けされた射影を分析することによって最適な新しいISummable350
7を構築できる。本発明のいくつかの実施形態の中で説明したような桁上げ行列を、同じ
方法で取り扱うことができる。桁上げ結果は、例えば、上記の線形の方法によって1つの
ビットレベルから読み取ることができ、第1のレベルの最初のトレースの行列と同様に、
次のビットレベルの構成の中で使用できる
【0165】
効率良くするために、各行列のインデックスは局所的で、より大きな行列のオフセット
に関連する。これらのオフセット3508,3509を使用して、アプリケーションの属
性値のインデックスと前述した全ての実施形態の中で使用できる局所的なインデックスと
の間を中継することができる。そのようなオフセットは、他の点では最大行列内のスイッ
チ(「ホール」)の位置を示すこともできる。
【0166】
他の技術はある程度の圧縮を行うことができるかもしれないが、他の技術は本発明の実
施形態の少なくとも1つを複製せずに、本発明の実施形態のレベルの圧縮を行うことはで
きない。特に、情報理論によれば、数の2進符号化はその最も効率的な符号化として知ら
れている。本発明のいくつかの実施形態に基づいて、重みをべき級数のビット行列の中に
分離することにより、この理想的な符号化を保存できる。任意の数の2進符号化と同様に
、この分離のスケーリング効果は、全体的に任意の対を成す関連付けの最大数(任意の非
2進行列内の最大数)に対して対数となることである。そのような対数のスケーリングは
、他の任意の1つの分離又は畳込みに取って代わられることはない。
【0167】
さらに、通常の行列の重み計数が2進の行列(重み無しの図表)に分割されると、4ス
イッチが解決すべき1つの唯一の問題であることが示されている。具体的に言うと、4ス
イッチの問題が{R,S}射影から行列を再構成する上での唯一の問題であることは周知
である。本発明の実施形態は、そのようなスイッチを識別、分離、及び分割することによ
ってその問題に取り組むことができる。このため、べき級数の分離は、分解に対する最良
の可能な主要な技術であり、この方式に従えば、本願で説明したようなスイッチについて
の固有の問題に対する1つの唯一の解決法がある。
【0168】
図面及び明細書の中で、本発明の実施形態を開示してきた。特定の用語が使用されるが
、それらの用語は一般的で説明のためのみに使用されたものであり、限定する目的で使用
したのではない。本発明の範囲は、以下の特許請求の範囲において述べる。



【特許請求の範囲】
【請求項1】
複数の入力部と、
それぞれの1つが前記複数の入力部のそれぞれの1つに関連付けされた複数のデンドラ
イトであって、前記デンドライトの少なくともいくつかが重みのべき級数を含み、前記べ
き級数の少なくとも1つの累乗における前記重みの少なくともいくつかが最大射影を規定
する複数のデンドライトと
を含む人工ニューロン。
【請求項2】
前記べき級数の少なくとも1つの累乗が少なくとも1つのスイッチも含むことを特徴と
する請求項1に記載の人工ニューロン。
【請求項3】
前記重みのべき級数が基数2の重みのべき級数であり、前記べき級数の少なくとも1つ
の累乗における前記少なくともいくつかの重みが最大行射影及び/又は最大列射影を規定
することを特徴とする請求項2に記載の人工ニューロン。
【請求項4】
前記最大行射影及び/又は前記最大列射影がそれぞれ行射影及び/又は列射影の合計に
よってソートされることを特徴とする請求項3に記載の人工ニューロン。
【請求項5】
前記関連付けされた入力部において入力信号に応答し、前記最大行射影及び/又は前記
最大列射影の位置に前記入力信号の活性化をマッピングするように構成されたトレースを
さらに含むことを特徴とする請求項3に記載の人工ニューロン。
【請求項6】
前記べき級数の少なくとも1つの累乗における前記少なくともいくつかの重みをマッピ
ングするように構成され、前記最大行射影及び/又は前記最大列射影を規定するルータを
さらに含むことを特徴とする請求項3に記載の人工ニューロン。
【請求項7】
前記べき級数の少なくとも1つの累乗における前記少なくともいくつかの重みをマッピ
ングするように構成され、前記最大行射影及び/又は前記最大列射影を規定するルータを
さらに含むことを特徴とする請求項5に記載の人工ニューロン。
【請求項8】
前記トレースに応答して前記最大行射影及び/又は前記最大列射影における活性化され
たサブセットを決定し、前記活性化されたサブセットの各列に対して、前記列のインデッ
クス以上の最小の行射影を選択するように構成されたリーダをさらに含むことを特徴とす
る 請求項5に記載の人工ニューロン。
【請求項9】
前記関連付けされた列のインデックス以上の前記最小の行射影を、前記活性化されたサ
ブセットの列に対して蓄積して、これにより、前記入力信号の前記重みに対する関連を得
るように前記リーダがさらに構成されることを特徴とする請求項8に記載の人工ニューロ
ン。
【請求項10】
前記トレースを前記最大射影及び前記スイッチの中に埋め込むように構成されたライタ
をさらに含むことを特徴とする請求項5に記載の人工ニューロン。
【請求項11】
前記ライタが前記トレースと前記最大射影との間に冗長な射影を見つけるように構成さ
れた行列圧縮部を含むことを特徴とする請求項10に記載の人工ニューロン。
【請求項12】
前記それぞれのデンドライトが前記重みのべき級数を含み、前記べき級数のそれぞれの
累乗におけるそれぞれの重みが最大射影を規定することを特徴とする請求項1に記載の人
工ニューロン。
【請求項13】
複数の入力部と、
それぞれの1つが前記複数の入力部のそれぞれの1つに関連付けされた複数のデンドラ
イトであって、前記デンドライトの少なくともいくつか重みを含み、前記重みの少なくと
もいくつかが最大射影を規定する複数のデンドライトと
を含む人工ニューロン。
【請求項14】
少なくとも1つのスイッチをさらに含むことを特徴とする請求項13に記載の人工ニュ
ーロン。
【請求項15】
前記最大射影が最大行射影及び/又は最大列射影を含むことを特徴とする請求項14に
記載の人工ニューロン。
【請求項16】
前記最大行射影及び/又は前記最大列射影がそれぞれ行射影及び/又は列射影の合計に
よってソートされることを特徴とする請求項15に記載の人工ニューロン。
【請求項17】
前記関連付けされた入力部において入力信号に応答し、前記最大行射影及び/又は前記
最大列射影の位置に前記入力信号の活性化をマッピングするように構成されたトレースを
さらに含むことを特徴とする請求項15に記載の人工ニューロン。
【請求項18】
前記少なくともいくつかの重みをマッピングするように構成され、前記最大行射影及び
/又は前記最大列射影を規定するルータをさらに含むことを特徴とする請求項15に記載
の人工ニューロン。
【請求項19】
前記少なくともいくつかの重みをマッピングするように構成され、前記最大行射影及び
/又は前記最大列射影を規定するルータをさらに含むことを特徴とする請求項17に記載
の人工ニューロン。
【請求項20】
前記トレースに応答して前記最大行射影及び/又は前記最大列射影における活性化され
たサブセットを決定し、前記活性化されたサブセットの各列に対して、前記列のインデッ
クス以上の最小の行射影を選択するように構成されたリーダをさらに含むことを特徴とす
る請求項17に記載の人工ニューロン。
【請求項21】
前記関連付けされた列のインデックス以上の前記最小の行射影を、前記活性化されたサ
ブセットの列に対して蓄積して、これにより、前記入力信号の前記重みに対する関連を得
るように前記リーダがさらに構成されることを特徴とする請求項20に記載の人工ニュー
ロン。
【請求項22】
前記トレースを前記最大射影及び前記スイッチの中に埋め込むように構成されたライタ
をさらに含むことを特徴とする請求項17に記載の人工ニューロン。
【請求項23】
前記ライタが前記トレースと前記最大射影との間に冗長な射影を見つけるように構成さ
れた行列圧縮部を含むことを特徴とする請求項22に記載の人工ニューロン。
【請求項24】
それぞれのデンドライトが最大射影を規定するそれぞれの重みを含むことを特徴とする
請求項13に記載の人工ニューロン。
【請求項25】
複数の入力部と、それぞれが前記複数の入力部のそれぞれの1つと関連付けされている
複数のデンドライトとを含む人工ニューロンを動作させる方法であって、前記方法が、
前記デンドライトの少なくともいくつかに対して重みのべき級数を生成するステップを
含み、前記べき級数の少なくとも1つの累乗における前記重みの少なくともいくつかが最
大射影を規定する方法。
【請求項26】
前記生成するステップが前記べき級数の少なくとも1つの累乗に対してスイッチを生成
するステップをさらに含むことを特徴とする請求項25に記載の方法。
【請求項27】
前記重みのべき級数が基数2の重みのべき級数であり、前記生成するステップが最大行
射影及び/又は最大列射影を前記べき級数の少なくとも1つの累乗の重みに対して生成す
るステップをさらに含むことを特徴とする請求項26に記載の方法。
【請求項28】
前記生成するステップが、前記行射影及び/又は前記列射影の合計によりソートするこ
とによって、前記最大行射影及び/又は前記最大列射影をそれぞれ生成するステップをさ
らに含むことを特徴とする請求項27に記載の方法。
【請求項29】
前記最大行射影及び/又は前記最大列射影の位置に前記入力信号の活性化をマッピング
するステップをさらに含むことを特徴とする請求項27に記載の方法。
【請求項30】
前記最大行射影及び/又は前記最大列射影を規定するために、前記べき級数の少なくと
も1つの累乗における前記少なくともいくつかの重みをマッピングするステップをさらに
含むことを特徴とする請求項27に記載の方法。
【請求項31】
前記最大行射影及び/又は前記最大列射影を規定するために、前記べき級数の少なくと
も1つの累乗における前記少なくともいくつかの重みをマッピングするステップをさらに
含むことを特徴とする請求項29に記載の方法。
【請求項32】
前記マッピングするステップに応答して前記最大行射影及び/又は前記最大列射影の中
で活性化されたサブセットを決定するステップと、
前記活性化されたサブセットの各列に対して、前記列のインデックス以上の最小の行射
影を選択するステップと
をさらに含むことを特徴とする請求項29に記載の方法。
【請求項33】
前記関連付けされた列のインデックス以上の前記最小の行射影を前記活性化されたサブ
セットの列に対して蓄積するステップをさらに含み、これにより、前記入力信号の前記重
みに対する関連付けを得ることを特徴とする請求項32に記載の方法。
【請求項34】
前記最大射影及び前記スイッチの中に前記マッピングされた活性化を埋め込むステップ
をさらに含むことを特徴とする請求項29に記載の方法。
【請求項35】
前記埋め込むステップが、
前記マッピングされた活性化と前記最大射影との間に冗長な射影を発見するステップを
含むことを特徴とする請求項34に記載の方法。
【請求項36】
前記生成するステップが、
前記それぞれのデンドライトに対してそれぞれの重みのべき級数を生成するステップを
含み、前記べき級数のそれぞれの累乗における前記それぞれの重みが最大射影を規定する
ことを特徴とする請求項25に記載の方法。
【請求項37】
複数の入力部と、それぞれが前記複数の入力部のそれぞれの1つと関連付けされている
複数のデンドライトとを含む人工ニューロンを動作させる方法であって、前記方法が、
前記デンドライトの少なくともいくつかに対して最大射影を生成するステップを含む、
方法。
【請求項38】
前記生成するステップが前記デンドライトに対するスイッチを生成するステップをさら
に含むことを特徴とする請求項37に記載の方法。
【請求項39】
前記生成するステップが前記少なくともいくつかのデンドライトに対して最大行射影及
び/又は最大列射影を生成するステップをさらに含むことを特徴とする請求項38に記載
の方法。
【請求項40】
前記生成するステップが、それぞれ前記行射影及び/又は前記列射影の合計によりソー
トすることによって前記最大行射影及び/又は前記最大列射影を生成するステップをさら
に含むことを特徴とする請求項39に記載の方法。
【請求項41】
前記最大行射影及び/又は前記最大列射影の位置に前記入力信号の活性化をマッピング
するステップをさらに含むことを特徴とする請求項39に記載の方法。
【請求項42】
前記最大行射影及び/又は前記最大列射影を規定するために、前記少なくともいくつか
の射影をマッピングするステップをさらに含むことを特徴とする請求項39に記載の方法

【請求項43】
前記最大行射影及び/又は前記最大列射影を規定するために、前記少なくともいくつか
の射影をマッピングするステップをさらに含むことを特徴とする請求項41に記載の方法

【請求項44】
前記マッピングするステップに応答して、前記最大行射影及び/又は前記最大列射影に
おける活性化されたサブセットを決定するステップと、
前記活性化されたサブセットの各列に対して、前記列のインデックス以上の最小の行射
影を選択するステップと
をさらに含むことを特徴とする請求項41に記載の方法。
【請求項45】
前記関連付けされた列のインデックス以上の前記最小の行射影を前記活性化されたサブ
セットの列に対して蓄積するステップをさらに含み、これにより、前記入力信号の前記重
みに対する関連付けを得ることを特徴とする請求項44に記載の方法。
【請求項46】
前記最大射影及び前記スイッチの中に前記マッピングされた活性化を埋め込むステップ
をさらに含むことを特徴とする請求項41に記載の方法。
【請求項47】
前記埋め込むステップが、
前記マッピングされた活性化と前記最大射影との間に冗長な射影を発見するステップを
含むことを特徴とする、請求項46に記載の方法。
【請求項48】
前記生成するステップが、
前記複数のデンドライトに対して最大射影を生成するステップを含むことを特徴とする
、請求項37に記載の方法。
【請求項49】
媒体の中に組み込まれたコンピュータが読取り可能なプログラムコードを有するコンピ
ュータが読取り可能な記憶媒体を含む、人工ニューロンを提供するためのコンピュータプ
ログラムの製品であって、前記コンピュータが読取り可能なプログラムコードが、
複数の入力部を提供するように構成されたコンピュータが読取り可能なプログラムコー
ドと、
それぞれの1つが前記複数の入力部のそれぞれの1つに関連付けされた複数のデンドラ
イトを提供し、前記デンドライトの少なくともいくつかが重みのべき級数を含み、前記べ
き級数の少なくとも1つの累乗における前記重みの少なくともいくつかが最大射影を規定
するように構成されたコンピュータが読取り可能なプログラムコードと
を含む、コンピュータプログラムの製品。
【請求項50】
前記べき級数の少なくとも1つの累乗が少なくとも1つのスイッチも含むことを特徴と
する請求項49に記載のコンピュータプログラムの製品。
【請求項51】
前記重みのべき級数が基数2の重みのべき級数であり、前記べき級数の少なくとも1つ
の累乗における前記重みの少なくとも1つが最大行射影及び/又は最大列射影を規定する
ことを特徴とする請求項50に記載のコンピュータプログラムの製品。
【請求項52】
前記最大行射影及び/又は前記最大列射影がそれぞれ行射影及び/又は列射影の合計に
よりソートされることを特徴とする請求項51に記載のコンピュータプログラムの製品。
【請求項53】
前記関連付けされた入力部において入力信号に応答し、前記入力信号の活性化を前記最
大行射影及び/又は前記最大列射影の位置にマッピングするように構成されたトレースを
提供するように構成されたコンピュータが読取り可能なプログラムコードをさらに含むこ
とを特徴とする請求項51に記載のコンピュータプログラムの製品。
【請求項54】
前記べき級数の少なくとも1つの累乗における前記少なくともいくつかの重みをマッピ
ングするように構成されて、前記最大行射影及び/又は前記最大列射影を規定するルータ
を提供するように構成されたコンピュータが読取り可能なプログラムコードをさらに含む
ことを特徴とする請求項50に記載のコンピュータプログラムの製品。
【請求項55】
前記べき級数の少なくとも1つの累乗における前記少なくともいくつかの重みをマッピ
ングするように構成されて、前記最大行射影及び/又は前記最大列射影を規定するルータ
を提供するように構成されたコンピュータが読取り可能なプログラムコードをさらに含む
ことを特徴とする請求項52に記載のコンピュータプログラムの製品。
【請求項56】
前記トレースに応答して前記最大行射影及び/又は前記最大列射影における活性化され
たサブセットを決定し、前記活性化されたサブセットの各列に対して、前記列のインデッ
クス以上の最小の行射影を選択するように構成されたリーダを提供するように構成された
コンピュータが読取り可能なプログラムコードをさらに含むことを特徴とする請求項52
に記載のコンピュータプログラムの製品。
【請求項57】
前記リーダを提供するように構成されたコンピュータが読取り可能なプログラムコード
が、前記関連付けされた列のインデックス以上の前記最小の行射影を前記活性化されたサ
ブセットの列に対して蓄積して、これにより、前記入力信号の前記重みに対する関連を得
るようにさらに構成されることを特徴とする請求項56に記載のコンピュータプログラム
の製品。
【請求項58】
前記トレースを前記最大射影及び前記スイッチの中に埋め込むように構成されたライタ
を提供するように構成されたコンピュータが読取り可能なプログラムコードをさらに含む
ことを特徴とする請求項52に記載のコンピュータプログラム。
【請求項59】
前記ライタを提供するように構成されたコンピュータが読取り可能なプログラムコード
が、前記トレースと前記最大射影との間に冗長な射影を見つけるように構成された行列圧
縮部を提供するように構成されたコンピュータが読取り可能なプログラムコードを含むこ
とを特徴とする 請求項58に記載のコンピュータプログラムの製品。
【請求項60】
複数のデンドライトを提供するように構成された前記コンピュータが読取り可能なプロ
グラムコードが、それぞれの1つが前記複数の入力部のそれぞれの1つに関連付けされた
複数のデンドライトを提供し、前記それぞれのデンドライトが重みのべき級数を含み、前
記べき級数のそれぞれの累乗における前記それぞれの重みが最大射影を規定するように構
成されたコンピュータが読取り可能なプログラムコードを含むことを特徴とする請求項4
9に記載のコンピュータプログラムの製品。
【請求項61】
媒体の中に組み込まれたコンピュータが読取り可能なプログラムコードを有するコンピ
ュータが読取り可能な記憶媒体を含む、人工ニューロンを提供するためのコンピュータプ
ログラムの製品であって、前記コンピュータが読取り可能なプログラムコードが、
複数の入力部を提供するように構成されたコンピュータが読取り可能なプログラムコー
ドと、
それぞれの1つが前記複数の入力部のそれぞれの1つに関連付けされた複数のデンドラ
イトを提供し、前記少なくともいくつかのデンドライトが重みを含み、前記少なくともい
くつかの重みが最大射影を規定するように構成されたコンピュータが読取り可能なプログ
ラムコードと
を含む、コンピュータプログラムの製品。
【請求項62】
少なくとも1つのスイッチを提供するようにコンピュータが読取り可能なプログラムコ
ードをさらに含むことを特徴とする請求項61に記載のコンピュータプログラムの製品。
【請求項63】
前記最大射影が最大行射影及び/又は最大列射影を含むことを特徴とする請求項62に
記載のコンピュータプログラムの製品。
【請求項64】
前記最大行射影及び/又は前記最大列射影がそれぞれ行射影及び/又は列射影の合計に
よりソートされることを特徴とする請求項63に記載のコンピュータプログラムの製品。
【請求項65】
前記関連付けされた入力部において入力信号に応答し、前記入力信号の活性化を前記最
大行射影及び/又は前記最大列射影の位置にマッピングするように構成されたトレースを
提供するように構成されたコンピュータが読取り可能なプログラムコードをさらに含むこ
とを特徴とする請求項63に記載のコンピュータプログラムの製品。
【請求項66】
前記少なくともいくつかの重みをマッピングするように構成されて、前記最大行射影及
び/又は前記最大列射影を規定するルータを提供するように構成されたコンピュータが読
取り可能なプログラムコードをさらに含むことを特徴とする請求項63に記載のコンピュ
ータプログラムの製品。
【請求項67】
前記少なくともいくつかの重みをマッピングするように構成されて、前記最大行射影及
び/又は前記最大列射影を規定するルータを提供するように構成されたコンピュータが読
取り可能なプログラムコードをさらに含むことを特徴とする請求項65に記載のコンピュ
ータプログラムの製品。
【請求項68】
前記トレースに応答して前記最大行射影及び/又は前記最大列射影における活性化され
たサブセットを決定し、前記活性化されたサブセットの各列に対して、前記列に対のイン
デックス以上の最小の行射影を選択するように構成されたリーダを提供するように構成さ
れたコンピュータが読取り可能なプログラムコードをさらに含むことを特徴とする請求項
65に記載のコンピュータプログラムの製品。
【請求項69】
前記リーダを提供するように構成されたコンピュータが読取り可能なプログラムコード
が、前記関連付けされた列のインデックス以上の前記最小の行射影を前記活性化されたサ
ブセットの列に対して蓄積して、これにより、前記入力信号の前記重みに対する関連を得
るようにさらに構成されることを特徴とする請求項68に記載のコンピュータプログラム
の製品。
【請求項70】
前記トレースを前記最大射影及び前記スイッチの中に埋め込むように構成されたライタ
を提供するように構成されたコンピュータが読取り可能なプログラムコードをさらに含む
ことを特徴とする請求項65に記載のコンピュータプログラムの製品。
【請求項71】
前記ライタを提供するように構成されたコンピュータが読取り可能なプログラムコード
が、前記トレースと前記最大射影との間に冗長な射影を見つけるように構成された行列圧
縮部を提供するように構成されたコンピュータが読取り可能なプログラムコードを含むこ
とを特徴とする請求項70に記載のコンピュータプログラムの製品。
【請求項72】
複数のデンドライトを提供するように構成された前記コンピュータが読取り可能なプロ
グラムコードが、それぞれの1つが前記複数の入力部のそれぞれの1つに関連付けされた
複数のデンドライトを提供し、前記それぞれ1つのデンドライトがそれぞれの重みを含み
、前記それぞれの重みが最大射影を規定するように構成されたコンピュータが読取り可能
なプログラムコードを含むことを特徴とする請求項61に記載のコンピュータプログラム
の製品。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17A】
image rotate

【図17B】
image rotate

【図17C】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate


【公開番号】特開2010−15579(P2010−15579A)
【公開日】平成22年1月21日(2010.1.21)
【国際特許分類】
【外国語出願】
【出願番号】特願2009−183637(P2009−183637)
【出願日】平成21年8月6日(2009.8.6)
【分割の表示】特願2003−519880(P2003−519880)の分割
【原出願日】平成14年8月9日(2002.8.9)
【出願人】(504052800)サフロン・テクノロジー,インコーポレイテッド (2)