JPH05282272A - ニューラルネットワーク並列分散処理装置 - Google Patents

ニューラルネットワーク並列分散処理装置

Info

Publication number
JPH05282272A
JPH05282272A JP4077246A JP7724692A JPH05282272A JP H05282272 A JPH05282272 A JP H05282272A JP 4077246 A JP4077246 A JP 4077246A JP 7724692 A JP7724692 A JP 7724692A JP H05282272 A JPH05282272 A JP H05282272A
Authority
JP
Japan
Prior art keywords
memory
data
storage unit
row
broadcast
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP4077246A
Other languages
English (en)
Inventor
Akira Iwata
彰 岩田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MAITETSUKU KK
Original Assignee
MAITETSUKU KK
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MAITETSUKU KK filed Critical MAITETSUKU KK
Priority to JP4077246A priority Critical patent/JPH05282272A/ja
Publication of JPH05282272A publication Critical patent/JPH05282272A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】 【目的】 ニューラルネットワークに関する演算に必要
なプロセッサ間の通信コストを低減し、ニューラルネッ
トワークの演算の効率的な並列処理を実現する。 【構成】 メモリを行列状に配置し、行方向と列方向に
メモリを高速で切替えるスイッチを設け、同報書き込み
行列共有メモリを構成する。行列セレクト信号PSが、
例えばHレベルならばポートAを通じて行方向へのアク
セスが、LレベルならばポートBを通じて列方向のアク
セスができる。メモリ部に与えられたアドレスは列方向
アクセスの場合は各行内に、行方向アクセスの場合は各
列内にメモリモジュールに振り分けられる。これによ
り、各ニューロンユニット内部の演算を各プロセッサで
独自に並列して行うことができる。また、その演算結果
を同時に複数の番地に書き込むことによって、次のタイ
ミングで別々のプロセッサで必要となるデータを1回の
同報書き込みにより遅延なく各プロセッサに分配するこ
とができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、ニューロコンピュー
ティングに関するものであり、特に、ニューラルネット
ワークの演算処理装置に関するものである。
【0002】
【従来の技術】図1に示すような多入力1出力の素子が
ニューロンモデルである。素子の入力xi に、重みとし
てwi を乗じたものをそれぞれの入力についての和をと
り、それに応答関数をかけることにより出力yを得る。
応答関数は主にシグモイド関数が多く用いられる。
【0003】このニューロンモデルの出力を他のニュー
ロンモデルの入力に結合して、ネットワークを形成した
ものがニューラルネットワークである。ニューロンの結
合方法としては主として階層型ニューラルネットワーク
と相互結合型ニューラルネットワークがある。 [誤差逆伝搬学習法(バックプロパゲーション)]誤差
逆伝搬学習法(バックプロパゲーション:以下BPと
略)は階層型の結合を持つニューラルネットワークにお
ける教師つき学習法の一つである。ネットワークは図2
に示す構造をもつ。以下の説明は3層構造のネットワー
クを対象にする。入力に近い層から順に入力層、中間層
(または隠れ層)、出力層と呼ぶ。
【0004】学習は、前向き(forward)演算と後向き
(backword) 演算に分けられる。前向き演算は入力信号
によってデータを入力層から出力層に伝搬させ出力ニュ
ーロン値を得るものである。まず、入力層の入力値xi
と入力層−中間層の荷重wjiから中間層のニューロン値
j を得る。
【0005】
【数1】
【0006】
【数2】
【0007】同様にして、中間層の入力値zjと中間層
−出力層の荷重wkjから出力層のニューロン値yk を得
る。後向き演算は出力誤差を出力層から入力層に伝搬さ
せ、出力ニューロン値と教師信号との誤差を少なくする
ように荷重を変更するものである。出力ニューロン値y
k と教師信号tk から得られる出力層での誤差Eが減少
するように中間層−出力層の荷重wkjを変化させること
を考えて、荷重wkjの修正量Δwkjを与える。 Δωkj=ηδkj ただし、ηは学習係数である。また、 δk=(tk−yk)yk(1−yk) である。さらに、荷重の1回前の修正量にモーメンタム
αを掛けたものを考慮して学習速度を向上させる。 Δωkj(t)=ηδkj+αΔωkj(t−1) ただし、tは学習回数をしめす。
【0008】同様にして、誤差Eが減少するように入力
層−中間層の荷重wjiを変化させる。ただし、 Δωji=ηδji
【0009】ただし、
【数3】
【0010】とする。さらに、モーメンタムαを考慮し
て荷重の1回前の修正量にモーメンタムαを掛けた荷重
jiの修正量Δwjiを次の式で与える。
【0011】
【数4】
【0012】η:学習係数 α:モ−メンタム ニューラルネットワーク演算処理は、基本的に並列的な
処理である。そのため複数のプロセッサを何等かの方法
で結合して効率的に並列処理を行う手法が必要となる。
並列処理アーキテクチャとして従来知られているものに
リング結合アーキテクチャがある。
【0013】[リング結合アーキテクチャ]リング結合
アーキテクチャの構成は、複数のデータ転送を同時に実
行するために各プロセッサ間をリング状に結合してい
る。実際にはデュアルポートメモリを用いて各プロセッ
サのメモリの一部を共有する。リング結合アーキテクチ
ャによる前方向伝搬の概念図を図3に示す。各プロセッ
サは保有しているニューロンから結合されている荷重を
ローカルメモリに保持する。各プロセッサは自分が持っ
ているニューロン値Xi と荷重Wjiを掛け合わせ、その
値に左側のプロセッサから受けた値を加える。この操作
を同図に示した様に規則正しくプロセッサ数(回)だけ
行い、最後にその値を応答間数に入力することによっ
て、各プロセッサは次層の各ニューロンのポテンシャル
を得ることができる。
【0014】後方向伝搬の概念図を図4に示す。出力層
の誤差は各プロセッサが独自に計算することができる
が、中間層の誤差を求める場合には、出力層の誤差を各
プロセッサを巡回させながらその誤差に対応する荷重と
の積を求め、その値を合計すれば求めることができる。
また、他の方法の並列処理アーキテクチャとしてグロー
バルバスを用いたコモンブロードキャストバスアーキテ
クチャが知られている。
【0015】[コモンブロードキャストバスアーキテク
チャ]コモンブロードキャストバスアーキテクチャは、
全てのプロセッサを一本のグローバルバス(共通バス)
上に結合したものである。構成図を図5に示した。バス
には同時に1つのプロセッサからしかデータが送信でき
ない。受信は複数のプロセッサで同時に行うことができ
る。メモリは各プロセッサが分散して保持している。こ
れをハードウエアで実現する場合、プロセッサからみて
あるアドレスをデコードしたときの出力データが共有バ
スに出力されるようにしておけばよい。
【0016】BP演算処理は、同図に示すように荷重
(W)、ニューロン(X)をプロセッサのメモリに配分
する。ニューロンはプロセッサ数に応じて分割する。前
方向演算の概念を図6に示す。あるプロセッサがローカ
ルメモリに保持しているニューロン値をバスに送出し、
全プロセッサがその値とメモリ内の対応する荷重を掛け
合わせ、その値を累積していく。全てのプロセッサが送
信を完了すれば、それぞれのニューロンのポテンシャル
が求める。この時のブロードキャスト回数はニューロン
数(回)である。
【0017】後方向演算の概念を図7に示す。ΣWkjδ
k を求める必要があるが、この各項はそれぞれ別のプロ
セッサで計算するため、合計を求めるにはプロセッサ数
(回)のブロードキャストをあるプロセッサに対して行
わなければいけない。この時のブロードキャスト数はニ
ューロン数×プロセッサ数(回)となる。
【0018】
【発明が解決しようとする課題】先に述べたようにして
リング結合によってBP演算を行うことができるが、リ
ング結合は一般にプロセッサ間をデュアルポートメモリ
で結合するため、値の受渡しには1回のストアと1回の
ロードが必要になる。ネットワーク規模(ニューロン
数)に対して、プロセッサ数が多すぎると、1つのプロ
セッサで担当する計算量が減り、相対的にデータ転送の
ためのオーバーヘッドの割合が増加して性能向上比が低
下する。また、このアーキテクチャはBP演算において
の前方向、後方向の演算が著しく異なるためソフトウエ
アの記述が困難である。
【0019】また、従来のブロードキャストバスアーキ
テクチャでは、バックプロパゲーションの後方向演算時
に、ブロードキャストの回数が増加するという問題があ
る。そこで、プロセッサ間の通信コストを低減し、ニュ
ーラルネットワーク演算を効率的に処理できるようにし
て演算処理速度を高速化する並列処理装置を実現するた
めに解決すべき技術的課題が生じている。この発明は上
述した課題を解決することを目的とするものである。
【0020】
【課題を解決するための手段】この発明は、上記目的を
達成するために提案するものであり、複数の処理ユニッ
トと、全ての処理ユニットが共有して使用する共有記憶
ユニットを持つ並列処理装置において、共有記憶ユニッ
トに行列形式のデータを格納したとき、あるときは、各
々の行データごとに共有記憶ユニットが分割され、別々
の処理ユニットにおいて各々の行データに関する演算処
理を同時に実行できる機能と、また、別の時間には、各
々の列データごとに共有記憶ユニットが分割され、別々
の処理ユニットにおいて各々の列データに関する演算処
理を同時に実行できる機能を有する行列型共有記憶ユニ
ットを設けたニューラルネットワーク並列分散処理装
置、並びに上記並列処理装置において、各々の行データ
ごとに共有記憶ユニットが分割されたときに、各々の処
理ユニットから一つのデータを、分割された記憶ユニッ
ト内において各列要素に相当する複数の記憶番地に同時
に書き込む同報書き込み機能と、各々の列データごとに
共有記憶ユニットが分割されたときに、各々の処理ユニ
ットから一つのデータを、分割された記憶ユニット内に
おいて各行要素に相当する複数の記憶番地に同時に書き
込む同報書き込み機能を有するニューラルネットワーク
並列分散処理装置を提供するものである。
【0021】
【作用】請求項1記載の発明は、行列形式のデータを共
有メモリに格納したとき、各々の行(あるいは列)デー
タごとに共有記憶ユニットが分割され、別々の処理ユニ
ットにおいて各々の行(あるいは列)データに関する演
算処理を同時に実行できる。
【0022】請求項2記載の発明は、さらに、各々の行
(あるいは列)データごとに共有記憶ユニットが分割さ
れたとき、各々の処理ユニットから一つのデータを、分
割された記憶ユニット内において各列(あるいは行)要
素に相当する複数の記憶番地に同時に書き込む(同報書
き込み)ことができる。
【0023】
【実施例】以下、この発明の実施例を詳述する。先ず同
報書き込みの概念を図8に示す。このメモリは行方向か
らみた各列について、または列方向からみた各行につい
て一度の書き込みで同時に書き込める同報書き込み機能
を有する。
【0024】そして、コモンブロードキャストバスアー
キテクチャのブロードキャストの回数を減らすため、図
9に示した行列型の共有メモリを導入する。このメモリ
はプロセッサのメモリアクセスが行方向、列方向に変化
できるようにする。つまり各プロセッサの荷重メモリ
は、ある瞬間には行方向、ある瞬間には列方向になり得
る。そして、前述の同報書き込み機能を付加した行列型
共有メモリーアーキテクチャを用いてBP演算処理の高
速化を図る。
【0025】[BP演算処理]まず前方向演算について
述べる。前方向演算の概念図を図11乃至図15に示
す。
【0026】step1 入力ニューロン値は各プロセッサ
内のレジスタに保持される(図11)。 step2 メモリを列方向にして全プロセッサは入力ニュ
ーロン値Xi を同報書き込みする。これによりメモリを
行方向にしても各プロセッサは全ての入力ニューロン値
を知ることができる(図12)。 step3 メモリを行方向にして入力ニューロン値Xi
荷重Vjiから中間ニューロン値Yj を計算する(図1
3)。 step4 メモリを列方向にして全プロセッサは中間ニュ
ーロン値Yj を同報書き込みする。これによりメモリを
行方向にしても各プロセッサは全ての中間ニューロン値
を知ることができる(図14)。 step5 メモリを列方向にして中間ニューロン値Yj
荷重Wkjから出力ニューロン値Zk を計算する(図1
5)。
【0027】次に後方向演算について述べる。概念図を
図16乃至図18に示す。 step1 前方向演算の結果得られた出力ニューロン値Z
k と教師信号から出力層の誤差δk を計算する(図1
6)。 step2 メモリを行方向にして全プロセッサは出力層誤
差δk を同報書き込みする。これによりメモリを列方向
にしても各プロセッサは全ての出力層誤差を知ることが
できる(図17)。 step3 メモリを列方向にして、出力層誤差δk と荷重
kjから中間層誤差Δj を計算する(図18)。
【0028】このようにして、行方向と列方向にメモリ
を切替えることにより、効率の良いBP演算を行うこと
ができる。
【0029】[自己組織化ネットワーク]自己組織化ニ
ューラルネットワークはKohonen によって提案されたネ
ットワークモデルであり、教師なしでベクトル組織化の
学習を行う。ニューロンは図19のように2次元に配置
される。この自己組織化はシナプス結合の適応変化がII
cbb 則と忘却効果に基づいて行われる。この自己組織化
を繰り返すと、各ニューロンの荷重(参照ベクトル)は
そのニューロンに最も距離が近い入力ベクトルを代表す
るパターンが生成される。そしてこのニューロンの近傍
には互いに似通った参照ベクトルが存在するようにな
る。
【0030】参照ベクトルは以下のように形成される。
ここで xk =(xk1,xk2,…,xkn) (k番目の入力ベクトル) ωi (t) =(ωi1(t) ,ωi2(t) ,…,ωin(t) ) (時刻tでのニューロンiの参照ベクトル) である。
【0031】step0 全ての参照ベクトルωi (t) を
乱数で初期化する。 ωi (0) :乱数で初期化 それぞれの入力ベクトルについてstep1,step2を繰り
返す。 step1 入力ベクトルxk に対しての最短距離にある最
適結合ニューロンcを求める。
【0032】
【数5】
【0033】step2 最短距離ニューロンcの周りのニ
ューロンの集合Nc (t) について参照ベクトルを修正す
る。
【0034】
【数6】
【0035】α(t) は学習係数であり一般には単調減少
関数である。Nc (t) は最適整合ニューロンcの近傍に
あるニューロンの集合であり、学習回数とともに値を小
さくしていく。
【0036】[Kohonen モデル演算処理]次にKohonen
モデルの演算を同報書き込み行列型共有メモリによって
実現する方法を述べる。この概念図を図20乃至図23
に示す。メモリの列方向にそれぞれ参照ベクトルを配置
する。入力ニューロン値はあらかじめそれぞれの列に与
えられているとする。もし与えられていなければ行方向
に同報書き込みをしておく。
【0037】step1 図20に示すようにメモリを配置
する。 step2 メモリを列方向にしてそれぞれのプロセッサが
入力ベクトルXと参照ベクトルWとの距離Dを求め、次
に距離Dを行方向に同報書き込みを行う。これによって
列方向ではすべてのプロセッサが距離Dを知ることがで
きる(図21)。 step3 プロセッサを代表してPE1が行方向に距離D
をスキャンして最小値を求める。このとき他のプロセッ
サは休止する。この得られた最小値を算出した参照ベク
トルが最適整合ニューロンである。この最小値のニュー
ロン番号をPE1が行方向に同報書き込みを行う。これ
により列方向ではすべてのプロセッサが最適整合ニュー
ロン番号を知ることができる(図22)。
【0038】step4 メモリを列方向にして、各プロセ
ッサが担当するニューロンが最適整合ニューロンの近傍
にある場合は、各参照ベクトルを入力ベクトルに近づけ
る処理を行う(図23)。
【0039】このようにしてKohonen モデルの演算が同
報書き込み行列型共有メモリで適用できる。step3にお
いて、プロセッサが2n 個であれば2分探索を行う要領
でnのオーダで並列に実行することはできるが、処理が
面倒になる事とプロセッサ数があまり多くないという点
からこの方法は用いていない。
【0040】[HopfieId モデル演算処理]次にHopfi
eId モデルの演算を同報書き込み行列型共有メモリに適
用する事を考える。HopfieId モデルは相互結合モデル
の一つでニューロン間は完全結合され対称な荷重をも
つ。動作手順は以下の通りである。 ニューロンij間の荷重:wij(i≠j,wij=wji) ニューロン値:xk ニューロン閾値:θk ランダムにあるニューロンnを選び次式のようにニュー
ロン値を更新する。
【0041】
【数7】
【0042】n以外のニューロン値は変化しない。これ
は逐次処理であり、あるニューロン値が求められないと
次のニューロン値の計算に進むことができない。各積和
にかかる時間を単位としニューロン数がn個の場合、全
てのニューロンについて1回ずつ演算をおこなうとn2
の時間を浪費する事になる。そこで、まず一度すべての
ニューロンについて同じ荷重でのポテンシャルを求めそ
の後、逐次的にポテンシャルを変更しながらニューロン
値を求めていくことによりnのオーダで計算を完了する
ことができる。ここではランダムにニューロンを選択せ
ず、x1 のニューロンから順番に選択していくと仮定す
る。
【0043】step1 BP演算と同様にすべてのニュー
ロンについて内部ポテンシャルを求める(図24)。 S1 =θ1 +X2w12+X3w13+X4w142 =X1w21+θ2 +X3w23+X4w243 =X1w31+X2w32+θ3 +X4w344 =X1w41+X2w42+X3w43+θ4 step2 まずPE1がニューロンX1 の内部ポテンシャ
ルS1 に応答関数をほどこし、ニューロン値X′1 を得
る。そしてX1 に関して修正された変化分D1 =X′1
−X1 を列方向に同報書き込みを行う(図25)。
【0044】step3 step2で同報書き込みされたD1
を用いてその他のニューロンの内部ポテンシャル(図の
例ではS2 ,S3 ,S4 )を変更する。変更式はSi
i +Dj ijで与える(図26)。 そしてstep2とstep3をすべてのニューロンについて繰
り返す。この処理は以下の計算を実行することになる。
【0045】 X′1 =f(S1 ) X′2 =f(S2 +(X′1 −X1 )w21 X′3 =f(S3 +(X′1 −X1 )w31+(X′2 −X2 )w32) X′4 =f(S3 +(X′1 −X1 )w41+(X′2 −X2 )w42 +(X′3 −X3 )w43 step1では上の式の第1項を計算し、step2とstep3で
第2項移行を計算していく。この方法により逐次的なH
opfieId 演算を同報書き込み行列共有メモリで実現する
ことができる。
【0046】このように、同報書き込み行列型共有メモ
リアーキテクチャを使用すれば、各種のニューラルネッ
トワーク演算アルゴリズムを適用できることが判明し
た。このメモリアーキテクチャの利点は、まず、ニュー
ラルネットワークの演算が主に2次元行列を用いたもの
であり、メモリも同様に2次元配置にすれば、極めて自
然な形で演算ができることにある。またBP演算には荷
重行列を転置して扱う計算があり行方向、列方向それぞ
れにハードウエア的に瞬時に転置が可能なこのメモリア
ーキテクチャは有利である。さらに同報書き込みを用い
る事により全てのプロセッサが同時に1回のストア時間
でプロセッサ数だけのニューロン値が通信でき、速度の
面でも有利である。
【0047】[同報書き込み行列型共有メモリの構造]
同報書き込み行列型共有メモリを実現する際には、まず
メモリを行列状に配置し、行方向と列方向に高速にメモ
リを切替えるスイッチを用意すればよい。区切ることが
できるメモリの単位をメモリモジュールと呼ぶことにす
る。4プロセッサ構成の場合は、図27に示すように1
6個のメモリモジュールが必要となる。
【0048】メモリ部だけに関していえば、データバ
ス、アドレスバス、コントロール信号がプロセッサ数だ
け必要となり、他には行列セレクト信号と同報書き込み
信号と電源が必要である。今プロセッサ数を4とすれ
ば、プロセッサ1について、データバスとアドレスバス
とコントロール信号がそれぞれ行列共有メモリの第1行
と第1列に接続されていて、それぞれの行と列は行列セ
レクト信号(PS)によって切替えるようにしておく。
行列セレクト信号は1ビットで、例えばHレベルならば
ポートAを通じて行方向へのアクセスが、Lレベルなら
ばポートBを通じて列方向のアクセスができるようにし
ておく。メモリ部に与えられたアドレスは列方向アクセ
スの場合は各行内に、行方向アクセスの場合は各列内に
メモリモジュールに振り分けるためにデコード回路が必
要となる。デコード回路は回路を簡単にするため図28
に示すようにメモリモジュール内でディップスイッチ等
で行えるようにするのが望ましい。
【0049】データバスは双方向信号であるので、バス
トランシーバーを用いて、双方向にデータが切り替わる
ようにしなければいけない。その他の信号はプロセッサ
からメモリへの単方向であるので、2入力1出力のマル
チプレクサが使用できる。同図に示すようにSRAMを
用いた場合は、メモリのコントロール信号としてWE
(書き込みイネーブル)、OE(出力イネーブル)、C
S(チップ選択)がある。またDRAMを用いた場合に
はWE(書き込みイネーブル)、RAS(行アドレスセ
レクト)、CAS(列アドレスセレクト)がある。
【0050】同報書き込み信号(BW)は1ビットでH
レベルの時には行内(あるいは列内)のすべてのメモリ
モジュールに関してメモリ書き込みを行うようにする信
号で、これはメモリモジュール内のデコード回路を強制
的にイネーブルにすることによって実現できる。
【0051】実際にこの同報書き込み行列型共有メモリ
を基板上に実現する場合には配線数が問題になる。メモ
リ基板にはメモリモジュールを結合するためにプロセッ
サ数だけのアドレス線とデータ線が存在し、それらはす
べて直交することになる。
【0052】
【表1】
【0053】表1はメモリの種類、構成するビット数、
プロセッサ数による最小構成の各メモリモジュールの端
子数である。これを見てわかるようにデータのビット数
によって端子の数は大きく変わるが、データの容量によ
っては大きく変わらない。SRAMとDRAMではアド
レスの入力の方法が異なるため、DRAMの方が少ない
端子数で済む。
【0054】図29にメモリモジュール間の配線概念図
を示す。各メモリモジュールの端子数は先ほど示した表
の通りで、その端子数にプロセッサ数を掛けた分だけ基
板上に配線を行う必要がある。しかし、基板実装技術の
発達により、6層以上の多層基板の使用も一般的になっ
ているため、このような複雑な配線も可能である。ま
た、基板内だけでは実装しきれない場合、図30で示し
たように複数の基板に分割し、基板間をフラットケーブ
ルで結合するという方法が考えられる。
【0055】
【発明の効果】請求項1記載の発明は、行列形式のデー
タを共有メモリに格納したとき、各々の行(あるいは
列)データごとに共有記憶ユニットが分割され、別々の
処理ユニットにおいて各々の行(あるいは列)データに
関する演算処理を同時に実行でき、各ニューロンユニッ
ト内部の演算を各プロセッサで独自に並列して行うこと
ができる。
【0056】請求項2記載の発明は、さらに各々の行
(あるいは列)データごとに共有記憶ユニットが分割さ
れたときに、各々の処理ユニットから一つのデータを、
分割された記憶ユニット内において各列(あるいは行)
要素に相当する複数の記憶番地に同時に書き込む(同報
書き込み)ことができる。従って、その演算結果を同時
に複数の番地に書き込むことにより、次のタイミングで
別々のプロセッサで必要となるデータをただ1回の同報
書き込みによって遅延なく各プロセッサに分配すること
ができる。
【0057】以上の機能によって、複数のプロセッサで
必要となるデータをプロセッサ間で転送する回数が減少
するため、階層型ニューラルネットワークにおける前向
き信号伝播や、バックプロパゲーション学習方式におけ
る前向き信号伝播と、後向き信号伝播におけるニューロ
ン間結合係数の行列転置処理などが効率的に遂行され、
ニューラルネットワークに関する演算に必要なプロセッ
サ間通信のコストを低減し、ニューラルネットワーク演
算の効率的な並列処理を実現することができる。
【図面の簡単な説明】
【図1】ニューロンモデルの解説図。
【図2】3層階層型ネットワークモデルの構成図。
【図3】リング結合を用いたバックプロパゲーション前
方向演算処理の解説図。
【図4】リング結合を用いたバックプロパゲーション後
方向演算処理の解説図。
【図5】コモンブロードキャストバスアーキテクチャの
構成図。
【図6】コモンブロードキャストバスアーキテクチャに
おけるバックプロパゲーション前方向演算処理の解説
図。
【図7】コモンブロードキャストバスアーキテクチャに
おけるバックプロパゲーション後方向演算処理の解説
図。
【図8】同報書き込みの概念図。
【図9】同報書き込み行列型共有メモリアーキテクチャ
の構成図。
【図10】同報書き込み行列型共有メモリのニューロン
の配置図。
【図11】同報書き込み行列型共有メモリによるバック
プロパゲーション前方向演算処理のステップ1解説図。
【図12】同報書き込み行列型共有メモリによるバック
プロパゲーション前方向演算処理のステップ2解説図。
【図13】同報書き込み行列型共有メモリによるバック
プロパゲーション前方向演算処理のステップ3解説図。
【図14】同報書き込み行列型共有メモリによるバック
プロパゲーション前方向演算処理のステップ4解説図。
【図15】同報書き込み行列型共有メモリによるバック
プロパゲーション前方向演算処理のステップ5解説図。
【図16】同報書き込み行列型共有メモリによるバック
プロパゲーション後方向演算処理のステップ1解説図。
【図17】同報書き込み行列型共有メモリによるバック
プロパゲーション後方向演算処理のステップ2解説図。
【図18】同報書き込み行列型共有メモリによるバック
プロパゲーション後方向演算処理のステップ3解説図。
【図19】自己組織化ニューラルネットワークの構成
図。
【図20】同報書き込み行列型共有メモリによるKohone
n 演算のステップ1解説図。
【図21】同報書き込み行列型共有メモリによるKohone
n 演算のステップ2解説図。
【図22】同報書き込み行列型共有メモリによるKohone
n 演算のステップ3解説図。
【図23】同報書き込み行列型共有メモリによるKohone
n 演算のステップ4解説図。
【図24】同報書き込み行列型共有メモリによるHopfi
eId 演算のステップ1解説図。
【図25】同報書き込み行列型共有メモリによるHopfi
eId 演算のステップ2解説図。
【図26】同報書き込み行列型共有メモリによるHopfi
eId 演算のステップ3解説図。
【図27】同報書き込み行列型共有メモリの構成図。
【図28】メモリモジュール内の構成図。
【図29】メモリモジュール間の配線概念図。
【図30】基板を分割した配線概念図。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 複数の処理ユニットと、全ての処理ユニ
    ットが共有して使用する共有記憶ユニットを持つ並列処
    理装置において、共有記憶ユニットに行列形式のデータ
    を格納したとき、あるときは、各々の行データごとに共
    有記憶ユニットが分割され、別々の処理ユニットにおい
    て各々の行データに関する演算処理を同時に実行できる
    機能と、また、別の時間には、各々の列データごとに共
    有記憶ユニットが分割され、別々の処理ユニットにおい
    て各々の列データに関する演算処理を同時に実行できる
    機能を有する行列型共有記憶ユニットを設けたことを特
    徴とするニューラルネットワーク並列分散処理装置。
  2. 【請求項2】 上記並列処理装置において、各々の行デ
    ータごとに共有記憶ユニットが分割されたときに、各々
    の処理ユニットから一つのデータを、分割された記憶ユ
    ニット内において各列要素に相当する複数の記憶番地に
    同時に書き込む同報書き込み機能と、各々の列データご
    とに共有記憶ユニットが分割されたときに、各々の処理
    ユニットから一つのデータを、分割された記憶ユニット
    内において各行要素に相当する複数の記憶番地に同時に
    書き込む同報書き込み機能を有することを特徴とするニ
    ューラルネットワーク並列分散処理装置。
JP4077246A 1992-03-31 1992-03-31 ニューラルネットワーク並列分散処理装置 Pending JPH05282272A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4077246A JPH05282272A (ja) 1992-03-31 1992-03-31 ニューラルネットワーク並列分散処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4077246A JPH05282272A (ja) 1992-03-31 1992-03-31 ニューラルネットワーク並列分散処理装置

Publications (1)

Publication Number Publication Date
JPH05282272A true JPH05282272A (ja) 1993-10-29

Family

ID=13628506

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4077246A Pending JPH05282272A (ja) 1992-03-31 1992-03-31 ニューラルネットワーク並列分散処理装置

Country Status (1)

Country Link
JP (1) JPH05282272A (ja)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107924227A (zh) * 2015-10-20 2018-04-17 国际商业机器公司 电阻处理单元
US10740671B2 (en) 2016-09-12 2020-08-11 International Business Machines Corporation Convolutional neural networks using resistive processing unit array
US10956815B2 (en) 2016-09-12 2021-03-23 International Business Machines Corporation Killing asymmetric resistive processing units for neural network training
US11099975B2 (en) 2019-01-24 2021-08-24 International Business Machines Corporation Test space analysis across multiple combinatoric models
US11106567B2 (en) 2019-01-24 2021-08-31 International Business Machines Corporation Combinatoric set completion through unique test case generation
US11216717B2 (en) 2017-04-04 2022-01-04 Hailo Technologies Ltd. Neural network processor incorporating multi-level hierarchical aggregated computing and memory elements
US11221929B1 (en) 2020-09-29 2022-01-11 Hailo Technologies Ltd. Data stream fault detection mechanism in an artificial neural network processor
US11232020B2 (en) 2019-06-13 2022-01-25 International Business Machines Corporation Fault detection using breakpoint value-based fingerprints of failing regression test cases
US11238334B2 (en) 2017-04-04 2022-02-01 Hailo Technologies Ltd. System and method of input alignment for efficient vector operations in an artificial neural network
US11237894B1 (en) 2020-09-29 2022-02-01 Hailo Technologies Ltd. Layer control unit instruction addressing safety mechanism in an artificial neural network processor
US11263077B1 (en) 2020-09-29 2022-03-01 Hailo Technologies Ltd. Neural network intermediate results safety mechanism in an artificial neural network processor
US11263116B2 (en) 2019-01-24 2022-03-01 International Business Machines Corporation Champion test case generation
US11422924B2 (en) 2019-06-13 2022-08-23 International Business Machines Corporation Customizable test set selection using code flow trees
US11811421B2 (en) 2020-09-29 2023-11-07 Hailo Technologies Ltd. Weights safety mechanism in an artificial neural network processor

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019502970A (ja) * 2015-10-20 2019-01-31 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 抵抗型処理ユニット
CN107924227A (zh) * 2015-10-20 2018-04-17 国际商业机器公司 电阻处理单元
US10740671B2 (en) 2016-09-12 2020-08-11 International Business Machines Corporation Convolutional neural networks using resistive processing unit array
US10956815B2 (en) 2016-09-12 2021-03-23 International Business Machines Corporation Killing asymmetric resistive processing units for neural network training
US11238334B2 (en) 2017-04-04 2022-02-01 Hailo Technologies Ltd. System and method of input alignment for efficient vector operations in an artificial neural network
US11461614B2 (en) 2017-04-04 2022-10-04 Hailo Technologies Ltd. Data driven quantization optimization of weights and input data in an artificial neural network
US11216717B2 (en) 2017-04-04 2022-01-04 Hailo Technologies Ltd. Neural network processor incorporating multi-level hierarchical aggregated computing and memory elements
US11263512B2 (en) 2017-04-04 2022-03-01 Hailo Technologies Ltd. Neural network processor incorporating separate control and data fabric
US11238331B2 (en) 2017-04-04 2022-02-01 Hailo Technologies Ltd. System and method for augmenting an existing artificial neural network
US11099975B2 (en) 2019-01-24 2021-08-24 International Business Machines Corporation Test space analysis across multiple combinatoric models
US11263116B2 (en) 2019-01-24 2022-03-01 International Business Machines Corporation Champion test case generation
US11106567B2 (en) 2019-01-24 2021-08-31 International Business Machines Corporation Combinatoric set completion through unique test case generation
US11232020B2 (en) 2019-06-13 2022-01-25 International Business Machines Corporation Fault detection using breakpoint value-based fingerprints of failing regression test cases
US11422924B2 (en) 2019-06-13 2022-08-23 International Business Machines Corporation Customizable test set selection using code flow trees
US11237894B1 (en) 2020-09-29 2022-02-01 Hailo Technologies Ltd. Layer control unit instruction addressing safety mechanism in an artificial neural network processor
US11221929B1 (en) 2020-09-29 2022-01-11 Hailo Technologies Ltd. Data stream fault detection mechanism in an artificial neural network processor
US11263077B1 (en) 2020-09-29 2022-03-01 Hailo Technologies Ltd. Neural network intermediate results safety mechanism in an artificial neural network processor
US11811421B2 (en) 2020-09-29 2023-11-07 Hailo Technologies Ltd. Weights safety mechanism in an artificial neural network processor

Similar Documents

Publication Publication Date Title
US5506998A (en) Parallel data processing system using a plurality of processing elements to process data and a plurality of trays connected to some of the processing elements to store and transfer data
US5214743A (en) Information processing apparatus
US6654730B1 (en) Neural network arithmetic apparatus and neutral network operation method
JP3210319B2 (ja) ニューロチップおよびそのチップを用いたニューロコンピュータ
US5544336A (en) Parallel data processing system which efficiently performs matrix and neurocomputer operations, in a negligible data transmission time
US5600843A (en) Ring systolic array system for synchronously performing matrix/neuron computation using data transferred through cyclic shift register connected in cascade of trays
Yasunaga et al. Design, fabrication and evaluation of a 5-inch wafer scale neural network LSI composed on 576 digital neurons
JPH05282272A (ja) ニューラルネットワーク並列分散処理装置
US5138695A (en) Systolic array image processing system
JP3251421B2 (ja) 半導体集積回路
US5170463A (en) Neuro-computer
US11080593B2 (en) Electronic circuit, in particular capable of implementing a neural network, and neural system
EP0557997A2 (en) Information processing apparatus and information processing system
US5065339A (en) Orthogonal row-column neural processor
Yasunaga et al. A self-learning digital neural network using wafer-scale LSI
Yasunaga et al. A wafer scale integration neural network utilizing completely digital circuits
JP2001117900A (ja) ニューラルネットワーク演算装置
Svensson et al. Execution of neural network algorithms on an array of bit-serial processors
US5627944A (en) Parallel data processing system
JPH04316153A (ja) ニューロプロセッサ
CN109583577B (zh) 运算装置及方法
Ayoubi et al. Efficient mapping algorithm of multilayer neural network on torus architecture
JP2825133B2 (ja) 並列データ処理方式
JPH05197707A (ja) 情報処理システム
JPH07101415B2 (ja) 情報処理装置及びその学習方法