JPH06176000A - Neurocomputer - Google Patents

Neurocomputer

Info

Publication number
JPH06176000A
JPH06176000A JP33020192A JP33020192A JPH06176000A JP H06176000 A JPH06176000 A JP H06176000A JP 33020192 A JP33020192 A JP 33020192A JP 33020192 A JP33020192 A JP 33020192A JP H06176000 A JPH06176000 A JP H06176000A
Authority
JP
Japan
Prior art keywords
data
circuit
unit
compressed
uncompressed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP33020192A
Other languages
Japanese (ja)
Inventor
Sumisu Ansonii
アンソニー・スミス
Kazuhiko Sagara
和彦 相良
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP33020192A priority Critical patent/JPH06176000A/en
Publication of JPH06176000A publication Critical patent/JPH06176000A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To effectively utilize a memory space by compressing input data in terms of hardwares based on a certain algorithm considering that the effective utilization of the memory space for preserving weighted values is required at the time of constituting a large scale neural network. CONSTITUTION:A main memory unit, a compression unit and an extension unit are added to a neurocomputer. By classifying the weighted value input data of 16 bits into four levels and allocating them to low-order bits in the descending order of an appearance frequency, the data are compressed. As for the hardwares, only a memory LSI equivalent to 10K bytes is added. By using this system, approximately 16% of a memory area can be compressed. Also, since a symbol table or the like is not required and the system can be realized by a simple circuit, an execution speed is fast and the system is extremely suitable for the realization of a real-time neurocomputer.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、デジタル方式またはア
ナログ方式のニューロコンピュータにおけるシナプス重
み値の蓄積方法に関し、詳しくは、重み値情報の圧縮方
式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for accumulating synapse weight values in a digital or analog neurocomputer, and more particularly to a method for compressing weight value information.

【0002】[0002]

【従来の技術】大規模ニューラルネットワークを実現す
る際、メモリ領域の有効活用が重要である。例えば、デ
ジタル方式で、1ミリオン(1x106)のニューロン
を16ビットの完全結合で構成する場合、16テラビッ
ト(16x1012)必要である。これを実現するため、
4メガビットメモリを用いると、400万個必要とな
る。データ圧縮方式としては、Entropyコーデイ
ング法とHuffmanコーデイング法がある。Ent
ropyコーデイング法では、頻繁に現われるデータほ
ど少ないビット数に割当てられる。Huffmanコー
デイング法は、Entropyコーデイング法の一種で
あるが、事前に決められた可変長のコードが用いられ
る。
2. Description of the Related Art When realizing a large scale neural network, it is important to effectively use a memory area. For example, 16 terabits (16 × 10 12 ) are required when a 1-million (1 × 10 6 ) neuron is formed by 16-bit perfect connection in the digital system. To achieve this,
If a 4-megabit memory is used, 4 million pieces are needed. Data compression methods include Entropy coding method and Huffman coding method. Ent
In the ropy coding method, the more frequently appearing data is assigned to the smaller number of bits. The Huffman coding method is a type of Entropy coding method, but a predetermined variable length code is used.

【0003】[0003]

【発明が解決しようとする課題】上記のコーデイング法
の第1の欠点は、入力データの大きさが、変換テーブル
の大きさによって制限されることである。また、第2の
欠点は、データの展開(データ圧縮の反対)のプロセス
が複雑である、という点である。さらに、第3の欠点と
しては、入力データの発生頻度分布を事前に知っておく
必要があることである。英文のテキストのような文字入
力の場合には、容易に頻度分布が分かるためにHuff
manコーデイング法は有効である。しかし、重み値の
ようなデータ入力の場合には、頻度分布は個々の問題に
依存し、その予測は難しく、上記のコーデイング法は不
適切である。
The first drawback of the above coding method is that the size of the input data is limited by the size of the conversion table. The second drawback is that the process of decompressing data (the opposite of data compression) is complicated. Furthermore, the third drawback is that it is necessary to know the occurrence frequency distribution of the input data in advance. In the case of character input such as English text, Huff is required to easily understand the frequency distribution.
The man coding method is effective. However, in the case of data input such as weight values, the frequency distribution depends on the individual problem, its prediction is difficult, and the above coding method is inappropriate.

【0004】本発明は、上記従来技術の欠点をなくし、
大規模ニューラルネットワークにおいて重み値のメモリ
空間を有効に活用できるデータ圧縮方式を提供すること
にある。
The present invention eliminates the above-mentioned drawbacks of the prior art,
It is to provide a data compression method capable of effectively utilizing a memory space of weight values in a large-scale neural network.

【0005】[0005]

【課題を解決するための手段】ニューラルネットワーク
の重み値分布は、学習アルゴリズムに依存せず、図2の
ように分布することが知られている。ここで、重み値は
正負の値をとり、正は興奮型結合、負は抑制型結合を示
す。図2の中心部が重み値ゼロに対応し、ゼロ近傍の値
ほど、頻度が高いことがわかる。
It is known that the weight value distribution of a neural network does not depend on the learning algorithm and is distributed as shown in FIG. Here, the weight value takes a positive or negative value, where positive is excitatory coupling and negative is inhibitory coupling. It can be seen that the central part of FIG. 2 corresponds to the weight value of zero, and the value near the zero has a higher frequency.

【0006】そこで、重み値を2進法16ビット(以下
162と表現)で表すことを考え、図3に示すように、
重み値分布を4つの領域に分割する。このとき重み値は
10進法では、0から65535の範囲の値をとるが、
中心部をゼロとするため、−32768から32767
の値をとる。そこで、次のように領域を区切る。
Therefore, considering that the weight value is expressed in binary 16 bits (hereinafter expressed as 16 2 ), as shown in FIG.
The weight value distribution is divided into four areas. At this time, the weight value takes a value in the range of 0 to 65535 in decimal,
-32768 to 32767 to make the central part zero
Takes the value of. Therefore, the area is divided as follows.

【0007】 領域 下限 上限 取りうる値 1 7e0016 81ff16 102410 2 760016 7dff16 204810 3 820016 89ff16 204810 4a 000016 75ff16 3020710 4b 8a0016 ffff16 3020710 また領域は4つあるので、2進法2ビットの領域コード
(RC)を用いて次のように表すことができる。
Area Lower limit Upper limit Possible values 1 7e00 16 81ff 16 1024 10 2 7600 16 7dff 16 2048 10 3 8200 16 89ff 16 2048 10 4a 0000 16 75ff 16 30207 10 4b 8a00 16 ffff 16 30207 10 Since there are four areas, they can be expressed as follows using a binary 2-bit area code (RC).

【0008】 領域 領域コード(RC) 1 002 2 012 3 102 4 112 領域1では、102410の間の値をとり(2進法では1
0ビット)、領域コードは002(2進法では2ビッ
ト)であるので、12ビットで表現できる。同様に、領
域2と3では、11ビット+2ビット=13ビットで、
また、領域4では、16ビット+2ビット=18ビット
で表現できる。
Region Region Code (RC) 1 00 2 2 01 2 3 10 2 4 11 2 Region 1 has a value between 1024 10 (1 in binary system).
Since it is 0 bit) and the area code is 00 2 (2 bits in the binary system), it can be expressed by 12 bits. Similarly, in regions 2 and 3, 11 bits + 2 bits = 13 bits,
In the area 4, it can be expressed by 16 bits + 2 bits = 18 bits.

【0009】これらの変換方式を図1に示す。16ビッ
トの非圧縮データは、それぞれ、コンパレータを通り、
12,13,18ビットへと変換される。
FIG. 1 shows these conversion methods. The 16-bit uncompressed data passes through the comparator,
Converted to 12, 13, and 18 bits.

【0010】[0010]

【作用】16ビットの入力データ(重み値)に対して、
入力値の発生頻度の高いゼロ近傍のデータを領域1に割
当てることにより、12ビットにデータ圧縮できる。ま
た、その他のデータを、領域2、3、4に割当てること
により、それぞれ、13、13、18ビットに変換でき
る。領域4では、逆に18ビットに増えるが、発生頻度
が低いので問題とならない。
Operation: For 16-bit input data (weight value),
By assigning to the area 1 the data near the zero where the input value occurs frequently, the data can be compressed to 12 bits. Further, by allocating other data to the areas 2, 3, and 4, the data can be converted into 13, 13, and 18 bits, respectively. In the area 4, on the contrary, the number of bits is increased to 18 bits.

【0011】[0011]

【実施例】以下に実施例を用いて、本発明の詳細を説明
する。
EXAMPLES The present invention will be described in detail below with reference to examples.

【0012】図4は、圧縮システムの構成図である。本
システムは、従来のニューロコンピュータシステム4
に、圧縮された重み値の主メモリ2、展開用のハードウ
エア3、圧縮用のハードウエア5、アドレス発生器(読
み出しデータ)6、アドレス発生器(書き込みデータ)
7が付加されて構成されている。
FIG. 4 is a block diagram of the compression system. This system is a conventional neurocomputer system 4
To the main memory 2 of compressed weight values, decompression hardware 3, compression hardware 5, address generator (read data) 6, address generator (write data)
7 is added.

【0013】図5は、圧縮方式の回路構成図を示す。本
回路は、コンパレータ8、圧縮された重み値の主メモリ
9、18ビット並列入力、並列出力シフトレジスタ1
0、バッファー11より構成されている。入力データの
分類は以下のように行なう。
FIG. 5 shows a circuit configuration diagram of the compression system. This circuit includes a comparator 8, a compressed weight value main memory 9, an 18-bit parallel input, and a parallel output shift register 1.
0 and buffer 11. Input data is classified as follows.

【0014】 領域1 32,356(0111111000000000) → 33,279(10000
00111111111) 領域2 30,208(0111011000000000) → 32,255(01111
10111111111) 領域3 33,280(1000001000000000) → 35,327(10001
00111111111) 領域4 0(0000000000000000) → 32,255(01111
10111111111) 35,328(1000101000000000) → 65,535(111111111111111
1) 従って、非圧縮データの始めの7ビットを調べることに
よって、領域1から4に分類できる。具体的には、図5
のコンパレータ8で非圧縮データの上位7ビットを比較
し、2ビットの領域コードを発生させ、これらを入力デ
ータに付加する。本ハードウエアの特徴は、処理速度が
速く、必要なメモリが少ない点である。例えば、圧縮、
展開システム全体で、10KバイトのRAM(ランダム
アクセスメモリ)またはROM(リードオンリメモリ)
で構成できる。また、本システムは、近年開発されたD
SP(デジタル信号処理)型ニューロコンピュータのシ
ミュレーションに適している。
Area 1 32,356 (0111111000000000) → 33,279 (10000
00111111111) Area 2 30,208 (0111011000000000) → 32,255 (01111
10111111111) Area 3 33,280 (1000001000000000) → 35,327 (10001
00111111111) Area 4 0 (0000000000000000) → 32,255 (01111
10111111111) 35,328 (1000101000000000) → 65,535 (111111111111111
1) Therefore, by examining the first 7 bits of the uncompressed data, the areas 1 to 4 can be classified. Specifically, FIG.
Comparator 8 compares the upper 7 bits of the uncompressed data, generates a 2-bit area code, and adds these to the input data. The features of this hardware are that the processing speed is fast and the required memory is small. For example, compression,
10 Kbytes of RAM (random access memory) or ROM (read only memory) for the entire deployment system
Can be configured with. In addition, this system is a D
It is suitable for simulation of SP (digital signal processing) type neuro computer.

【0015】次に、図6に、展開方式の回路構成図を示
す。本回路は、圧縮された重み値の主メモリ12、カウ
ンタ13、制御ブロック14、並列入力、直列出力シフ
トレジスタ15、領域コード16、16ビット直列入
力、並列出力シフトレジスタ17、2048x16ビッ
トRAM(領域2)18、バッファー19、1024x
16ビットRAM(領域1)20、2048x16ビッ
トRAM(領域3)21から構成されている。システム
は、制御ブロック14により管理され、レジスタ、カウ
ンタを通して、非圧縮データに変換される。領域4の場
合には、RAM変換テーブルを必要とせずに、直接ニュ
ーロコンピュータにデータが転送される。
Next, FIG. 6 shows a circuit configuration diagram of the expansion system. This circuit includes a compressed weight main memory 12, a counter 13, a control block 14, a parallel input, a serial output shift register 15, a region code 16, a 16-bit serial input, a parallel output shift register 17, a 2048 × 16-bit RAM (region. 2) 18, buffer 19, 1024x
It is composed of a 16-bit RAM (area 1) 20 and a 2048 × 16-bit RAM (area 3) 21. The system is managed by the control block 14 and converted to uncompressed data through registers and counters. In the case of the area 4, the data is directly transferred to the neuro computer without the need for the RAM conversion table.

【0016】[0016]

【発明の効果】本発明を用いることにより、シナプス重
み値の精度を犠牲にすることなくメモリを圧縮すること
ができる。数値シミュレーションでは、約16%のメモ
リ領域の圧縮が可能な見通しが得られた。また、従来の
ニューロコンピュータに特別の設計を施すことなく本シ
ステムを付加することができる。さらに、本発明では従
来のコーデイング方式で必要とされたシンボルテーブル
の作成を必要としない。また、圧縮、展開回路では、A
LU(アリスメテック論理回路)を必要としないため、
実行速度が速く、複雑な制御回路も必要でない。
According to the present invention, the memory can be compressed without sacrificing the accuracy of the synapse weight value. In the numerical simulation, it was possible to compress about 16% of the memory area. Further, this system can be added to a conventional neuro computer without special design. Moreover, the present invention does not require the creation of the symbol table that was required in conventional coding schemes. In the compression / decompression circuit, A
Since it does not require an LU (Alice Metec logic circuit),
It has a fast execution speed and does not require complicated control circuits.

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

【図1】入力データから圧縮データに変換する方法を示
す。
FIG. 1 shows a method of converting input data into compressed data.

【図2】ニューラルネットワークにおける重み値の分布
を示す。
FIG. 2 shows a distribution of weight values in a neural network.

【図3】図1の重み値を圧縮データに変換する分類方法
を示す。
FIG. 3 shows a classification method for converting the weight values of FIG. 1 into compressed data.

【図4】圧縮システムの構成図を示す。FIG. 4 shows a block diagram of a compression system.

【図5】圧縮方式の回路構成図を示す。FIG. 5 shows a circuit configuration diagram of a compression method.

【図6】展開方式の回路構成図を示す。FIG. 6 shows a circuit configuration diagram of a development system.

【符号の説明】[Explanation of symbols]

1−−−コンパレータ、 2−−−圧縮された重み値の主メモリ、 3−−−展開用のハードウエア、 4−−−ニューロコンピュータシステム、 5−−−圧縮用のハードウエア、 6−−−アドレス発生器、読み出しデータ、 7−−−アドレス発生器、書き込みデータ、 8−−−コンパレータ、 9−−−圧縮された重み値の主メモリ、 10−−18bit並列、並列出力シフトレジスタ、 11−−バッファー、 12−−圧縮された重み値の主メモリ、 13−−カウンタ、 14−−制御ブロック、 15−−並列入力、直列出力シフトレジスタ、 16−−領域コード、 17−−16bit直列入力、並列出力シフトレジス
タ、 18−−2048x16 bits ランダムアクセス
メモリ(領域2)、 19−−バッファー、 20−−1024x16 bits ランダムアクセス
メモリ(領域1)、 21−−2048x16 bits ランダムアクセス
メモリ(領域3)。
1 --- Comparator, 2 ---- Main memory of compressed weight values, 3 ---- decompression hardware, 4--neuro computer system, 5 --- compression hardware, 6 --- -Address generator, read data, 7 --- Address generator, write data, 8--comparator, 9 --- Main memory of compressed weight value, 10--18bit parallel, parallel output shift register, 11 --Buffer, 12--main memory of compressed weight values, 13--counter, 14--control block, 15--parallel input, serial output shift register, 16--region code, 17-16 bit serial input , Parallel output shift register, 18-2048x16 bits random access memory (region 2), 19-buffer, 20-1024 16 bits random access memory (area 1), 21--2048x16 bits random access memory (region 3).

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】圧縮された形式でシナプス重み値を保存す
る主メモリユニットと、主メモリ内の圧縮データを非圧
縮データに変換してニューロコンピュータに転送する展
開ユニットと、ニューロコンピュータからの非圧縮デー
タを圧縮データに変換して主メモリユニットに転送する
圧縮ユニットから構成されていることを特徴とするニュ
ーロコンピュータ。
1. A main memory unit for storing synapse weight values in a compressed form, an expansion unit for converting compressed data in the main memory into uncompressed data and transferring the uncompressed data to a neuro computer, and an uncompressed unit from the neuro computer. A neuro computer comprising a compression unit for converting data into compressed data and transferring the compressed data to a main memory unit.
【請求項2】請求項1の圧縮ユニットにおいて、上記圧
縮ユニットが、入力受信回路と、入力の一部または全体
を、特定のシナプス重み値分布から作られる値と比較す
る回路と、データの一部から領域コードを発生する回路
と、入力と比較後のデータから圧縮データを形成する回
路と、圧縮データを主メモリユニットに転送する回路か
ら構成されていることを特徴とするニューロコンピュー
タ。
2. The compression unit of claim 1, wherein said compression unit comprises an input receiving circuit, a circuit for comparing some or all of the inputs with a value made from a particular synaptic weight value distribution, and A neurocomputer comprising a circuit for generating a region code from a section, a circuit for forming compressed data from data after input and comparison, and a circuit for transferring the compressed data to a main memory unit.
【請求項3】請求項1の非圧縮ユニットにおいて、上記
非圧縮ユニットが、入力受信回路と、入力データより領
域コードを削除する回路と、領域コードから拡張領域コ
ードを生成する回路と、拡張領域コードと入力データよ
り非圧縮データを形成する回路と、非圧縮データをニュ
ーロコンピュータに転送する回路から構成されているこ
とを特徴とするニューロコンピュータ。
3. The uncompressed unit according to claim 1, wherein the uncompressed unit includes an input receiving circuit, a circuit for deleting a region code from input data, a circuit for generating an extended region code from the region code, and an extended region. A neurocomputer comprising a circuit for forming uncompressed data from a code and input data and a circuit for transferring the uncompressed data to the neurocomputer.
JP33020192A 1992-12-10 1992-12-10 Neurocomputer Pending JPH06176000A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33020192A JPH06176000A (en) 1992-12-10 1992-12-10 Neurocomputer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33020192A JPH06176000A (en) 1992-12-10 1992-12-10 Neurocomputer

Publications (1)

Publication Number Publication Date
JPH06176000A true JPH06176000A (en) 1994-06-24

Family

ID=18229971

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33020192A Pending JPH06176000A (en) 1992-12-10 1992-12-10 Neurocomputer

Country Status (1)

Country Link
JP (1) JPH06176000A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018155232A1 (en) * 2017-02-23 2018-08-30 ソニー株式会社 Information processing apparatus, information processing method, and program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018155232A1 (en) * 2017-02-23 2018-08-30 ソニー株式会社 Information processing apparatus, information processing method, and program
JPWO2018155232A1 (en) * 2017-02-23 2019-12-12 ソニー株式会社 Information processing apparatus, information processing method, and program

Similar Documents

Publication Publication Date Title
US5293164A (en) Data compression with pipeline processor having separate memories
US5506797A (en) Nonlinear function generator having efficient nonlinear conversion table and format converter
US5936560A (en) Data compression method and apparatus performing high-speed comparison between data stored in a dictionary window and data to be compressed
US5363098A (en) Byte aligned data compression
US9240237B2 (en) Semiconductor device and method of writing/reading entry address into/from semiconductor device
Howard et al. Parallel lossless image compression using Huffman and arithmetic coding
CN110771161A (en) Digital perspective method
KR960042416A (en) Max value selection circuit
Pansare et al. Learning compressed embeddings for on-device inference
CN114640354A (en) Data compression method and device, electronic equipment and computer readable storage medium
Ahn et al. Deeper weight pruning without accuracy loss in deep neural networks: Signed-digit representation-based approach
US6308249B1 (en) Storing data in a grey code system
US7305370B2 (en) Neural cortex
JPH06314185A (en) Variable logic and arithmetic unit
KR940004463A (en) Neural Network Structure and Learning Method
JPH06176000A (en) Neurocomputer
US5778153A (en) Neural network utilizing logarithmic function and method of using same
JPS5885629A (en) Compression encoding system
US11475288B2 (en) Sorting networks using unary processing
Wongthanavasu et al. Cellular automata for pattern recognition
CN114492778A (en) Operation method of neural network model, readable medium and electronic device
Sydor et al. Methods and processors for image recognition in a linear and quadratic hamming space
Parhami Modular reduction by multi-level table lookup
Mamun et al. Hardware Approach of Lempel-Ziv-Welch Algorithm for Binary Data Compression
Bang et al. Paralleled hardware annealing in multilevel Hopfield neural networks for optimal solutions