JP3822382B2 - 多数決ニューロン回路および多層ニューラル・ネットワーク・システム - Google Patents
多数決ニューロン回路および多層ニューラル・ネットワーク・システム Download PDFInfo
- Publication number
- JP3822382B2 JP3822382B2 JP12931999A JP12931999A JP3822382B2 JP 3822382 B2 JP3822382 B2 JP 3822382B2 JP 12931999 A JP12931999 A JP 12931999A JP 12931999 A JP12931999 A JP 12931999A JP 3822382 B2 JP3822382 B2 JP 3822382B2
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- neuron
- neural network
- majority
- pulse
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Logic Circuits (AREA)
Description
【0001】
【発明の属する技術分野】
ニューラル・ネットワークを構成するニューロン回路およびそのニューロン回路を用いたニューラル・ネットワークに関する。
【技術背景】
ニューラル・ネットワークのハードウェア・インプリメンテーションに有効なアプローチの1つに、パルス信号を用い、確率計算処理(stochastic computing)を基にしたアーキテクチャがある(例えば、G. Moon, E. Zaghloul, and R. W. Newcomb, "VLSI Implementation of Synaptic Weighting and Summing in pulse Coded Neural-Type Cells," IEEE Trans. on Neural Networks, vol.3, no.3, pp.394-403, May 1992 および、Y. C. Kim, M. A. Shamblatt, "Random noise effects in pulse-mode digital multilayer neural networks," IEEE Trans. on Neural Networks, vol.6, no.1, pp.220-229, January 1995を参照)。
【0002】
ここで使用している確率パルス・モード・ニューロンの欠点は、パルスの非線形性によってもたらされる活性化関数はほぼ固定化され、パルス・コードの精度が完全なデジタル算術演算の精度より劣ることである(例えば、Leonardo M. Reyneri, "A performance analysis of pulse stream neural and fuzzy computing systems" IEEE Trans. on CAS, vol.42, no.10, pp641-644, 1997を参照)。もう1つの問題は、パルス・モード・シナプスの乗算器の重みの範囲が−1.0から+1.0の間に制限されてしまい、そのためにパルス・モード・ネットワークを学習させることを難しくしていることである。
【0003】
これらの問題を解決するために、多数決回路を基にした有効なニューロン(effective neuron)が提案されている(例えば、H. Hikawa, "Learning performance of frequency-modulation digital neural network with on-chip learning," Proceeding, IEEE ICNN'98, pp.557-562, 1998を参照)。多数決回路はニューロンの精度を向上し、そのうえ多数決回路は拡張されて、非線形活性化関数を調整可能となった。しかしながら、付加回路のためにニューロンの回路のサイズは確率ニューロンよりも大きなものとなっている。
【0004】
【発明が解決しようとする課題】
本発明では、多数決回路のサイズの縮小したニューロン回路と、そのニューロン回路により構成された多層ニューラル・ネットワーク(multilayer neural network: MNN)を目的としている。
本発明においては、多数決ニューロン回路は、パフォーマンスを低下させずに回路のサイズを小さくすることが目的である。また、ニューラル・ネットワークで最も重要な特徴は学習能力であり、オンチップ上で学習機能を実現することができる、多層ニューラル・ネットワーク構成も本発明の目的である。
【0005】
【課題を解決するための手段】
上記目的を達成するために、本発明は、活性化パルスおよび抑制パルスをそれぞれ計数する活性化計数回路および抑制パルス計数回路と、前記活性化計数回路および抑制パルス計数回路に結合され、前記活性化計数回路および抑制パルス計数回路の差をとる加算回路と、前記差を入力して、過去Sサンプルについて前記差を累積し、累積値が0以上となったときに、パルス信号を出力する累積回路とを有することを特徴とする多数決ニューロン回路である。この構成により、パフォーマンスを低下させずに回路のサイズを小さくすることができる。
この多数決ニューロン回路において、前記累積回路の前記Sが可変をすることにより、活性化関数の非線形特性の傾きを変化させることができる。
【0006】
重みを格納するアップダウン・カウンタと、前記アップダウン・カウンタからの重みと入力とを乗算するシナプス乗算器と、前記シナプス乗算器からの入力を、入力の一つとする上述に記載の多数決ニューロン回路とで、多層ニューラル・ネットワーク・システムを構成することができる。
この多層ニューラル・ネットワーク・システムでは、前記シナプス乗算器は、直接デジタル周波数合成乗算器とすることができる。
【0007】
この多層ニューラル・ネットワーク・システムで、前記多数決ニューロン回路からの出力を微分する微分器と、前記微分器からの信号と、上層からの誤差信号とを乗算する論理積回路と、上層からの重みの最上位ビットと、上層からの誤差信号の符号ビットとの排他的論理和をとる排他的論理和回路と、前記論理積回路の出力を前記アップダウン・カウンタの入力とし、前記排他的論理和の入力により、前記アップダウン・カウンタのアップダウンを決定することにより、オンチップ学習機能を有する学習回路を構成することができる。
また、前記微分器からの信号からの信号にオフセットを加算してから、前記上層からの誤差信号とを乗算することにより、バックプロパゲーション・アルゴリズムが改善される。
【0008】
【発明の実施の形態】
まず、本発明で用いるニューロンおよびそのニューロンを用いた多層ニューラル・ネットワーク(multilayer neural network: MNN)の概略を説明する。
多層ニューラル・ネットワーク(multilayer neural network: MNN)の順方向動作では、下層のニューロンからのデータを、順送接続ネットワーク(Feed-forward connection)を経由して上層のニューロンに伝達される。s番目の層のk番目のニューロンをok (s)とすると、各ニューロンで行われる演算は
【数1】
【数2】
で与えられ,各層には0〜Mの番号を付与してあり、Hk (s)はs番目の層のk番目のニューロンの重み付け和で、wkj (s)はシナプスの重みである。ニューロンの出力ok (s)は、重み付け和に対して活性化関数f(*)を演算して得られたものである。パルス・モード演算では、パルスの密度は信号レベルに比例しており、ニューロン信号はパルス・ストリームで表される。
【0009】
使用しているニューロン・ユニットでは、下層の重み付けされたニューロンの出力は合算され、その出力は活性化関数f(*)を用いて生成される。従来の確率ニューロンにおいては、刺激と抑制のシナプス信号がORゲートによって合計され、そして、これらの信号はニューロンの出力を生成するのに用いられている。
【数3】
ここで、pNは刺激信号であり、nNは抑制信号である。
さて、この確率演算に基づくニューロン回路において問題となることは、ニューロンの確率演算が不正確であることである。たとえば、従来のニューロンにおいては、複数の刺激パルスは単一の抑制パルスによってキャンセルされるので、抑制パルスよりも多く刺激パルスが存在していても出力が起こらない。本発明のニューロン回路は刺激と抑制のパルスの数を考慮にいれている。本発明のニューロン・ユニットの構成は、図1のブロック図に示されている。
【0010】
図1において、パルス計数回路112および114は、刺激パルスNE(i)の数と抑制パルスNi(i)の数を数える。パルス計数回路112および114で計数されたこれらのパルスの数の差D(i)は、加算回路122で計算される。過去のS個のサンプルの差D(i)がレジスタR140内に累積され、レジスタR140の内容が0より大きいときに、レジスタR140から出力が生成される。
【0011】
さて、確率ニューロンと同様に、多数決ニューロンは統計的飽和(statistical saturation)を利用しており、図1においても、非線形活性化関数f(Hk)を実現するために、非線形の加算を用いている。パルスがあまり頻繁ではない(低信号レベル)限り、多数決回路の出力におけるパルス計数は、入力における個々のパルス計数の単純合計に等しい。しかしながら、パルスがもっと頻繁(より高い信号レベル)になると、パルスが互いにマスクする機会が重要になる。合計のパルス計数は、このようにして最大に飽和することになる。しかし、これにより得られる非線形活性化関数は、特性が固定されてしまう。図1では、遅延回路130および加算回路124で、移動平均を演算することとほぼ同じ働きを行うにより、特性を可変できる非線形関数を実現している。遅延回路130に示したパラメータSは遅延を示している。これにより低域フィルタとして動作することになる。本発明の図1に示したニューロンにより提供される非線形関数は、パラメータSにより変えることが可能である。
【0012】
したがって、本発明のニューロンの演算は
【数4】
ニューロンの出力o(i)は,
【数5】
となる。
【0013】
本発明において、オンチップ学習をハードウェアに実装するために、バックプロパゲーション・アルゴリズムは単純パルス・モード動作を有するように修正されている。オンチップ学習を有する本発明のMNNアーキテクチャーのシステム構成は、図2に示されている。
【0014】
図2において、修正多数決ニューロン218および228は、図1に示したニューロン回路である。図2のMNNアーキテクチャーで実現しているバックプロパゲーション・アルゴリズムは、次のように表される。
【数6】
【数7】
【数8】
【0015】
順方向信号と同様に、式(6)中のエラー項σk (s)およびδk (s)は、パルス信号で表されている。これらの信号は、シナプスの重みを格納しているアップダウン・カウンタ214,224を更新するのに用いられる。式(6)中のwkj (s+1)δj (s+1)を計算するために、実際の重みの値の代わりに、重みのサイン・ビット(MSB:最上位ビット)がエラー項δj (s+1)と掛けられる。この演算を実行する回路は単一の排他的論理和回路240であり、重みのMSB(最上位ビット)が1のときサイン信号を反転する。式(7)のσk (s)f’(Hk (s))中の乗算および式(9)中のσk (s)0j (s-1)の乗算は、論理積回路238、および、論理積回路212,222により実現している。f’(Hk (s))は、活性化関数の導関数である。導関数f’(Hk (s))を生成するのに用いられている微分器232は、図3に示されている。微分器232は、パルス・ストリームの先頭と最後を検出したときに、常に出力パルスを与える。バックプロパゲーション・アルゴリズムによるMNNの学習動作は、導関数f’(Hk)に、リニア・フィードバック・シフトレジスタ(LFSR)234からのオフセットG(<1.0)を加えることで改良される(例えば、H. Hikawa, "Improvement on the learning performance of multiplierless multilayer neural network," Proceeding, IEEE ISCA'97, vol.1 pp.641-644, 1997参照)。
【0016】
また、図2におけるシナプス乗算器216および226としては、2種類のシナプス重み乗算器を使用することができる。その1つが確率乗算器で、他のひとつが直接ディジタル周波数合成器(direct frequency synthesizer:DDFS)を基にした乗算器である(例えば、H. Hikawa, "Learning performance of frequency-modulation digital neural network with on-chip learning," Proceeding, IEEE ICNN'98, pp.557-562, 1998参照)。確率乗算器はサイクル時間がランダムであるランダム・パルス列を生成し、DDFS乗算器は固定されたサイクル時間の周波数変調されたパルス列を生成する。
【0017】
従来の多数決ニューロン(例えば、H. Hikawa, "Learning performance of frequency-modulation digital neural network with on-chip learning," Proceeding, IEEE ICNN'98, pp.557-562, 1998参照)と、本発明のニューロンとの回路サイズの比較が図4に示されている。ここで、回路サイズは多数決ニューロンのサイズを1.0とするように規格化されている。本発明のニューロンの回路サイズは、従来の多数決ニューロンの2/3となっている。
【0018】
上述の本発明のニューロン回路およびMNNをFPGA上に実装することができる。このようして、実装した本発明のニューロン回路の活性化関数の特性を次に示す。
S=8およびS=24を有する提案ニューロンのHkとf(Hk)との間の関係は、図5(A),(B)に示されている。これらのグラフは、活性化関数の調整可能性は、DDFS型シナプス乗算器に対して、より重要であることを示している。DDFS重みの値が−1.0から1.0の間に制限されているとはいえ、活性化関数がより急勾配となっていることにより実効重み範囲が拡大されているため、提案ネットワークの柔軟性は大変改良されている。
【0019】
次に、導関数f’(Hk)を生成するために用いられた微分器の特性を示す。図5(A)に示されているニューロン信号を入力として用いて、図3に示したパルス微分器の特性を図6に示す。図5(A)に示されている非線形特性の導関数に極めて近い。
【0020】
本発明のニューロンを用いて、例えばFPGA上に構築したMNNのオンチップ学習能力について次に説明する。
まず、本発明のMNNを用いて単純な2進論理機能を実行した例を図7に示す。これに使用したMNNは、3つのニューロンを入力層に、3つのニューロンを中間層に、単一の出力ニューロンを出力層に有している。入力層および中間層の双方に、オフセット・ニューロンを含んでいる。オフセット・ニューロンは常に1の出力を与え、オフセット・ニューロンに接続されている重みはオフセットθとして動作する。このため、中間層中のニューロンの実際の数は2つである。DDFSシナプス・ユニットはシナプス乗算器として用いられ、ニューロンのパラメータSは8である。
【0021】
学習中におけるMNNの信号は、図7に示されている。この図で、単純な論理機能(排他的論理和)が目的機能として使用されている。I0,I1は入力信号で、T0は教師信号、FK0はMNNの出力である。図に示されているように、本発明のMNNは排他的論理和を成功裡に学習している。
【0022】
次に、本発明のネットワークで2次元の領域分類問題を実行した例を図8に示す。この例に使用したMNNは、2つの入力および単一の出力を有している。出力は0≦x<1および0≦y<1の範囲内の四角形領域内の点の座標(x,y)である。提案ネットワークは、与えられた点が領域内か外側かどうかを認識するように学習する。ネットワークの出力は、点が外側である場合はゼロ、内側である場合は1である。
【0023】
この2進分類の例に使用したネットワークは、2つの入力および単一のオフセットのニューロンを有する入力層、6つのニューロン(6番目のニューロンはもう一つのオフセット・ニューロン)を含む単一の中間層、および、単一の出力ニューロンを有する出力層を有している。図8〜10の6つの教師パターンが提案MNNの学習能力を実験するために用いられている。図8〜10の教師パターンは3つの異なる形状であり、各図(A),(B)の形状は256または128のデータ・セットを有している。各図(B)の128の座標は、各図(A)の形状の256の全座標情報からランダムに選択されたものである。学習後、全ての256の(x,y)座標はネットワークに印加され、ネットワークの応答が試験される。各図(B)では128の教師データにより学習されているので、未知の座標が与えられたとき、MNNは自身により出力値を演繹する必要がある。このように、汎化能力は、ネットワークの出力を観察することにより試験することができる。
【0024】
図8〜図10のおける上述の教師セットおよびMNNの応答を結果において、出力レベルは黒い丸の直径で表現されている。図8(A),(B)に示されているように、パラメータSが増加すると、実効重み範囲がSの増加とともに広がるため、出力パターンは明確になる。その上、出力プロットは、教師データが不完全でも、目的形状にとても似てくる。
【0025】
図9,図10は、異なる教師データを用いた他の学習例を示している。これは、図8と同様な構成のネットワークに対して、教師データを与えて、そのネットワーク出力を示している。図9,図10の学習結果は図8の結果と比較すると、図10の成果は劣っている。しかし、図8〜図10からも分かるように、ネットワークは、これらの形状範囲を分類するように学習している。図10に示す円の場合が、本発明のMNNが学習するのに最も難しいパターンである。より良い出力結果を得るためには、ネットワークは中間層内にもっと多くのニューロンが必要である。
これらから明確に分かるように、本発明のMNNにおいて、オンチップ学習がとてもよく機能していることを示している。そして、本発明のMNNは大変良い汎化能力を有している。
【0026】
【発明の効果】
上記の説明のように、本発明は、回路サイズが小さい多数決ニューロン回路であり、この回路を用いた多層ニューラル・ネットワークは、学習能力が優れている。
【図面の簡単な説明】
【図1】本発明の実施形態であるニューロン回路の構成を示すブロック図である。
【図2】本発明の実施形態であるニューラル・ネットワークの構成を示すブロック図である。
【図3】微分器の構成例を示すブロック図である。
【図4】ニューロンの回路サイズの比較表である。
【図5】Hkとf(Hk)との関係を示す図である。
【図6】図3の微分器の特性を示す図である。
【図7】本発明のニューラル・ネットワークの動作例である。
【図8】本発明のニューラル・ネットワークの他の動作例である。
【図9】本発明のニューラル・ネットワークの他の動作例である。
【図10】本発明のニューラル・ネットワークの他の動作例である。
【符号の説明】
112,114 パルス計数回路
122,124,126 加算回路
130 遅延回路
140 レジスタ
212,222,238 論理積回路
214,224 アップ・ダウン・カウンタ
216,226 シナプス乗算器
218,228 修正多数決ニューロン
232 微分器
234 リニア・フィードバック・シフトレジスタ
236 論理和回路
240 排他的論理和回路
【発明の属する技術分野】
ニューラル・ネットワークを構成するニューロン回路およびそのニューロン回路を用いたニューラル・ネットワークに関する。
【技術背景】
ニューラル・ネットワークのハードウェア・インプリメンテーションに有効なアプローチの1つに、パルス信号を用い、確率計算処理(stochastic computing)を基にしたアーキテクチャがある(例えば、G. Moon, E. Zaghloul, and R. W. Newcomb, "VLSI Implementation of Synaptic Weighting and Summing in pulse Coded Neural-Type Cells," IEEE Trans. on Neural Networks, vol.3, no.3, pp.394-403, May 1992 および、Y. C. Kim, M. A. Shamblatt, "Random noise effects in pulse-mode digital multilayer neural networks," IEEE Trans. on Neural Networks, vol.6, no.1, pp.220-229, January 1995を参照)。
【0002】
ここで使用している確率パルス・モード・ニューロンの欠点は、パルスの非線形性によってもたらされる活性化関数はほぼ固定化され、パルス・コードの精度が完全なデジタル算術演算の精度より劣ることである(例えば、Leonardo M. Reyneri, "A performance analysis of pulse stream neural and fuzzy computing systems" IEEE Trans. on CAS, vol.42, no.10, pp641-644, 1997を参照)。もう1つの問題は、パルス・モード・シナプスの乗算器の重みの範囲が−1.0から+1.0の間に制限されてしまい、そのためにパルス・モード・ネットワークを学習させることを難しくしていることである。
【0003】
これらの問題を解決するために、多数決回路を基にした有効なニューロン(effective neuron)が提案されている(例えば、H. Hikawa, "Learning performance of frequency-modulation digital neural network with on-chip learning," Proceeding, IEEE ICNN'98, pp.557-562, 1998を参照)。多数決回路はニューロンの精度を向上し、そのうえ多数決回路は拡張されて、非線形活性化関数を調整可能となった。しかしながら、付加回路のためにニューロンの回路のサイズは確率ニューロンよりも大きなものとなっている。
【0004】
【発明が解決しようとする課題】
本発明では、多数決回路のサイズの縮小したニューロン回路と、そのニューロン回路により構成された多層ニューラル・ネットワーク(multilayer neural network: MNN)を目的としている。
本発明においては、多数決ニューロン回路は、パフォーマンスを低下させずに回路のサイズを小さくすることが目的である。また、ニューラル・ネットワークで最も重要な特徴は学習能力であり、オンチップ上で学習機能を実現することができる、多層ニューラル・ネットワーク構成も本発明の目的である。
【0005】
【課題を解決するための手段】
上記目的を達成するために、本発明は、活性化パルスおよび抑制パルスをそれぞれ計数する活性化計数回路および抑制パルス計数回路と、前記活性化計数回路および抑制パルス計数回路に結合され、前記活性化計数回路および抑制パルス計数回路の差をとる加算回路と、前記差を入力して、過去Sサンプルについて前記差を累積し、累積値が0以上となったときに、パルス信号を出力する累積回路とを有することを特徴とする多数決ニューロン回路である。この構成により、パフォーマンスを低下させずに回路のサイズを小さくすることができる。
この多数決ニューロン回路において、前記累積回路の前記Sが可変をすることにより、活性化関数の非線形特性の傾きを変化させることができる。
【0006】
重みを格納するアップダウン・カウンタと、前記アップダウン・カウンタからの重みと入力とを乗算するシナプス乗算器と、前記シナプス乗算器からの入力を、入力の一つとする上述に記載の多数決ニューロン回路とで、多層ニューラル・ネットワーク・システムを構成することができる。
この多層ニューラル・ネットワーク・システムでは、前記シナプス乗算器は、直接デジタル周波数合成乗算器とすることができる。
【0007】
この多層ニューラル・ネットワーク・システムで、前記多数決ニューロン回路からの出力を微分する微分器と、前記微分器からの信号と、上層からの誤差信号とを乗算する論理積回路と、上層からの重みの最上位ビットと、上層からの誤差信号の符号ビットとの排他的論理和をとる排他的論理和回路と、前記論理積回路の出力を前記アップダウン・カウンタの入力とし、前記排他的論理和の入力により、前記アップダウン・カウンタのアップダウンを決定することにより、オンチップ学習機能を有する学習回路を構成することができる。
また、前記微分器からの信号からの信号にオフセットを加算してから、前記上層からの誤差信号とを乗算することにより、バックプロパゲーション・アルゴリズムが改善される。
【0008】
【発明の実施の形態】
まず、本発明で用いるニューロンおよびそのニューロンを用いた多層ニューラル・ネットワーク(multilayer neural network: MNN)の概略を説明する。
多層ニューラル・ネットワーク(multilayer neural network: MNN)の順方向動作では、下層のニューロンからのデータを、順送接続ネットワーク(Feed-forward connection)を経由して上層のニューロンに伝達される。s番目の層のk番目のニューロンをok (s)とすると、各ニューロンで行われる演算は
【数1】
【数2】
で与えられ,各層には0〜Mの番号を付与してあり、Hk (s)はs番目の層のk番目のニューロンの重み付け和で、wkj (s)はシナプスの重みである。ニューロンの出力ok (s)は、重み付け和に対して活性化関数f(*)を演算して得られたものである。パルス・モード演算では、パルスの密度は信号レベルに比例しており、ニューロン信号はパルス・ストリームで表される。
【0009】
使用しているニューロン・ユニットでは、下層の重み付けされたニューロンの出力は合算され、その出力は活性化関数f(*)を用いて生成される。従来の確率ニューロンにおいては、刺激と抑制のシナプス信号がORゲートによって合計され、そして、これらの信号はニューロンの出力を生成するのに用いられている。
【数3】
ここで、pNは刺激信号であり、nNは抑制信号である。
さて、この確率演算に基づくニューロン回路において問題となることは、ニューロンの確率演算が不正確であることである。たとえば、従来のニューロンにおいては、複数の刺激パルスは単一の抑制パルスによってキャンセルされるので、抑制パルスよりも多く刺激パルスが存在していても出力が起こらない。本発明のニューロン回路は刺激と抑制のパルスの数を考慮にいれている。本発明のニューロン・ユニットの構成は、図1のブロック図に示されている。
【0010】
図1において、パルス計数回路112および114は、刺激パルスNE(i)の数と抑制パルスNi(i)の数を数える。パルス計数回路112および114で計数されたこれらのパルスの数の差D(i)は、加算回路122で計算される。過去のS個のサンプルの差D(i)がレジスタR140内に累積され、レジスタR140の内容が0より大きいときに、レジスタR140から出力が生成される。
【0011】
さて、確率ニューロンと同様に、多数決ニューロンは統計的飽和(statistical saturation)を利用しており、図1においても、非線形活性化関数f(Hk)を実現するために、非線形の加算を用いている。パルスがあまり頻繁ではない(低信号レベル)限り、多数決回路の出力におけるパルス計数は、入力における個々のパルス計数の単純合計に等しい。しかしながら、パルスがもっと頻繁(より高い信号レベル)になると、パルスが互いにマスクする機会が重要になる。合計のパルス計数は、このようにして最大に飽和することになる。しかし、これにより得られる非線形活性化関数は、特性が固定されてしまう。図1では、遅延回路130および加算回路124で、移動平均を演算することとほぼ同じ働きを行うにより、特性を可変できる非線形関数を実現している。遅延回路130に示したパラメータSは遅延を示している。これにより低域フィルタとして動作することになる。本発明の図1に示したニューロンにより提供される非線形関数は、パラメータSにより変えることが可能である。
【0012】
したがって、本発明のニューロンの演算は
【数4】
ニューロンの出力o(i)は,
【数5】
となる。
【0013】
本発明において、オンチップ学習をハードウェアに実装するために、バックプロパゲーション・アルゴリズムは単純パルス・モード動作を有するように修正されている。オンチップ学習を有する本発明のMNNアーキテクチャーのシステム構成は、図2に示されている。
【0014】
図2において、修正多数決ニューロン218および228は、図1に示したニューロン回路である。図2のMNNアーキテクチャーで実現しているバックプロパゲーション・アルゴリズムは、次のように表される。
【数6】
【数7】
【数8】
【0015】
順方向信号と同様に、式(6)中のエラー項σk (s)およびδk (s)は、パルス信号で表されている。これらの信号は、シナプスの重みを格納しているアップダウン・カウンタ214,224を更新するのに用いられる。式(6)中のwkj (s+1)δj (s+1)を計算するために、実際の重みの値の代わりに、重みのサイン・ビット(MSB:最上位ビット)がエラー項δj (s+1)と掛けられる。この演算を実行する回路は単一の排他的論理和回路240であり、重みのMSB(最上位ビット)が1のときサイン信号を反転する。式(7)のσk (s)f’(Hk (s))中の乗算および式(9)中のσk (s)0j (s-1)の乗算は、論理積回路238、および、論理積回路212,222により実現している。f’(Hk (s))は、活性化関数の導関数である。導関数f’(Hk (s))を生成するのに用いられている微分器232は、図3に示されている。微分器232は、パルス・ストリームの先頭と最後を検出したときに、常に出力パルスを与える。バックプロパゲーション・アルゴリズムによるMNNの学習動作は、導関数f’(Hk)に、リニア・フィードバック・シフトレジスタ(LFSR)234からのオフセットG(<1.0)を加えることで改良される(例えば、H. Hikawa, "Improvement on the learning performance of multiplierless multilayer neural network," Proceeding, IEEE ISCA'97, vol.1 pp.641-644, 1997参照)。
【0016】
また、図2におけるシナプス乗算器216および226としては、2種類のシナプス重み乗算器を使用することができる。その1つが確率乗算器で、他のひとつが直接ディジタル周波数合成器(direct frequency synthesizer:DDFS)を基にした乗算器である(例えば、H. Hikawa, "Learning performance of frequency-modulation digital neural network with on-chip learning," Proceeding, IEEE ICNN'98, pp.557-562, 1998参照)。確率乗算器はサイクル時間がランダムであるランダム・パルス列を生成し、DDFS乗算器は固定されたサイクル時間の周波数変調されたパルス列を生成する。
【0017】
従来の多数決ニューロン(例えば、H. Hikawa, "Learning performance of frequency-modulation digital neural network with on-chip learning," Proceeding, IEEE ICNN'98, pp.557-562, 1998参照)と、本発明のニューロンとの回路サイズの比較が図4に示されている。ここで、回路サイズは多数決ニューロンのサイズを1.0とするように規格化されている。本発明のニューロンの回路サイズは、従来の多数決ニューロンの2/3となっている。
【0018】
上述の本発明のニューロン回路およびMNNをFPGA上に実装することができる。このようして、実装した本発明のニューロン回路の活性化関数の特性を次に示す。
S=8およびS=24を有する提案ニューロンのHkとf(Hk)との間の関係は、図5(A),(B)に示されている。これらのグラフは、活性化関数の調整可能性は、DDFS型シナプス乗算器に対して、より重要であることを示している。DDFS重みの値が−1.0から1.0の間に制限されているとはいえ、活性化関数がより急勾配となっていることにより実効重み範囲が拡大されているため、提案ネットワークの柔軟性は大変改良されている。
【0019】
次に、導関数f’(Hk)を生成するために用いられた微分器の特性を示す。図5(A)に示されているニューロン信号を入力として用いて、図3に示したパルス微分器の特性を図6に示す。図5(A)に示されている非線形特性の導関数に極めて近い。
【0020】
本発明のニューロンを用いて、例えばFPGA上に構築したMNNのオンチップ学習能力について次に説明する。
まず、本発明のMNNを用いて単純な2進論理機能を実行した例を図7に示す。これに使用したMNNは、3つのニューロンを入力層に、3つのニューロンを中間層に、単一の出力ニューロンを出力層に有している。入力層および中間層の双方に、オフセット・ニューロンを含んでいる。オフセット・ニューロンは常に1の出力を与え、オフセット・ニューロンに接続されている重みはオフセットθとして動作する。このため、中間層中のニューロンの実際の数は2つである。DDFSシナプス・ユニットはシナプス乗算器として用いられ、ニューロンのパラメータSは8である。
【0021】
学習中におけるMNNの信号は、図7に示されている。この図で、単純な論理機能(排他的論理和)が目的機能として使用されている。I0,I1は入力信号で、T0は教師信号、FK0はMNNの出力である。図に示されているように、本発明のMNNは排他的論理和を成功裡に学習している。
【0022】
次に、本発明のネットワークで2次元の領域分類問題を実行した例を図8に示す。この例に使用したMNNは、2つの入力および単一の出力を有している。出力は0≦x<1および0≦y<1の範囲内の四角形領域内の点の座標(x,y)である。提案ネットワークは、与えられた点が領域内か外側かどうかを認識するように学習する。ネットワークの出力は、点が外側である場合はゼロ、内側である場合は1である。
【0023】
この2進分類の例に使用したネットワークは、2つの入力および単一のオフセットのニューロンを有する入力層、6つのニューロン(6番目のニューロンはもう一つのオフセット・ニューロン)を含む単一の中間層、および、単一の出力ニューロンを有する出力層を有している。図8〜10の6つの教師パターンが提案MNNの学習能力を実験するために用いられている。図8〜10の教師パターンは3つの異なる形状であり、各図(A),(B)の形状は256または128のデータ・セットを有している。各図(B)の128の座標は、各図(A)の形状の256の全座標情報からランダムに選択されたものである。学習後、全ての256の(x,y)座標はネットワークに印加され、ネットワークの応答が試験される。各図(B)では128の教師データにより学習されているので、未知の座標が与えられたとき、MNNは自身により出力値を演繹する必要がある。このように、汎化能力は、ネットワークの出力を観察することにより試験することができる。
【0024】
図8〜図10のおける上述の教師セットおよびMNNの応答を結果において、出力レベルは黒い丸の直径で表現されている。図8(A),(B)に示されているように、パラメータSが増加すると、実効重み範囲がSの増加とともに広がるため、出力パターンは明確になる。その上、出力プロットは、教師データが不完全でも、目的形状にとても似てくる。
【0025】
図9,図10は、異なる教師データを用いた他の学習例を示している。これは、図8と同様な構成のネットワークに対して、教師データを与えて、そのネットワーク出力を示している。図9,図10の学習結果は図8の結果と比較すると、図10の成果は劣っている。しかし、図8〜図10からも分かるように、ネットワークは、これらの形状範囲を分類するように学習している。図10に示す円の場合が、本発明のMNNが学習するのに最も難しいパターンである。より良い出力結果を得るためには、ネットワークは中間層内にもっと多くのニューロンが必要である。
これらから明確に分かるように、本発明のMNNにおいて、オンチップ学習がとてもよく機能していることを示している。そして、本発明のMNNは大変良い汎化能力を有している。
【0026】
【発明の効果】
上記の説明のように、本発明は、回路サイズが小さい多数決ニューロン回路であり、この回路を用いた多層ニューラル・ネットワークは、学習能力が優れている。
【図面の簡単な説明】
【図1】本発明の実施形態であるニューロン回路の構成を示すブロック図である。
【図2】本発明の実施形態であるニューラル・ネットワークの構成を示すブロック図である。
【図3】微分器の構成例を示すブロック図である。
【図4】ニューロンの回路サイズの比較表である。
【図5】Hkとf(Hk)との関係を示す図である。
【図6】図3の微分器の特性を示す図である。
【図7】本発明のニューラル・ネットワークの動作例である。
【図8】本発明のニューラル・ネットワークの他の動作例である。
【図9】本発明のニューラル・ネットワークの他の動作例である。
【図10】本発明のニューラル・ネットワークの他の動作例である。
【符号の説明】
112,114 パルス計数回路
122,124,126 加算回路
130 遅延回路
140 レジスタ
212,222,238 論理積回路
214,224 アップ・ダウン・カウンタ
216,226 シナプス乗算器
218,228 修正多数決ニューロン
232 微分器
234 リニア・フィードバック・シフトレジスタ
236 論理和回路
240 排他的論理和回路
Claims (6)
- 活性化パルスおよび抑制パルスをそれぞれ計数する活性化計数回路および抑制パルス計数回路と、
前記活性化計数回路および抑制パルス計数回路に結合され、前記活性化計数回路および抑制パルス計数回路の差をとる加算回路と、
前記差を入力して、過去Sサンプルについて前記差を累積し、累積値が0以上となったときに、パルス信号を出力する累積回路と
を有することを特徴とする多数決ニューロン回路。 - 請求項1に記載の多数決ニューロン回路において、前記累積回路の前記Sが可変であることを特徴とする多数決ニューロン回路。
- 重みを格納するアップダウン・カウンタと、
前記アップダウン・カウンタからの重みと入力とを乗算するシナプス乗算器と、
前記シナプス乗算器からの入力を、入力の一つとする前記請求項1または2に記載の多数決ニューロン回路と
を有することを特徴とする多層ニューラル・ネットワーク・システム。 - 請求項3に記載の多層ニューラル・ネットワーク・システムにおいて、前記シナプス乗算器は、直接デジタル周波数合成乗算器であることを特徴とする多層ニューラル・ネットワーク・システム。
- 請求項3または4に記載の多層ニューラル・ネットワーク・システムにおいて、
前記多数決ニューロン回路からの出力を微分する微分器と、
前記微分器からの信号と、上層からの誤差信号とを乗算する論理積回路と、
上層からの重みの最上位ビットと、上層からの誤差信号の符号ビットとの排他的論理和をとる排他的論理和回路と、
前記論理積回路の出力を前記アップダウン・カウンタの入力とし、前記排他的論理和の入力により、前記アップダウン・カウンタのアップダウンを決定することにより、学習回路を構成することを特徴とする多層ニューラル・ネットワーク・システム。 - 請求項5に記載の多層ニューラル・ネットワーク・システムにおいて、
前記論理積回路は、前記微分器からの信号にオフセットを加算してから、前記上層からの誤差信号を乗算することを特徴とする多層ニューラル・ネットワーク・システム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP12931999A JP3822382B2 (ja) | 1999-05-10 | 1999-05-10 | 多数決ニューロン回路および多層ニューラル・ネットワーク・システム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP12931999A JP3822382B2 (ja) | 1999-05-10 | 1999-05-10 | 多数決ニューロン回路および多層ニューラル・ネットワーク・システム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2000322401A JP2000322401A (ja) | 2000-11-24 |
| JP3822382B2 true JP3822382B2 (ja) | 2006-09-20 |
Family
ID=15006648
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP12931999A Expired - Fee Related JP3822382B2 (ja) | 1999-05-10 | 1999-05-10 | 多数決ニューロン回路および多層ニューラル・ネットワーク・システム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3822382B2 (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102727052B1 (ko) * | 2017-10-23 | 2024-11-06 | 삼성전자주식회사 | 뉴럴 네트워크에서 파라미터를 처리하는 방법 및 장치 |
-
1999
- 1999-05-10 JP JP12931999A patent/JP3822382B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2000322401A (ja) | 2000-11-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Hikawa | Frequency-based multilayer neural network with on-chip learning and enhanced neuron characteristics | |
| Hikawa | A digital hardware pulse-mode neuron with piecewise linear activation function | |
| US6581049B1 (en) | Artificial neurons including power series of weights and counts that represent prior and next association | |
| Alippi et al. | Simple approximation of sigmoidal functions: realistic design of digital neural networks capable of learning | |
| US5175798A (en) | Digital artificial neuron based on a probabilistic ram | |
| JP3102918B2 (ja) | ニューラルネットワーク学習方法およびこの学習方法を用いた信号処理装置 | |
| Solovyeva | Recurrent neural networks as approximators of non-linear filters operators | |
| EP0520925A2 (en) | Convolutional expert neural system | |
| Braendler et al. | Deterministic bit-stream digital neurons | |
| JP3822382B2 (ja) | 多数決ニューロン回路および多層ニューラル・ネットワーク・システム | |
| Egrioglu et al. | A new approach based on artificial neural networks for high order bivariate fuzzy time series | |
| Janer et al. | Fully parallel summation in a new stochastic neural network architecture | |
| Hu et al. | Adaptive forecasting of non-stationary nonlinear time series based on the evolving weighted neuro-neo-fuzzy-ANARX-model | |
| US20250181886A1 (en) | Method and electronic system for inferring a morphological neural network | |
| Hsieh et al. | A Bio-inspired Low-power Hybrid Analog/Digital Spiking Neural Networks for Pervasive Smart Cameras | |
| Hikawa | An efficient pulse mode multilayer neural network | |
| Tsai et al. | Quantum NN vs. NN in signal recognition | |
| Hikawa | A multilayer neural network with pulse position modulation | |
| Krid et al. | Hardware implementation of a pulse mode neural network-based edge detection system | |
| Hikawa | Multilayer neural network with on‐chip learning based on frequency‐modulated pulse signals and voting neurons | |
| Quero et al. | VLSI implementation of a fully parallel stochastic neural network | |
| Nirmaladevi et al. | VLSI Implementation of Artificial Neural Networks—Asurvey | |
| SU1709356A1 (ru) | Устройство дл моделировани нейрона | |
| Sheng et al. | An Energy-Efficient and High-Accuracy Spiking Neural Network Utilizing Asynchronous CORDIC for On-FPGA STDP Learning | |
| Wang et al. | An SRAM-based implementation of a convolutional neural network |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060214 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060411 |
|
| 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: 20060620 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060622 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |