JPH03105452A - Weight holding system for network constitution data processor - Google Patents

Weight holding system for network constitution data processor

Info

Publication number
JPH03105452A
JPH03105452A JP1241902A JP24190289A JPH03105452A JP H03105452 A JPH03105452 A JP H03105452A JP 1241902 A JP1241902 A JP 1241902A JP 24190289 A JP24190289 A JP 24190289A JP H03105452 A JPH03105452 A JP H03105452A
Authority
JP
Japan
Prior art keywords
layer
weight
unit
storage means
area
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
JP1241902A
Other languages
Japanese (ja)
Other versions
JP2729987B2 (en
Inventor
Nobuo Watabe
信雄 渡部
Akira Kawamura
旭 川村
Ryusuke Masuoka
竜介 益岡
Yuri Oowada
大和田 有理
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 JP1241902A priority Critical patent/JP2729987B2/en
Publication of JPH03105452A publication Critical patent/JPH03105452A/en
Application granted granted Critical
Publication of JP2729987B2 publication Critical patent/JP2729987B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PURPOSE:To attain high speed access as against weight or a weight update quantity by using only a storage capacity required for real network organization and allocating a large weight storage area. CONSTITUTION:Weight or the weight update quantity, which are respectively allocated to respective internal connection in a hierarchy network are stored in the large area of a main storage or RAM. At the time of accessing to weight as against a specified input for a specified unit in a specified layer, the area of a layer corresponding to the internal part of a layer designation data storage means 22 is selected and an area corresponding to a 0-th unit in the layer is instructed in a unit designation data storage means 21 from the internal part of the area. A storage area as against the corresponding unit in the means 21 is selected according to the number pf the unit to be accessed and the storage area of weight as against the input of the unit is obtained in a weight storage 20 from the content of the area, whereby weight as against the input is accessed.

Description

【発明の詳細な説明】 〔概  要〕 ニューラルネットワークにおける各ニューロンヘの入力
に対する重みを効率的に保持するためのネットワーク構
成データ処理装置の重み保持方式に関し、 実際のネットワーク構成に必要な記憶容量のみを使用し
、しかも各層のユニット数にバラつきのあるネットワー
ク構戒でもまとまった重み記憶領域を割付けることによ
り、学習などの速度低下を防ぐことを目的とし、 前段層からの1つまたは複数の入力と、該入力に対して
それぞれ乗算されるべき重みとの積を合計し、該合計に
対する出力を得るユニットを基本単位とし、1つまたは
複数個のユニットからなる中間層を1段、1つまたは複
数個のユニットからなる中間層を1段または複数段、l
つまたは複数個のユニットからなる出力層を1段備えて
、入力層と最前段の中間層の間、隣接する中間層の間、
最後段の中間層と出力層の間にユニット相互間の内部結
合を構成して、該内部結合にそれぞれ重みを割当てるこ
とによって階層ネントワークを構戊するデータ処理装置
において、前記階層ネソトワークの各内部結合にそれぞ
れ割当てられる重みまたは重み更新量を、前記中間層お
よび出力層の各層毎に、かつ各層内部の全ユニットの各
ユニット毎に連続した領域に記憶する重み記憶手段と、
該重み記憶手段内で前記各層内部の全ユニットの各ユニ
ットに対応する重みまたは重み更新量の格納領域の先頭
アドレスを、前記各層内の全ユニット毎に連続した領域
に記憶するユニット指定データ記憶手段と、該ユニット
指定データ記憶手段内で前記各層の全ユニット毎の連続
領域の各先頭アドレスを記憶する層指定データ記憶手段
とを備え、該層指定データ記憶手段とユニット指定デー
タ記憶手段との内容から求められる、各ユニントに対す
る重みまたは重み更新量の重み記憶手段内の先頭アドレ
スを用いて、前記各内部結合に割当てられる重みまたは
重み更新量にアクセス可能とするように構成する。
[Detailed Description of the Invention] [Summary] Regarding a weight retention method of a network configuration data processing device for efficiently retaining weights for inputs to each neuron in a neural network, only the storage capacity required for the actual network configuration is provided. The aim is to prevent slowdowns in learning, etc. by allocating a large weight storage area even in network configurations where the number of units in each layer varies. The basic unit is a unit that sums up the products of the inputs and the weights to be multiplied by the respective inputs and obtains an output for the sum, and the intermediate layer consisting of one or more units is one stage, one or One or more intermediate layers consisting of a plurality of units, l
between the input layer and the foremost intermediate layer, between the adjacent intermediate layers,
In a data processing device that constructs a hierarchical network by configuring internal connections between units between the final intermediate layer and the output layer and assigning weights to the internal connections, each internal network of the hierarchical network Weight storage means for storing weights or weight update amounts respectively assigned to the connections in a continuous area for each of the intermediate layer and the output layer and for each unit of all the units inside each layer;
Unit designation data storage means for storing, in the weight storage means, a start address of a storage area for the weight or weight update amount corresponding to each unit of all the units in each layer in a continuous area for every unit in each layer; and a layer designation data storage means for storing each start address of a continuous area for every unit of each layer in the unit designation data storage means, the contents of the layer designation data storage means and the unit designation data storage means. The weight or weight update amount assigned to each internal connection can be accessed by using the start address in the weight storage means of the weight or weight update amount for each unit, which is determined from the above.

〔産業上の利用分野〕[Industrial application field]

本発明はネットワーク構成データ処理装置の学習処理方
式に係り、さらに詳しくは例えばニューラルネットワー
クにおける各ニューロンへの入力に対する重みを効率的
に保持するためのネットワーク構戒データ処理装置の重
み保持方式に関する.従来の逐次処理コンピュータ、す
なわちノイマン型コンピュータでは使用方法や環境の変
化に応じてコンピュータのデータ処理機能を調節するこ
とが難しく、このため適応性を有するデータ処理方弐と
して階層ネットワークによる並列分敗処理方式が提唱さ
れてきている。特に、パックブロパゲーション法と呼ば
れる処理方法がその実用性の高さから注目されている. 階層型ネットワークを実現するためには大量の重みの情
報を管理する必要がある。また重みは頻繁に使用される
ものであり、重みへのアクセス速度は,できるかぎり速
くなければならない.しかもネットワークの構成はアブ
リケーシヲンによって変化するだけではなく、運用時に
データの増加などで変更されることもあり得るので、重
みの記憶方式はネノトワークの構成変化に対応できるよ
うな柔軟性が必要とされる。
The present invention relates to a learning processing method for a network configuration data processing device, and more particularly to a weight retention method for a network configuration data processing device for efficiently retaining weights for inputs to each neuron in a neural network, for example. With conventional sequential processing computers, that is, von Neumann type computers, it is difficult to adjust the computer's data processing function according to changes in the usage method or environment. Therefore, parallel failure processing using hierarchical networks is used as an adaptive data processing method. methods have been proposed. In particular, a processing method called the pack propagation method is attracting attention because of its high practicality. In order to realize a hierarchical network, it is necessary to manage a large amount of weight information. Also, since weights are used frequently, access speed to weights must be as fast as possible. Furthermore, the network configuration not only changes depending on the application, but also may change due to an increase in data during operation, so the weight storage method needs to be flexible enough to accommodate changes in the network configuration. .

〔従来の技術〕[Conventional technology]

階層ネットワーク、例えばバーセブトロン型ネットワー
クは幾つかの層から成る階層的なもので、各層は適当な
数のユニットから成り、層内の結合はなく、眉間の結合
は入力N(第1層)から出力N(M終層)へ向けての1
方向の結合のみである。
A hierarchical network, for example a bersebutron type network, is a hierarchical one consisting of several layers, each layer consisting of an appropriate number of units, there are no connections within the layer, and the connection between the eyebrows is from input N (first layer) to output. 1 towards N (M terminal layer)
It is only a direction combination.

入力層を除く各層のユニットは、前の層のユニットから
の重み付き入力を受けてその総和を求め、その総和に対
する適当な関数値を出力する。関数としては例えば総和
の値がある値より大きい時にl、小さい時に0となる闇
値関数などが用いられる。
The units in each layer except the input layer receive weighted inputs from the units in the previous layer, calculate the sum, and output an appropriate function value for the sum. As a function, for example, a darkness value function is used, which takes l when the sum is larger than a certain value and takes 0 when it is smaller.

このような階層ネットワークにおいて、重みまたは学習
時の重み更新量を保持するなめに、槌来は想定される層
数の最大値と各層内の最大ユニット数に対する記憶領域
があらかしめ用意されており、ソフトウエア(C言語)
で表現すれば次のようになる。
In such a hierarchical network, in order to maintain the weights or the amount of weight updates during learning, Tsuchiki prepares a storage area for the maximum number of layers and the maximum number of units in each layer. Software (C language)
If expressed as , it becomes as follows.

doule W  (MAXLAYER)  (MAX
UNIT)  (MAXUNIT) ;第4図はハード
ウェアによる重み保持方式の従来例である。同図は層数
の最大値が10で、各層が最大1000個のユニットか
ら構威される場合に対応するものである。すなわち、ネ
ットワークは第0層から第9層まで、各層は第O番目か
ら第999番目のユニットで構戒される場合を対象とし
ている。第4図において領域1から5は第17i1N、
すなわち第1中間層の第0番目、すなわち初めのユニッ
トに対する重みを格納しており、入力層からの第0入力
、第1入力、第2入力、・・・第999入力に対する重
みを表している。次に領域6、7、8は第1層、第1番
目のユニットへの第0、・・・第999入力に9対する
重みを表し、領域10、1l、12は第IN、第999
番目のユニットへの第O、・・・第999入力に対する
重みを表している。以下同様に第2層、第371、・・
・内のユニットへの入力に対する重みが格納され、領域
17、18、19に第9Wi、第999番目のユニット
への入力に対する重みが格納されている. このように最大lO層まで、各層では最大1000個の
ユニットまでを実現できるようにするためには記憶容量
は 10X1000X1000=10Mワード必要である。
doule W (MAXLAYER) (MAX
UNIT) (MAXUNIT); FIG. 4 shows a conventional example of a weight holding method using hardware. This figure corresponds to a case where the maximum number of layers is 10 and each layer is composed of a maximum of 1000 units. That is, the network is constructed from the 0th layer to the 9th layer, and each layer is controlled by the 0th to 999th units. In FIG. 4, areas 1 to 5 are 17i1N,
That is, it stores the weight for the 0th, that is, the first unit of the first intermediate layer, and represents the weight for the 0th input, 1st input, 2nd input, ...999th input from the input layer. . Next, areas 6, 7, and 8 represent the weights for 9 for the 0th, .
It represents the weight for the 0th, . . . 999th input to the th unit. Similarly, the second layer, the 371st layer, etc.
The weights for the inputs to the units within are stored, and the weights for the inputs to the 9th Wi and 999th units are stored in areas 17, 18, and 19. In order to realize up to a maximum of 1000 units in each layer in this manner, a storage capacity of 10×1000×1000=10M words is required.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

上述のように、従来の重み保持方式においては想定され
る最大の層数と層内の最大ユニット数に対する記憶容量
があらかじめ用意されるために、実際に使用されるネッ
トワークの構成が例えば3層であり、入力層内のユニッ
トが1000個、中間層のユニットが10個、出力層の
ユニットが20個というようにユニット数にバラつきが
ある構成の場合には、実際に必要な記憶領域は t000x10+10x20=10200ワードである
にもかかわらず、上述のようにIOMワード分記憶領域
が用意されると、記憶領域の使用効率が極端に低いとい
う問題点があった。
As mentioned above, in the conventional weight retention method, the storage capacity for the maximum expected number of layers and the maximum number of units in a layer is prepared in advance, so the actual network configuration used is, for example, three layers. If the number of units varies, such as 1000 units in the input layer, 10 units in the middle layer, and 20 units in the output layer, the actual storage area required is t000x10+10x20= Even though the number of words is 10,200, if a storage area for IOM words is prepared as described above, there is a problem that the usage efficiency of the storage area is extremely low.

しかも、実際に使用される領域がIOMワード空間の中
の分散した領域に割当てられてしまうことになり、仮想
記憶を利用した計算機の場合には、ディスクアクセスが
頻繁に起こり、学習速度や実行速度の低下を招くという
問題点もあった.本発明は、実際のネットワーク構戒に
必要な記憶容量のみを使用し、しかも各層のユニット数
にバラつきのあるネットワーク構戒でもまとまった重み
記憶領域を割付けることにより、学習などの速度低下を
防ぐことを目的とする。
Moreover, the area actually used will be allocated to dispersed areas in the IOM word space, and in the case of a computer that uses virtual memory, disk access will occur frequently, reducing learning speed and execution speed. There was also the problem that it caused a decrease in The present invention uses only the storage capacity necessary for the actual network configuration, and allocates a large amount of weight storage area even in network configurations where the number of units in each layer varies, thereby preventing slowdowns in learning etc. The purpose is to

〔課題を解決するための手段〕[Means to solve the problem]

第1図は本発明の原理ブロック図である.同図は前段層
からの1つまたは複数の入力と、その入力に対してそれ
ぞれ乗算されるべき重みとの積の総和から出力を得るユ
ニット、例えば闇値素子を基本単位として、1つまたは
複数個のユニットから構成される入力層、1つまたは複
数個のユニットから構成される1段または複数段の中間
層、および1つまたは複数個のユニットから構成される
出力層を備えて、入力層と最前段の中間層の間、隣接す
る中間層の間、最後段の中間層と出力層の間にユニット
相互間の内部結合を構成して、それらの各内部結合にそ
れぞれ重みを割当てることによって階層ネットワークを
構戒するデータ処理装置における重み保持方式の原理ブ
ロック図である。
Figure 1 is a block diagram of the principle of the present invention. The figure shows one or more units that obtain an output from the sum of the products of one or more inputs from the previous layer and the weights to be multiplied by the inputs, such as dark value elements, as a basic unit. an input layer composed of units, one or more intermediate layers composed of one or more units, and an output layer composed of one or more units, the input layer By configuring internal connections between units between and the first hidden layer, between adjacent hidden layers, and between the last hidden layer and the output layer, and assigning weights to each of these internal connections, respectively. FIG. 2 is a principle block diagram of a weight retention method in a data processing device that maintains a hierarchical network.

第1図において重み記憶千段20は、例えばランダムア
クセスメモリ(RAM)であり、前述の階層ネットワー
クの各内部結合にそれぞれ割当てられる重みまたは学習
時の前回重み更新量を、中間層および出力層の各層毎に
一括して、かつ各層内部の全ユニットの各ユニット毎に
連続した領域に記憶する. ユニット指定データ記憶手段21は例えばレジスタであ
り、重み記憶手段20の内部で各層内部の全ユニットの
各ユニットに対応する重みの格納領域の先頭アドレスを
各層内の全ユニット毎に連続した領域に記憶する. 層指定データ記憶手段22は例えばレジスタであり、ユ
ニット指定データ記憶千段21内における各層の全ユニ
ット毎の各連続領域の先頭アドレスを記憶する。
In FIG. 1, the weight storage 20 is, for example, a random access memory (RAM), and stores the weight assigned to each internal connection of the hierarchical network or the previous weight update amount during learning in the intermediate layer and the output layer. It is stored collectively for each layer and in a continuous area for each unit of all units within each layer. The unit designation data storage means 21 is, for example, a register, and inside the weight storage means 20, the start address of the storage area of the weight corresponding to each unit of all the units in each layer is stored in a continuous area for every unit in each layer. do. The layer designation data storage means 22 is, for example, a register, and stores the start address of each continuous area for every unit of each layer in the unit designation data storage 21.

例えばネットワークが入力層、中間層、出力層の3Nか
ら成るものとすると、層指定データ記憶手段22は中間
層と出力層とに対応する2つの領域から成り、例えば中
間層に対応する領域は中間層内の第Oユニットへの第0
入力に対する重みを格納している重み記憶手段20のア
ドレスを格納したユニット指定データ記憶手段21内の
領域のアドレスを指示することになる. 〔作   用〕 前述のように、本発明においては階層ネットワークの各
内部結合にそれぞれ割当てられる重みまたは重み更新量
が、例えば主記憶またはRAM内のまとまった領域に格
納される.そして、例えば特定層内の特定ユニットへの
特定入力に対する重みにアクセスする場合には、ます層
指定データ記憶手段22内部の対応する層の領域が選ば
れ、その領域の内部からユニット指定データ記憶手段2
1内でその層の第O番目のユニットに対応する領域が指
示される。そして、アクセスすべきユニットが第何番目
のユニットであるかによって、ユニット指定データ記憶
手段21内の対応するユニットに対する格納領域が選ば
れ、その領域の内容から重み記憶手段20内でそのユニ
ントの第O番l」の入力に対する重みの格納領域が求め
られ、アクセスすべき重みが第何番目の入力に対応する
ものかによって、その入力に対ずる重みがアクセスされ
る。
For example, if the network is made up of 3N layers: an input layer, a middle layer, and an output layer, the layer specification data storage means 22 consists of two areas corresponding to the middle layer and the output layer. 0th to the 0th unit in the layer
This indicates the address of the area within the unit designation data storage means 21 that stores the address of the weight storage means 20 that stores the weight for the input. [Operation] As described above, in the present invention, the weight or weight update amount assigned to each internal connection of the hierarchical network is stored in a large area in the main memory or RAM, for example. For example, when accessing the weight for a specific input to a specific unit in a specific layer, the area of the corresponding layer inside the layer designation data storage means 22 is selected, and the unit designation data storage means 2
1, the area corresponding to the Oth unit of that layer is designated. Then, depending on the unit number of the unit to be accessed, a storage area for the corresponding unit in the unit specification data storage means 21 is selected, and the storage area for the corresponding unit is selected in the weight storage means 20 based on the contents of the area. A storage area for the weight for the input "O number l" is found, and the weight for that input is accessed depending on which input the weight to be accessed corresponds to.

以上のように、本発明においては、実際のネットワーク
構成に必要なだけの記憶領域がまとまって主記憶または
RAM上に確保される。
As described above, in the present invention, the storage area necessary for the actual network configuration is collectively secured on the main memory or RAM.

(実  施  例) 第2図は本発明の重み保持方式の実施例の基本概念図で
ある。同図において層指定記憶装置23は第1図におけ
る層指定データ記憶千段22に、ユニット指定記憶装置
24はユニット指定データ記憶千段21に、また主記憶
25は重み記憶千段20にそれぞれ対応する。層指定記
憶装置23、およびユニット指定記憶装置24は主記憶
上にあってもよく、またレジスタで構成されてもよい。
(Embodiment) FIG. 2 is a basic conceptual diagram of an embodiment of the weight retention method of the present invention. In the figure, the layer designation storage device 23 corresponds to the layer designation data storage stage 22 in FIG. 1, the unit designation storage device 24 corresponds to the unit designation data storage stage 21, and the main memory 25 corresponds to the weight storage stage 20. do. The layer designation storage device 23 and the unit designation storage device 24 may be located on the main memory, or may be composed of registers.

第2図は入力層が1000個、中間層が10個、出力層
が20個のユニットから構成される3Nネットワークに
対する重みの保持方式を示している。層指定記憶装置2
3内の第1中間層が中間層に、また第2中間層が出力層
に相当する.第3中間層から出力層に対する領域はここ
では用いられていない。
FIG. 2 shows a weight retention method for a 3N network consisting of 1000 units in the input layer, 10 units in the hidden layer, and 20 units in the output layer. Layer specified storage device 2
The first intermediate layer in 3 corresponds to the intermediate layer, and the second intermediate layer corresponds to the output layer. The area from the third intermediate layer to the output layer is not used here.

第4図の従来例と比較すると、本発明では実際のネット
ワーク構戒に必要な分だけ主記憶上の領域が用いられて
いることに相違がある。
Compared to the conventional example shown in FIG. 4, the difference in the present invention is that the area on the main memory is used as much as is necessary for actual network configuration.

第2図ではネットワーク内のユニット相互間の内部結合
に対する重みがユニット毎に連続して主記憶上に割付け
られる。すなわち、入力層が1000個、中間層がlO
個、出力層が20個のユニットで構成されるネットワー
クの場合には、まず中間層の第0ユニットが持つ重みi
ooo個分が主記憶上に取られる.そして、その先頭ア
ドレスがユニット指定記憶装置24の第1ワードに、第
Oユニツ1・に対ずるデー夕として格納される。次にψ
間層の第1ユニットが持つ重み1000個分が主記憶上
に取られ、その先頭アドレスがユニット指定記憶装置2
4の第−2ワードとして格納される。以下同様にして各
ユニットに対する重みが主記憶25上にーまとめに連続
して格納され、さらにそれらの連続領域の先頭アドレス
がユニット指定記憶装置24に格納される。
In FIG. 2, weights for internal connections between units in the network are successively assigned to each unit on the main memory. In other words, there are 1000 input layers and IO layers in the middle layer.
In the case of a network consisting of 20 units in the output layer, first the weight i of the 0th unit in the hidden layer is
ooo pieces are stored in main memory. Then, the start address is stored in the first word of the unit designation storage device 24 as data for the Oth unit 1. Then ψ
The 1000 weights of the first unit of the intermediate layer are stored in the main memory, and the start address is stored in the unit designated storage device 2.
It is stored as the -2nd word of 4. Thereafter, the weights for each unit are sequentially stored in the main memory 25 in the same way, and the start addresses of these continuous areas are stored in the unit designation storage device 24.

以上のような格納方式を用いることによって、主記憶2
5上に領域の無駄を生ずることなく重みを配置すること
ができ、また各ユニットに対ずる重みの先頭アドレスは
ユニット指定記憶装置24内に格納されているため、重
みへの高速アクセスが可能となる。さらにユニット指定
記憶装置24内の各層の第0ユニッ1・に対するデータ
を格納している領域のアドレスを層指定記憶装置23に
格納することにより、層、ユニント、重みの番号が与え
られれば、層指定記憶装置23、ユニ・ント指定記憶装
置24を介して主記憶25上の該当する重みにアクセス
することができる。
By using the storage method described above, main memory 2
5 without wasting space, and since the start address of the weight for each unit is stored in the unit designation storage device 24, high-speed access to the weight is possible. Become. Furthermore, by storing the address of the area storing data for the 0th unit 1 of each layer in the unit designation storage device 24 in the layer designation storage device 23, if the layer, unit, and weight numbers are given, the layer The corresponding weight on the main memory 25 can be accessed via the designated storage device 23 and the unit designated storage device 24.

第3図は本発明の重み保持方式の実施例の構成ブロック
図である。同図は主制御回路(MPU)26、3つのセ
レクタ27、28、29、第2図の層指定記憶装置23
に対応する層指定レジスタ30、ユニット指定記憶装置
24に対応するユニット指定レジスタ31、主記憶25
に対応する重みRAM32、2つの加算器33、34、
および主制御回路(MPU)26と重みRAM32との
間の重みデータバス35から戒る。
FIG. 3 is a block diagram of the structure of an embodiment of the weight retention method of the present invention. The figure shows a main control circuit (MPU) 26, three selectors 27, 28, 29, and a layer designation storage device 23 in FIG.
A layer designation register 30 corresponding to the unit designation register 30, a unit designation register 31 corresponding to the unit designation storage device 24, and a main memory 25
weight RAM 32, two adders 33, 34,
and the weight data bus 35 between the main control circuit (MPU) 26 and the weight RAM 32.

主制御回路(MPU)26は層番号、ユニット番号、重
み番号、重みの読み出し/書込み(R/W)信号、及び
重みデータ用の信号線を持っている。セレクタ27は主
制御回路26から指定される層番号によって層指定レジ
スタ30の1つを選ぶものである。層指定レジスタ30
は、例えば10層までのネットワークを実現するために
はlO個のレジスタ、または10ワード分のメモリによ
って構成され、その内容は各層の先頭ユニットに対応す
るユニット指定レジスタの番号である。
The main control circuit (MPU) 26 has signal lines for layer numbers, unit numbers, weight numbers, weight read/write (R/W) signals, and weight data. The selector 27 selects one of the layer designation registers 30 based on the layer number designated by the main control circuit 26. Layer specification register 30
For example, in order to realize a network of up to 10 layers, it is configured by 10 registers or 10 words of memory, and its contents are the number of the unit designation register corresponding to the first unit of each layer.

セレクタ28は主制御回路26から与えられるユニット
番号によってユニット指定レジスタ3101つを選ぶも
のであり、ユニット番号と層指定レジスタ30が出力す
るアクセスすべき層内の第0ユニット指定レジスタ番号
との和が加算器33によって取られ、その和を用いてア
クセスすべきユニットを指定するレジスタが選ばれる。
The selector 28 selects one unit designation register 310 based on the unit number given from the main control circuit 26, and the sum of the unit number and the 0th unit designation register number in the layer to be accessed which is output from the layer designation register 30 is The sum is taken by adder 33 and used to select a register specifying the unit to be accessed.

セレクタ29は主制御回路26の出力する重み番号によ
って重みRAM32の1つの領域を選ぶセレクタである
。すなわち加算器34によって、重み番号とユニット指
定レジスタ3lの出力である重みRAM3 2内のアク
セアスすべきユニットに対する重みの先頭アドレスとが
加算され、それを用いて重みRAMの1つの領域がアク
セスされる。
The selector 29 is a selector that selects one area of the weight RAM 32 based on the weight number output from the main control circuit 26. That is, the adder 34 adds the weight number and the start address of the weight for the unit to be accessed in the weight RAM 32, which is the output of the unit designation register 3l, and uses this to access one area of the weight RAM. .

ユニット指定レジスタ31は、例えば最大ユニット数2
000個のネットワークを実現するためには2000個
のレジスタ、または2000ワード分のメモリによって
構戒される。また重みRAM32としては専用のRAM
を用意してもよく、また主記憶の1部を使ってもよい。
The unit designation register 31 is, for example, the maximum number of units 2.
In order to realize 000 networks, 2000 registers or 2000 words of memory are required. Also, the weight RAM 32 is a dedicated RAM.
may be prepared, or a part of the main memory may be used.

なお、層指定レジスタ30,ユニット指定レジスタ3l
、重みRAM32の全てを主記憶上に取ることもでき、
その場合にはセレクタの機能と加算器の機能はMPU2
6がソフトウェアによって行うこともできる。すなわち
層番号から主記憶内の層指定レジスタ内の対応する部分
を読出し、その内容とユニット番号の和を取り、それを
基にして主記憶内のユニット指定レジスタ内の対応する
部分を読出し、その内容と重み番号の和から最終的な重
みのアドレスを得てその重みにアクセスすることができ
る。このように層指定レジスタ30、ユニット指定レジ
スタ31、および重みRAM32を全て主記憶上で実現
した場合には、層数およびユニット数の制限もなくなり
、主記憶を無駄なく使えるために、主記憶容量が許す限
り大きなネットワークを構築することができる。
Note that the layer designation register 30 and the unit designation register 3l
, all of the weight RAM 32 can be stored in the main memory,
In that case, the selector function and adder function are performed by MPU2.
6 can also be performed by software. In other words, read the corresponding part in the layer designation register in main memory based on the layer number, calculate the sum of its contents and the unit number, read out the corresponding part in the unit designation register in main memory based on that, and then The final weight address can be obtained from the sum of the content and the weight number and the weight can be accessed. In this way, if the layer designation register 30, unit designation register 31, and weight RAM 32 are all implemented in the main memory, there will be no restrictions on the number of layers and units, and the main memory can be used without wasting the main memory capacity. You can build as large a network as you can.

〔発明の効果〕〔Effect of the invention〕

以上詳細に説明したように、本発明によれば、主記憶上
に領域の無駄を生ずることなくネットワークの内部結合
に対する重みを連続領域にまとめて配置することができ
る。そのため仮想記憶管理としての外部記憶のアクセス
を減らすことができ、重みまたは重み更新量に対する高
速アクセスが可能となる。
As described in detail above, according to the present invention, weights for internal connections of a network can be collectively arranged in a continuous area without wasting area on the main memory. Therefore, access to external storage for virtual storage management can be reduced, and high-speed access to weights or weight update amounts is possible.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明のブロック図、 第2図は本発明の重み保持方式の実施例の概念を示す図
、 第3図は重み保持方式の実施例の構戊を示すブロック図
、 第4図はハードウェアによる重み保持方式の従来例を示
す図である。 2G・・・主制御@路(MPU)、 27、28、29・・・セレクタ、 30・・・層指定レジスタ、 3工・・・ユニット指定レジスタ、 32・・・重みRAM, 33、 34 ・加算器. 特許出厠人 τr 士 通 株 式 Δ 社
FIG. 1 is a block diagram of the present invention. FIG. 2 is a diagram showing the concept of an embodiment of the weight retention method of the present invention. FIG. 3 is a block diagram showing the structure of an embodiment of the weight retention method. 1 is a diagram showing a conventional example of a weight holding method using hardware. 2G...Main control@path (MPU), 27, 28, 29...Selector, 30...Layer specification register, 3G...Unit specification register, 32...Weight RAM, 33, 34 ・Adder. Patent issuer τr Shitsu stock Δ company

Claims (1)

【特許請求の範囲】 前段層からの1つまたは複数の入力と、該入力に対して
それぞれ乗算されるべき重みとの積を合計し、該合計に
対する出力を得るユニットを基本単位とし、1つまたは
複数個のユニットからなる入力層を1段、1つまたは複
数個のユニットからなる中間層を1段または複数段、1
つまたは複数個のユニットからなる出力層を1段備えて
、入力層と最前段の中間層の間、隣接する中間層の間、
最後段の中間層と出力層の間にユニット相互間の内部結
合を構成して、該内部結合にそれぞれ重みを割当てるこ
とによって階層ネットワークを構成するデータ処理装置
において、 前記階層ネットワークの各内部結合にそれぞれ割当てら
れる重みまたは重み更新量を、前記中間層および出力層
の各層毎に、かつ各層内部の全ユニットの各ユニット毎
に連続した領域に記憶する重み記憶手段(20)と、 該重み記憶手段(20)内で前記各層内部の全ユニット
の各ユニットに対応する重みまたは重み更新量の格納領
域の先頭アドレスを、前記各層内の全ユニット毎に連続
した領域に記憶するユニット指定データ記憶手段(21
)と、 該ユニット指定データ記憶手段(21)内で前記各層の
全ユニット毎の連続領域の各先頭アドレスを記憶する層
指定データ記憶手段(22)とを備え、 該層指定データ記憶手段(22)とユニット指定データ
記憶手段(21)との内容から求められる、各ユニット
に対する重みまたは重み更新量の重み記憶手段(20)
内の先頭アドレスを用いて、前記各内部結合に割当てら
れる重みまたは重み更新量にアクセス可能とすることを
特徴とするネットワーク構成データ処理装置の重み保持
方式。
[Claims] The basic unit is a unit that sums up the products of one or more inputs from the previous layer and the weights by which the inputs are respectively multiplied, and obtains an output for the sum. Or one input layer consisting of multiple units, one or more intermediate layers consisting of one or more units, one
between the input layer and the foremost intermediate layer, between the adjacent intermediate layers,
In a data processing device that configures a hierarchical network by configuring internal connections between units between a final stage intermediate layer and an output layer and assigning weights to each internal connection, each internal connection of the hierarchical network is provided with: Weight storage means (20) for storing each allocated weight or weight update amount in a continuous area for each layer of the intermediate layer and the output layer and for each unit of all units inside each layer; and the weight storage means (20) Unit designation data storage means for storing the start address of the storage area of the weight or weight update amount corresponding to each unit of all the units in each layer in a continuous area for each unit in each layer ( 21
), and a layer designation data storage means (22) for storing each start address of a continuous area for every unit of each layer in the unit designation data storage means (21), the layer designation data storage means (22) ) and the weight storage means (20) for the weight or weight update amount for each unit, which is determined from the contents of the unit specification data storage means (21).
1. A weight holding method for a network configuration data processing device, characterized in that the weight or weight update amount assigned to each of the internal connections can be accessed using a first address in the internal connection.
JP1241902A 1989-09-20 1989-09-20 Weight retention method for network configuration data processing device Expired - Fee Related JP2729987B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1241902A JP2729987B2 (en) 1989-09-20 1989-09-20 Weight retention method for network configuration data processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1241902A JP2729987B2 (en) 1989-09-20 1989-09-20 Weight retention method for network configuration data processing device

Publications (2)

Publication Number Publication Date
JPH03105452A true JPH03105452A (en) 1991-05-02
JP2729987B2 JP2729987B2 (en) 1998-03-18

Family

ID=17081254

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1241902A Expired - Fee Related JP2729987B2 (en) 1989-09-20 1989-09-20 Weight retention method for network configuration data processing device

Country Status (1)

Country Link
JP (1) JP2729987B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020513637A (en) * 2016-12-09 2020-05-14 ベイジン ホライズン インフォメーション テクノロジー カンパニー リミテッド System and method for data management
US11537438B2 (en) 2019-06-28 2022-12-27 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium for efficient storage of kernels of various sizes

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5368687B2 (en) * 2007-09-26 2013-12-18 キヤノン株式会社 Arithmetic processing apparatus and method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01183763A (en) * 1988-01-18 1989-07-21 Fujitsu Ltd Learning processing system for network component data processor

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01183763A (en) * 1988-01-18 1989-07-21 Fujitsu Ltd Learning processing system for network component data processor

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020513637A (en) * 2016-12-09 2020-05-14 ベイジン ホライズン インフォメーション テクノロジー カンパニー リミテッド System and method for data management
US11537438B2 (en) 2019-06-28 2022-12-27 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium for efficient storage of kernels of various sizes

Also Published As

Publication number Publication date
JP2729987B2 (en) 1998-03-18

Similar Documents

Publication Publication Date Title
US7487302B2 (en) Service layer architecture for memory access system and method
US5566321A (en) Method of managing distributed memory within a massively parallel processing system
US5247694A (en) System and method for generating communications arrangements for routing data in a massively parallel processing system
US7634621B1 (en) Register file allocation
US20160196488A1 (en) Neural network computing device, system and method
EP0446721A2 (en) Distributed processing memory
JP2000506659A (en) Method of allocating memory in a multiprocessor data processing system
US5860101A (en) Scalable symmetric multiprocessor data-processing system with data allocation among private caches and segments of system memory
US6094710A (en) Method and system for increasing system memory bandwidth within a symmetric multiprocessor data-processing system
JPH03105452A (en) Weight holding system for network constitution data processor
CN116134416A (en) Method for avoiding bank conflict and pipeline conflict in tensor memory layout
JP3177996B2 (en) Neuroprocessor
JP2004021370A (en) Disk array control device
US11816025B2 (en) Hardware acceleration
US5740085A (en) Data processing apparatus for the modeling of logic circuitry
WO2022229727A1 (en) Memory mapping of activations for convolutional neural network executions
JP2003186866A (en) Data-driven information processing device and its processing method
JP3628339B2 (en) Data access system
Agrawal et al. Cache memory systems for multiprocessor architecture
US20240004786A1 (en) Allocating memory for processing-in-memory (pim) devices
CN117271391B (en) Cache structure and electronic equipment
JP3304445B2 (en) Program generation processing device
US20230315341A1 (en) Processor for performing a predetermined computational operation, and processing unit
JP2591362B2 (en) Data selection processing method
Wang Efficient, Reconfigurable, and QoS-Aware Systems for Deep Neural Networks

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees