JP2008027176A - Data creation circuit and method for creating data - Google Patents
Data creation circuit and method for creating data Download PDFInfo
- Publication number
- JP2008027176A JP2008027176A JP2006198797A JP2006198797A JP2008027176A JP 2008027176 A JP2008027176 A JP 2008027176A JP 2006198797 A JP2006198797 A JP 2006198797A JP 2006198797 A JP2006198797 A JP 2006198797A JP 2008027176 A JP2008027176 A JP 2008027176A
- Authority
- JP
- Japan
- Prior art keywords
- data
- input data
- output data
- output
- bit shift
- 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
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
Description
本発明はデータ生成回路及びデータ生成方法に関し、特に、入力データ及び出力データのペアとその評価値を用いた学習により抽出されたルールのうち、入力データに適合する1又は複数のルールを用いて、該入力データに応じた出力データを生成するデータ生成回路及びデータ生成方法に関する。 The present invention relates to a data generation circuit and a data generation method, and in particular, using one or a plurality of rules that match input data among rules extracted by learning using a pair of input data and output data and their evaluation values. The present invention relates to a data generation circuit and a data generation method for generating output data corresponding to the input data.
データを用いて学習を行う装置及び入力データから出力データを生成する装置は数多く提案されているが、中でも、下記非特許文献1及び特許文献1に開示された自己組織化関係ネットワークは、入力データ及び出力データのペアとその評価値から制御対象を安定に制御するルール(入出力関係)を学習により抽出するとともに、抽出したルールのうち、入力データに適合する1又は複数を選出して、それらを用いて入力データに応じた出力データを生成するものであって、好ましい(評価の高い)入出力関係を学習により容易に獲得でき、活用できることから非常に優位性が高い。
しかしながら、上記自己組織化関係ネットワークは、プログラムにより実現されるものであって、実現にはパーソナルコンピュータを要するので装置の規模が大きいという問題がある。さらに、自己組織化関係ネットワークは学習やデータ生成に膨大な時間を要するという問題がある。特に、入力データに適合する1又は複数のルールを選出する際に、入力データと各ルール(入力データとそれに応じた好ましい出力データのペア)との類似度を演算することになるが、この類似度を演算するためには、通常ルックアップテーブルが必要であり、その実装面積が膨大であるという問題がある。また、入力データから出力データを生成する際に用いる重み付き平均は、類似度と各ルールに対応する出力データとの乗算を伴うため、その演算量が膨大となるという問題がある。 However, the above self-organization related network is realized by a program and requires a personal computer for the realization, so there is a problem that the scale of the apparatus is large. Furthermore, the self-organization related network has a problem that it takes enormous time for learning and data generation. In particular, when selecting one or more rules that match the input data, the similarity between the input data and each rule (a pair of input data and a preferred output data corresponding thereto) is calculated. In order to calculate the degree, a lookup table is usually required, and there is a problem that the mounting area is enormous. In addition, since the weighted average used when generating output data from input data involves multiplication of the similarity and the output data corresponding to each rule, there is a problem that the amount of calculation becomes enormous.
本発明は上記課題に鑑みてなされたものであって、その目的は、自己組織化関係ネットワークをコンパクト且つ高速に実現するためのデータ生成回路及びデータ生成方法を提供することにある。 The present invention has been made in view of the above problems, and an object of the present invention is to provide a data generation circuit and a data generation method for realizing a self-organization related network in a compact and high-speed manner.
上記課題を解決するために、本発明に係るデータ生成回路は、入力データ及び出力データのペアを複数記憶する記憶手段と、前記記憶手段に記憶される前記複数の入力データ及び出力データのペアのうち少なくとも一部について、それらペアに係る入力データと所与の入力データとの各距離に応じた回数だけ、それらペアに係る出力データをそれぞれ右にビットシフトさせる第1のビットシフト手段と、前記第1のビットシフト手段からの出力データの加算値に基づいて、前記所与の入力データに応じた出力データを生成する重み付平均演算手段と、を含むことを特徴とする。 In order to solve the above problems, a data generation circuit according to the present invention includes a storage unit that stores a plurality of pairs of input data and output data, and a plurality of pairs of the input data and output data that are stored in the storage unit. First bit shift means for bit-shifting the output data related to the pair to the right by the number of times corresponding to the distance between the input data related to the pair and the given input data, at least a part of the pair; Weighted average calculating means for generating output data corresponding to the given input data based on an added value of the output data from the first bit shift means.
本発明では、第1のビットシフト手段により、記憶手段に記憶される入力データと前記所与の入力データとの距離が大きいほど、該入力データに対応する出力データが小さくなる。すなわち、記憶手段に記憶される入力データと前記所与の入力データとの距離に応じた回数をsとすると、出力データuは、u×2−sとなる。そして、こうしてビットシフトされた出力データを加算することにより、記憶手段に記憶される出力データの重み付平均が得られ、これが前記所与の入力データに応じた出力データとして利用される。本発明によると、ビットシフトという演算量の少ないディジタルデータ処理により、記憶手段により記憶される出力データの重み付平均を得ることができ、自己組織化関係ネットワークをコンパクト且つ高速に実現することができるようになる。 In the present invention, as the distance between the input data stored in the storage means and the given input data is larger by the first bit shift means, the output data corresponding to the input data becomes smaller. That is, when the number of times corresponding to the distance between the input data stored in the storage means and the given input data is s, the output data u is u × 2- s . Then, by adding the bit-shifted output data in this manner, a weighted average of the output data stored in the storage means is obtained, and this is used as output data according to the given input data. According to the present invention, a weighted average of output data stored in the storage means can be obtained by digital data processing with a small amount of calculation called bit shift, and a self-organizing relation network can be realized compactly and at high speed. It becomes like this.
本発明の一態様では、前記少なくとも一部の入力データ及び出力データのペアについて、それらペアに係る入力データと前記所与の入力データとの各距離に応じた回数だけ、1を右にビットシフトさせる第2のビットシフト手段をさらに含み、前記重み付き平均演算手段は、前記第1のビットシフト手段からの出力データの加算値及び前記第2のビットシフト手段からの出力データの加算値に基づいて、前記所与の入力データに応じた出力データを生成する。この態様によれば、第2のビットシフト手段からの出力値の加算値で、第1のビットシフト手段からの出力値の加算値を除算することにより、重み係数を正規化することができる。 In one aspect of the present invention, for at least some of the input data and output data pairs, 1 is bit-shifted to the right by the number of times corresponding to each distance between the input data related to the pairs and the given input data. A second bit shift means for causing the weighted average calculation means to be based on an addition value of output data from the first bit shift means and an addition value of output data from the second bit shift means. Thus, output data corresponding to the given input data is generated. According to this aspect, the weighting factor can be normalized by dividing the added value of the output value from the first bit shift means by the added value of the output value from the second bit shift means.
また、本発明の一態様では、前記記憶手段に記憶される前記複数の入力データ及び出力データのペアのそれぞれについて、該ペアに係る入力データと前記所与の入力データとの距離を算出するとともに、算出される距離の上位所定数ビットがすべて零であるか否かを判定する判定手段と、前記判定手段の判定結果に基づいて、前記少なくとも一部の入力データ及び出力データのペアを選出するセレクタ手段と、をさらに含む。算出される距離の上位所定数ビットがすべて零であるか否かは、記憶手段に記憶される各入力データが前記所与の入力データから所定距離内にあるか否かに対応しており、例えばNOR(否定論理和演算)回路により容易に判定することができる。この態様によると、前記所与の入力データから所定距離内にある入力データに係るペアだけを重み付平均演算の対象とすることができ、処理をさらに簡略化することができる。 In one aspect of the present invention, for each of the plurality of input data and output data pairs stored in the storage means, the distance between the input data related to the pair and the given input data is calculated. Determining means for determining whether or not the upper predetermined number bits of the calculated distance are all zero, and selecting at least a part of the input data and output data based on the determination result of the determination means And selector means. Whether or not the upper predetermined number bits of the calculated distance are all zero corresponds to whether each input data stored in the storage means is within a predetermined distance from the given input data, For example, it can be easily determined by a NOR (Negative OR operation) circuit. According to this aspect, only a pair related to input data within a predetermined distance from the given input data can be targeted for weighted average calculation, and the processing can be further simplified.
また、本発明の一態様では、学習用の入力データ及び出力データのペア及び該ペアに対する評価値に基づいて、前記記憶手段に記憶される前記複数の入力データ及び出力データのペアを生成する学習手段をさらに含む。こうすれば、学習手段により、好ましい入力データ及び出力データのペアを記憶手段に記憶させることができる。 In one embodiment of the present invention, learning that generates a plurality of pairs of input data and output data stored in the storage means based on a pair of learning input data and output data and an evaluation value for the pair. Means are further included. If it carries out like this, the pair of preferable input data and output data can be memorize | stored in a memory | storage means by a learning means.
また、本発明の一態様では、前記第1のビットシフト手段は、前記記憶手段に記憶される前記入力データ及び出力データのペアと同数のビットシフト回路を含み、各ビットシフト回路は、該ビットシフト回路に対応する前記入力データ及び出力データのペアについて、該ペアに係る入力データと前記所与のデータとの距離に応じた回数だけ、該ペアに係る出力データを右にビットシフトさせる。こうすれば、各ペアに関するビットシフト演算を並列して実行することが可能となり、自己組織化関係ネットワークをさらに高速に実現できる。 Also, in one aspect of the present invention, the first bit shift means includes the same number of bit shift circuits as pairs of the input data and output data stored in the storage means, and each bit shift circuit includes the bit shift circuit. For the pair of input data and output data corresponding to the shift circuit, the output data related to the pair is bit-shifted to the right by the number of times corresponding to the distance between the input data related to the pair and the given data. In this way, it is possible to execute bit shift operations for each pair in parallel, and a self-organizing relation network can be realized at higher speed.
また、本発明に係るデータ生成方法は、記憶手段に記憶される複数の入力データ及び出力データのペアのうち少なくとも一部について、それらペアに係る入力データと所与の入力データとの各距離に応じた回数だけ、それらペアに係る出力データをそれぞれ右にビットシフトさせるステップと、ビットシフト済みの出力データの加算値に基づいて、前記所与の入力データに応じた出力データを生成するステップと、を含むことを特徴とする。 In addition, the data generation method according to the present invention includes, for at least some of a plurality of pairs of input data and output data stored in the storage means, at each distance between input data related to the pair and given input data. A step of bit-shifting the output data related to the pairs to the right by the number of times, and a step of generating output data corresponding to the given input data based on the sum of the bit-shifted output data, , Including.
本発明によると、ビットシフトという演算量の少ないディジタルデータ処理により、記憶手段により記憶される出力データの重み付平均を得ることができ、自己組織化関係ネットワークをコンパクト且つ高速に実現することができるようになる。 According to the present invention, a weighted average of output data stored in the storage means can be obtained by digital data processing with a small amount of calculation called bit shift, and a self-organizing relation network can be realized compactly and at high speed. It becomes like this.
以下、本発明の一実施形態について図面に基づき詳細に説明する。 Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.
図1は、本発明の一実施形態に係る自己組織化関係ネットワークを示す図である。同図に示すように、自己組織化関係ネットワークは、それぞれn個、m個、N個のユニットが配置された入力層、出力層及び競合層の3層からなるネットワークである。図1では競合層ユニットは競合層上に1次元に配置されているが、2次元の正方格子状、六角格子状、3次元の球状などに配置されてもよい。入力層には入力ベクトル(入力データ)x、出力層には出力ベクトル(出力データ)yが関連付けられている。入力層、出力層と競合層は結合重みベクトルvj=(wj,uj)で全結合されている。この結合重みベクトルは、好ましい入力ベクトル及び出力ベクトルのペアを示しており、wj(以下、「入力部結合重みベクトル」という。)が入力ベクトル、uj(以下、「出力部結合重みベクトル」という。)が出力ベクトルに対応している。 FIG. 1 is a diagram illustrating a self-organizing relationship network according to an embodiment of the present invention. As shown in the figure, the self-organization relation network is a network composed of three layers of an input layer, an output layer, and a competition layer in which n, m, and N units are arranged. In FIG. 1, the competitive layer units are arranged one-dimensionally on the competitive layer, but may be arranged in a two-dimensional square lattice, a hexagonal lattice, a three-dimensional sphere, or the like. An input vector (input data) x is associated with the input layer, and an output vector (output data) y is associated with the output layer. The input layer, the output layer, and the competitive layer are fully coupled with a coupling weight vector v j = (w j , u j ). This coupling weight vector indicates a preferable pair of an input vector and an output vector, and w j (hereinafter referred to as “input unit coupling weight vector”) is an input vector, and u j (hereinafter, “output unit coupling weight vector”). Corresponds to the output vector.
図2は、上記自己組織化関係ネットワークに関連付けられた学習機能付データ生成回路10のデジタルハードウェアアーキテクチャを示す図である。同図に示すように、自己組織化関係ネットワークのデジタルハードウェアアーキテクチャは、競合層の各ユニットに対応する複数のローカル回路11と、勝者決定回路12、重み付き平均演算回路13、コントローラ14を含んで構成されている。これらは自己組織化関係ネットワークのデジタルハードウェアアーキテクチャを記述したプログラムを公知のコンパイラを用いて論理回路の組み合わせに変換し、これを公知のField Programmable Gate Array(FPGA)やApplication Specific Integrated Circuit(ASIC)、論理回路ICなどを用いて実装することで実現される。学習機能付データ生成回路10は、学習モード又は実行モードで動作するものである。
FIG. 2 is a diagram showing a digital hardware architecture of the learning function-added data generation circuit 10 associated with the self-organization relation network. As shown in the figure, the digital hardware architecture of the self-organizing relationship network includes a plurality of
図3は、ローカル回路11のデジタルハードウェアアーキテクチャを示す図である。同図に示すようにローカル回路11は、メモリ21、距離演算回路22、メンバシップ関数生成回路23、ビットシフト回路24,26、セレクタ回路25を含んで構成されている。メモリ21は、結合重みベクトルvjを保存する。また、距離演算回路22は、学習モードにおいて入力ベクトル及び出力ベクトルのペアと結合重みベクトルvjとの間の距離を演算する。また、実行モードにおいて入力ベクトルと入力部結合重みベクトルwjとの距離を演算する。メンバシップ関数生成回路23は、距離演算回路22から出力される距離信号dに対して右ビットシフト操作を施して、その結果であるビットシフト回数sを出力する。さらに、ビットシフト回数sの上位所定数ビットに対するNOR(否定論理和演算)の結果であるアクティブフラグ(flag)を出力する。
FIG. 3 is a diagram showing a digital hardware architecture of the
ビットシフト回路26は、固定のディジタル値“1”に対してビットシフト回数sだけ右ビットシフト操作を施し、これにより入力ベクトルとメモリ21に記憶された結合重みベクトルvjの成分ujに関する重み係数zを生成する。また、ビットシフト回路24は、メモリ21から読み出される出力部結合重みベクトルujに対してビットシフト回数sだけ右ビットシフト操作を施し、これにより入力ベクトルとメモリ21に記憶された入力部結合重みベクトルwjに関するファジィ類似度(重み係数)zに、メモリ21に記憶された出力部結合重みベクトルujに乗じた値zujを生成する。セレクタ回路25は、メンバシップ関数生成回路23から出力されるアクティブフラグが1の場合、すなわち入力ベクトルとメモリ21に記憶された入力部結合重みベクトルwjとの距離dが所定距離内である場合は、ビットシフト回路26及びビットシフト回路24から出力されるz及びzuを重み付平均演算回路13に供給する。また、アクティブフラグが0の場合は、z及びzuを重み付平均演算回路13に供給せず、他のローカル回路11にデータ出力順を明け渡す。
The
なお、本実施形態では、結合重みベクトルvjを保存するためのメモリ21を各ローカル回路11内に分散的に配置しているが、ローカル回路11の外部に集中配置する形態や、各ローカル回路11の外部に個別に配置する形態をとってもよい。
In the present embodiment, the
まず、学習機能付データ生成回路10の学習モードにおける動作について説明する。図4は、学習モードにおける動作フロー図である。同図に示すように、学習モードでは、まず、ローカル回路11のメモリ21に格納された結合重みベクトルを初期化(S100)する。次に、入力信号が回路外部から入力される。学習モードの入力信号は、入力ベクトル及び出力ベクトルのペア及びその評価値で、これを学習ベクトルとする。入力信号は全てのローカル回路11に同時に入力され、これにより学習ベクトルの提示となる(S101)。学習ベクトルが提示されると、各ローカル回路11は学習ベクトルとメモリ21に格納された結合重みベクトルvj間の距離を、距離演算回路22を用いて演算する。用いる尺度は距離の性質を満たしていれば、例えばマンハッタン距離やマハラノビス距離など、どのようなものでもよい。
First, the operation in the learning mode of the learning function-added data generation circuit 10 will be described. FIG. 4 is an operation flowchart in the learning mode. As shown in the figure, in the learning mode, first, the connection weight vector stored in the
次に、次式(1)に基づき、演算された距離の中から最も小さな値を持つローカル回路を、勝者決定回路12を用いて勝者ユニットとして決定する(S102)。ここで、iはローカル回路を順序付ける番号、cは勝者ユニットの番号、Iは学習ベクトル、viはi番目のローカル回路11に関連付けられた結合重みベクトル、tは現在時刻を表すものである。勝者ユニットの番号は制御信号としてコントローラ14に伝えられ、コントローラ14は勝者ユニットの番号及び競合層ユニットの配置の定義に基づき、近傍ユニット(競合層において勝者ユニットの近傍に配置されたユニット)を決定する。
Next, based on the following equation (1), the local circuit having the smallest value among the calculated distances is determined as a winner unit using the winner determination circuit 12 (S102). Here, i is representative of the number ordering local circuit, c is the number of the winner unit, I is learning vector, v i is the coupling weight vector associated with the i-th
その後、勝者ユニット及び近傍ユニットに関連付けられたローカル回路11のメモリ21を次式(2)に従って更新する(S103)。ここで、αは正の評価値(肯定的評価)の場合における学習係数、βは負の評価値(否定的評価)の場合における学習係数、Eは評価値である。このとき、学習係数α、β及び評価値Eを2のべき乗で記述すれば、式(2)における乗算は全てビットシフトで演算可能であり、ハードウェアをコンパクト化することができ、また演算時間を削減できる。もちろん、これらを2のべき乗に限定せずに乗算器を用いて式(2)を実現してもよい。また、なお、負の評価値に対して、更新式による結合重みベクトルviの更新を行った際に、更新後の値があらかじめ定義しておいた値域を超える場合、オーバーフローを防ぐために値域の最大もしくは最小値を取るように学習量を制限する。
Thereafter, the
学習ベクトルが提示される間、もしくは規定回数が終了するまで同様の手順を繰り返す(S101〜S103)。以上の操作によって、学習回路及びデータ生成回路10は、学習用の入力データ‐出力データ対とその評価値からルール(好ましい入力データ−出力データ対)を抽出し、これを各ローカル回路11のメモリ21に獲得する。
The same procedure is repeated while the learning vector is presented or until the specified number of times is completed (S101 to S103). Through the above operation, the learning circuit and the data generation circuit 10 extract the rule (preferred input data-output data pair) from the learning input data-output data pair and its evaluation value, and this is extracted into the memory of each
こうしてメモリ21に格納されたルールは、必要に応じて回路外部に読み出すことができる。図5は、ルール読み出し処理を示すフロー図である。同図に示すように、外部からローカル回路11のアドレスを指定すると(S200)、wired−orもしくはOR論理回路で結合されている、図2に示される結合重みベクトル信号の信号線を通り、指定されたローカル回路11の結合重みベクトルの内容を出力する(S201)。以上の操作によって、学習機能付データ生成回路10は、学習モードで抽出されたルールを回路外部へ取り出す。
Thus, the rules stored in the
次に、学習機能付データ生成回路10の実行モードにおける動作を説明する。図6は、実行モードにおける動作フロー図である。同図に示すように、実行モードでは、実行用の入力データを入力ベクトルxとして提示すると(S300)、入力ベクトルxと、全てのローカル回路11のメモリ21に格納されている入力部結合重みベクトルwiとの間の距離diを、距離演算回路22にて、次式(3)を用いて演算する(S301)。
Next, the operation in the execution mode of the learning function-added data generation circuit 10 will be described. FIG. 6 is an operation flowchart in the execution mode. As shown in the figure, in the execution mode, when the input data for execution is presented as the input vector x (S300), the input vector x and the input unit coupling weight vector stored in the
距離diを示す距離信号はメンバシップ関数生成回路23へと入力され、次式(4)を用いてファジィ類似度zが算出される(S302)。
The distance signal indicating the distance d i is input to the membership
図7は、メンバシップ関数生成回路23のデジタルハードウェアアーキテクチャを示す図である。同図に示すように、メンバシップ関数生成回路23は、メモリ31、ビットシフト回路32、NORゲート33を含んで構成される。
FIG. 7 is a diagram showing a digital hardware architecture of the membership
siはi番目のローカル回路11で算出される上述したビットシフト回数であり、次式(5)で与えられる。rはメンバシップ関数の幅を表すパラメタ、aは演算精度(ビット)を表すパラメタ、r−log2aはビットシフト回数(符号34)である。幅の広いメンバシップ関数が必要な場合は大きなrを、幅の狭いメンバシップ関数が必要な場合、小さなrを設定することで、様々なメンバシップ関数を生成することが出来る。例えばr= 4、a = 8の場合、メンバシップ関数の幅は16となり、siはdiを右に1ビットシフトすることで算出することが出来る。ビットシフト回路32は、距離演算回路22で得られた距離信号に対して、メモリ31に格納されたビットシフト回数(r−log2a)だけ、右ビットシフト操作を行うことでビットシフト回数siを算出する。
s i is the above-described number of bit shifts calculated by the i-th
図8は、式(4)及び式(5)で生成されるメンバシップ関数の形状の一例(r= 3 ,a= 8の場合)である。メンバシップ関数の出力値であるファジィ類似度zが2のべき乗である点が特徴的であり、これによりファジィ類似度zを出力部結合重みベクトルujに乗算する演算を、出力ベクトルujをビットシフト回数siだけ右ビットシフト操作する演算により代替することが可能となる。この結果、ハードウェアをコンパクトにし、かつ演算を高速化することが可能となる。 FIG. 8 shows an example of the shape of the membership function generated by the equations (4) and (5) (when r = 3 and a = 8). A characteristic is that the fuzzy similarity z, which is the output value of the membership function, is a power of 2, whereby an operation for multiplying the output unit coupling weight vector u j by the fuzzy similarity z is performed as an output vector u j . It is possible to substitute the calculation by performing a right bit shift operation by the number of bit shifts s i . As a result, it is possible to make the hardware compact and to speed up the calculation.
式(4)のflagは、アクティブユニットかどうかを示すものである。flag= 1の場合はアクティブユニットとする。また、0の場合はアクティブユニットではないと判断され、その類似度を0とする。flagの値はメンバシップ関数生成回路23においてビットシフト回路32から出力されるビットシフト回数sの上位所定数のビットをNORゲート33に入力することで得られる。具体的には、距離diを格納するためのレジスタのビット数をDとすると、siの上位D−log2aビットをNORゲート33に入力する。アクティブユニットの場合、NORゲート33の入力35は全て0になるので、出力として1が得られる。NORゲート33の入力35に1が1つでも含まれる場合、出力として0が得られる。これは、メンバシップ関数の幅の外(図7の場合はs>8)に入力があるということを意味し、非アクティブなユニットであると判断される。本実施形態では、以上のように、NORゲート33を用いてアクティブユニットの判定を行う点が特徴的である。なお、siの下位log2aビットはメンバシップ関数生成回路30から出力される。
The flag in equation (4) indicates whether it is an active unit. When flag = 1, it is an active unit. In the case of 0, it is determined that the unit is not an active unit, and its similarity is set to 0. The value of the flag is obtained by inputting a predetermined number of bits higher than the number of bit shifts s output from the
図3に示すように、ファジィ類似度zと結合重みベクトルの出力部uとの積zuは、ビットシフト回路24により演算される。式(4)で、zが2の‐si乗で表現されているため、zuは、uをビットシフト回数siだけ右ビットシフト操作することで得ることが出来る。したがって、回路規模の大きい乗算器の代わりにビットシフト回路を用いることが出来るため、コンパクトなハードウェア化が可能となる。また、メンバシップ関数生成回路23から出力されるビットシフト回数siはビットシフト回路26にも入力され、ビットシフト回路26では、ディジタル値1を右にsiビットシフトすることでファジィ類似度zを演算する。
As shown in FIG. 3, the product zu of the fuzzy similarity z and the output unit u of the coupling weight vector is calculated by the
コントローラ14は、1番目のローカル回路11から順に、z及びzuの出力命令を送る。命令を受けたローカル回路11は、セレクタ回路25にてflagの有無を確認し、flagがある場合はz及びzuを出力し、出力したという信号をコントローラ14へ返す。flagが無い場合、出力の権利を次のローカル回路11へ移す。出力の権利を受け取ったローカル回路11は、出力の命令を受け取ったローカル回路11と同様の動作を行う。重み付き平均回路13へ向かうz及びzuの信号線はwired−orもしくはORゲートにて接続されている。これにより、出力を行ったローカル回路11のz及びzuのみが重み付き平均演算回路13へ送られる。
The
図9は、重み付き平均演算回路13のデジタルハードウェアアーキテクチャを示す図である。同図のように、重み付き平均演算回路13は、加算器41、加算器42、除算器43を含んで構成される。重み付き平均演算回路13を用いて、次式(6)により出力信号を生成する(S303)。すなわち、加算器42により各ローカル回路11から出力されるファジィ類似度z(重み係数として用いられる。)の合計値Σzが計算され、加算器41により各ローカル回路11から出力される出力結合重みベクトルに重み係数を乗じた値zuの合計値Σzuが計算される。そして、除算器43では、ΣzuをΣzで割った値が算出され、これが出力される。
FIG. 9 is a diagram showing a digital hardware architecture of the weighted average
式(6)は、アクティブユニットのみを用いて重み付き平均演算を行うことを意味する。
すなわち、同式(6)において、Cはアクティブユニットの集合を示しており、非アクティブユニットをスキップし、アクティブユニットのみで、重み付き平均演算を行う点が特徴的である。通常、競合層ユニットの数に比べ、アクティブユニットの数は非常に少ない。したがって、従来の自己組織化関係ネットワークではN回の積和演算が必要であったのに対し、本実施形態によりC回の積和演算で重み付き平均が実現できるので、大幅な演算量削減が可能となる。
Equation (6) means that a weighted average operation is performed using only active units.
That is, in the equation (6), C represents a set of active units, and is characterized in that a weighted average calculation is performed only with active units by skipping inactive units. Usually, the number of active units is very small compared to the number of competitive layer units. Accordingly, in the conventional self-organization relational network, N times of product-sum operations are required, but according to the present embodiment, weighted average can be realized by C times of product-sum operations, so that the computation amount can be greatly reduced. It becomes possible.
以上の操作によって、学習機能付データ生成回路10は、入力信号から出力信号を生成する。 Through the above operation, the learning function-added data generation circuit 10 generates an output signal from the input signal.
以上の学習機能付データ生成回路10によれば、自己組織化マップに関する学習及びデータ生成を高速かつコンパクトに実現可能であり、例えば、ロボットビジョンの処理などのような高速性とデバイスの小型化が要求される応用の実現が可能となる。 According to the data generation circuit 10 with a learning function described above, learning and data generation regarding a self-organizing map can be realized at high speed and compactly. For example, high speed such as robot vision processing and downsizing of a device can be achieved. The required application can be realized.
10 学習機能付データ生成回路、11 ローカル回路、12 勝者決定回路、13 重み付き平均演算回路、14 コントローラ、21 メモリ、22 距離演算回路、23 メンバシップ関数生成回路、24,26 ビットシフト回路、25 セレクタ回路、31 メモリ、32 ビットシフト回路、33 NORゲート、41,42 加算器、43 除算器。 DESCRIPTION OF SYMBOLS 10 Data generation circuit with learning function, 11 Local circuit, 12 Winner determination circuit, 13 Weighted average calculation circuit, 14 Controller, 21 Memory, 22 Distance calculation circuit, 23 Membership function generation circuit, 24, 26 Bit shift circuit, 25 Selector circuit, 31 memory, 32-bit shift circuit, 33 NOR gate, 41, 42 adder, 43 divider.
Claims (6)
前記記憶手段に記憶される前記複数の入力データ及び出力データのペアのうち少なくとも一部について、それらペアに係る入力データと所与の入力データとの各距離に応じた回数だけ、それらペアに係る出力データをそれぞれ右にビットシフトさせる第1のビットシフト手段と、
前記第1のビットシフト手段からの出力データの加算値に基づいて、前記所与の入力データに応じた出力データを生成する重み付平均演算手段と、
を含むことを特徴とするデータ生成回路。 Storage means for storing a plurality of pairs of input data and output data;
For at least some of the plurality of input data and output data pairs stored in the storage means, the number of times corresponding to the distance between the input data related to the pair and the given input data is related to the pair. First bit shift means for bit-shifting each output data to the right;
Weighted average computing means for generating output data corresponding to the given input data based on the sum of output data from the first bit shift means;
A data generation circuit comprising:
前記少なくとも一部の入力データ及び出力データのペアについて、それらペアに係る入力データと前記所与の入力データとの各距離に応じた回数だけ、1を右にビットシフトさせる第2のビットシフト手段をさらに含み、
前記重み付き平均演算手段は、前記第1のビットシフト手段からの出力データの加算値及び前記第2のビットシフト手段からの出力データの加算値に基づいて、前記所与の入力データに応じた出力データを生成する、
ことを特徴とするデータ生成回路。 The data generation circuit according to claim 1,
Second bit shift means for bit-shifting 1 to the right by the number of times corresponding to each distance between the input data relating to the pair and the given input data for at least some of the input data and output data pairs Further including
The weighted average calculation means responds to the given input data based on an addition value of output data from the first bit shift means and an addition value of output data from the second bit shift means. Generate output data,
A data generation circuit characterized by the above.
前記記憶手段に記憶される前記複数の入力データ及び出力データのペアのそれぞれについて、該ペアに係る入力データと前記所与の入力データとの距離を算出するとともに、算出される距離の上位所定数ビットがすべて零であるか否かを判定する判定手段と、
前記判定手段の判定結果に基づいて、前記少なくとも一部の入力データ及び出力データのペアを選出するセレクタ手段と、
をさらに含むことを特徴とするデータ生成回路。 The data generation circuit according to claim 1 or 2,
For each of the plurality of pairs of input data and output data stored in the storage means, the distance between the input data related to the pair and the given input data is calculated, and the upper predetermined number of calculated distances Determining means for determining whether or not all bits are zero;
Selector means for selecting a pair of at least some of the input data and output data based on the determination result of the determination means;
A data generation circuit further comprising:
学習用の入力データ及び出力データのペア及び該ペアに対する評価値に基づいて、前記記憶手段に記憶される前記複数の入力データ及び出力データのペアを生成する学習手段をさらに含む、
ことを特徴とするデータ生成回路。 The data generation circuit according to any one of claims 1 to 3,
Learning means for generating a plurality of pairs of input data and output data stored in the storage means based on a pair of learning input data and output data and an evaluation value for the pair;
A data generation circuit characterized by the above.
前記第1のビットシフト手段は、前記記憶手段に記憶される前記入力データ及び出力データのペアと同数のビットシフト回路を含み、各ビットシフト回路は、該ビットシフト回路に対応する前記入力データ及び出力データのペアについて、該ペアに係る入力データと前記所与のデータとの距離に応じた回数だけ、該ペアに係る出力データを右にビットシフトさせる、
ことを特徴とするデータ生成回路。 The data generation circuit according to any one of claims 1 to 4,
The first bit shift means includes the same number of bit shift circuits as the number of pairs of input data and output data stored in the storage means, and each bit shift circuit includes the input data and the bit data corresponding to the bit shift circuit. For the output data pair, the output data related to the pair is bit-shifted to the right by the number of times corresponding to the distance between the input data related to the pair and the given data.
A data generation circuit characterized by that.
ビットシフト済みの出力データの加算値に基づいて、前記所与の入力データに応じた出力データを生成するステップと、
を含むことを特徴とするデータ生成方法。
For at least a part of a plurality of pairs of input data and output data stored in the storage means, output data related to these pairs as many times as the distance between the input data related to those pairs and the given input data Bit shifting each to the right,
Generating output data according to the given input data based on the sum of the bit-shifted output data;
A data generation method comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006198797A JP5034041B2 (en) | 2006-07-20 | 2006-07-20 | Data generation circuit and data generation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006198797A JP5034041B2 (en) | 2006-07-20 | 2006-07-20 | Data generation circuit and data generation method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008027176A true JP2008027176A (en) | 2008-02-07 |
JP5034041B2 JP5034041B2 (en) | 2012-09-26 |
Family
ID=39117744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006198797A Active JP5034041B2 (en) | 2006-07-20 | 2006-07-20 | Data generation circuit and data generation method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5034041B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106295799A (en) * | 2015-05-12 | 2017-01-04 | 核工业北京地质研究院 | A kind of implementation method of degree of depth study multilayer neural network |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0451384A (en) * | 1990-06-19 | 1992-02-19 | Canon Inc | Neural network and its construction method |
JPH06259585A (en) * | 1993-03-10 | 1994-09-16 | Toyota Central Res & Dev Lab Inc | Neural network device |
JP2000122991A (en) * | 1998-10-15 | 2000-04-28 | Retsu Yamakawa | Manufacture of controller, the controller, data generator, method for determining input/output characteristics, method for evaluating correlation |
JP2004287782A (en) * | 2003-03-20 | 2004-10-14 | Fuji Photo Film Co Ltd | Method and device for semantic determination of image |
-
2006
- 2006-07-20 JP JP2006198797A patent/JP5034041B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0451384A (en) * | 1990-06-19 | 1992-02-19 | Canon Inc | Neural network and its construction method |
JPH06259585A (en) * | 1993-03-10 | 1994-09-16 | Toyota Central Res & Dev Lab Inc | Neural network device |
JP2000122991A (en) * | 1998-10-15 | 2000-04-28 | Retsu Yamakawa | Manufacture of controller, the controller, data generator, method for determining input/output characteristics, method for evaluating correlation |
JP2004287782A (en) * | 2003-03-20 | 2004-10-14 | Fuji Photo Film Co Ltd | Method and device for semantic determination of image |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106295799A (en) * | 2015-05-12 | 2017-01-04 | 核工业北京地质研究院 | A kind of implementation method of degree of depth study multilayer neural network |
CN106295799B (en) * | 2015-05-12 | 2018-11-02 | 核工业北京地质研究院 | A kind of implementation method of deep learning multilayer neural network |
Also Published As
Publication number | Publication date |
---|---|
JP5034041B2 (en) | 2012-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11741362B2 (en) | Training neural networks using mixed precision computations | |
KR102402111B1 (en) | Apparatus and method for performing forward computation in convolutional neural networks | |
KR102544275B1 (en) | Apparatus and method for executing convolutional neural network training | |
KR102486030B1 (en) | Apparatus and method for executing forward operation of fully-connected layer neural network | |
JP6773970B2 (en) | Information processing device, Ising device and control method of information processing device | |
US11481618B2 (en) | Optimization apparatus and method for controlling neural network | |
JP7137064B2 (en) | Optimization device and control method for optimization device | |
JP6777574B2 (en) | Piecewise linear approximation function generator and method | |
US20210097397A1 (en) | Information processing apparatus and information processing method | |
US11551087B2 (en) | Information processor, information processing method, and storage medium | |
JP5034041B2 (en) | Data generation circuit and data generation method | |
US20200134434A1 (en) | Arithmetic processing device, learning program, and learning method | |
JP7475164B2 (en) | Information processing device, information processing method, and program | |
JP2020035000A (en) | Machine learning system and calculation method of boltzmann machine | |
CN109726805B (en) | Method for designing neural network processor by using black box simulator | |
JP2006172137A (en) | Information processor and information processing method | |
JPWO2020084723A1 (en) | Arithmetic processing unit and control method of arithmetic processing unit | |
TWI830940B (en) | Information processing circuits and design methods of information processing circuits | |
JP7226541B2 (en) | Inference processing device and inference processing method | |
WO2022004815A1 (en) | Neural network generating device, neural network generating method, and neural network generating program | |
Bolchini et al. | Evolving classifiers on field programmable gate arrays: Migrating XCS to FPGAs | |
JP7512631B2 (en) | Ising machine data input device and method for inputting data into an Ising machine | |
JP6973651B2 (en) | Arithmetic optimizers, methods and programs | |
JP2022066974A (en) | Neural network generating device, neural network control method, and software generating program | |
Sutisna et al. | Reinforcement Learning Accelerator using Q-Learning Algorithm with Optimized Bit Precision |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090406 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120306 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120507 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120605 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |