JPH02228784A - ニューロコンピュータにおける学習処理方式 - Google Patents

ニューロコンピュータにおける学習処理方式

Info

Publication number
JPH02228784A
JPH02228784A JP1048880A JP4888089A JPH02228784A JP H02228784 A JPH02228784 A JP H02228784A JP 1048880 A JP1048880 A JP 1048880A JP 4888089 A JP4888089 A JP 4888089A JP H02228784 A JPH02228784 A JP H02228784A
Authority
JP
Japan
Prior art keywords
signal
output
input
analog
weight
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.)
Granted
Application number
JP1048880A
Other languages
English (en)
Other versions
JP2679738B2 (ja
Inventor
Hideki Yoshizawa
英樹 吉沢
Hiromoto Ichiki
宏基 市來
Hideki Kato
英樹 加藤
Kazuo Asakawa
浅川 和雄
Yoshihide Sugiura
義英 杉浦
Hiroyuki Tsuzuki
都築 裕之
Shuichi Endo
秀一 遠藤
Takashi Kawasaki
川崎 貴
Toshiharu Matsuda
松田 俊春
Hiroshi Iwamoto
岩本 弘
Chikara Tsuchiya
主税 土屋
Katsuya Ishikawa
勝哉 石川
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP1048880A priority Critical patent/JP2679738B2/ja
Priority to US07/486,644 priority patent/US5142666A/en
Priority to DE69030778T priority patent/DE69030778T2/de
Priority to EP90400578A priority patent/EP0385873B1/en
Publication of JPH02228784A publication Critical patent/JPH02228784A/ja
Application granted granted Critical
Publication of JP2679738B2 publication Critical patent/JP2679738B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0442Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0499Feedforward networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Feedback Control In General (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔概   要〕 アナログニューロンチップをアナログ時分割伝送路によ
り結合することで実現され学習機能を有するニューロコ
ンピュータにおける学習処理方式少ない配線本数で階層
ネットワークを構成する基本ユニット間でのデータの授
受を実現できるようにすることで、しかも学習処理の前
向き動作をアナログニューロンプロセッサの集合で行う
ことが可能なネットワーク構成データ処理装置を実現で
きるようにすることを目的とし、 アナログ信号を第1のアナログバスから時分割的に入力
し、積和演算を行ってアナログ信号を第2のアナログバ
スに出力するアナログニューロプロセッサの集合からな
るニューラルネットワークと、該ニューラルネットワー
クの制御信号のパターンを格納する制御パターンメモリ
と、該制御パターンメモリと重みメモリのアドレスを発
生するシーケンサと、各アナログニューロプロセッサの
重みデータを格納する重みメモリと、前記ニューラルネ
ットワークと制御パターンメモリとシーケンサと重みメ
モリとを制御するとともに学習アルゴリズムを実行する
ディジタル制御手段と、前記ニューラルネットワークの
入力段に設けられ、該ディジタル制御手段から入力され
る学習アルゴリズムを実行するための入力信号かアナロ
グポートから入力されるアナログ入力信号かの一方を選
択する入力制御手段とからなるように構成する。
〔産業上の利用分野〕
本発明は、ニューロコンピュータに係り、更に詳しくは
、アナログニューロンチップをアナログ時分割伝送路に
より結合することで実現され学習機能を有するニューロ
コンピュータにおける学習処理方式に関する。
〔従来の技術〕
従来の逐次処理コンピュータ(ノイマン型コンピュータ
)では、使用方法や環境の変化に応じてコンピュータの
データ処理機能を調節することが難しいので、適応性を
有するデータ処理方式として、新たに階層ネットワーク
による並列分散処理方式が提唱されてきている。特に、
バックプロパゲージロン法と呼ばれる処理方式(D、E
、Rumelhart。
G、t!、)Iinton、 and R,J、Wil
liams+  ”LearningInternal
 Representations by Error
 PropagationPARALLEL DIST
RIBUTED PROCESSING、 Vol、1
. pp。
31B−364,The MIT Press、 19
86)が、その実用性の高さから注目されている。
バック・プロパゲーション法では、基本ユニットと呼ぶ
一種のノードと重みを持つ内部結合とから階層ネットワ
ークを構成している。第28図に、基本ユニット1の原
理構成を示す。この基本ユニット1は、連続具ニーロン
モデルに類似した処理を実行する。すなわち、これは多
大カー出力系となっており、複数の入力(yh )に対
しそれぞれの内部結合の重み(Wz h lを乗じる乗
算処理部2と、それらの全乗算結果を加算する累算処理
部3と、この加貧値に非線形の閾値処理を施して1つの
最終出力X、を出力する閾値処理部4とを備える。
第29図は階層型ニューラルネットワークの構成環念図
である。構成の多数の基本ユニット(1−h、  1−
i、  1−j)が、第29図に示すように階層的に接
続されることで、入力信号パターンに対応するところの
出力信号パターンが出力されることになる。
学習時には、出カバターンと目的とする教師パターンの
差が小さ(なるように、各階層間の結合の重み(Wt 
h )が決定される。このような学習は、複数の入カバ
ターンに対して行われ、多重化される。また、連想時に
は、入カバターンが学習時に入力した完全情報と少し異
なる不完全な情報であっても、学習時の教師パターンに
近い出カバターンが得られることにより、連想処理が可
能となる。
C発明が解決しようとする課題〕 このような構成のニューロコンピュータを現実のものと
してい(ためには、階層ネットワークを構成することに
なる基本ユニット1間のデータの授受を、できる限り少
ない配線本数で実現していく必要がある。このことは、
複雑なデータ処理を実現していくために、階層ネットワ
ークの構成をより多層化したり、基本ユニットの数を増
していく必要があるという背景のもとで、どうしても解
決していかなくてはならない課題の1つなのである。
しかしながら、先に説明したデータ転送方式では、第2
9図に示す階層ネットワークの構成からも明らかなよう
に、2つの眉間の配線本数が極めて多くなることから、
階層ネットワークをチップ化するときに、小さくできな
くなると共に、信頼性を高めることができなくなるとい
う問題点がある。例えば、隣接する2つの層の基本ユニ
ット数を同じとし、すべての基本ユニット1が互いに接
続されるという完全結合を想定するならば、配線本数は
基本ユニット数の2乗に比例して増加することになる。
このように、配線本数が急激に増加してしまう。
本発明は、少ない配線本数で階層ネットワークを構成す
る基本ユニット間でのデータの授受を実現できるように
することで、しかも学習処理の前向き動作をアナログニ
ューロンプロセッサの集合で行うことが可能なネットワ
ーク構成データ処理装置を実現できるようにすることを
目的とするものである。
〔課題を解決するための手段〕
第1A図は本発明のニューロコンピュータのシステムブ
ロック図である。
ニューラルネットワーク18は各層の入力側にある共通
の第1のアナログバスからアナログ信号を時分割で入力
しデジタル重みデータを用いて積和演算を実行してアナ
ログ信号をその層の出力側にある共通の第2のアナログ
バスに出力するアナログニューロプロセッサ(以下AN
Pと記す)の集合を層とする少なくとも1層以上のネッ
トワークである。
制御パターンメモリ12は前記ニューラルネットワーク
の制御信号のパターンを格納する。重みメモリ14は重
みデータを格納する。シーケンサ13は該制御パターン
メモリ12及び重みメモリI4のアドレスを発生する。
デジタル制御手段15はMPUと主記憶を有する汎用の
処理装置であってネットワーク18とD/A及びA/D
コンバータ16.17を介して接続され、前記ニューラ
ルネットワーク、制御パターンメモリ、シーケンサ、重
みメモリの全体を制御する。学習処理のためにANPネ
ットワーク18の入力段にはディジタル制御手段15か
らの信号とアナログ入力信号とが加えられる入力制御手
段19を設ける。
〔作   用〕
アナログ入力信号を時分割でアナログニューロチップに
人力し、この信号と重みデータとの積を取り、この積信
号をそれぞれ加算して得られる積和信号を非線形関数回
路を通して出力することによりアナログニューロチップ
を構成する。このアナログニューロチップを複数個用い
て階層型あるいは帰還型のニューラルネットワーク18
を構成し、このニューラルネットワーク18にシーケン
サ13によってアクセスすべきアドレスが与えられた制
御パターンメモリ12から出力される制御信号を加える
。またニューラルネットワーク18には学習等によって
得られる重みデータが重みメモリ14から供給される。
そしてニューラルネットワーク18、制御パターンメモ
リ12、シーケンサ13、重みメモリI4はディジタル
制御手段15のディジタル信号によって制御され、且つ
管理される。また、ディジタル制御手段15内のMPU
では、特に、学習アルゴリズムが実行され、かつ出力信
号のチエツクなどが行われる。このようにして、時分割
アナログ入力信号と時分割アナログ出力信号を用いるこ
とを特徴とするアナログニューロコンピュータシステム
が実現される。
そして、入力制御手段19は、ディジタル制御手段15
から入力される学習アルゴリズムの実行のための人力信
号かアナログポートから入力されるアナログ入力信号か
のいずれか一方を選択してANPに加える。ニューラル
ネットは学習の前向き処理を実行する。
〔実  栴  例〕 第1B図は本発明のニューロチップから構成されるアナ
ログニューロプロセッサ(ANP)11のデュアルイン
ラインパッケージの概略図である。
これは、MB4442と呼ばれニューロンモデルの処理
を実行する。内部の閾値処理部はシグモイド関数で置換
したモデルとなっている。アナログニューロチップはA
NPと呼ばれ、アナログデータを入出力するデバイスで
ある。第1C図は本発明のANPの内部構成図である。
第1C図に示すようにANPIIはアナログバスBlと
アナログバスB2の間に接続される。ANPIIは入力
するアナログ信号と重みを掛けるアナログ乗算部22、
積の和を求めるアナログ加算部23、和を保持するサン
プル/ホールド部24、シグモイド関数の値を出力する
非線形関数部25よりなる。第1B図のANPIIの各
端子を説明する。ANPllの内部はアナログ回路部と
ディジタル回路部から構成されている。+−6ボルトの
端子は、アナログ回路部のオペアンプに供給される電源
端子である。D Lh及びD o u tはアナログ入
力信号及び出力信号の端子である。AGNDはアナログ
回路部の接地端子である。Rt十及びRt一端子はアナ
ログ回路部にある積分回路の外付抵抗Rの端子であり、
Ct+、Ct一端子は同じ(積分回路の外付キャパシタ
Cの端子である。DGNDはディジタル回路部のグラン
ド端子である。+5ボルトはディジタル回路部の電源端
子である。R3Tは積分回路のキャパシタの電荷等のリ
セットを行うリセット信号端子である。CSI及びC8
Oはデイジ−チェーン用制御信号の入出力端子であり、
OCはオフセットキャンセル制御信号用端子、S/H端
子は、サンプル/ホールド用制御信号端子、5YNCは
各層の処理に対する同期信号端子、DCLKはアナログ
入力信号の処理を行うための基本クロック信号端子、W
CLKはディジタル重みデータを取り込むためのクロッ
ク端子、WDはビットシリアルで人力するディジタル重
みデータ用の端子である。
第2図は、本発明のアナログニューロプロセッサ(AN
P)の原理構成図である。
別々のANP (図示せず)から時分割的に送られてく
るアナログ入力信号をアナログバスBlからANPll
内のアナログ乗算部22に入力し、このアナログ乗算部
22ではシフトレジスタ27を介してビットシリアルに
入力されその後直並列変換されたディジタル重みデータ
WDと掛は算して、アナログ入力信号とディジタル重み
データとの積を示す積信号を得る。次の、アナログ加算
部23は、外付けの抵抗RとキャパシタCからなるミラ
ー積分回路であって、アナログバスB1に接続された前
段の複数のANP (ANPの存在する場所をノードと
呼ぶ)から時分割で送られるアナログ入力信号とダミー
ノードから送られる閾値用のアナログ入力信号とからそ
れぞれ得られる積信号の和を求めるものである。次に、
サンプル/ホールド部24で積信号を所望時間待たせる
ためにホールドした後に、さらにそのサンプル/ホール
ドされた出力を非線形関数部25を介して変換する。出
力制御部26では、シーケンスジェネレータ28の制御
を受けて所定時間遅延させた後に、アナログ出力信号D
 outをアナログバスB2へ出力する。なお、シーケ
ンスジェネレータ28は内部に供給される制御信号も生
成する。そして、位相制御部29では、おもにANP内
のアナログ回路部とディジタル回路部を接続する各スイ
ッチのオンかオフが確実に行われるように、制御信号の
位相を制御するもので、特に、第1のスイッチがオンの
とき第2のスイッチをオフにする場合それ等のスイッチ
が同時にオンする場合がないように制御信号の位相を制
御する。
なお、シーケンスジェネレータ28は、リセット信号R
3T、DCLK、WCLK、5YNC。
S/H,QC,CSIを後述するマスクコントロールブ
ロックから入力するとともにC8Oを出力し、ANPの
内部の制御信号を生成する。
ニューラルネットワークでは、同時処理により高速演算
を行う必要がある。本発明では時分割データを使ってい
るが、定常状態では、各ANPがパイプライン的に同時
処理を行う。理想的なニューラルネットワークでは、ニ
ューロン見他のそれぞれのニューロンに相互結合した結
線が必要であるが、このままシステムを実現しようとす
ると、配線数が多くなる。そこで、本発明では時分割デ
ータを扱うので、各ANP内の積和の処理時間が伸びる
が、それを縦方向に、すなわち同層方向にチップを並列
に並べることで、層内のニューロチップを構成するAN
Pの同時処理により、その処理時間を改善する。また、
各層ではパイプライン処理が可能で、このことでも処理
時間が小さくなる。アナログバスに接続した例えば3個
の各ニューロチップには、入力が入ってくると、それは
3個とも同時に入り3個とも並列に、そのアナログ電圧
に対して、各ANPが重みとの積を生成し、それを積分
器のキャパシタに電荷として保持する。
そして、次の時間区域で、同じアナログバスのアナログ
入力に対して、各ANPは重みとの積を形成し積分器の
キャパシタ内に前の時間区域で決まった積に加え込むこ
とになる。前段のすべてのANPからのアナログ入力信
号に対する重みとの積に対する和が生成された後、その
和はサンプル/ホールドされる。その後、シグモイド関
数を介して出力されるが、これは、CSI制御信号八力
時に出力されか。そして、出力完了後にCSIが立ち下
がり、その後一定時間遅延後にC8Oを立ち上げて、出
力バスの使用権を同一層内の隣接ニューロチップからな
るANPに与える。
以下、実施例に従って本発明の詳細な説明する。
第3図はニューロチップである基本ユニットの第1の実
施例構成図である。同図の乗算部32、加算部33、閾
値処理部34は連続ニューロンモデルの実行部であるが
、この実施例では出力保持部35が存在する。具体的に
は、基本ユニット31に接続される複数の入力をYi、
この各接続に対応して設定される重みをWiとするなら
ば、乗算部32は、 1−Wi を算出し、加算部33は、 X=ΣYi −Wi−θ を算出する。但し、θは閾値である。閾値部34は最終
出力をYとするならば、 Y=1/ (1+ exp(−X))  ・・・if)
を算出することになる。
ダミーノードから入力される“+1″という値に“−θ
”という重みをかけて加算部33で「X−θ」の結果が
出力される。従って闇値部34ではS字曲線による変換
だけが行われている。
乗算部32は、乗算型D/Aコンバータ32aで構成さ
れ、前段層の基本ユニット31から、あるいは後述する
ダミーノードの回路からのアナログ信号(入力スイッチ
部37を介して入力される)の入力と、その入力に対し
て乗算されるべきディジタル信号の重み情報(後述する
重み保持部38を介して入力される)との乗算を行って
、得られた乗算結果をアナログ信号で出力するよう処理
するもの、加算部33は、積分器で構成されるアナログ
加算器33aとアナログ加算器33aの加算結果を保持
する保持回路33bとにより構成される。乗算型D/A
コンバータ32aは、D/Aコンバータの基準電圧端子
にアナログ入力信号、を入力し、各ディジタル入力端子
に重みの各ビットをディジタル入力信号として入力する
ものであり、結果として、そのアナログ人力信号と重み
との積を生成する。アナログ加算器33aは、乗算型D
/Aコンバータ32aの出力と、前回に求められて保持
回路33bに保持されている加算値とを加算して新たな
加算値を求めるもの、保持回路33bは、アナログ加算
器33aが求めた加算値をホールドするとともに、その
ホールド値を前回の加算値としてアナログ加算器33a
にフィードバンクさせるものである。これらの加算処理
は制御回路39より出力される加算制御信号に同期して
実行される。閾値部34は、アナログの関数発生回路で
ある非線形関数発生回路34aで構成され、入力に対し
てシグモイド関数等の非線形信号を出力するものである
。乗算結果の累算が闇値(−θ)の加算を含めて終了し
たときに、保持回路33bにホールドされている加算値
Xに対し閾値(−θ)を加えて+1)式のシグモイド関
数の演算処理を施し、アナログ出力値Yを得るもの、出
力保持部35は、サンプルホールド回路で構成され、後
段層の基本ユニット31への出力となる非線形関数発生
回路34aのアナログ信号の出力値Yをホールドするも
のである。
また、36は出力スイッチ部であり、制御回路39より
の出力制御信号を受けて一定時間ONすることで、出力
保持部35が保持するところの最終出力をアナログバス
B2上に出力するよう処理するもの、37は入力スイッ
チ部であり、制御回路39よりの入力制御信号を受けて
前段層の基本ユニッ)31から最終出力からのアナログ
出力が送られてくるときにONすることで人力の受付を
行う。38は重み保持部であり、パラレルアウトシフト
レジスタ等により構成され、重みメモリから送られてく
るピントシリアルの重み信号がバッファ38aのゲート
がオーブン(制御回路39による重み入力制御信号がオ
ン)された時に、この重み信号を乗舅部32が必要とす
るビットパラレルの重みとして保持するものである。ビ
ットパラレルの重みは乗算制御信号が与えられたときに
パラレルで乗算部に与えられる。39はディジタル回路
部の制御回路で外部からの同期信号から内部の同期信号
を生成するもので、内部のアナログ処理の機能の制御を
実行する。
このように構成されることで、第3図の信号処理構成を
採る基本ユニット31の入出力がアナログ信号でもって
実現されることになるのである。
なお、乗算型D/Aコンバータ32aは、ディジタル信
号の重み情報をパラレルで受は取るようにするものでも
よいし、重み情報をシリアルで受は取ってからパラレル
変換するようにするものでもよい。あるいは、重み情報
をアナログ信号で構成するならば、乗算型D/Aコンバ
ータ32aO)代わりに、アナログ乗算器を用いること
ができる。
第4図は1個の本発明のニューロチ・7プ(ANP)の
実施例の具体的回路図である。
このユニットでは入力部42、乗算部43、加算部44
、サンプル/ホールド部45、非線形関数部46、及び
出力部47から構成され、ここでは、出力保持回路はな
く、サンプル/ホールド部45が出力保持の機能も有す
るものとする。
入力部42はオフセットキャンセル部51と、1倍のバ
ッファ49から構成されている。1倍のバッファ49は
電圧フォロアで、オペアンプの出力を一端子にフィード
バックし、子端子に入力電圧を入力することによって構
成される。データ入力はアナログの時分割されたパルス
信号である。
OCはオフセットコントロール信号であり、これが1の
ときアナログスイッチ66がオンし、1倍のバッファ4
9には、0電圧が強制的に設定される。一方、オフセッ
トコントロール信号OCが、0のときアナログスイッチ
66はオフされ、他方のアナログスイッチの他方65が
オンし、データ入力が1倍のバッファ49に入力される
。すなわち、オフセットコントロール信号OCが1であ
る場合には、ニューロンユニットには0ボルトが強制的
に入力されて乗算器出力までの回路のオペアンプ出力に
生じるオフセット電圧に対するオフセットのキャンセル
の動作を行うようにしている。
アナログスイッチ65と66は同図ではOC信号の反転
位相と正相位相でスイッチングの制御が行われているが
、位相制御回路によって、同時オンがないようになって
いる。以後このことをOCが「位相制御された」という
言い方をすることにする。
正負切換回路52は2つの倍数器をカスケード結合して
構成されている。倍数器では人力抵抗(10にΩ)とフ
ィードバンク抵抗(10にΩ)によって10/10、す
なわち1倍の電圧の反転したものが形成され、それを1
段だけを通すか、2段を通すかによってアナログ電圧の
符号を決定している。
その制御信号はディジタル重みデータの符号ピッ)(S
IGN)であり、この5IGNビットはMOSスイッチ
70のゲートに接続されている。この5IGNの制御信
号も位相制御されている。符号ビットが1である場合に
入力部42からの入力電圧は第1段目の倍数器で反転さ
れ、さらにスイッチ67もオンしているので後段の倍数
器も通り、結果として正相となる。また符号ビットが0
である場合には、反転回路68を介して、スイソ″チロ
9がオンとなる。この時スイッチ67と70はオフして
いるため、入力部42からの入力電圧はスイッチ69を
介して後段のオペアンプ71の一端子に人力される。従
って、前段の抵抗72と後段のオペアンプのフィードバ
ンクの抵抗73とによって倍数器が形成され、1倍され
た形で反転される。すなわち、符号ビットの正負によっ
て入力部42の入力が、正または負の電圧として形成さ
れ、これが、興奮性と抑制性のシナプス結合に従った電
圧となる。正負切換回路52からの出力は乗算部43の
中にあるD/Aコンバータ53のR−2R低抵抗路網の
74の点、すなわち基準電圧端子に入力される。
R−2R方式のD/Aコンバータをまず説明する。MS
BからLSBまでのディジタル重みによって内部のスイ
ッチはオンまたはオフをとる。ディジタル値が1である
場合に、電流は右側のスイッチ75を通って、オペアン
プ76の仮想接地点78に流れ込む。オペアンプ76の
仮想接地点78は子端子と同じ電圧になるように制御さ
れ、これがグランドであるから仮想的なOボルトである
D/Aコンバータ53においてRはIOKΩ、2Rは2
0にΩである。スイッチの状態に関わらず、2Rの抵抗
には電流が流れ、ディジタル値の値に従ってその2Rに
流れる重み電流が仮想接地点78の方に流れるかどうか
が決定される。1番右の2Rに流れる電流をiとする。
右から2番目すなわちLSBに対応する2Rの電流は1
番右の2Rにかかる電圧を2Rで割った値であるから2
RXi÷2Rでiとなる。従って1番右の横方向のRに
は電流21が流れる。右から3番目の2Rには2RX 
i+RX2 iの電圧がかかり、これを2Rで割るから
21の電流が流れる。以下同様で左に行くに従って4i
、8iとなって2のべき乗で増える電流になる。この2
のべき乗になった重み電流をオペアンプの方に流すか流
さないかを決めているのがMSBからLSBである。従
って、ディジタル重みに対応する電流が2のべき乗の形
で仮想接地78に流れこみ、オペアンプ76の入力イン
ピーダンスは無限大であるから、この電流がオペアンプ
36の帰還抵抗78に流れる。従って、D/Aコンバー
タの出力電圧■。U、は入力電圧をEとすれば、 + ・ ・ ・ ・+21%−IXD□l )となる。
ここで、DoはLSBで、Dn−+ がMSBであると
する。すなわち、掛算部43の出力は等価的に入力電圧
Eに重みを掛けた値になっている。
その重み係数はMSBからLSBに人力されるディジタ
ル値で制御されることになる。一方、加算部44は時分
割多重化アナログ信号の各電圧とディジタル重みデータ
との占積についてミラー積分器を時分割的に使用するこ
とにより累積加算動作を実行する。そして、サンプル/
ホールド回路45は、加算結果をサンプル/ホールドす
る。
次に加算部44を説明する。加算部44は抵抗Rと帰還
キャパシタCによる積分器である。加算部44の入力部
には時分割加算制御部55があり、位相制御されたサン
プル/ホールド信号S/H信号が1のとき乗算部43の
出力電圧がオペアンプの仮想接地点79に入力され、S
/H信号がOのとき反転回路80によりスイッチ81が
オンとなって乗算部43の出力が抵抗Rを介してグラン
ドに接続されるので加算部44帰還キャパシタCには加
算されないことになる。今、S/H信号が1のとき、乗
算部43の出力電圧は抵抗Rを介してオペアンプ102
の一端子に入力し、入力電圧を抵抗Rで割った電流が仮
想接地を介して帰還キャパシタCの方に入力される。こ
の後、S/H信号がまたOとなり、乗算部43と加算部
44は切り離されるので、乗算部43は次の入力信号に
対して、重みデータを掛けることができる。キャパシタ
Cを含む積分回路の帰還回路82には4つのスイッチを
用いてオフセットキャンセル機能が付加されている。今
オフセットコントロール信号OCが1になったとすると
、スイッチ83と84がオンで、85と86がオフとな
る。オフセットコントロール信号oCが0の時には、デ
ータ入力部42、データ入力端子DATA −lNPt
1Tに入力電圧が与えられ、それに対応する乗算部43
の出力が抵抗Rを介してキャパシタCに入力される。こ
の時、スイン4a5.86がオンであり、キャパシタC
の極性はオペアンプの一端子に接続されている側か−、
オペアンプ102の出力に接続されている側が十である
。次に、オフセットコントロール信号OCが1である場
合にはデータ入力は強制的には0にされる。この場合、
正負切換回路42及び乗算部43のD/Aコンバータ5
3を介してもしオフセットがなければ、D/Aコンバー
タ44の出力はOボルトとなる。しかし、オペアンプ4
9.103.71.102があるためにオフセット電圧
が生じ、そのオフセット電圧が加算部44のキャパシタ
Cに蓄えられる。この場合、前のオフセットコントロー
ル信号OCが0である場合と違ってスイッチ83.84
がオンとなり、キャパシタCの+−の極性は逆転する。
そのため、入力信号が入力された時に生じるオフセット
電圧はオフセットコントロール信号OCを1にすること
により、キャパシタCの極性が変わり、結果として、オ
フセットがキャンセルされることになる。本発明では、
このように、キャパシタCの極性の反転を用いて等価的
にオフセットキャンセル機能を有するように構成されて
いる。なお、スイッチ87はリセット信号によって制御
され、処理開始時にリセット信号が与えられた場合に、
キャパシタC1,の電圧を零にし、加算部の出力を強制
的に0にリセットするものである。このOC信号も位相
制御されているものとする。
加算部44の出力はサンプル/ホールド回路45の入力
となる。サンプル/ホールド部45では、位相制御され
たサンプル/ホールド制御信号S/Ho u Lが1で
ある場合に、スイッチ88を介して加算部44の出力が
キャパシタC6に蓄えられる。
S / Hout制御信号が1である場合には、反転回
路94によってスイッチ90の制御信号はOとなり、キ
ャパシタC1の一方の端子はグランドに接地されず、ス
イッチ91がオンになることによりユニットの最終出力
信号がそのスイッチ91を介してキャパシタC1に入力
される。すなわち、その時9最終出力信号がオペアンプ
96の出力端からフィードバックされてキャパシタCゎ
の下側に与えられる。従って、キャパシタCには、加算
部44の出力から最終出力信号の値を引いた電圧が保持
される。一方S / Hout制御信号が0のときには
、スイッチ89と90がオンし、キャパシタChの下側
はグランドとなり、結果としてキャパシタCに蓄えられ
た電圧、すなわち加算部44の出力から最終出力値を引
いた電圧値がスイッチ89を介して1倍のオペアンプ9
3の+側に入力され、そしてこのオペアンプ93はバッ
ファとして働いて、オペアンプ93の出力がシグモイド
関数の入力となる。また、S / HouL制御信号が
1のときスイッチ88がオンし、キャパシタChには加
算器の出力値と最終出力値との差の電圧が蓄えられてい
るときには、スイッチ92がオンしている。そのためオ
ペアンプ93には0ボルトが強制的に入力される。この
時にシグモイド関数46及びオペアンプ96.アナログ
スイッチ100を介してオフセット電圧Δ■がスイッチ
91を介してChの下側に入力される。したがってS/
H,、を制御信号がOの時点、すなわちスイッチ89が
オンでスイッチ92がオフである場合には、CI、に蓄
えられた電圧、すなわち(加算部の出力−オフセット電
圧Δ■)がオペアンプ93とシグモイド関数46を介し
て最終出力になるが、S / Hout信号が1になる
と、この時に生成されるオフセット電圧もΔVであるか
ら結果として、オフセット電圧かキャンセルされること
になる。
シグモイド関数を生成する非線形関数部は非線形回路選
択制御部があり、位相制御されたSe151g信号を1
にするとスイッチ95がオンし、シグモイド関数の出力
が次段に入力される。しかし、Se151g信号がOの
時には反転回路97を介してスイッチ98の制御信号が
1となってそれがオンし、シグモイド関数の出力はカッ
トされる。すなわちSe151g信号が0の時には、サ
ンプル/ホールド部の出力電圧がシグモイド関数を介さ
ずに直接オペアンプ96に入力される。オペアンプ96
は本質的には出力を一端子に直接帰還する1倍のオペア
ンプでバッファの働きをする。すなわち出力インピーダ
ンスを0にするバッファとなる。
出力部47には時分割アナログ出力部64と出力制御部
63が接続されている。CSIが1のときにはスイッチ
99がオンで、スイッチ101もオンであるため、オペ
アンプ96の最終出力値がDATA −01lTPUT
に出力され、しかもその一端子にフィードバックされて
、オペアンプ96は1倍のオペアンプとして働く。それ
と同時に最終出力値がサンプル/ホールド部45にフィ
ードバックされる。一方、CSIがOのときインバータ
104を介してスイッチ100がオンになり、スイッチ
101.99がオフになる。すなわちオペアンプ96の
出力はDATA −0UTPUT線には出力されないこ
とになる。しかし、スイッチ100がオンすることによ
って1倍のバッファを形成するようにしているためオペ
アンプ96の電圧フォロア動作は破壊されることなく実
行される。出力部47は出力制御入力信号CSIによっ
て出力パルス電圧を伝達するかどうかを決める回路であ
る。このCSIをデイレイ回路105を介してC8Oと
して出力し、層内の隣接するニューロチップに対する出
力アナログ信号の時間タイミングを決定することになる
このため、本発明では出力部47からのアナログ信号は
時分割で伝達されるため、パス上で他のニューロチップ
からのアナログ信号と競合しない。
第5図は第4図において、オフセントキャンセルOCを
0CO1OCI、サイン5IGNをPN。
PN、サンプル/ホールドSHを5HII、5HIO、
サンプル/ホールドS / HoutをS H21,5
H20、シグモイド選択信号Se151gを−S IG
MSS IGM、デイジ−チェーン用信号CSIをC8
、−C8での2信号で位相制御を実現する。すなわち、
1つの制御信号を、それぞれ正相を逆相の2信号で構成
しかつ位相をずらすことにより、これらの制御信号の正
相と逆相で制御される別のスイッチが同時にオン状態に
ならないようにした信号にした場合の実施例である。な
お、D/Aコンバータ53の出力端に接続されたキャパ
シタCf1抵抗Rfはオペアンプ76のフィードバック
信号をD/Aコンバータの演算速度にあわせるためのも
のであり、DT端子には、D/Aコンバータのディジタ
ル人力が加えられる。
第5図で第4図と同一箇所は同一番号を付して説明を省
略する。
第6図は、積分器におけるタイミング図である。
データクロツタDCLKと重みクロックWCLKは基本
的な動作クロックで、データクロックDCLKのハイ状
態の半周期間に高速な重みクロックWCLKが出力され
る。重みクロックWCLK信号は重みシリアルデータを
取り込むための同期クロックである。データクロックD
CLK信号はアナログ入力信号に対する処理を行うため
の基本クロックである。同期信号5YNCは各層におい
て一層内の各アナログニューロンプロセッサANPの同
期をとる同期信号である。積分器の出力電圧の変化は下
の三角形で示された部分の波形で示される。積分波形は
、サンプル/ホールド制御信号SHのパルスで制御され
、このパルスがハイの間、積分の動作を実行する。すな
わち、積分器のキャパシタCに対する充電を開始し、こ
のサンプル/ホールド制御信号SHのパルスがハイの間
は、このキャパシタに徐々に電荷が蓄積されて電圧は上
がるが、サンプル/ホールド制御信号SHのパルスがロ
ウとなって遮断されると、充電動作を停止する。従って
、この積分時間範囲でのチャージ分だけが意味を持ち、
このサンプル/ホールド制御信号のパルス幅をコントロ
ールして積分時間範囲を縮めたり延ばしたりすることで
、入力は同じ電圧だが、積分結果としてでてくるものは
、サンプル/ホールド制御信号のパルスの幅によって比
例配分された電圧、すなわち、電圧に積分ゲインを掛け
たものとなる。すなわち、サンプル/ホールド制御信号
S/Hのパルス幅がPのときキャパシタCに充電される
電圧は■、であり、サンプル/ホールド制御信号S/H
のパルス幅Wのとき充電電圧はV % となる。
サンプル/ホールド制御信号SHが下がり、スイッチン
グ制御より積分器のキャパシタの極性が変わり、オフセ
ント分が加算されている積分出力は反転する。そして、
オフセットコントロール信号OCがハイ状態でサンプル
/ホールド制御信号SHが再び立ち上がると、オフセッ
ト電圧vb(vb ’ )がそのキャパシタに加算され
、SH倍信号立ち下がった時点では、結果としてオフセ
ント分がキャンセルされた積分出力値V、−V。
(v、  ′−vb  ’)を極性をもどしてサンプル
/ホールドされる。
次に、階層型ニューラルネットワークを説明する。第7
A図は階層型ネットワークの概念図である。階層型では
左側の入力層の入力ノード110から入った入力データ
は順次右側の方向に向かって1方向にだけ処理されてい
く。中間層の各二ニーロン112は、ダミーノード11
1を含む前の層の出力をそれぞれ層内の完全結合で受け
るようになっている。入力層に例えば4個の入力ノード
110があると、それにダミーノード111の1個かた
され、中間層の各ニューロン112からみると入力層は
5つのニューロンに見えている。ここで、ダミーノード
111とは、スレッシュホールドをコントロールするも
ので、積和の結果Xのシグモイド関数 の値χに一定値一〇を加えることによりX軸の正方向に
シフトさせた値f  (X−θ)にするものである。こ
れはダミーノード111に対応する重みをニューロン内
で変えることと等価であるが、後述スるマックスバリュ
ーノード回路を用いて、−定値θを生成している。この
ように、ダミーノードに対する重みを用意しておけば、
閾値を重みで表現することができる。そして出力層のニ
ューロン112から中間層はニューロンが4fllある
ように見える。入力層に加えられた入力データは、中間
層ニューロン112、出力M二鴇−口7112で重みデ
ータを用いてそれぞれ積和演算を施され、結果として出
力データを発生する。
第7A図に示した階層型構造のものを本発明のANPを
用いて実現すると、第7B図のように、各層間、つまり
入力と中間層との間、中間層と出力層の間、出力層の出
力にそれぞれの独立のアナログバスBl、B2.B3を
設けることになる。
縦方向のANPは全部並列に実行できるという構造にな
る。出力層の出力にはサンプルホールド回路SHを付け
る。
第8図は階層ニューラルネットワークを実現する本発明
のニューロコンピュータのブロック図である。ニューロ
チップからアナログニューロンプロセッサANP1〜5
を各層に並列に配置し、各層間に独立にアナログバス(
B1.B2.B3)を設ける。同図において、ANPI
、2.3で中間層を形成し、ANP4.5で出力層を形
成する。
また、入力段のANPはなく、入力側にはアナログ入力
信号をタイミングよく入力するためのデイジー回路17
1,172が存在する。S/Hで示す回路はサンプル/
ホールド回路173,174である。ANP1〜5には
それぞれコントロール用のロジック信号が必要であるの
で、マスクコントロールブロック(MCB)181から
各層に多くの制御信号線を送り込む。データクロックD
CLKはすべてのANPの入力側のデイジー回路171
と172に与えられ、アナログ処理の基本クロックとな
る。重みクロックWCLKもすべてのANPと入力側の
デイジー回路171,172に与えられ、重みデータ用
の高速クロックである。
重みメモリブロック185,186から各ANP4.5
及びANPI、2.3にはその重みクロックWCLKに
同期して重みデータが入力される。
また、同期信号5YNCIは中間層のANPに与えられ
る層の同期クロックで同期信号5YNC2は出力層のA
NPに与えられる層の同期クロックである。SHIとO
Clは中間層のANPに対するサンプル/ホールド制御
信号とオフセットコントロール信号、SH2とOC2は
出力層のANPに対するサンプル/ホールド制御信号と
オフセットコントロール信号である。
左側のブロックであるデイジー回路171,172は、
入力層に相当する入力側回路である。人力ノード、つま
り入力層内のニューロンを実現するために、アナログ信
号を時分割でANPが出すのと同じタイミングで、アナ
ログ入力ポート0゜1より与えられるアナログ入力信号
を回路内に入力しなければならない。つまり、出力層か
らみれば、出力層のANP4.5は前の中間層のANP
L  2.3からアナログ信号をアナログバスB2を介
して時分割で受けることを基本動作としている。これと
同じ関係が中間層と入力層にも存在しなければならない
。入力層と中間層の関係は、中間層のANPから見ると
その前に入力層のANPがあるように見えなければいけ
ない。このことは、中間層のANPがアナログバスB2
にアナログ信号を出力するタイミングと同じ機能でアナ
ログ入力ボート0.1からのアナログ入力信号に対して
も決まった規則でアナログバスB1に出力しなくてはな
らないという制約がある。即ちアナログ入カポ−)0.
1からの入力信号はアナログバスB1に時分割に乗って
くる。アナログ入力ポートOからのアナログ信号は、適
当なタイミングでアナログバスB1に乗るが、そこに出
力した次のタイミングで、アナログ入力ポート1からの
次のアナログ入力信号が同じアナログバスB1に乗る。
この同期をとるために一定のタイミングで出される入力
制御信号CSIをデイジー回路171が入力し、一定時
間後に、その回路から出力制御信号C8oが出される。
このCSIはマスクコントロール回路181のC8○1
から出力される。デイジー回路171,172は一種の
遅延回路である。
各デイジー回路171はマスクコントロール181から
入力制御信号CSIを入力すると、自分は縦方向に隣接
する次のデイジー回路172に対して、アナログ入力ポ
ート1のアナログ出力信号を出すように、C8O信号を
次に渡すことになる。
この動作をデイジー制御と呼ぶ。
マスクコントロール回路181のcso iが立ち上が
ると、スイッチ175がオンし、サンプル/ホールド回
路173に保持されているアナログ入力ポートOのアナ
ログ入力信号はアナログバスB1に乗る。C8○1はデ
イジー回路171のC8■であるから、これが立ち下が
ってから一定時間後にC8Oが立ち上がる。これはデイ
ジー回路172のCSIであると同時に、スイッチ17
6を制御してオンにさせるので、サンプル/ホールド回
路174に保持されていたアナログ入力ポート1のアナ
ログ入力信号をバスB1に乗せる。階層構造になった本
システムでは、このデイジー制御が必要となる。つまり
、アナログ入力信号に対してアナログ入力ボートOから
サンプル/ホールド回路173を介してアナログバスB
1に出力すれば、次にアナログ入力信号に対してアナロ
グ入力ボート1からサンプル/ホールド回路174を介
して同じアナログバスB1に出力させることになる。中
間層の各ニューロンでみているとアナログ入力ボートO
のアナログ入力信号とアナログ入力ボート1からの次の
アナログ入力信号とは時分割で逐次に入ってくる。
各デイジー回路171.172は、アナログバスB1上
のバス競合を防ぐために、入力制御信号C8Iを特定の
時間だけ遅延させて出力制御信号C8Oを出す。
中間層においても、マスクコントロールブロック181
からの出力制御信号C3O2をCSIとして受けるAN
PIがアナログ信号を出力したら、CSOをCSIとし
てANP2に渡すと、次にANP2が出力する。ANP
2のCSOをC5Iとして受けるANP3が次にアナロ
グ信号を出力すことになる。要するに、ここではANP
I、2゜3の順に出力し、中間層のデイジー動作が終わ
る。
これと並行して全ての動作を管理しているマスクコント
ロールブロック181は、出力層のANP4にC3O3
を与えるとANP4が出力し、出力完了後□、ANP4
がANP5にC8Oを与えるとANP5が出力する。
出力層のANP4.5からの出力は、それぞれマスクコ
ントロールブロック181からC8O3信号及びANP
4からのデイジ−チェーン用出力制御信号C8Oによっ
てそれぞれサンプル/ホールド回路177.178でサ
ンプル/ホールドされる。この出力電圧は、アナログ出
力ボート01からアナログ出力信号とし7て出力される
他′、アナログマルチプレクサ179で選択された/&
、A/Dコンバータ180でA/D変換され、MPU1
82、メモリ183、通信インタフェイスエ84から構
成されるディジタル制御手段に入力される。そして、M
PU182で例えば学習時に与えたMPU内に蓄えられ
た教師信号と比較し、所望の出力信号であるかのチエツ
クを行い、この結果に基づいて後述する重みメモリの重
みデータを変更する。マックスバリューノード回路18
7はマスクコントロールブロック181からダミーノー
ド制御信号DC3L、DC32が出力イネーブル1及び
2に加えられるとともに、出力端子はアナログバスB1
.B2に接続される。
第9図は第8図に示した実施例にかかる階層型ニューロ
コンピュータのタイミング図である。各層別にその制御
信号線が抜き出して書かれている。
まず基本的な動作クロックであるデータクロツタDCL
Kと重みクロックWCLKは同一層のすべてのANPや
入力側のデイジー回路171,172に同時に入る。
重みクロックW CL Kは、重みのディジタルデータ
をシリアルで送り込むためのシリアル同期パルスで、重
みメモリブロックから重みを読み出すための同期クロッ
クである。どのタイミングで、入力データを取り込むか
はそれぞれの制御信号で規定する。まず第9図のタイミ
ングチャートにおいて、C3O1はマスクコントロール
ブロック181から出力されるデイジ−チェーン用制御
信号C801、すなわちデイジー回路171へのデイジ
−チェーン用制御信号CSIである。デイジー回路17
1において、CSIが1番目のアナログ入力信号をアナ
ログ入力ボート0からサンプル/ホールド回路5H17
3を介してアナログバスB1に出力させる。すなわちタ
イミングチャートの■においてアナログ信号をアナログ
バスB1に出力させる。この瞬間に、アナログバスB1
上に電圧が乗り、ANPI、ANP2.ANP3はこの
アナログ信号に対して並列に積和演算を行う。そのC8
Oがデイジー回路171を通過し、C8Oが立ち下がっ
てから所定時間後に次のCSIが■に示すように立ち上
がり、デイジー回路172にそのCSIが入る。次のC
SIは人力層の2番目のデイジー回路!?2に入る制御
信号である。そしてCSIがハイの間にアナログ人力ボ
ート1からアナログ入力信号をサンプル/ホールド回路
5H174を介してANPl、ANP2.ANP3に入
力し、ここで積和演算を行う。マスクコントロールブロ
ック181からのDC31は、ダミーノードへの制御信
号である。各層とも人力の他にダミーノードからの信号
があるのでにューロンノード数+1)個のノードの形態
であり、入力層では2人力であるが、各中間層のANP
からみると3人力であるように見える。これを時間的に
説明すると、2つのcsrと1つのDC3lで1つのブ
ロックとなる制御信号である。入力のサイクルは、最初
のCSIから始まり、DC3Lのダミーへの人力で終わ
る。ダミーノードはマックスバリューノード回路187
であり、その回路はDC81が人力されている間アナロ
グバスに固定されたある闇値電圧を出力する。すなわち
■で示すようにDCSIが立ち上がってからこの電圧が
出力されている間、中間層の各ANPは通常の人力と同
様に積和演算を行って、その固定電圧が前の2つのアナ
ログ入力信号の積和演算されたものの結果に加えられる
ことになる。すなわち、掛は算後、足し算を実行する。
5YNCIは、C3O1が立ち上がる前のDCLKの立
ち下がりでハイとなり、DC31が立ち上がってから次
のDCLKの立ち下がりでロウとなる。これは入力層の
同期をとる信号である。WCLKが入力されている間で
アナログ入力と重みデータの掛は算が行われる。中間層
のANPに入るサンプル/ホールド信号SHIには、2
つの山Ml、M2が出力されているが、最初の山Mlの
少し前で積をとり山の部分で和を生成し、ホールドする
。そして、次の山M2でオフセット電圧Vb  (第6
図参照)を差し引いてサンプル/ホールドする。このよ
うな処理を入力されるすべてのアナログ信号について順
次繰り返し行い、積和の計算が終わる。この場合はダミ
ーを含めて中間層の各ANPは積和演算を3回実行する
。これで中間層の各ANPの処理は終わり、3人力に対
する積の加算までが終了する。
また、タイミングチャートにおいてDC3Lが立ち下が
った直後のDCLKがハイのとき、アナログ2カポ−1
−0,1,ダミーノードから3つの信号について積和演
算した結果が各ANPI、2゜3のキャパシタ(第4図
、サンプル/ホールド部45内のCh)にホールドされ
る。このような動作が基本的に繰り返されることになる
が、中間層と出力層との間にあるアナログバスB2にA
NPlの出力信号をいつ出力するかということはマスク
コントロールブロック181から出されるC802の信
号の立ち上がりで決まる。
SHIの下に示したオフセットコントロール制御信号O
CIはANPの内部においてオフセットキャンセルを行
う。すなわち各ANPは内部的にオペアンプを含むアナ
ログ回路であって、回路自体がオフセットを持っている
ため、このオフセットをキャンセルするための制御信号
がOC信号である。OCIに示されるように積和の演算
が1つ実行される毎に1つのパルスが出され、内部にお
いてオフセントキャンセルが実行されている。タイミン
グチャートでは■で示すようにC3O2が立ち上がると
ともにANPIからアナログバスB2にANPIにホー
ルドされていた信号が出力し、C3O2がハイの間に出
力層のANP4が積和演算を行う。■で示されるC3O
2の立ち上がりはその前の入力結果の積和の結果を出力
するタイミングである。
次に、第・9図を使って中間層と出力層との間のタイミ
ングを説明する。
なお、同図において、中間層からのデイジ−チェーン制
御信号の出力■、■、■、■及び出力層からの出力■、
■に同期してアナログバス上にあられれるアナログ信号
は上述した入力層からのデイジ−チェーン制御信号の出
力■、■、■に同期してアナログバス上に入力されるア
ナログ信号に対して■処理サイクル前の結果が現れるこ
とになる。パイプライン処理の実行は後で説明するが、
タイミングチャートの■で示されるC5O2の立ち上が
り時において、ANPIの出力が出される。
■に示されるC3O2の立ち上がり時にタイミングチャ
ー)SH2の信号を見るとパルスが2つ出されている。
SH2H2O28図のブロック図において、出力層の第
1番目のANP4に人力されている。すなわちSH2H
2O2つの山のパルスにおいて、ANPd内で和の演算
が1つ実行される。中間層には図に示されるようにAN
Pl、2゜3の3つの中間層のニューロンがあるが、マ
ックスバリューノード回路187によるダミーノードが
1つ加えられ、合計4つのニューロンがあると仮定され
ている。従ってSH2信号の山2つのパルスが■の部分
から見て4回出力されており、このSH2信号の4組の
山のパルスで中間層のアナログ信号がANP4に人力さ
れ積和が演算される。
この動作は当然、中間層のANPが入力信号に対して積
和演算をしているタイミングと同時に行っていることに
なり、これはパイプライン処理となっている。C3O2
の下の信号は中間層にあるANPIのC8○の信号で、
これは同じ中間層のANP2に対するC8Iである。こ
れが■で示されている部分である。その下はANP2の
C8Oでその下はANP3のCSIでこれが■である。
その下がANP3のC8Oであり、その下の■がダミー
ノードのCSIであってこれはDO82、すなわちマス
クコントロールブロックから出される信号である。CS
Iで見ると■、■、■、■の順序でそれぞれ中間層のA
NPI、ANP2.ANP3、そしてダミーノードのマ
ックスバリューノード回路187に入力される。この間
SH2信号は2つの山を持つパルス信号を4つ出してい
る。
すなわち、ANP 4の出力層のニューロンは入力アナ
ログ信号と重みとの積を4つ分加えることになる。■の
部分でANPIにCSIが入力している時にはANP 
1からアナログ信号が中間層と出力層の間のアナログバ
スに信号が出され、これがANP4に入力される。そし
てこの時、対応する重みデータがANP4に人力され、
それと共に積が実行され、SH2信号の第1の山で加算
され、第2の山でサンプル/ホールドされる。そしてこ
の計算が終わると、ANPIからC8Oの信号が立ち上
がり、これがANP2のCSIとなる。これが■の状態
であり、この時重みデータとアナログバス上のデータと
が掛は算され、和が計算される。■が立ち下がったあと
所定時間後にANP3へのCSIがハイとなり■で示す
ようにANP4で積和演算が行われる。このような積和
の演算がANPA内で計算され、■のところでマックス
バリューノード回路187から出力される固定電圧がA
NP4に入力され、これが内部のいままで蓄えられた積
和に加えられることになる。
以上の動作は出力層のANP5に対しても並行して行わ
れる。ここに同時処理がある。ANP4で計算された積
和演算の結果が出力層に接続されたアナログバスB3に
出力されるタイミングはマスクコントロールブロック1
81から出されるC3O3の立ち上がりである。マック
スバリューノード回路187がアナログバスB2に出力
するための制御信号がDC32であって、これが■に対
応する。このDO32までは中間層における計算結果を
出力するまでの動作である。タイミングチャートのこれ
よりも下に書いである信号に対しては同じような動作で
あり、中間層とカスケードに接続された出力層側の動作
を規定する信号パルスである。C3O3が立ち上がると
、ANP4で計算された積和演算の結果が出力されるこ
とになる。
出力層ではANP4、ANP5の2個が出力される。な
お、例えば■のC3O2の立ち上がりは、AN、Plに
入る信号で、この立ち上がりはDCLKよりも遅れてい
る。これはアナログ入力信号とディジタル重みデータと
の積演算を行う場合、WCLKでディジタルデータを読
み込む時にシリアルであって、これを内部でパラレルに
変換するディジタルデータの読み込み時間とアナログ入
力信号がD/Aコンバータすなわち乗算処理部に到達す
るまでの時間を考慮してC3O2の立ち上がりを遅らせ
ているからである。すなわち、最初の頭の部分でズして
いるのは、データの呼び出し、つまりシリアルデータの
読み込み時間が含まれている。データがセットし終わる
のはDCLKの′立ち上がりから、しばらくたった時間
すなわちWCLKで16サイクル後である。アナログ乗
算の開始時間はC3O2が立ち上がってからWCLKで
8サイクルたった後である。
第10図は、ディジタル重みデータの読み込みタイミン
グを示すタイミングチャートである。同図において、マ
スタクロックMCLK、同期信号5YNC,重みクロッ
クWCL K、データクロックDCLK、実際の重みデ
ータWDATAが示されている。重みデータWDATA
は重みメモリからビットシリアルで読み出され、16ビ
ットがシリアルに入力される。Sはサインビットで、B
14〜BOまでが数値ビットである。同図において重み
データWDATAのB8.B7.B6の部分が重みクロ
ックWCLKとの対応として図の下方に拡大された形で
表現されている。重みクロックWCLKは周期が250
 n5ecでデユーティ比50%になっている。WCL
Kの立ち下がりからシーケンサ内部にあるアドレス更新
用のカウンタの伝播遅延時間後に重みメモリにアドレス
が与えられる。
即ち重みメモリ (RAM)のビットnのアドレスは重
みデータWDATAのビット7が格納されている重みメ
モリのアドレスである。このアドレスが確定した後、t
AA時刻後にビット7が読み出されている。ビット7か
らビット6への変化は重みクロックの次の周期への変化
によって決まり、ビット6は次の周期で読み出されてい
る。重みデータの16ビットはANPに入力され、AN
Pに入力されるアナログ電圧との積が内部のD/Aコン
バータによって計算されるので、アナログ電圧の入力開
始は、データクロックDCLKからの立ち上がりからず
っと後に入力される。即ち、アナログ入力電圧は入力さ
れてからD/Aコンバータに到達されるまでの時間があ
るのでその時間とディジタル重みデータが内部にセット
される時間とを制御し、重みデータの到着時間とアナロ
グの到着時間がちょうど一致するようにアナログ電圧を
入力する必要がある。
例えば、アナログ入力電圧の立ち上がりは、重みデータ
のB7あたりから立ちあげ、重みデータのBOが入力さ
れ、その後すべての重みデータが内部で確定した頃にそ
のアナログ値との乗算がスタートするように時間の制御
をとる必要がある。
そして加算はDCLKが次にロウになる期間で行われる
ANPの動作時間は、5YNC信号とWCL K。
及びデータDCLKで規定される。そしてアナログ入力
電圧はANPの入力端子からディジタル重みデータと積
を実行するD/Aコンバータ迄の電圧到達時間等にかな
りの時間誤差があるので、マージンを見込んでCSIの
立上りはDCLKの立上りより遅れたところから始まる
ことになる。
第11A図はマスクコントロールブロック181の構成
図である。マスクコントロールブロック181はすべて
の制御信号を総括する部分である。
主要な構成要素は外部バスインタフェイス回路200、
制御パターンメモリ201及びマイクロプログラムシー
ケンサ202とマイクロコードメモリ203、アドレス
作成部204である。外部パスインタフェイス回路20
0は、MPU等に接続するためのインタフェイスでアド
レス線205、データ線206及び制御信号線207に
接続されている。外部パスインタフェイス回路200の
上位アドレス比較回路208、レジスタであるD−FF
209はそれぞれMPU等から与えられる上位アドレス
をデコードし、上位アドレスが予め定められた番地であ
る場合に、下位アドレスとデータをそれぞれD−FF2
09,211にタイミング回路214からのラッチ信号
をトリガとしてセントする。そのアドレスとデータはそ
れぞれバスドライバ210と212を介して、内部アド
レスバスと内部データバスを介して内部に入力される。
そのアドレスはマイクロコードメモリ203を参照して
、マイクロコードをデータバスを介してMPU側から書
き込む場合等に利用される。また下位アドレスはバスド
ライ、バ210を介してマイクロコードアドレスをマイ
クロプログラムシーケンサ202にも渡され、MPU側
からの特定なアドレスで制御パターンメモリ201を参
照できるようにしている。
MPUあるいは主記憶からのデータはデータ線206を
介してD−FF211にラッチされた後、バスドライバ
212を介してマイクロコードメモリ内のをバレー) 
I10RAM213あるいは、制御パターンメモリ20
1内のセパレート■/○RAM215,216に加えら
れる。MPU或いはメモリからのデータストローブ信号
が制御信号線207を介してタイミング回路214に加
えられるとアクノリッジ信号を返送する通信方式で、ア
ドレスやデータの送受信に関する制御が行われる。タイ
ミング回路214はD−FF211.D−FF209へ
のラッチタイミングやWR倍信号介してマイクロコード
メモリ203、制御パターンメモリ201への書き込み
タイミング等を制御する。
第9図のタイミングチャートに示されるようなニューロ
チップに与える複雑な制御信号の“l”“0′パターン
は、制御パターンメモリ201に1周期分格納され、そ
の1周期分のパターンをマイクロプログラムシーケンサ
202の制御に従って制御パターンメモリ201から読
み出すことによって生成する。例えばリセット信号Re
5et %データクロックDCLK、重みクロックWC
LK。
C3OI、C3O2,C3O3や5YNCI、5YNC
2、SHI、SH2、OCI、OC2等の制御信号はセ
パレー)I10RAM215から続出され、パターンに
付随する制御情報つまりシーケンス制御フラグは第2の
セパレートI10RAM216から読み出される。例え
ば制御パターンメモリ201は1000110001と
いうパターンが格納されている場合には、“1,0”ビ
ットのパターンであるから、この”i、o”ビットのパ
ターンを繰り返すように制御パターンメモリ201のア
ドレスを制御すれば、このパターンの繰り返しが制御パ
ターンメモリ201から読み出されることになる。すな
わち制御信号のパターンは非常に複雑なパターンである
ので、これらのパターンを予めこのセパレートI10R
AM215に格納しておき、そのセパレートI10RA
M215のアドレスをマイクロプログラムシーケンサ2
02の制御に従って指定することによって順次そのビッ
トパターンを出力する構造になっている。
よって、幾つかの同じパターンを繰り返すことになるの
で、その繰り返しをどのように実現するかはアドレス制
御に従う。この1周期分のパターンをオリジナルパター
ンと呼ぶことにする。オリジナルパターンを繰り返すた
めには、マイクロプログラムシーケンサ202に制御パ
ターンメモリ201からの特定な情報をフィードバック
する必要がある。すなわち第2のセバレー) I10R
AM216内のシーケンサコントロールフラグを条件入
力としてマイクロプログラムシーケンサ202に入力す
ることにより、マイクロプログラムシーケンサ202は
第1のセパレートI10RAM215内のオリジナルパ
ターンの入っている先頭アドレスに戻るように制御する
。このことにより、オリジナルパターンの繰り返しが実
行される。すなわち、マイクロプログラムシーケンサ2
02はその条件が満たされるまで汎用ボート出力線20
2−1を介してセパレートI10RAM215へのアド
レス信号を逐次に生成する。通常はこのアドレスはイン
クリメントされるがオリジナルパターンの最終になった
という条件が満たされると、そのオリジナルパターンが
格納されている先頭アドレスに戻るようにする。結果と
して特定なパターンが繰り返しセパレートI10RAM
215から制御パターンが出力される。
111B図は、マスクコントロールブロック181を制
御するメモリ201及び203内の情報の相互関係であ
る。同図において、制御パターンメモリ1が第1のセパ
レートI10RAM215に相当し、制御パターンメモ
リ2が第2のセパレートI10RAM216に相当する
。マイクロコードメモリ203内には、シーケンサ20
2の制御コードが記憶され、主に、Jump命令とRe
pea を命令が格納されている。アドレスの増加方向
にみて、特定なアドレスにRepeat命令があり、こ
の反復命令に従う制御パターンメモリ内のパターン1の
繰り返し数は制御パターンメモリ2の対応するアドレス
に格納され、例えば「10」であるとすれば、10回の
反復を実行することになる。このようにして、アドレス
が増加し、マイクロコードメモリのJump命令に来た
ときに、マイクロコードメモリ203内の第2のJum
pで500Hに飛び、Pattern2を出力する。P
attern 2を5回繰り返すと、マイクロコードメ
モリ203内の第3のJumpで、再び「100H」に
飛び、Pattern  1を出力することになる。こ
のようにして、オリジナルパターンが繰り返されて、制
御パターンメモリ1から読み出される。
この制御パターンメモリ201を参照するアドレスの読
み出しクロックに同期してWCLKが作られており、重
みメモリ185,186からWCLKに同期して情報が
読み出される。重みメモリ185.186へのアドレス
はアドレス作成部204のアドレスl及びアドレス2か
ら出力されるアドレス信号によってアクセスされる。ア
ドレス1とアドレス2はそれぞれ、中間層と出力層に対
応して分離している。中間層にあるANPに与えるべき
重みデータはアドレス1によって指定される重みメモリ
185から読み出され、出力層へのANPへの重みデー
タはアドレス2によって指定される重みメモリ186か
ら読み出された内容である。各アドレスは重みメモリ1
85.186の内容が重みデータの各ピントをアドレス
が増す方向に1ビットずつ格納されているので、アドレ
スカウンタ217,218へのカウント制御信号がマイ
クロプログラムシーケンサ202から与えられる必要が
ある。そのアドレスカウンタ217゜218によってこ
のアドレスがバスドライバ219.220を介して次か
ら次へと重みメモリ185.186へのアドレス信号と
して、インクリメントして与えられる。そして複数の重
みデータがその重みメモリ185,186から読み出さ
れる。
第1のセパレートI10RAM215からWCLKとマ
イクロプログラムシーケンス202からのカウンタ制御
信号がアドレス作成部204内のアンド回路22L22
2に加えられている。カウンタ制御信号がハイのとき、
WCLKによってアドレスカウンタは更新され、WCL
Kの1・〜16ビットまではアドレスカウンタ217.
218をインクリメントする。そして、残りのWCLK
17〜26ビットに対しては、カウンタ制御信号をロウ
とすることによりWCLKをインヒビソトとしてアドレ
スカウンタ217,218のインクリメントを停止する
。そして、5YNCI、5YNC2に同期して、それぞ
れカウンタリセット信号をマイクロプログラムシーケン
ス202がらアンド回路221.222に送出して、ア
ドレスカウンタ217.218をリセットする。このこ
とにより、重みメモリ185.186のアドレスを先頭
アドレスに戻す。なお、マスクコントロールブロック1
81から出力されるモード信号は、重みメモリの通常使
用、すなわち重みメモリをMPUデータバスから切り離
し重みデータをANPに与えるモードと、重みメモリを
MPUデータバスに接続し、MPUから重みメモリを参
照するモードを形成するためのものである。
モード信号は、MPUからのデータの下位ビットが、下
位アドレスの1ビットとタイミン々゛回路214からの
書込み信号からWRをアンド回路223にて生じるアン
ド信号をトリガとしてフリップフロップ224にセット
されることにより形成される。このモード信号が0のと
き重みメモリは通常使用となる。
書込み信号WRと内部アドレスバスの1ビットがアンド
回路223を介してフリップフロップ224のクロック
端子に入力され、内部データバスのLSBがフリップフ
ロップ224のデータ端子に入力される。上位アドレス
を比較回路208でマスクコントロールブロック181
が選択されているかを判定し、選択されている場合、下
位アドレスとデータをDFF209..211に取り込
む。
このような、インタフェイス動作はMPUに接続される
他のデバイスに対しても同様に行われるが重みメモリは
通常ANPに対し重みデータを供給しているので、MP
Uのデータバスに直接接続するとバス競合が生じる。こ
れを防ぐために、内部データバスのLSBがフリップフ
ロップ224に取り込まれた時はモードを1として、重
みメモリを後述するようにチップセレクトしないように
して、重みメモリからデータバス上にデータが生じない
ようにする。内部アドレスバスが所定タイミングにおい
て、内部アドレスバスによって、マイクロコードメモリ
203と制御パターンメモリ201のいずれかのアドレ
スを指定し、そのアクセスされたアドレスに内部データ
バスから所望のデ−夕を書き込む。これにより、マイク
ロプログラムシーケンサ202やマイクロコードメモリ
203、セパレートI10RAM216に記憶されたプ
ログラムを変更するか、セパレートI10RAM215
に記憶された制御パターンを変更する。
第12A図はこの重みデータメモリ230のデータ格納
構成図である。同図において列方向の8ビットは同じア
ドレスに入った8ビットデータの情報であり、各ビット
は下からANPI、ANP2・・・ANP8に与えられ
る。行方向はアドレスが異なり、図に示すように左に行
くほどアドレスが増加する方向となっている。重みデー
タはサインビ・シトを含めて16ビットであるからこれ
をアドレスの小さい方向から大きい方に向かって格納す
る。MSBは、サインビットで、それ以外の15ビット
は数値ビットである。マイクロプログラムシーケンサ2
02からアドレスがWCLKに同期してインクリメント
されると、重みデータの1ワ一ド分、すなわち16ビッ
トがMSBから順にLSBまで読み出されることになる
。8個の複数のANPに同時にこれらの重みデータが渡
される。このようにアドレスの増加する方向にデータが
格納される構造になっているため、この重みデータに対
するアドレスのカウンタが必要となる。
すなわち、MSBからLSBの重みデータデータの1ワ
一ド分がカウントされたら、1個分の重みデータになる
ようにカウントされる制御が必要となる。この制御はや
はりマイクロプログラムシーケンサ202で行っている
第12B図は重みメモリブロック185,1B6具体的
回路である。メモリ230はMB8464A−70とい
うRAMである。出力はANPI〜ANP8に対応する
8ビットである。基本的にMPUのバスから見たバス信
号線とマスクコントロールブロック181から見えるア
ドレス1と2のどちらかを使う。アドレス1と2は前述
した第11A図のアドレス1と2である。このアドレス
1と2はWCLKに同期してインクリメントされる形で
入力される。8ビットのデータは同時に読み出され、各
ビットはANPI〜ANP8に対して同時に与えられる
モード信号がOのときアンドゲート233を介して、重
みメモリ230はチップセレクトされ、このとき、マイ
クロプログラムシーケンサ202からのアドレス1.2
がマルチプレクサ234で有効となる。そして、重みメ
モリ230から重みデータがANP 1〜8に送られる
。一方、反転回路231の出力は、ハイであるからトラ
イステートバストランシーバ232はディスイネーブル
状態となって重みメモリ230の出力はMPUへと出力
されない。
MPUに出力する場合には、モード信号を1にして、M
PUからの適当なアドレス情報によって、アドレスデコ
ーダ235を介してメモリ230をチップセレクトし、
メモリ230にMPUからアドレスを与える。モード信
号が1のとき、MPUバスへの読み出しまたはバスから
メモリ230への書き込みの制御すなわちリードライト
の方向は、MPUからアンドゲート236を介して来る
データ線の読み出し信号Read Signal によ
って決められる。
次に学”Jのアルゴリズムについて説明する。
第12C図は本発明に利用されるパックプロパゲーショ
ンという学習アルゴリズムのフローチャートである。学
習は次のように進められる。本発明のニューラルネット
ワークすなわち、ANPの集合によって構成される階層
型ネットワークの入力に学習すべき完全情報がMPUか
ら図示しない入力制御回路を介して入力される。そして
、その入力信号は入力側回路、中間層及び出力層を介し
てネットワーク出力にA/Dコンバータを介した後MP
Uに与えられる。MPU側の主記憶内に学習アルゴリズ
ムが存在する。MPU内は、教師信号を主記憶から取り
入れ、ネットワークの出力と教師信号との誤差を調べる
。もし、その誤差が大きければ、MPUは、ネットワー
クが正しい出力を出す方向に、ネットワークの接続の強
さである重みデータを変えることになる。この重みデー
タは重みメモリ230を介して各層のANPに加えられ
る。
重みデータが学習アルゴリズムによって更新される場合
、第12C図のバックプロパゲーション学習アルゴリズ
ムに従うことになる。学習アルゴリズムがスタートする
と、MPUは出力層のL番目のニューロンA N P 
tは教師信号YLと、現在の出力YLとの誤差を求めて
それをZLに代入する。出力YLはニューロンANPL
の出力であるから、例えばシグモイド関数を非線形素子
として使うならば、この非線形関数の出力値として出さ
れたものである。従って、ニューロンA N P tに
おいて、誤差ZLを非線形関数の入力側に誤差伝播する
必要がある。誤差伝播を行う場合、エネルギー関数、す
なわち誤差信号の2乗に1/2を掛けたエネルギー、す
なわち EL = 1/2 (Yt −yt、 ) ”の非線形
関数人力XLに対する偏分、すなわちは次のように変形
できる。
=(YL   Yt  )  ・ r(xL )となる
。ここで、非線形関数f(Xt)がシグモイド関数であ
るとするならば、 このシグモイド関数の微分子 ′(XL )を変形する
と、 f  ’  (XL  )  =YL  (I   Y
t  )となる。これはフローチャートの82に示され
る■、である。従って、δすなわちエネルギーの非線形
関数入力XLに対する偏分はVLXZLとなり、すなわ
ちS2に示されるU、となる。このエネルギーの非線形
関数人力に対する誤差分δをさらに中間層へ逆伝播させ
る必要がある。
中間層の第に番目のニューロンをAkとする。
Aうの出力はYkとする。出力層のニューロンANPL
の非線形関数人力XLはすべての中間層にあるニューロ
ンの出力(yt  ・・Y工□)までのそれぞれに重み
WLKを掛けた積和で表現される。
従って、Xt、の重みWLKに対する偏分はとなる。一
方、エネルギーELに対する重みWLxの変分は次式で
与えられる。
となる。すなわちS3のTLKは (9E。
WL k を表現しているもので、エネルギーの重みに対する偏分
である。従って、このTLKを重みの変化分ΔWとすれ
ばよいが、収束を早めるために84に示される第1式の
第2項を加えて、次のような漸化式にして重みを修正す
る。
ΔWLll=αT、ア+β・ΔWL kwt k =w
t k +ΔWLう ここで、α、βは定数である。今、出力層の特定なニュ
ーロンANPLに注目しているが、このANPLは中間
層のニューロンにすべて接続されているものとするなら
ば、各A N P Lに対してKを1からK ffi&
Xまで繰り返す必要がある。これがフローチャートのR
1に示す繰り返しで、中間層のニューロン数K max
だけ繰り返すことになる。この繰り返しが終わると出力
層の特定なニューロンA N P Lに対する逆伝播が
終了することになる。
従ってこれをすべての出力層のニューロン(ANP+、
ANPz、  ・・・、ANPL、□つ)に対して行う
必要があるため、フローチャートのR2に示すように、
Lを1からL mmXまで繰り返すことになる。すなわ
ち、最終出力層のニューロンの数り、11.Xだけ繰り
返すことになる。
次に今度は中間層から入力層に向かって学習することに
なる。アルゴリズムはほぼ同様であるが、誤差信号は教
師信号と出力電圧との差で表現できず、S5の式になる
。すなわち、Zkが中間層のに番目のニューロン、A、
の出力誤差信号に対応する項となる。これは次式によっ
て明らかである。
−ΣWL 、 ・ Ut。
L となる。従って、S5のZkのインデックスLに対して
1からR81、まで、すなわち出力の数だけ繰り返す(
R3)ことによって中間層の誤差信号骨Zうが計算され
る。その後は中間層と出力層との間のアルゴリズムと同
じである。すなわち、まず、シグモイド関数の微分値V
つを出し、それを用いてUS、すなわちエネルギーの非
線形関数人力に対する変化分を86で求める。S7でそ
のU。
を用いて入力層の出力、Y4との積Tk jを求める。
これを重み変化分の主要部として、S8に示すように収
束を早めるための第2項を加えて、ΔWkJを求め、前
の値W5.にそのΔW6.を加えて新たなW、1とする
。これが重みの更新である。この重みの更新を入力数J
 IIIIIXだけ繰り返す(R4)。すなわちj=1
からJ maXまで繰り返すことによって入力層と中間
層の間の重みが更新されることになる。なお、S5のZ
kは中間層の出力の誤差信号に対応するものであって、
これは出力層のエネルギーの関数入力値に対する偏分U
Lを後ろ向きに逆伝播した形で表現され、WLKは中間
層と出力層との重みが定まって初めて定まるものである
。すなわち重みの更新に対する計算は出力層のニューロ
ンANPLから始めて中間層のニューロンA N P 
xに移り、中間層のニューロンANPXではその重み変
化分ΔWはその前段のΔWが決まらないと計算できない
ものとなっている。
従って最後の入力層まで遡って始めて計算が可能となる
ところからこの学習はバックプロパゲーションと呼ば゛
れている。
バックプロパゲーションによる学習は学習用のデータを
完全情報として入力し、結果を出力する前向き動作とそ
の結果のエラーを小さくするようにすべての結合の強さ
を後ろ向きに変えることになる。その為、この前向き動
作も必要となる。この前向き動作において本発明のアナ
ログニューラルネット部が有効に利用される。また、出
力値を逆伝播するアルゴリズムはMPUで実行される。
なお、シグモイド関数でない非線形である場合には、そ
の非線形の微分値が異なる。例えばtanh(x)であ
るならば学習アルゴリズムは第12D図のように、非線
形の微分結果は、出力層ではVL=1−IYLIとなり
(S2’)、中間層では■。
=1−IY、l  (36′)となる。
その他は、第12C図と同じ参照符号をつけて説明を省
略する。
第13図は入力側のデイジー回路173,174の構成
図である。図中240,241,242はDタイプのフ
リップフロップである。DCLK信号の立ち上がりでD
端子に入力されるデータをセットし、出力Qを1の状態
にする。第1のフリップフロップ240は、DCLKの
立ち下がりで、CSI信号をセットする。そして、次の
立ち上がりで第2番目のフリップフロップ241にその
出力信号をセットする。
その出力は第3番目のフリ・2.ブフロップ242のD
端子に入力されている。その入力をセ・ノドするクロッ
ク信号は4ビットカウンタ243の出力である。カウン
タ243はWCLKの立ち下がりでトリガされる。クリ
アされるのはDCLKの立ち下がりである。従って、D
CLKの立ち下がりにカウンタ243はオールOとなり
、WCLKの立ち下がりが8回入力された後、上位ピン
トのQD倍信号ハイとなるので、これがトリガとなって
フリップフロップ242はC8Oにハイ信号を出力する
。フリップフロップ241の出力が0になればC8Oは
クリアされる。このような動作により、CSIが立ち下
がって、WCLKの8パルス分に相当する所定な時間通
過したのちC8Oが出力されるというデイジー動作が行
われる。
第14図はダミーノードのニューロンを形成するマック
スバリニーノード回路187の具体的回路図である。同
図において抵抗250、ツェナーダイオード251.2
52、抵抗253、電圧フォロア254.255は一定
電圧を形成する回路である。抵抗250.253とツエ
ナーダイオ−ド251.252を介して+12ボルトか
ら一12ボルトに電流が流れると電圧フォロア254.
255の入力には、それぞれ+7ボルトと一7ボルトが
形成される。これらの電圧は電圧フォロア254.25
5の出力抵抗256を介して出力される。この2つの一
定電圧を時分割で引き出すようにアナログスイッチ25
7〜264を用いて制御する。Tモードの信号がOの時
、その一定電圧はアナログスイッチ257を介して次の
電圧フォロア265に与えられる。Tモードが1すなわ
ち、テストモードの時にはアナログスイッチ258によ
ってその出力はアナロググランドに抑えられるため、0
ボルトが電圧フォロア265に入力される。テストモー
ドでは、バス上のオフセットがMPUに通知されること
になる。電圧フォロア265は、出力部のスイッチ制御
によってイネーブルされる。出力イネーブルが1のとき
、アナログスイッチ260がオンで電圧フォロアとして
働き、その出力が与えられるが、この時、ダミーノード
出力には出力されない。逆に出力イネーブルが0の時に
ダミーノード出力に出力される。アナログスイッチ26
0とその出力のスイッチ制御は出力イネーブル1または
2によって制御され、0イネーブルである。すなわち出
力イネーブル1または2がOの時にダミーノード出力に
一定電圧が出力される。なお、ダミーノード出力は上側
が入力層のダミーノード−用であり、2番目が中間層の
ダミーノード用の出力である。このダミーノードの出力
電圧は適当な値に固定されるため、スレッシュホールド
電圧として使用可能となる。なお、ツェナーダイオード
251..252は逆バイアス状態で一定の電圧を出す
ものであり、固定電圧は、+7ボルトから一7ボルトま
での範囲で可変できるようにしている。出力イネーブル
I、2はアナログバスにつながっている他のANPから
の出力電圧とそのアナログバス上で衝突を避けるために
マスクコントロールブロック181からのダミーノード
制御信号DC3でイネーブル状態が決められている。
第15図は非線形関数発生回路であり、第16図、第1
7図、第18図はANP内部のディジタルロジック側の
ハードウェアである。
第15図はシグモイド関数を実現するトランジスタ回路
網である。ここでいうシグモイド関数とは連続で単調非
減少な関数を指し、かつ線形関数を特に除外するもので
はない。同図において343.356,378,390
,298,314のトランジスタとそれに対になったト
ランジスタで差動増幅器を形成し、コレクタ側に接続さ
れたトランジスタ群がそれぞれカレントミラー回路であ
る。差動ANPの左側のトランジスタのコレクタを流れ
るコレクタ電流が出力電流である。カレントミラーで電
流の方向を変えて出力している。電流は出力VOに接続
されている抵抗336にはいる。抵抗336によって電
圧が電流に変えられる。
ドライブ能力がないため、出力にはハイインピーダンス
のオペアンプバッファで受ける。トランジスタ337,
339より入力側の回路はバイアス回路である。シグモ
イド関数を実現するために区分線形法を使っている。シ
グモイド関数の各区分の傾きはエミッタに接続されたエ
ミッタ抵抗344と出力抵抗336の比によって決めら
れる。この時トランジスタ343等のエミッタ抵抗も含
まれる。各差動ANPのゲインは異なる。各区分線形の
移り変わりに対するブレイクポイントは飽和特性を利用
している。その飽和特性はすべて異なる。■0の出力点
において、各オペアンプから出力される電流の総和の値
がシグモイド関数になるように各ANPの飽和特性を変
えている。トランジスタ345と抵抗R1は電流源であ
る。トランジスタ346と抵抗R2、トランジスタ35
3と抵抗R3等はすべて同じ電流を供給する電流源であ
る。すなわち、電流値は同じになるように抵抗が決めら
れている。すべて同一電流源である。トランジスタ34
5,346のコレクタは接続されているので、和の電流
が抵抗344.347の交点に流れる。トランジスタ3
43,348のコレクタ電流は、バランスした時点では
同じになる。
トランジスタ351はカレントミラーの特性をよくする
ためのものである。トランジスタ350はダイオード接
続である。電流の向きを変えるということは出力に対し
て、電流を引っ張りこむ場合と電流を外に出す場合があ
る。同図に示すように、カレントミラーのトランジスタ
351のコレクタからは出力に向かって電流が流れる。
下側のトランジスタ配列は沢山あるが、エミッタとコレ
クタが同じ点に接続されているトランジスタは同じトラ
ンジスタである。例えばトランジスタ358と360は
同じトランジスタでこれはトランジスタ345と同じも
のである。また359と361も同じトランジスタでこ
れは346に対応する。368.369のトランジスタ
は同じであり、これは353に対応する。以下、同様で
ある。したがって、同じ電流で駆動される定電流電源を
有するオペアンプが出力電圧の正負に従って電流の向き
が異なるような動作を行うものが全部で6個ある回路で
ある。また、トランジスタ337,338はレベルシフ
トであり、330と327もレベルシフトである。レベ
ルシフト回路はシグモイド関数の正と負で動作範囲がほ
ぼ同じになるようにするためのものである。トランジス
タ352はトランジスタ351のコレクタ電流とトラン
ジスタ353のコレクタ電流が等しくなるための補正用
のものである。トランジスタ367.385,287.
307も同様である。
第16図は、ニューロチップ内に供給するパルス信号の
形成するためのシーケンスジェネレータ28(第2図)
の具体回路である。401と402及び404と405
はインバータで、各インバータはクロック用のインバー
タである。フリップフロップF、Fのラッチ信号の立ち
上がり用と立ち下がり用とに分けてクロックを作ってい
る。同図のフリップフロップは立ち上がりクロック′で
ラッチするもので、インバータとF、Fで立ち上がりラ
ッチのF、Fを形成する。例えばDCLKでは、インバ
ータ401を1個通ったものが立ち下がりラッチ用のク
ロック信号となる。そしてインバータ402を通ったも
のが立ち上がりラッチ用のクロックDCLKとなる。同
様にインバータ404の出力が立ち下がり用のWCLK
でインバータ405の出力が立ち上がり用クロックWC
LKである。F、F410において、5YNC信号をD
CLKの立ち下がりがラッチしている。F、F410と
415で5YNC信号をDCLK(7)14イクル分遅
らせ、5NC2信号を作って、5YNCとその1クロツ
ク遅れた信号とで1τのパルスを作っている。5YNC
が立ち上がった後の1τ(DCLKの1周期)のパルス
でANP内の積分用コンデンサの放電を行う。すなわち
CR3Tという信号がそのコンデンサのリセット信号で
ある。
もう1つのDSH2は5YNCの立ち下がりからDCL
Kの1τ分の長さをとったパルスであって、これがAN
P内のサンプル/ホールドのコンデンサに対するサンプ
ル/ホールド信号となる。411のF、Fではクロック
がWCLKで、データがDCLKであルカら、WCLK
rDCLK信号をラッチしている。その後ナントゲート
414で5YNC信号がハイになっていて、かっDCL
Kがハイという状態で最初にきたWCLKをトリガして
F、F443のクロックにしている。ナントゲート41
4とインバータ440でアンドとなる。
F、F443において、5YNC信号がハイになってい
る状態で最初にきたWCLKという信号がディジタル重
みデータすなわちWDの符号ビットを取り込んでいる。
この信号はシリアルに入ってくる重みディジタルデータ
のMSB、すなわち符号ビットである。すなわちF、F
411とアントゲ−) (414,440)のタイミン
グで符号ビットをF、F443がラッチする。4ビット
の2進カウンタ416はWCLKのパルス数をかぞえる
。16ビソトのディジタル重みデータが入ってくるので
16回数える。数え終わったところで、出力がハイとな
り、インバータ423に入る。この信号は16個カウン
トし終わったことを指示する信号である。この信号はシ
リアルにANPに入ってきた重みデータをシフトレジス
タ27 (第2図)に入れる制御等に使われる。またカ
ウンタ416の最下位ビットはインバータ422に入力
すれる。このインバータ422の出力はC8O信号を生
成する。C8Oはデイジ−チェーンの制御信号であって
、アナログバスB1において、前段の2つのANPから
出される信号の競合を防ぐため、前の時刻のC3が落ち
た後、次のC8を出すようにデイジー動作を実行するた
めのデイレイ回路を形成する必要がある。このデイレイ
の遅延時間はWCLKをカウントし、そのカウンタ値で
形成している。カウンタ416のカウントが終わり、フ
リップフロップ433にその終わったという指示の信号
がインバータ423を介してラッチされるが、これはW
CLKでたたいている。すなわち17個目のWCLKで
たたいている。インバータ437と438を通して、ラ
ッチされた信号がカウンタ416に戻り、カウンタ41
6のインクリメント動作をこれ以上させないようにディ
スイネーブルの制御を行っている。インバータ438の
出力がロウになると、カウンタ416はカウントが停止
する。F、F433の頁の出力はフリップフロップ44
2に入っている。これがシフトレジスタ408の出力の
ゲート信号になる。すなわち、16個のディジタル重み
データが入ってくるのをシフトレジスタ408で順々に
シフトし、符号ビットを除いた数値ビットの15ビット
のデータをパラレルに並べたところでこれらを出力する
。シフトしている間は出力は出ないようにし、全部入っ
たところで出力するためのゲート信号がWRである。シ
フトレジスタ408の内容はANPの掛算器に与えられ
る。F、F433から出力される信号は、分岐されてシ
フトレジスタのイネーブル信号に使われる。F、F44
2はF、F433の出力を立ち上がりでラッチするもの
である。WCLKの16111の立ち下がりラッチでシ
フトが完了し、その後ゲートを開くのに立ち上がりラッ
チでもよいが、立ち下がりで行っている。F、F412
はシグモイド関数の選択用のパルス信号を作るものであ
る。F、F412を使ってリセット信号がはいった時点
で、WD、すなわち重みディジタル入力信号が0か1に
よってシグモイドを使うか使わないかを選択する。この
方法は本システムで使用されない場合もある。実際はシ
グモイド選択信号は、外部から直接形成する。下の回路
はデイジ−チェーン回路である。カウンタ416の出力
をF、F434でデイレイを作り、そのデイレイで最後
のF、F445をトリガを掛けている。このことにより
、DCLKの1τ分ズラした上に、そのままズラすので
はなく、頭をおとすようにしている。すなわちCSI信
号それ自身はDCLKの1周期分はないこともあり、そ
のCSIをC8OにするためにはCSIに対して、最初
の、例えば、2マイクロ分を削って波形の前を遅らせ、
後ろはそのまま信号を作っている。ゲート425と42
7はCSIのバッファゲートである。正のバッファとイ
ンバータバッファである。
第17図はサンプル/ホールドS/H信号と、OC信号
を形成する位相制御回路29(第5図)である。S/H
信号はインバータ515に入るものと、ゲート524に
入るものと別れている。OC信号も同様である。S/H
信号がゲート524とインバータ515に別れ、インバ
ータ515経由でゲート525に入るとその後はインバ
ータが8段ある。S/H信号に対してそのままの位相と
逆位相の2通りの信号を作っている。これはインバータ
を数段骨カスケードに結合し、たすきがけすることによ
り2つの出力が同時に1になることを避けている。すな
わち、サンプル/ホールドS/H信号の2つ、S/HO
とS/H1を形成し、それが両方とも1にならないよう
にするようにしている。すなわち、インバータチェーン
はS/H信号の両方が同時オンを避けるためのデイレイ
回路である。デイレイの遅延時間はインバータチェーン
の長さによって決まり、片方がオンになってから数段骨
遅らせ、もう片方をオンにしている。
S/HD OとS/HDIに関しても同様である。
OC信号に関する回路も基本的には同じであるが、それ
はCR5T信号がゲート528と529に入っているの
で、CR8Tが1の場合には強制的に両方出力を1にす
る。OCOとOCIの両方共、同時に1になることを避
けているが、OCの場合はCR3Tが1の場合だけ同時
に1になるようにしている。このことにより、アナログ
スイッチの制御を介して積分器のコンデンサの電荷を放
電するというリセット機能を実現している。
第18図は15ビットのシフトレジスタ27(第2図)
である。ゲート602と603及び6014、そしてF
、Fe12で1ビットに相当し、これを使って説明する
。ゲート603には、前の時刻の出力が入力されている
もので、これはF。
Fe12の出力である。前のビットからの入力というこ
とで、シフト用のデータ信号となる。ゲート603に入
っている他の信号は5HFT、すなわちシフト信号のイ
ンバータである。これはシフト制御信号で、これが有効
のとき、シフトの指示を行うことになる。またゲート6
02にはF、 Fe12そのものの出力が入っている。
これは自分自身の出力をフィードバックしていることに
なる。
ゲート602の他の入力には5HFT信号のインバート
が同じように入っているが、この位相はゲート603に
入っているものと異なる。これによりシフトが無効の時
に、今の出力をそのまま保持することになる。クロック
信号はシフトと無関係に常時入ってくるので、クロック
が入ってもシフトが有効でなければシフトは行わない。
シフト信号5HFTが有効の時だけ前のビットをシフト
し、ゲー)603を通って入力することでシフト動作と
なる。WR倍信号ゲート632.633等のアンドに入
っている。これは各ビットの出力を出すか出さないかの
選択信号となり、乗算器の方にシフトレジスタに格納さ
れたデータをわたすかどうかの制御信号となる。また、
ファンアウトをとるために、例えばインバータ620に
よって15(固のうち5個のF、Fのリセット信号そし
て、ゲート626で10個のF、Fのリセット信号を受
は持つようにしている。ファンアウトのシフトレジスタ
608はシフトイネーブル5HFTと出力のイネーブル
WRの機能がついている。
次に、本発明に係るニューロコンピュータを帰還型ネッ
トワークで構成した場合について説明する。
第19A図は帰還型ネットワークの概念図である。
帰還型ネットワークの場合にも、基本的には入力が存在
するが、自分が出力した信号も帰って(るという帰還路
をもった構造となる。この帰還方式は、階層型ニューラ
ルネットワークにおける1層を時分割多重使用するタイ
プとして利用される場合と、またいわゆるホップフィー
ルド型のニューラルネットワークとして利用される場合
がある。
前者の場合、ANPの入出力信号は、時分割であるので
、各ANPの出力点ではある一定のシーケンスサイクル
毎にその間じANPの出力データが逐次に出力されて、
1つシーケンスサイクルごとに階層型ニューラルネット
ワークの入力層、中間層、出力層として順次動作する。
後者の場合、ANPの出力が特定の値になるまで、つま
り安定するまで、出力電圧が帰還される。帰還している
結果を出した時に、その結果が前のデータ、つまり自分
が前に出したデータと一致するまで、状態が繰り返され
、安定解に達すれば収束となる。
本発明の実施例によれば、第19B図に示されるように
、帰還路を共通アナログバスCBで実現することになり
コの字型の帰還部が存在する。そして1個目分が計算し
て出したものが出力され帰還路を通じて各ANPからの
出力がフィードバックされることになる。この帰還動作
を繰り返していく。
第20図は本発明のニューロコンピュータを階層型ネッ
トワークとして動作する帰還型ネットワークによって実
現した実施例である。アナログ入力ボート1.2からの
時分割アナログ入力信号に対してANPI、2.3にお
いて積和演算を行い、ANPI、2.3を中間層として
動作させANPl 2.3からアナログバスB2に時分
割出力し、この出力信号を帰還路であるアナログコモン
バスCBを介してアナログバスB1に帰還し再びこの帰
還信号に対してANPI、2.3で積和演算を行うこと
により、ANPI、2.3を出力層として動作させるこ
とにより、−層のANPI、2゜3により階層型ネット
ワークを実現したものである。マックスバリューノード
回路187はマスクコントロールブロックのDC3出力
を受けてアナログバスB2にダミー信号を生ずる。そし
てマスタコントロールブロソクからDCLK及びWCL
Kがそれぞれデイジー回路171に入力され、CSI信
号の立ち上がり及び立ち下がりのタイミングを規定する
第21A図は第20図に示した帰還型階層ネットワーク
のタイミングチャートである。
DCLKが立ち上がっている間だけ、WCLKは発生し
、DCLKが立ち上がってからアナログ信号が定常化し
、かつ重みデータがシリアルに入ってきた後で、パラレ
ルに揃う前のタイミングでマスクコントロールブロック
181からのC801がデイジー回路171に入力され
■に示すように立ち上がる。この時アナログ入力ボート
1よりサンプル/ホールドS/Hに保持されているアナ
ログ信号はアナログスイッチ175を介してアナログバ
スBlに現れ、ANPI、2.3で積和演算が行われる
。次のDCLKの入力で、デイジー回路172へのCS
 ’Iが■に示すように立ち上がると、アナログ入力ボ
ートからの入力信号を保持しているサンプル/ホールド
回路S/Hの信号がアナログスイッチを介してアナログ
バスB1上に現れ、ANPI、2.3で2回目の積和演
算が行われる。さらに次のタイミングでDCLKが入力
した後、■に示すようにマスクコントロールブロックよ
りダミー信号DC3が発生し、ANP 1゜2.3にお
いては、固定電圧に対する3回目の和が実行される。次
の5YNC信号が立ち上がっている間に、ANPl、2
.3の出力層の積和演算が行われる。重みメモリへのア
ドレス1の信号のアドレスカウント禁止信号が立ち上が
っている間だけ、アドレスカウンタをカウントするWC
LKがイネーブルされ、それ以外の時には、そのカウン
トは抑止される。次に、C802がマスクコントロール
ブロックよりANPIに与えられると、ANPIは、前
回の積和の結果をアナログバスB2に出力し、アナログ
共通バスCBを通してアナログバスB1に帰還し、■で
示すように再びANPI、2.3において積和演算を行
う。C3O2がANP 1の内部のデイジ−チェーン回
路において、所定遅延を加えられた後、ANP2に■に
示すように入力信号CSIを加え、この時、ANPの出
力信号がアナログバスB2に共通バスCB及びアナログ
バスA1、B1を介して再びANPIに加えられ、ここ
で積和演算が行われる。同様にANP2からのC8Oは
所定時間遅らせた後、ANP3のCSI信号となり、こ
のCSI信号が■に示すように立ち上がった時にANP
3の出力信号がアナログバスB2.共通バスCB、アナ
ログバスB1を介して再びANPI、2.3に帰還され
てここで積和演算が行われる。同様に■に示すようにダ
ミーノードからの信号DC3の立ち上がりの際に再び、
固定電圧に対してANPI、2゜3により和の演算が行
われる。そして、次のC802の信号の立上りでANP
I、2からS/Hを介して出力が■、■に示すように生
じる。なお、アナログ入力ボート2からは出力されない
ここで■、■、■はANPI、2.3が中間層として動
作し、■、■、■はANPI、2.3が出力層として動
作する。従ってこの実施例によれば、ANPI、2.3
の1層のみの構成で階層型ネットワークを構成できる。
第22図は本発明にかかるアナログニューロコンピュー
タをホップフィールド型の帰還型ネットワークで構成し
た実施例であり、第23図はそのタイミングチャートで
ある。マスクコントロールブロック181の、メモリ・
アドレス端子及びモード端子の出力が重みメモリブロッ
ク185に加えられ、この重みメモリブロック185の
データ出力であるBIOはANPI、B1.1はANP
2、B12はANP3に接続される。マスクコントロー
ルブロック181のC3O1の端子からの出力信号は、
デイジー回路171、スイッチ175に加えられ、この
信号の立ち上がりで、アナログ入力ボート1からのサン
プル/ホールド回路173の出力をアナログバスB1に
乗せる。そしてデイジー回路171で所定時間遅延され
た後、C8Oの出力が生じ、これがデイジー回路172
にC8Iとして加えられてアナログ入力ボート2に接続
されたサンプル/ホールド回路174の信号をスイッチ
176を介してアナログバスB1に乗せる。
同様にデイジー回路172′の出力信号C8Oがアナロ
グ入力ボート3に接続れたサンプル/ホールド回路17
4′の出力スイッチ176′を開いてその信号をアナロ
グバスB1に乗せる。ANPlでは第23図に示すよう
に、DCLK信号の1周期で1つの積和の演算を行い、
DCLK信号がハイの時に重みクロックを駆動し、その
重みクロックに同期して入るディジタル重みデータと、
アナログ入力信号との掛は算を行い、DCLKの後半の
ロウ信号の時に、サンプル/ホールド信号SHがハイと
なり、積分器のキャパシタにおいて、和の動作を行う。
すなわちcsoiすなわちデイジー回路1のCSIがハ
イになっている期間■で、バスBl上のアナログ信号に
対してANPI、23は積和演算を行う。また、マスク
コントロールブロック181からのOC信号がハイとな
ると、ANPl、2.3はオフセットキャンセルを行い
、サンプル/ホールドして1つの積和演算周期を終える
。次に第2のデイジー回路172の入力信号CSIがハ
イ■になるので、次のアナログ入力ボートからの入力信
号に対しANPI、2.3は積和演算を行う。そして、
その積和演算周期が終了した後に、デイジー回路172
′にCSI信号が入り、サンプル/ホールド回路174
′から出力信号が生じて、■で示すように第3番目の積
和演算サイクルに入る。
次にマスクコントロールブロック181からC3O2信
号■が生じて、ANPIから前回の積和サイクルの時に
形成されていた信号がアナログバスCBを介して帰還さ
れ、その帰還された信号に対して、ANPI、ANP2
.ANP3で積和演算を同時に行う。次に所定時間遅延
した後、ANPlのC8O出力信号が■でANP2に加
えられ、ここでデイジ−チェーン的に前回の積和サイク
ルの時に蓄えられた信号をANP2が出力する。この信
号はアナログバスCBを介して帰還されてANPI、A
NP2.APN3で積和演算を■で駆動する。そして同
様に所定時間遅延した後、ANP2のC3oが■でAN
P3に加わえられ、ここでANP3からの出力をアナロ
グバスCBを介して帰還して、ANPI、ANP2.A
PN3において■で積和演算を行う。帰還型ネットワー
クにおいては、第23A図及び第23B図に示すように
、3つのANPにおいて、6つの積和演算サイクルを経
て出力が、それぞれサンプル/ホールド回路177.1
78.178′を介してアナログ出力ボートO11,2
へと出力される。また、サンプル/ホールド回路177
.178.178′の出力信号がアナログマルチプレク
サ179で選択出力されたものをA/Dコンバータ18
0を介してMPU182、メモリ182、通信インター
フェイス184を含むデジイタル制御回路に与えられる
。MPU182で現時刻のニューロン出力状態と前時刻
のニューロン出力状態が同じになったかどうかをチエツ
クする。同じになれば収束したものと判定する。このよ
うに、1本の共通アナログバスCBを介して実行される
。帰還動作を繰り返していくことによって安定解に到達
すればこれを最終的な出力とする。
第24図は、帰還型ネットワークと階層型ネットワーク
を組み合わせたものの最適実施例である。
入力層としてデイジー回路が設けられ、中間層にはAN
PI、2.3が設けられる。出力層にはANP4,5が
設けられる。そして中間層のANPl、2.3の出力は
アナログバスB2と共通アナログバスCDを介してアナ
ログバスB1に帰還される。また、アナログバスB1、
B2にはダミーノードとして働くマンクスバリューノー
ド回路187が接続されている。そして、出力層を構成
するANP4.5の出力はサンプル/ホールド回路17
7.178をそれぞれ介してアナログ出力ボート0及び
1に出力される。B3は出力層アナログバスである。
第25図を用いて第24図に示したニューラルネットワ
ークの動作を説明する。
まず、DCLK及びWCLKがマスクコントロールブロ
ックからデイジー回路171及びANPl、2.3,4
.5にそれぞれ入力される。マスクコントロールブロッ
ク181から■に示すようにC3OlがC8■として第
1のデイジー回路171に入力されるとアナログ入力ボ
ート0からの信号がサンプル/ホールド回路173及び
スイッチ175を介してアナログバスB1に生じ、AN
PI、2.3において積和演算がSHI及びCS1の制
御で行われる。
次に、C3O1が立下がった後、所定時間経過後に第2
のデイジー回路172に入力されるC8I信号が■に示
すように立ち上がると、アナログ入力ボート1からの信
号かサンプル/ホールド回路174及びスイッチ176
を介してアナログバスB2により中間層のANPI、2
.3において、SHIに示すように積和演算が行われる
。同様にC8Oが信号が立ち下がった後、所定時間経過
後に■に示すように第3のデイジー回路へのCSI信号
が立ち上がると、中間層ANPI、2.3で積和演算が
行われる。そして、中間層ANP 1゜2.3の出力は
C3O2が■で示すように立ち上がってANPIに加え
られると、アナログバスB2に出力されその出力は共通
アナログバスCBを介してアナログバスB1に帰還され
るので、中間層のANPI、ANP2.ANP3におい
ては再び積和演算が行われSHIとOClの制御で積和
演算が行われると共に、ANPIの出力はアナログバス
B2上に生じているので、ANP4.ANP5において
も、SH2とOC2の制御で積和演算が行われる。すな
わち、この実施例においては、中間層ANPI、ANP
2、ANP3と出力層ANP4.ANP5において同時
に積和演算が行われる。
次に、C3O2が立ち下がった後所定時間経過後に中間
層のANP2に■に示すようにCSI信号を入力される
とANP2の出力信号はANP2、共通バスCBを介し
てアナログバスB1に帰′還されるので、ANPI、2
.3においては再び積和演算が行われると共にANP4
.5においても同時タイミングで積和演算が行われる。
さらに、■で示すようにCSI信号がANP3に入力さ
れるとANP3は出力信号をアドレスバスB1に生じる
のでANPI、2.3及び出力層のANP4.5で同時
に積和演算が実行される。
その次に、マックスバリューノード回路187ヘダミー
信号DSCIが■で与えられると、アナログバスBに■
に一定電圧が出力され、この電圧は共通バスCB及びア
ナログバスB1を介して帰還され、これに対して、AN
PI、2.3で積和演算が行われる。それと共に出力層
ANP4.5でも積和演算が行われる。
5YNCIは、中間層で積和演算される期間と中間層及
び出力層で積和演算される期間にわたってハイであり、
5YNC2は中間層と出力層で積和演算がされる間がハ
イである。そして、C803が出力されるとANP4は
■のところで出力を生じ、そのC3O3信号が立ち下が
った後、所定時間後にANP 5もまた出力を■のとこ
ろで生ずる。
なお、アドレス1及びイネーブル信号がロウである間は
WCLKが抑止される。
第12C図及び第1’ 2 D図に従って、学習アルゴ
リズムを実行する際にMPUとANPのインターフェイ
スを構成する回路について、第26図及び第27図を参
照して説明する。第26図は、第8図に示した階層型ネ
ットワークにおいて、MPUからの入力データをANP
のネットワークに取り組むか、或いは通常のアナログ入
力信号をANPのネットワークに取り込むかを制御する
入力制御ブロック回路721をアナログバスB1の前段
すなわち入力段に設けたものである。さらに、アナログ
バスBl、B2はそれぞれサンプル/ホールド回路72
2,723を介してアナログマルチプレクサ179に接
続され、入力段及び中間層の重みデータもMPUにおい
て、学習アルゴリズムに従って決定される。その他は階
層型ネットワークの前記実施例と同一箇所は同一番号を
付して省略する。
入力制御ブロック721は、マスクコントロールブロッ
ク181からC3O1がCSIとして入力されるととも
に、DCLK及びWCLKが入力され、また、MPUア
ナログバス及びデータバスに接続される。さらに、アナ
ログ入力ボート1及び2からの入力信号も入力制御ブロ
ック701に入力される。入力制御ブロック721は入
力段として動作し、その出力はアナログバスB1に接続
される。
第27図は本発明の入力制御ブロック回路721の構成
図である。同図において701はアドレスデコーダ、7
02はファーストインファーストアウトのFIFOメモ
リ、703はD/Aコンバータ、704はDタイプのフ
リップフロ・7ブ、705はデイジー回路である。
学習アルゴリズムが実行される場合には、階冒型のニュ
ーラルネットにはMPUからのデータが完全情報として
入力される。この場合、MPUからのアドレスがアドレ
スバス706に入力され、アドレスデコーダ701で特
定なアドレスを検出し、ラッチ信号としてDタイプのフ
リップフロップ704にMPUからのデータの1ビット
をセットする。そのセット情報によってMPUからのデ
ータをアナログバスB1を介してANPに入力させるか
、アナログ入力ボートからのアナログ入力をデイジー回
路707,708を介してアナログ入力バスに入力させ
て通常モードで使用するかを決定する。マスクコントロ
ールブロック181からのCSIが入力された時点で、
もしフリップフロップ704の内容が1であるならば、
アンドゲート709の出力が1で、下のアンドゲート7
10の出力はOとなる。従ってデイジー回路705には
CSI信号が入力されず、CSIの立ち上がりから所定
時間だけ遅延させたC8O信号も0のままである。その
ため、MPUのデータが格納されたFIFOメモリ2の
出力は、C8IがOであるからアナログスイッチ713
は閉じたままとなり、D/Aコンバータ703を介して
アナログバスに出力されない。
このとき、アンドゲート709の出力は1であるから、
これは通常モードであってデイジー回路707のCSI
は1となり、アナログ入力ボート1からのアナログ入力
がサンプル/ホールド回路711を介してアナログバス
に乗る。その入力完了後、CSIが立ち下がり、所定時
間経ったのち、C8Oが入力されてデイジー動作となっ
て下のデイジー回路708に入力される。この時アナロ
グ入力ボート2からの入力がサンプル/ホールド回路7
12を介してアナログバスに入力される。そして、時分
割動作によってアナログ入力が中間層の各ニューロチッ
プにそれぞれ入力される。
一方、フリップフロップ704の内容が0である場合に
、マスクコントロールブロック181からのC8■はア
ンドゲート710を介してデイジー回路707に入力さ
れ同時に、アナログスイッチ713にも入力される。こ
の場合、D/Aコンバータ703の出力がアナログバス
B1に出力される。そしてこれが完了すると、C8Oが
立ち上がり、この時FIFOメモリの最後のDOデータ
がD/Aコンバータ703を介してD/A変換されてア
ナログバスに乗ることになる。そして、FIFO動作も
同時に行われ、これと並行してアンドゲート714.7
10を経てデイジー回路705のCSIへ自らが出力し
たC3Oが帰還し、D/Aコンバータ703を介して、
FIF○メモリからアナログバスB1に順次完全情報が
出力される。FIFOメモリ702は例えば、完全情報
としてA−Zを学習する場合、Zまで学習終了した時点
でエンプティとなる。FIFOメモリ702がエンプテ
ィになると、アンド回路714の出力が0となるので、
アンド回路710の出力も0となり、アナログスイッチ
713は閉じられる。このFIFOメモリ702への入
力はMPUからの特定なアドレスによってイネーブルと
なり、その時のMPUデータはFIFOメモリの1番左
側のアドレスに順番に格納されることになる。学習時の
MPUからのデータは学習するべき入カバターンであっ
てこれは完全情報となる。このようなり0からD7まで
のn IIIの完全情報が多重記憶された形でニューラ
ルネットの重みデータへ写像されて、結果としてニュー
ラルネットが自己組織される。
各入カバターンDlに対する重み情報が前述した学習ア
ルゴリズムによって定まり、その定まった重みデータは
MPUを介して重みメモリブロック1(185)とブロ
ック2(186)に格納される。
〔発明の効果〕
本発明によれば、n個のニューロチップカラする前段層
とm個の複数のニューロチップからなる後段の層を考え
るとき、従来は配線数がnm個になるのに、本発明の実
施例によれば、アナログバス1本にすることができるの
で配線数を大幅に減少させることができ、また、n個の
ニューロチップからなる層に入力アナログ信号を入力す
る際に、放送方式と同様にアナログバスを介して同時に
入力できるので、1層内のn個のニューロチップが並列
演算ができる。さらに、各層についてもパイプライン処
理が行われるので、演算速度を高速にできる。
また、ニューロチップをアナログ回路で構成しているの
で、回路の規模が小さくてすみ、このため電力も小さく
てすむので、多数のニューロチップによりニューロコン
ピュータを構成するこができる。そして、ニューロチッ
プの数を増やすことはマスクコントロールブロック内の
制御パターンをかえることにより容易に行える。
さらに、学習アルゴリズムの実行時とアナログ入力信号
の入力時とを選択することにより、ANPが学習機能を
効率よく実行することができる。
【図面の簡単な説明】
第1 A図は、本発明のニューロコンピュータの原理ブ
ロック図、 第1B図は、本発明のアナログニューロプロセッサ<A
NP)のチップから構成されたパッケージの概略図、 第1C図は、本発明のANPの内部構成図、第2図は、
本発明のアナログニューロプロセッサの原理構成図、 第3図は、本発明の基本ユニソI・の一実施例のブロッ
ク図、 第4図は、本発明の基本ユニットの実施例の具体的回路
図、 第5図は、本発明の基本ユニットの他の実施例の具体的
回路図、 第6図は、本発明の基本ユ丹ットに用いられる積分器の
動作タイミングを説明する図、第7A図は、階層型ニュ
ーラルネットワークの概念図、 第7B図は、本発明による階層型ニューラルネットワー
クの概念図、 第8図は、本発明のニューロコンピュータを階層型ネッ
トワークで実現した一実施例の具体的回路、 第9A図、第9B図は、第8図に示した信号処理のタイ
ミング図、 第10図は、ディジタル重みデータの読み込みタイミン
グを示す図、 第11A図は、マスクコントロールブロックの具体的回
路図、 第11B図は、制御パターンメモリ及びマイクロコード
メモリの構造を示す図、 第12A図は、重みデータメモリへのデータ充填方法を
示す図、 第12B図は、重みデータメモリの具体的構成図、 第12C図及び第20D図は学習アルゴリズムのフロー
チャート、 第13図は、デイジー回路の具体的回路図、第14図は
、マックスバリューノード回路の具体的回路図、 第15図は、シグモイド関数発生販路の具体的回路図、 第16図は、シーケンスジェネレータの具体的回路図、 第17図は、位相制御回路の具体的回路図、第18図は
、シフトレジスタの具体的回路図、第19A図は、帰還
型ネントヮークを説明する概念図、 第19B図は、本発明のニューロコンピュータにより帰
還型ネットワークを構成した場合の説明図、 第20図は、本発明によるニューロコンピュータにより
、第1の帰還型ネットワークを構成した実施例の具体的
回路図、 第21A図及び第21B図は、第20図に示した実施例
の信号処理を示すタイミング図、第22図は、本発明の
ニューロコンピュータにより、第2の帰還型ネットワー
クを構成した実施例の具体的ブロック図、 第23A図及び第23B図は、第22図に示した実施例
の信号処理を示すタイミング図、第24図は、本発明の
ニューロコンピュータにより階層型と帰還型とを組み合
わせた他の実施例のブロック図、 第25A図及び第25B図は、第24図に示した実施例
の信号処理を示すタイミング図、第26図は、本発明の
一実施例に係り学習アルゴリズムを実行する階層型ネッ
トワークのブロック図、 第27図は、上記実施例の入力制御回路の具体的回路図
、 128図は、ニューロンモデルの基本ユニットの原理構
成図、 第29図は、階層型ニューラルネットワークの構成概念
図である。 12・・・制御パターンメモリ、 13・・・シーケンサ、 14・ ・ ・重みメモリ、 15・・・ディジタル制御手段、 16・・・D/Aコンバータ、 17・・・A/Dコンバータ、 18・・・ANPで構成したニューラルネットワーク、 19・・・入力制御手段。

Claims (1)

  1. 【特許請求の範囲】 1)アナログ信号を第1のアナログバスから時分割的に
    入力し、積和演算を行ってアナログ信号を第2のアナロ
    グバスに出力するアナログニューロプロセッサの集合か
    らなるニューラルネットワーク(18)と、 該ニューラルネットワーク(18)の制御信号のパター
    ンを格納する制御パターンメモリ(12)と、 該制御パターンメモリと重みメモリのアドレスを発生す
    るシーケンサ(13)と、 各アナログニューロプロセッサの重みデータを格納する
    重みメモリ(14)と、 前記ニューラルネットワーク(18)と制御パターンメ
    モリ(12)とシーケンサ(13)と重みメモリ(14
    )とを制御するとともに学習アルゴリズムを実行するデ
    ィジタル制御手段(15)と、 前記ニューラルネットワーク(18)の入力段に設けら
    れ、該ディジタル制御手段(15)から入力される学習
    アルゴリズムを実行するための入力信号かアナログポー
    トから入力されるアナログ入力信号かの一方を選択する
    入力制御手段(19)とからなることを特徴とするニュ
    ーロコンピュータにおける学習処理方式。 2)前記入力制御手段は、学習時にネットワークの重み
    情報として多重記憶すべき完全情報の各情報を与えられ
    る順序に従って格納していくFIFO手段と、 該FIFO手段に接続されるD/A変換手段と、MPU
    からの特定のアドレスをデコードするアドレスデコード
    手段と、 前記特定なアドレスが指定される場合にMPUからのデ
    ータを少なくとも1ビットをラッチするラッチ手段と、 前記ラッチ情報に従って前記アナログニューラルネット
    に入力すべき入力信号をアナログ入力ポートからの信号
    か前記FIFO手段の出力信号かを選択する選択手段と
    、 前記選択手段でFIFOの出力が選択されるとき前記制
    御パターンメモリからのCSI信号に従って前記FIF
    Oから読み出したデータをD/A変換を介して、前記A
    NPに送信してCSO信号を出力するデイジー回路手段
    と、 前記FIFOがエンプティになったことを示す信号の発
    生したとき前記FIFOから出力を停止する手段とから
    なることを特徴とする請求項1記載のニューロコンピュ
    ータにおける学習処理方式。 3)学習アルゴリズムを処理するディジタル制御手段が
    各FIFOから出力される各完全情報に応答して生成さ
    れる前記ニューラルネットワークの出力と教師信号また
    は前の出力値との誤差から重み更新量を計算し、前記重
    み更新量を重みメモリを介して前記ニューラルネットワ
    ークに与える動作を前記誤差が小さくなるまで繰り返し
    て決定した重み情報を重みメモリに格納することを特徴
    とする請求項1記載のニューロコンピュータにおける学
    習処理方式。 4)前記デイジー回路のCSO信号を前記FIFOのエ
    ンプティ信号によって制御された信号としてCSIに帰
    還することで前記FIFOがエンプティになるまで前記
    D/Aコンバータを介して前記ANPに送信することを
    特徴とする請求項2記載のニューロコンピュータにおけ
    る学習処理方式。
JP1048880A 1989-03-01 1989-03-01 ニューロコンピュータにおける学習処理方式 Expired - Lifetime JP2679738B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP1048880A JP2679738B2 (ja) 1989-03-01 1989-03-01 ニューロコンピュータにおける学習処理方式
US07/486,644 US5142666A (en) 1989-03-01 1990-02-28 Learning system in a neuron computer
DE69030778T DE69030778T2 (de) 1989-03-01 1990-03-01 Ein Lernsystem in einem neuronalen Rechner
EP90400578A EP0385873B1 (en) 1989-03-01 1990-03-01 A learning system in a neuron computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1048880A JP2679738B2 (ja) 1989-03-01 1989-03-01 ニューロコンピュータにおける学習処理方式

Publications (2)

Publication Number Publication Date
JPH02228784A true JPH02228784A (ja) 1990-09-11
JP2679738B2 JP2679738B2 (ja) 1997-11-19

Family

ID=12815600

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1048880A Expired - Lifetime JP2679738B2 (ja) 1989-03-01 1989-03-01 ニューロコンピュータにおける学習処理方式

Country Status (4)

Country Link
US (1) US5142666A (ja)
EP (1) EP0385873B1 (ja)
JP (1) JP2679738B2 (ja)
DE (1) DE69030778T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2741793B2 (ja) * 1991-10-17 1998-04-22 川崎製鉄株式会社 ニューラルネットワークプロセッサ

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5214743A (en) * 1989-10-25 1993-05-25 Hitachi, Ltd. Information processing apparatus
GB2246895B (en) * 1990-07-12 1994-03-30 Mitsubishi Electric Corp Neural network system
JP2785155B2 (ja) * 1990-09-10 1998-08-13 富士通株式会社 ニューロコンピュータの非同期制御方式
JP2760145B2 (ja) * 1990-09-26 1998-05-28 三菱電機株式会社 知識情報処理装置
JP2760170B2 (ja) * 1990-11-29 1998-05-28 松下電器産業株式会社 学習機械
US5214747A (en) * 1990-12-24 1993-05-25 Eastman Kodak Company Segmented neural network with daisy chain control
JP2868640B2 (ja) * 1991-02-26 1999-03-10 株式会社東芝 ニューラル・ネットワークを用いた信号処理装置
JPH0683792A (ja) * 1991-06-12 1994-03-25 Hitachi Ltd ニューラルネットワークの学習装置およびニューラルネットワークの学習パターン呈示方法
JPH05251789A (ja) * 1992-03-06 1993-09-28 Ezel Inc ニューロデバイス
US5479574A (en) * 1993-04-01 1995-12-26 Nestor, Inc. Method and apparatus for adaptive classification
US5542054A (en) * 1993-12-22 1996-07-30 Batten, Jr.; George W. Artificial neurons using delta-sigma modulation
US5583964A (en) * 1994-05-02 1996-12-10 Motorola, Inc. Computer utilizing neural network and method of using same
EP0694852B1 (en) * 1994-07-28 2002-06-26 International Business Machines Corporation Innovative neuron circuit architectures
US5956703A (en) * 1995-07-28 1999-09-21 Delco Electronics Corporation Configurable neural network integrated circuit
RU2131145C1 (ru) * 1998-06-16 1999-05-27 Закрытое акционерное общество Научно-технический центр "Модуль" Нейропроцессор, устройство для вычисления функций насыщения, вычислительное устройство и сумматор
US6377941B1 (en) * 1998-11-26 2002-04-23 International Business Machines Corporation Implementing automatic learning according to the K nearest neighbor mode in artificial neural networks
JP2001188767A (ja) * 1999-12-28 2001-07-10 Fuji Xerox Co Ltd ニューラルネットワーク演算装置及びニューラルネットワークの演算方法
US20010044818A1 (en) * 2000-02-21 2001-11-22 Yufeng Liang System and method for identifying and blocking pornogarphic and other web content on the internet
AU2002355550A1 (en) * 2001-08-07 2003-02-24 Board Of Trustees Operating Michigan State University Self-programmable chip
US7580570B2 (en) * 2003-12-09 2009-08-25 Microsoft Corporation Accuracy model for recognition signal processing engines
CN104932847B (zh) * 2015-06-08 2018-01-19 三维泰柯(厦门)电子科技有限公司 一种空间网络3d打印算法
US10579092B2 (en) 2016-11-01 2020-03-03 International Business Machines Corporation Global timing generator
US11354562B2 (en) * 2018-01-03 2022-06-07 Silicon Storage Technology, Inc. Programmable neuron for analog non-volatile memory in deep learning artificial neural network
US10834632B2 (en) * 2018-09-21 2020-11-10 At&T Intellectual Property I, L.P. Energy-efficient wireless communications for advanced networks with low-resolution digital-to-analog converters
US11481601B2 (en) * 2019-03-03 2022-10-25 SiliconIntervention Inc. Analog neuron with s-domain characteristic
JP7345262B2 (ja) * 2019-03-11 2023-09-15 キヤノン株式会社 データ圧縮装置、データ処理装置、データ圧縮方法、プログラム、及び学習済みモデル
US12353503B2 (en) * 2019-05-02 2025-07-08 Silicon Storage Technology, Inc. Output array neuron conversion and calibration for analog neural memory in deep learning artificial neural network
JP2020201883A (ja) * 2019-06-13 2020-12-17 キヤノン株式会社 データ処理装置及びその制御方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5038282A (en) * 1988-05-11 1991-08-06 Massachusetts Institute Of Technology Synchronous processor with simultaneous instruction processing and data transfer
JPH0232679A (ja) * 1988-07-22 1990-02-02 Hitachi Ltd ニューラルネットによるデータ通信方法および装置
GB2224139A (en) * 1988-10-24 1990-04-25 Philips Electronic Associated Digital data processing apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2741793B2 (ja) * 1991-10-17 1998-04-22 川崎製鉄株式会社 ニューラルネットワークプロセッサ

Also Published As

Publication number Publication date
EP0385873A3 (en) 1993-01-27
JP2679738B2 (ja) 1997-11-19
DE69030778D1 (de) 1997-07-03
US5142666A (en) 1992-08-25
EP0385873A2 (en) 1990-09-05
EP0385873B1 (en) 1997-05-28
DE69030778T2 (de) 1997-09-11

Similar Documents

Publication Publication Date Title
JPH02228784A (ja) ニューロコンピュータにおける学習処理方式
KR940001173B1 (ko) 뉴로 컴퓨터
US5220559A (en) Neuron architecture
JPH04293151A (ja) 並列データ処理方式
US5781702A (en) Hybrid chip-set architecture for artificial neural network system
TW202234399A (zh) 記憶體系統
EP0475732B1 (en) Asynchronous control system for a neuro computer
US5216746A (en) Error absorbing system in a neuron computer
US5485548A (en) Signal processing apparatus using a hierarchical neural network
JPH02226383A (ja) ニューロコンピュータの集中制御方式
JPH07104847B2 (ja) ニューロコンピュータ
JPWO1990002381A1 (ja) ニューロコンピュータ
JPH02226382A (ja) ニューロコンピュータにおける重み補正による誤差吸収方式
JPH0547870B2 (ja)
JPH0266688A (ja) ホップフィールドネット
Chowdhari et al. Implementation Of Perceptron Algorithm For Logic Gates Using ANN
JP3338713B2 (ja) 信号処理装置
JPH02232725A (ja) マルチダミーノードを有するニューロコンピュータ
KR940001172B1 (ko) 네트워크 구성데이타 처리장치의 학습처리 방식
JP3463890B2 (ja) 神経回路模倣素子
JPH04229361A (ja) ニューラルネットワークの学習方法及びこの方法を用いた信号処理装置
JPH03268080A (ja) 信号処理装置
JPH08123777A (ja) 神経回路模倣素子
JPH0573704A (ja) 信号処理回路装置
JPH05298276A (ja) 信号処理装置