JPH1055346A - ニューラルネットワーク回路 - Google Patents

ニューラルネットワーク回路

Info

Publication number
JPH1055346A
JPH1055346A JP9129810A JP12981097A JPH1055346A JP H1055346 A JPH1055346 A JP H1055346A JP 9129810 A JP9129810 A JP 9129810A JP 12981097 A JP12981097 A JP 12981097A JP H1055346 A JPH1055346 A JP H1055346A
Authority
JP
Japan
Prior art keywords
value
memory
difference value
neural network
weight
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP9129810A
Other languages
English (en)
Inventor
Masakatsu Maruyama
征克 丸山
Hiroyuki Nakahira
博幸 中平
Masaru Fukuda
大 福田
Shiro Sakiyama
史朗 崎山
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP9129810A priority Critical patent/JPH1055346A/ja
Publication of JPH1055346A publication Critical patent/JPH1055346A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Analysis (AREA)

Abstract

(57)【要約】 【課題】 音声認識や画像認識処理等を行うニューラル
ネットワーク回路において、初期学習された多数の荷重
値(初期荷重値)を記憶する重みメモリがROMで構成
される場合であっても、前記初期荷重値の追加学習を可
能にする。 【解決手段】 ニューラルネットワークの多数の初期荷
重値を保持する重みメモリ203を備える。この重みメ
モリ203の荷重値と追加学習後の荷重値との差分値を
記憶するSRAMから成る差分値メモリ218を追加す
る。入力データの認識動作時には、前記重みメモリ20
3の初期荷重値と差分値メモリ218の差分値とを加算
器213で加算し、その加算された荷重値を使用して出
力層の各ニューロンの出力値を計算する。従って、小さ
な容量の差分値メモリの追加で高速な追加学習を可能に
でき、新たな数字や文字等を誤り無く良好に認識するこ
とができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、音声認識や画像認
識処理等を行うニューラルネットワーク回路の改良に関
する。
【0002】
【従来の技術】近年、情報処理のニューラルネットワー
クの分野に大きな関心が集まってきている。これ等のニ
ューラルネットワークは、生物のニューロンの構造を模
倣して、電子回路で実現されている。
【0003】ニューラルネットワーク回路としては、従
来より種々のものが提案されている。図15は層構造の
ニューラルネットワークを示す。同図のニューラルネッ
トワークは、入力層及び出力層より構成され、出力層は
複数個(同図では4個)ニューロンからなる。前記入力
層に画像や音声の1組のデータが入力され、それ等の認
識結果が出力層から出力される。この層構造のニューラ
ルネットワークを階層的に重ねることにより、多層のニ
ューラルネットワークを構成することも従来より行われ
ている。
【0004】前記図15に示したニューラルネットワー
クにおいて、出力層を構成するニューロンは、図14に
示すニューロン1より構成される。同図のニューロン1
は、1つの出力端子Yと複数の入力端子Xiとを持って
おり、各々の入力端子Xiにこの各入力端子Xiに対応
する重み係数Wiを乗じ、その各乗算結果を加算して、
その加算結果を出力する。出力層の複数個のニューロン
に対して複数個の数字や文字を予め対応付けておき、何
れか1つの数字又は文字を構成する1組のデータを入力
層に入力した時、その入力データに対応するニューロン
の出力値(加算結果値)が出力層の複数個のニューロン
の中で最大値となるように設定される。この設定は、各
ニューロン1の複数の重み係数Wiを最適化することに
より行われる。従って、特定の1組のデータの入力時に
は、これに対応するニューロンからの出力値がその特定
データに対する認識結果となる。前記多数の重み係数W
iを変更し、最適化するプロセスは、ニューラルネット
ワークの学習と呼ばれ、重み係数Wiの変更量の計算則
を学習則という。
【0005】以上のニューラルネットワークの処理の多
くは、フォン・ノイマン型の計算機により実現される。
【0006】図13にその一例を示す。同図に示した従
来のネットワーク回路は、入力メモリ101、重みメモ
リ102、乗算器103、選択回路104、加算器10
5、レジスタ106、出力メモリ107及び制御回路1
08により構成される。
【0007】前記入力メモリ101は、ニューラルネッ
トワークに与えられる多数組の入力データが保持され
る。重みメモリ102は、各組の入力データに対応した
重み係数(以下、荷重値という)が格納されている。出
力メモリ107は、ニューラルネットワークとしての計
算結果を保持する。
【0008】前記図13の従来回路の詳細な構成を、そ
の動作を用いて以下に説明する。この従来回路では、制
御回路108にスタート信号が与えられることにより、
処理がクロック信号に従って実行される。制御回路10
8から入力メモリ101にアドレスAが与えられて、入
力メモリ101から1つの入力データが読み出される。
制御回路108からアドレスBが重みメモリ102に与
えられて、重みメモリ102から荷重値が読み出され
る。この読み出された荷重値は、前記入力メモリ101
から読み出された入力データに対応する。
【0009】乗算器103は、前記入力メモリ101か
ら読み出された入力データと、重みメモリ102から読
み出された荷重値との乗算を行い、その乗算結果を加算
器105に出力する。
【0010】選択回路104は、制御回路108からの
切替信号Aにより、各ニューロンにおける最初の計算の
時のみ値“0”を選択し、従って、前記加算器105
は、当初、値“0”と前記乗算器103の乗算結果とを
加算する。この加算器105の加算結果はレジスタ10
6に保持される。その後、前記選択回路104は前記レ
ジスタ106の値を選択し、加算器105は、レジスタ
106の値と、乗算器103の乗算結果を加算し、その
加算結果がレジスタ106に保持される。
【0011】最初のニューロンにおける計算の最後で
は、制御回路108からアドレス“O”が出力され、こ
の時点でレジスタ106の保持データ、即ち、図15の
ニューラルネットワークの出力層の第1番目のニューロ
ンについての入力データと荷重値との累積加算結果が、
出力メモリ107の前記アドレス“0”に書き込まれ
る。以後、第2番目以降のニューロンに対しても同様の
加算処理が行われ、その加算結果が出力メモリ107の
アドレス“1”以降に順次書き込まれる。
【0012】図13に示した従来回路の入力データとし
て画像や音声データを与えれば、その処理の実行によ
り、画像又は音声の認識が可能となる。
【0013】次に、荷重値の学習について説明する。荷
重値の学習は、荷重値を初期状態から変更して行く初期
学習と、この初期学習された荷重値を更に追加変更して
行く追加学習とがある。前者の初期学習は、例えば、図
16に示す各type“0”、“1”の10種の数字0〜9
を認識する、即ち、出力層のニューロンの数が10個で
ある場合に、これ等のニューロンに1つづつ数字を対応
させ、特定の数字の入力時に、その数字に対応するニュ
ーロンの出力が出力層の全ニューロンの中で最大値にな
るように、各荷重値を変更する処理である。後者の追加
学習は、例えば、個人的又は地域的に図16のタイプ
“2”の各数字を追加的に認識させるように、各荷重値
を変更する処理である。
【0014】前記初期学習と追加学習とでは、その荷重
値の変更処理は相違せず、同一である。従って、以下、
初期学習での荷重値の変更処理を説明する。ここでは、
図16のtype“0”及び“1”の数字0〜9を認識する
場合について、学習則としてヘブ学習則を用いて説明す
る。このヘブ学習則は、学習したい特定の1個又は複数
個のニューロンを選択し、このニューロンの持つ複数の
荷重値を変更する学習則である。この変更は、このニュ
ーロンの各入力端子に入力される入力データの大きさX
iに比例して、その入力端子に対応する荷重値を増大さ
せる処理であり、荷重値をWとして、下式に基いて行わ
れる。
【0015】W(t+1) =a*Xi+W(t) ここに、tは時間(回数)を、aは学習の所定値の係数
を示す。各数字は、例えば図18に数字“0”で例示す
るように、多数の画素の1組のデータより成り、これ等
の画素の値は多値である。
【0016】図17の学習フローにおいて、先ずステッ
プS0で、学習に用いる変数flag、type、及びnumberを
“0”に初期化する。次いで、ステップS1で、図16
のtype“0”の最初の数字0(number=0)の各画素の値を
入力層に入力し、ステップS2で出力層の各ニューロン
の各出力値を求める。ステップS3では、出力が最大値
のニューロンが数字“0”に対応するニューロン(即
ち、第1番目のニューロン)か否かを判別し、そうでな
い場合には、ステップS4で第1番目のニューロンの荷
重値を学習することとして、その複数の荷重値Wを前記
式に基いて計算して変更し、flag=1として学習有りを表
示する。
【0017】その後、ステップS5で数字0〜9の全て
の認識が終了した否かを判別し、そうでない場合には、
ステップS6で対象となる数字の番号numberを“1”だ
け増やして、前記の処理を続行する。
【0018】type“0”の全ての数字の認識が終了すれ
ば、ステップS7でtype=1か否かを判定し、当初はtype
=0であるので、ステップS8でtype=1とすると共に,入
力される数字の番号をnumber=0に戻し、前記ステップS
1〜S6を繰返して、type=1での全ての数字0〜9に対
する認識を行う。
【0019】type“1”の全ての数字の認識が終了すれ
ば、ステップS9でflagの値を判別し、flag=1の場合
は、学習有りの場合であるので、荷重値を変更したニュ
ーロン以外のニューロンが対応する数字を正しく認識す
ることが保持されていることを確認するために、ステッ
プS10で全ての変数flag、type、numberを“0”に戻
し、前記の処理を繰返す。以上の処理を経て、ステップ
S9でflag=0になれば、全てのtypeの全ての数字が正し
く認識されたのであるから、終了する。
【0020】
【発明が解決しようとする課題】しかしながら、前記従
来のニューラルネットワーク回路では、入力される画像
データ等は膨大な量であり、従って、これ等データを認
識するためには、重みメモリも膨大な数の荷重値を記憶
する必要があって大型化する。そこで、RAMに比較し
て物理的に小さいROMにより重みメモリを構成して、
小型化を図ることが考えられるが、ROMでは荷重値の
変更ができず、荷重値の追加学習が不可能になる欠点が
生じる。
【0021】重みメモリをRAMで構成して、荷重値の
追加学習を可能とする場合には、この重みメモリが大型
化するために、重みメモリは外付けとなり、その結果、
荷重値の追加学習に多くの時間が必要となる欠点があ
る。
【0022】本発明は、以上のような問題点を解決する
ためになされたものであり、その目的は、従来の重みメ
モリをROMで構成した場合であっても、荷重値の追加
学習が可能で且つその追加学習を高速に行えるニューラ
ルネットワーク回路を提供することにある。
【0023】
【課題を解決するための手段】前記目的を達成するため
に、本発明のニューラルネットワーク回路では、従来の
重みメモリに加えて、追加学習のための荷重値変更用に
専用のメモリを持つ構成を採用する。
【0024】すなわち、請求項1記載のニューラルネッ
トワーク回路は、1つの出力端子と複数の入力端子とを
有するニューロンを複数個備えて少なくとも1層を構成
し、1組の入力データを共通に前記各ニューロンの複数
の入力端子に与えて前記各ニューロンの出力を得て、こ
の各出力に基いて前記1組の入力データを認識するニュ
ーラルネットワーク回路であって、前記各ニューロンの
複数の入力端子に対応し且つ初期学習された値を持つ複
数の荷重値が記憶された重みメモリと、前記重みメモリ
に記憶された荷重値と、これ等の荷重値に対応し且つ追
加学習された荷重値との差分値を記憶する差分値メモリ
と、与えられる1組の入力データの認識時に、この1組
の入力データ、前記重みメモリの荷重値、及び前記差分
値メモリの差分値に基いて、各ニューロンの出力値を計
算する計算手段とを備えることを特徴とする。
【0025】請求項2記載の発明は、前記請求項1記載
のニューラルネットワーク回路において、前記追加学習
時に、新たな1組の入力データを正しく認識するよう
に、前記重みメモリに記憶された荷重値を所定の学習則
に従って変更する荷重値変更手段を備えることを特徴と
する。
【0026】請求項3記載の発明のニューラルネットワ
ーク回路は、1つの出力端子と複数の入力端子とを有す
るニューロンを複数個備えて少なくとも1層を構成し、
1組の入力データを共通に前記各ニューロンの複数の入
力端子に与えて、この1組の入力データと前記各ニュー
ロンの複数の入力端子に対応する荷重値とに基いて前記
各ニューロンの出力を得て、この各出力に基いて前記1
組の入力データを認識するニューラルネットワーク回路
において、前記各ニューロンの複数の入力端子に対応し
且つ初期学習された値を持つ複数の荷重値が記憶された
重みメモリと、追加学習時に、新たな1組の入力データ
を正しく認識するように、前記重みメモリに記憶された
荷重値を所定の学習則に従って変更する荷重値変更手段
と、前記重みメモリに記憶された荷重値と、これ等の荷
重値に対応し且つ前記荷重値変更手段により追加学習さ
れた値を持つ荷重値との差分値を記憶する差分値メモリ
とを備えることを特徴としている。
【0027】請求項4記載の発明は、前記請求項1、2
又は3記載のニューラルネットワーク回路において、前
記重みメモリはROMで構成され、前記差分値メモリは
前記重みメモリよりもサイズの小さいRAMで構成され
ることを特徴とする。
【0028】請求項5記載の発明は、前記請求項1、2
又は3記載のニューラルネットワーク回路において、前
記差分値メモリは、一部のニューロンの荷重値に対する
差分値のみを記憶する少アドレス数のRAMで構成され
ることを特徴とする。
【0029】請求項6記載の発明は、前記請求項2又は
3記載のニューラルネットワーク回路において、前記荷
重値変更手段は、前記学習則をヘブ則とすると共に、荷
重値の変更に際し、その荷重値の変更回数をn、n回目
の入力データをX (n) 、変更係数をα、n−1回目ま
での合計変更値をdW (n-1) として、n回目の合計変
更値dW (n) を下記式 dW (n) =dW (n-1) +X (n) ・α に基いて算出するものであり、前記算出したn回目の合
計変更値dW (n) が差分値として前記差分値メモリに
記憶されることを特徴とする。
【0030】請求項7記載の発明は、前記請求項6記載
のニューラルネットワーク回路において、前記荷重値変
更手段は、乗算器、及び加算器として動作可能な算術演
算回路を用いて、n回目の合計変更値dW (n) を算出
することを特徴とする。
【0031】請求項8記載の発明は、前記請求項1、2
又は3記載のニューラルネットワーク回路において、前
記差分値メモリは、前記重みメモリに保持された荷重値
よりもビット数が少ない差分値であって且つ全てのニュ
ーロンの複数の入力端子の荷重値に対する差分値を記憶
するRAMで構成されることを特徴とする。
【0032】請求項9記載の発明は、前記請求項1、2
又は3記載のニューラルネットワーク回路において、差
分値の最大値を所定値のリミットレベルで制限するリミ
ッタを備え、前記リミッタにより制限された後の差分値
が前記差分値メモリに格納されることを特徴とする。
【0033】請求項10記載の発明は、前記請求項9記
載のニューラルネットワーク回路において、前記差分値
メモリから読み出された差分値のビット幅を拡張するビ
ット拡張器を備えることを特徴とする。
【0034】請求項11記載の発明は、前記請求項1又
は2記載のニューラルネットワーク回路において、所定
ビット幅で表現される差分値においてその下位より所定
数のビットを右にシフトすることにより、このシフト後
の差分値のビット幅を前記所定ビット幅より小さい数の
ビット幅に制限するシフトリミッタを備え、前記シフト
リミッタにより制限された後の差分値が前記差分値メモ
リに格納されることを特徴とする。
【0035】請求項12記載の発明は、前記請求項11
記載のニューラルネットワーク回路において、前記差分
値メモリから読み出された差分値のビット幅を拡張し、
その差分値の変更幅を大きするシフト拡張器を備えるこ
とを特徴とする。
【0036】請求項13記載の発明は、前記請求項2又
は3記載のニューラルネットワーク回路において、前記
荷重値変更手段は、前記学習則をデルタ則又はバックプ
ロパゲーション則とすると共に、荷重値の変更に際し、
その荷重値の変更回数をn、n回目の入力データをX
(n) 、O (n) をニューロンの出力値、T (n) を前
記ニューロンの出力の教師値、変更係数をα、n−1回
目までの合計変更値をdW (n-1) として、n回目の合
計変更値dW (n) を下記式 dW (n) =dW (n-1) +(T (n)-O (n))・X
(n) ・α に基いて算出するものであり、前記算出したn回目の合
計変更値dW (n) が差分値として前記差分値メモリに
記憶されることを特徴とする。
【0037】請求項14記載の発明は、前記請求項13
記載のニューラルネットワーク回路において、前記荷重
値変更手段は、乗算器、及び加算器として動作可能な算
術演算回路を用いて、n回目の合計変更値dW (n) を
算出することを特徴としている。
【0038】請求項15記載の発明は、前記請求項1又
は2記載のニューラルネットワーク回路において、前記
計算手段は、与えられる1組の入力データの認識時に、
前記1組の入力データのうちの1つの入力データに対応
する前記重みメモリの荷重値と、この荷重値に対応する
前記差分値メモリの差分値とを加算し、前記加算結果の
荷重値と、前記1つの入力データとを乗算することを繰
返して、各ニューロンの出力値を計算することを特徴と
する。
【0039】前記の構成により、本発明では、重みメモ
リに記憶された荷重値と追加学習後の荷重値との差分値
が、差分値メモリに記憶される。その後の画像認識時等
では、前記重みメモリに記憶された荷重値と前記差分値
メモリに記憶された差分値とが加算されて、追加学習後
の荷重値が得られ、この最新の荷重値を用いて処理が実
行される。
【0040】ここに、差分値メモリは、全ての荷重値の
うち一部の荷重値を追加学習する場合には、その分、大
きさを小型化できる。また、全ての荷重値を追加学習す
る場合であっても、差分値は、重みメモリに記憶された
荷重値よりも小さな値であり、従って、差分値メモリ
は、重みメモリよりもビット幅の小さいメモリでよい。
その結果、この差分値メモリを内蔵でき、追加学習を高
速に行うことができる。
【0041】
【発明の実施の形態】以下、本発明の実施の形態を図面
に基いて説明する。
【0042】(第1の実施の形態)図1は、本発明の第
1の実施の形態のニューラルネットワーク回路を示す。
【0043】同図のニューラルネットワーク回路は、図
15に示した層構造のニューラルネットワークの処理を
実行する。
【0044】図1のニューラルネットワーク回路は、入
力メモリ101、係数レジスタ202、ROMより成る
重みメモリ203、SRAMより成る差分値メモリ20
4、減算器212、加算器213、オフセットレジスタ
211、乗算器103、算術演算回路205、レジスタ
106、出力メモリ107、選択回路210、208、
206、制御回路214、及びアドレス空間イネーブル
回路215により構成される。
【0045】前記入力メモリ101は、ニューラルネッ
トワークに与えられる多数組の入力データを保持する。
重みメモリ203は多数の入力データに各々対応した荷
重値を格納する。この各荷重値は初期学習済みである。
差分値メモリ204は、予め、全ての領域に値“0”を
保存し、追加学習時は前記重みメモリ203の荷重値と
追加学習後の荷重値との差分値を記憶するものである。
出力メモリ107は、ニューラルネットワークとしての
計算結果を保持するためのものである。
【0046】前記重みメモリ203、差分値メモリ20
4、オフセットレジスタ211及びアドレス空間イネー
ブル回路215の関係は、図2に示される。同図におい
て、重みメモリ203は、図15のニューラルネットワ
ークを構成する全て(4個)のニューロン毎に入力端子
の数に等しい複数個の荷重値が記憶される。差分値メモ
リ204は、全て(4個)のニューロンのうち、追加学
習しようとする特定の1個のニューロン(図では第2番
目のニューロン)の複数個の荷重値に対する差分値を格
納する空間のみを有する。オフセットレジスタ211
は、重みメモリ203の荷重値指定用のアドレスBをオ
フセットして、差分値メモリ204の最初のアドレスを
生成するためのものである。アドレス空間イネーブル回
路215は、前記差分値メモリ204の最初のアドレス
から最後のアドレスまでの間、値“1”の信号を出力す
るものであり、その構成は後述する。
【0047】図1に示したニューラルネットワーク回路
の詳細な構成をその動作に基いて説明する。
【0048】制御回路214の動作モードが1組の入力
データの認識モードに設定されている場合には、制御回
路214へスタート信号が与えられることにより、処理
がクロック信号に従って実行される。制御回路214か
らアドレスAが入力メモリ101に与えられて、入力メ
モリ101より1つの入力データが読み出される。制御
回路214からアドレスBが重みメモリ203に与えら
れ、重みメモリ203から1つの荷重値が読み出され
る。この荷重値は前記読み出された入力データに対応す
る。
【0049】一方、制御回路214からのアドレスBは
減算器212に与えられ、減算器212は、このアドレ
スBからオフセットレジスタ211の値を減算し、その
減算結果が差分値メモリ204に与えられる。差分値メ
モリ204では、前記与えられた減算結果をアドレスと
して差分値が読み出される。
【0050】選択回路210は、アドレス空間イネーブ
ル回路215の出力により制御され、この出力が値
“1”の信号のとき差分値メモリ204の出力を選択
し、値“0”の信号のとき値“0”を選択し、出力す
る。
【0051】加算器213は、重みメモリ203からの
荷重値と、選択回路210の出力とを加算する。従っ
て、重みメモリ203の荷重値が追加学習されている場
合には、この重みメモリ203からの荷重値と差分値メ
モリ204からの差分値とが加算されて出力され、追加
学習の必要のない荷重値では、重みメモリ203の荷重
値が加算器213から出力される。
【0052】選択回路208は、制御回路214の切替
信号1により、認識モードでは加算器213の出力を選
択する。従って、乗算器103には前記加算器213の
出力が入力される。
【0053】前記乗算器103は、入力メモリ101か
らの入力データを受け取り、この入力データと、前記加
算器213からの荷重値との乗算を行う。この時、この
入力データと荷重値とは対応している。前記乗算器10
3の乗算結果は算術演算回路205に出力される。
【0054】選択回路206は、制御回路214からの
切替信号2により、認識モードでは、各ニューロンにお
ける最初の計算の時には値“0”を選択し、それ以降は
レジスタ106の値を選択して、出力する。
【0055】制御回路214は、加算を指定する演算制
御信号を出力し、この制御信号が算術演算回路205に
入力される。算術演算回路205は、各ニューロンにお
ける最初の計算の時には値“0”と乗算器103の乗算
結果とを加算し、その後は、レジスタ106の出力と乗
算器103の乗算結果とを加算し、レジスタ106に出
力する。従って、レジスタ106は、ニューラルネット
ワークの個々のニューロンについての入力データと荷重
値との累積加算結果を保持する。
【0056】各ニューロにおける計算の最後では、制御
回路214はアドレス“0”の信号を出力して、前記レ
ジスタ106の出力が出力メモリ107の前記アドレス
“0”の領域に書き込まれる。
【0057】次に、図1のニューラルネットワーク回路
の追加学習について説明する。ここでは、追加学習の方
法をヘブ則として説明する。尚、ヘブ則については、
「入門ニューロコンピュータ」(著者 菊池豊彦,オー
ム社発行)に記載される。
【0058】ヘブ則では、荷重値の変更は、指定された
ニューロンに対して、下記式1、2に従って行われる。
【0059】 Winew =Wiold+△Wi (1) △Wi =Xix α (2) ここで、Xi はi番目の入力端子に入力されるデータの
値、Winew は荷重値更新後のi番目の入力端子に対応
する荷重値、Wiold は更新前のi番目の入力端子に対
応する荷重値、αは変更の定数である。ここで、荷重の
変更回数をnとすると、n回更新された荷重値Wi
(n)は、 Wi(n)= Wi(0)+Xi(1)x α+Xi(2)x α+…+Xi(n)x α (3) となる。ここで、括弧の中は回数を示す。更に、この荷
重値Wi(n)を初期荷重値と差分値との加算として考
えると、 Wi(n)=Wi(0)+ dWi(n) (4) ここで、 dWi(1)=Xi(1)x α (5) dWi(2)=dWi(1)+ Xi(2)x α (6) dWi(3)=dWi(2)+ Xi(3)x α (7) となる。これより、現在の入力データの値Xをα倍し、
これにこれまでの変更値を加算すれば、その加算値が初
期荷重値との差分となることが判る。
【0060】次に、本実施の形態のニューラルネットワ
ーク回路の追加学習の動作について説明する。
【0061】予め、荷重値の変更を行うニューロン番号
(変更ニューロン番号)をオフセットレジスタ211及
び制御回路214に設定し、制御回路214のモードを
追加学習モードに設定する。
【0062】追加学習処理は、制御回路214へスター
ト信号が与えられることにより、クロック信号に従って
実行される。制御回路214は、変更ニューロン番号で
指定された入力データ及び荷重値のアドレスA及びBを
順次、出力する。
【0063】制御回路214から与えられるアドレスA
により、入力メモリ101から入力データが読み出され
て、乗算器103に与えられる。係数レジスタ202の
変更係数αは選択回路208を経て前記乗算器103に
与えられる。
【0064】前記乗算器103は、入力メモリ101か
らの入力データと、係数レジスタ202からの変更係数
αとの乗算を行い、その乗算結果を算術演算回路205
に出力する。
【0065】制御回路214からのアドレスBは減算器
212にも与えられ、減算器212は、前記アドレスB
からオフセットレジスタ211の値を減算し、その減算
結果は差分値メモリ204に与えられる。この差分値メ
モリ204は、前記入力メモリ101からの入力データ
に対応した差分値を出力し、この差分値は選択回路20
6を経て算術演算回路205に与えられる。
【0066】前記算術演算回路205は、制御回路21
4から与えられる演算制御信号により、加算器となり、
前記乗算器103の乗算結果と、前記差分値メモリ20
4からの差分値とを加算し、その加算結果はレジスタ1
06に保持される。このレジスタ106の値は前記式
(5)〜(7)の値に対応する。このレジスタ106の
値は、初期荷重値と追加学習後の荷重値との差分値とし
て、差分値メモリ204に保存される。
【0067】図1において、入力メモリ101、重みメ
モリ203、差分値メモリ204及び係数レジスタ20
2を除く全ての構成要素により、入力メモリ101から
与えられる1組の入力データの認識時に、この入力デー
タと、重みメモリ203に保持された初期荷重値と、差
分値メモリ204に記憶された差分値dWi(n)とに基い
て、出力層の各ニューロンの出力値を計算する計算手段
50が構成される。
【0068】また、図1において、入力メモリ101、
重みメモリ203、差分値メモリ204及び出力メモリ
107を除く全ての構成要素により、図16のtype
“2”の各数字を追加認識するための追加学習時に、こ
れ等数字に相当する各組の入力データを正しく認識する
ように、重みメモリ203に記憶された一部の初期荷重
値をヘブ則に従って変更する荷重値変更手段60が構成
される。
【0069】従って、ヘブ学習則では、図19(a)に
示すように、出力層に例えば10個のニューロン(同図
にニューロンの番号0〜9を付す)が含まれる場合に、
番号1のニューロンのみに対し荷重値を追加学習したと
きには、同図(b)に示すように、各ニューロンのn個
の荷重値は、番号1のニューロンだけが同図に実線で示
す初期学習時の荷重値から同図に破線で示すように微少
値dWだけ増大し、他のニューロンでは同図に示すよう
に変化しない。
【0070】次に、アドレス空間イネーブル回路215
の構成を図3に基いて説明する。同図のイネーブル回路
215は、2個の比較器701、702と、サイズレジ
スタ703と、加算器704と、AND回路705とを
備える。一方の比較器701は、前記図1のオフセット
レジスタ211の値Aと制御回路214からのアドレス
Bの値とを比較し、B≧Aのとき値“1”を出力する。
サイズレジスタ703は差分値メモリ204のアドレス
数(記憶される差分値の数)を記憶し、加算器704は
このサイズレジスタ703の値とオフセットレジスタ2
11の値Aとを加算し、その加算結果、即ち、差分値メ
モリ204の最後のアドレスを出力する。比較器702
は、前記加算器704の出力Cと制御回路214からの
アドレスBの値とを比較し、B<Cのとき値“1”を出
力する。AND回路705は前記2個の比較器701、
702の出力の論理積を取り、従ってAND回路705
の出力は、図2に示すように、差分値メモリ204のア
ドレス範囲で値“1”の信号を出力し、この信号が図1
の選択回路210に出力される。
【0071】本実施の形態のニューラルネットワーク回
路では、重みメモリ203は全てのニューロンが持つ複
数の荷重値を保持するサイズのROMであるのに対し、
差分値メモリ204は、1個又は少数のニューロンの荷
重値を保持する小さなサイズのSRAMであるので、所
望の(追加学習が要求される)ニューロンの追加学習が
可能になると共に、小さなサイズの差分値メモリ204
を内蔵できて、荷重値の追加学習を高速に行うことがで
き、高速な追加学習を実現できる。
【0072】(第2の実施の形態)図4は本発明の第2
の実施の形態のニューラルネットワーク回路を示す。
【0073】本実施の形態では、学習則がデルタ則又は
バックプパゲーション則の場合の追加学習を可能として
いる。ここでは、学習則をデルタ則として説明する。
尚、デルタ則については、「入門ニューロコンピュータ
著者 菊池豊彦 オーム社」に記載されている。
【0074】荷重値の変更は、全てのニューロンに対し
て、下記式8及び9に従って行われる。
【0075】 Wij new=Wij old+ △Wij (8) △Wij=(Tj-Oj )Xij xα (9) ここで、Ojはj番目のニューロンの出力値、Tjはj
番目のニューロンの教師値、Xijはj番目のニューロン
のi番目の入力端子に入力されるデータの値、Wij n
ewは更新後のj番目のニューロンのi番目の入力端子に
対応する荷重値、Wij oldは更新前のj番目のニューロ
ンのi番目の入力端子に対応する荷重値、αは変更の定
数である。ここで、荷重値の変更回数をnとすると、n
回更新された荷重値Wij(n) は、 Wij(n)=Wij(0)+△Wij(1)+△Wij(2)+…+ △Wij(n) (10) となる。ここで、括弧の中は回数を示す。更に、この荷
重値Wij(n) を初期荷重値Wij(o) と差分値との加算と
して考えると、 Wij(n)=Wij(0)+dWij(n) (11) ここで、 dWij(1)=(Tj(1)- Oj(1)) x Xij(1) x α (12) dWij(2)=dWij(1)+(Tj(2)- Oj(2)) x Xij(2) x α (13) dWij(3)=dWij(2)+(Tj(3)- Oj(3)) x Xij(3) x α (14) となる。これより、現在の入力データの値Xとニューロ
ンの出力誤差(教師値-出力値)とを乗算し、その乗算
結果をα倍し、これをこれまでの変更値と加算すれば、
初期荷重値との差分値となることが判る。ここで、dW
ijは、初期荷重値Wij(0) との差分値であり、正値又は
負値をとる。
【0076】本実施の形態の要点は次の通りである。即
ち、重みメモリに記憶された多数の荷重値(初期荷重
値)Wij(0) が図7(a)に示す値である場合に、その
初期荷重値と追加学習後の荷重値との差分値dWij(n)
が同図(b)に示す値となるとき、この差分値dWij
(n) の大きさの最大値を所定値のリミットレベルで制限
し(同図(b)参照)、その制限後の差分値dWij(n)
を差分値メモリに記憶する。これにより、差分値メモリ
のサイズをより一層小さくできる。ここで、画像等の認
識動作では、使用される荷重値Wij(n) は、同図(c)
に示すように、前記初期荷重値Wij(0) と差分値dWij
(n) との合計値(Wij(n)=Wij(0)+dWij(n))であり、
前記リミットレベルで制限された差分値を用いた荷重値
では真の荷重値に対し誤差を生じる。しかし、認識動作
は全ての荷重値を用いて行われるので、極く一部の荷重
値(差分値)が故障していても、他のほとんどの差分値
が前記リミットレベルで制限されない限り、認識性能に
は実質的に影響はない。
【0077】次に、図4の本実施の形態のニューラルネ
ットワーク回路の詳細を説明する。同図のニューラルネ
ットワーク回路は、入力メモリ101、係数レジスタ2
02、ROMより成る重みメモリ203、例えばSRA
Mより成る差分値メモリ218、加算器213、ビット
拡張器221、リミッタ220、乗算器103、算術演
算回路205、レジスタ106、出力メモリ107、選
択回路209、217、207、219、制御回路21
6、及び教師メモリ201により構成される。
【0078】本実施の形態のニューラルネットワーク回
路の詳細な構成をその動作に基いて説明する。
【0079】先ず、1組の入力データの認識動作は、制
御回路216へスタート信号が与えられることにより、
クロック信号に従って処理が実行される。制御回路21
6は予め認識モードに設定される。
【0080】制御回路216からのアドレスAにより、
入力メモリ101から入力データが読み出される。ま
た、制御回路216からアドレスBが重みメモリ203
及び差分値メモリ218に与えられる。重みメモリ20
3はアドレスBに対応する荷重値を出力する。一方、差
分値メモリ218はアドレスBに対応する差分値を出力
し、この差分値がビット拡張器221に与えられて、そ
の差分値のビットが拡張され、重みメモリ203の荷重
値と同一のビット幅となる。このビット拡張された差分
値は加算器213に与えられる。加算器213は、前記
重みメモリ203からの荷重値と、前記ビット拡張され
た差分値とを加算し、この加算値は、入力メモリ101
に対応した荷重値である。
【0081】前記ビット拡張器221の入出力のデータ
関係を図5に示す。同図では、入力される差分値を4ビ
ット幅とし、出力される差分値を8ビットとするとき、
入力される差分値のサインビット(最上位ビット)が、
出力される差分値の下位から4ビット目から8ビット目
まで現われ、入力される差分値の下位3ビットがそのま
ま出力される。
【0082】図4において、乗算器103は、選択回路
209で選択された入力メモリ101からの入力データ
と、加算器213からの荷重値との乗算を行い、選択回
路207を経て算術演算回路205に出力する。
【0083】選択回路219は、制御回路216からの
切替信号2により、認識モードでは、各ニューロンにお
ける最初の計算の時は値“0”を選択し、それ以降はレ
ジスタ106の値を選択して、出力する。
【0084】算術演算回路205は、制御回路216の
演算制御信号により、加算器として機能して、選択回路
219の出力と乗算器103の出力とを加算し、その加
算結果をレジスタ106に出力する。各ニューロンにお
ける計算の最後では、制御回路216のアドレス“0”
の出力により、前記レジスタ106の値が出力メモリ1
07の前記アドレス“0”の領域に書き込まれる。
【0085】以上の動作の繰返しにより、図15のニュ
ーラルネットワークの個々のニューロン1の出力が出力
メモリ107に書き込まれる。
【0086】次に、追加学習の動作について説明する。
ここでは、学習則をデルタ則として説明する。予め、入
力メモリ101の入力データに対するニューラルネット
ワークの出力は、出力メモリ107に保存され、また、
教師メモリ201には前記入力メモリ101の入力デー
タの教師値が保存されている。
【0087】本追加学習の動作は、前記式(12)〜(1
4)に示された差分値dWijを差分値メモリ218に書
き込む動作である。制御回路216は追加学習モードに
設定される。追加学習の動作は、スタート信号により開
始される。
【0088】以下、差分値dWijを計算し、その計算結
果を差分値メモリ218に書き込む動作について説明す
る。
【0089】1ステップ目では、前記式での(T−O)
の計算を行う。即ち、先ず、制御回路216のアドレス
“0”により、出力メモリ107の値とそれに対応する
教師メモリ201の値とが読み出され、各々、選択回路
219及び選択回路207を経て算術演算回路205に
与えられる。選択回路219は制御回路216の切替信
号2により、選択回路207は制御回路216の切替信
号4により、各々制御される。算術演算回路205は、
制御回路216の演算制御信号により、前記教師メモリ
201の値から出力メモリ107の値を減算する操作を
実行し、その減算結果はレジスタ106に保持される。
【0090】2ステップ目では、前記式での(T−O)
・Xの計算を行う。即ち、選択回路217は、制御回路
216の切替信号1により、レジスタ106の値を選択
し、選択回路209は制御回路216の切替信号3によ
り、入力メモリ101の値を選択する。入力メモリ10
1は、制御回路216のアドレスAにより、計算を行う
差分値dWijに対応するに入力データを出力する。乗算
器103は、前記選択回路209を経て与えられた入力
メモリ101の入力データと、選択回路217を経て与
えられたレジスタ106の値とを乗算し、その乗算結果
を選択回路207に出力する。算術演算回路205は、
制御回路216の演算制御信号により、選択回路207
からの乗算器103の乗算結果と、選択回路219で選
択された値“0”とを加算し、その加算結果はレジスタ
106に保持される。
【0091】3ステップ目では、dW(n)+(T- O)x
X xαを実行する。即ち、選択回路217は、制御回路
216の切替信号1によりレジスタ106の値を選択
し、選択回路209は、制御回路216の切替信号3に
より、係数レジスタ202の変更係数αを選択する。乗
算器103は、選択回路209を経て与えられた係数レ
ジスタ202の変更係数αと、選択回路217を経て与
えられたレジスタ106の値とを乗算し、その乗算結果
を選択回路207に出力する。算術演算回路205は、
制御回路216の演算制御信号により、選択回路207
からの乗算器103の結果と、選択回路219で選択さ
れた差分値メモリ218の値とを加算し、その加算結果
はレジスタ106に保持される。この値が、式(12)〜
(14)に示された差分値dWijに対応する。
【0092】4ステップ目では、dW(n+1)=dW(n)+
(T- O)x X xαを実行する。即ち、レジスタ106
の値がリミッタ220を経て差分値メモリ218に与え
られる。リミッタ220は、前記ビット拡張器221の
逆の処理を行う。即ち、リミッタ220は、図8に示す
ように、例えば、入力される8ビットの差分値を4ビッ
トの差分値に制限する。同図では、横軸は-128〜127 の
入力値を示し、入力値が- 7〜6の範囲では出力(縦
軸)の値も入力値に等しいが、入力値が-128〜- 8及び
7〜127 では出力値は- 8及び7に制限されている。
【0093】図4において、差分値メモリ218は、制
御回路216からのアドレスBにより、リミッタ220
の出力を記憶する。前記制御回路216のアドレスB
は、変更する現在の荷重値のアドレスを示している。
【0094】以上の1ステップから4ステップを全ての
荷重値について行うことにより、追加学習が実行され
る。
【0095】図4において、入力メモリ101、重みメ
モリ203、差分値メモリ218及び係数レジスタ20
2を除く全ての構成要素により、入力メモリ101から
与えられる1組の入力データの認識時に、出力層の各ニ
ューロンの出力値を計算する計算手段51が構成され
る。また、同図において、入力メモリ101、重みメモ
リ203、差分値メモリ218及び出力メモリ107を
除く全ての構成要素により、追加学習時に、重みメモリ
203に記憶された全ての初期荷重値をデルタ則に従っ
て変更する荷重値変更手段61が構成される。
【0096】前記リミッタ220の内部構成を図6に示
す、同図のリミッタ220において、入力データが正の
場合、即ち、最上位ビットが値“0”の場合には、選択
回路401は選択回路403を選択する。OR回路40
5によりビットd3からd6の信号に値“1”が存在す
れば、選択回路403は値“111”を選択し、ビット
d3からd6の信号に値“1”がなければ、入力データ
d2〜d0を選択する。入力データが負の場合、選択回
路401は選択回路402の出力を選択する。選択回路
402は、入力データd3からd6の信号に値“0”が
あれば、AND回路404の出力により、値“000”
を選択し、入力データd3からd6の信号に値“0”が
なければ、入力データd2〜d0を選択する。これによ
り、8ビット幅の差分値が4ビットに制限される。
【0097】本実施の形態では、差分値メモリ218の
アドレスの数は、重みメモリ203のアドレスの数と同
一であるが、差分値のビット幅が荷重値のビット幅の数
分の1であるので、差分値メモリ218の容量を重みメ
モリ203の容量の数分の1に小さくしながら、追加学
習を実現できる。尚、学習則はヘブ則としてもよい。
【0098】また、差分値メモリ218は小さいサイズ
であるので内蔵でき、しかも、入力データに対するニュ
ーラルネットワークの出力が出力メモリ107に保存さ
れた後は、重みメモリ203を用いずに差分値の算出が
可能であるので、前記追加学習を高速に行うことができ
る。
【0099】(第3の実施の形態)図9は本発明の第3
の実施の形態のニューラルネットワーク回路を示す。同
図のニューラルネットワーク回路は、入力メモリ10
1、係数レジスタ202、重みメモリ203、差分値メ
モリ218、加算器213、シフト拡張器302、シフ
トリミッタ301、乗算器103、算術演算回路20
5、レジスタ106、出力メモリ107、選択回路20
9、217、207、219、制御回路216及び教師
メモリ201により、構成される。
【0100】図9のニューラルネットワーク回路と図4
のニューラルネットワーク回路との相違点は、図4のビ
ット拡張器221がシフト拡張器302に、図4のリミ
ッタ220がシフトリミッタ301に置換される点であ
り、入力データの認識の動作及び追加学習の動作に大き
な変更はない。本実施の形態の計算手段52及び荷重値
変更手段62と前記第2の実施の形態の計算手段51及
び荷重値変更手段61との構成の相違は、前記相違点の
みである。以下、シフト拡張器302及びシフトリミッ
タ301について説明する。
【0101】図10はシフト拡張器302の入力出力関
係を示す。ここでは、入力を4ビット、出力を8ビッ
ト、シフト量を“2”としている。シフト拡張器302
の入力の最上位ビットは出力の最上位から3ビットに接
続され、入力のd0〜d2ビットが出力のD4〜D2ビ
ットに接続される。出力のD0及びD1ビットには値
“0”が接続される。この構成により、入力の値が4倍
され(即ち、2ビット左にシフトされ)て、出力され
る。
【0102】図11に示すシフトリミッタ301は、前
記シフト拡張器302の逆の変換を行う。即ち、入力さ
れる8ビットの差分値を2ビット右にシフトした後に、
その結果を4ビットの差分値に制限する。このシフトリ
ミッタ301の動作を図12に示す。同図では、横軸は
-128〜127 の入力値であり、入力値が0〜3では出力
(縦軸)の値は“0”、入力値が4〜7では出力値は
“1”となり、以後、入力値が“4”増加する毎に出力
値も“1”増加する。入力値28〜127では出力値は
“7”に制限される。入力値が負値の場合も同様に、入
力値が“4”減少する毎に出力値は“1”減少し、入力
値が-29 〜-128では出力値は“- 8”に制限される。
【0103】前記シフトリミッタ301は、図11の回
路構成で示すように、入力データが正の場合、即ち、最
上位ビットが値“0”の場合は、選択回路501は選択
回路503を選択する。選択回路503は、d5又はd
6ビットに値“1”があれば、OR回路505の出力に
より、値“111”を選択し、d5及びd6ビットに値
“1”がなければ、入力データd4〜d2を選択する。
選択回路501は、入力データが負の場合には、選択回
路502を選択する。選択回路502は、d6又はd5
ビットに値“0”があれば、AND回路504の出力に
より、値“000”を選択し、d6及びd5ビットに値
“0”がなければ、入力データd4〜d2を選択する。
これにより、8ビット幅の差分値を2ビット左にシフト
し、且つ4ビットの差分値に制限する。
【0104】以上の構成により、加算器213で計算さ
れる差分値、即ち、前記式(11)でのdWij(n) の最大
値及び最小値を拡大できるので、図4の第2の実施の形
態よりも、差分値メモリ218のビット幅を増やすこと
なく、差分値を大きな値に変更でき、より一層に自由度
の高い追加学習が可能である。
【0105】尚、本実施の形態のシフトリミッタ301
は、シフト量を“2”に固定したが、このシフト量を可
変にすれば、差分値dWij(n) の最大値及び最小値を可
変にできるので、追加学習での差分値dWij(n) の大き
さを合せることができ、より一層追加学習の自由度を高
めることができる。
【0106】尚、以上の説明では、差分値メモリ20
4、218はSRAMで構成したが、その他、DRAM
等で構成してもよいのは勿論である。また、ニューラル
ネットワークは、図15に示す1層でなくてもよく、多
層構造に構成してもよい。
【0107】
【発明の効果】以上説明したように、本発明のニューラ
ルネットワーク回路によれば、ニューラルネットワーク
全体の荷重値(初期荷重値)をROMに記憶しても、こ
のROMよりもサイズの小さいRAM等の差分値メモリ
に、前記初期荷重値と追加学習後の荷重値との差分値を
記憶するので、前記差分値メモリを内蔵して追加学習の
高速化を図りつつ、追加学習可能なニューラルネットワ
ーク回路を実現することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態のニューラルネット
ワーク回路を示す図である。
【図2】同実施の形態の重みメモリと差分値メモリとの
両アドレスマップを示す図である。
【図3】同実施の形態のアドレス空間イネーブル回路の
構成を示す図である。
【図4】本発明の第2の実施の形態のニューラルネット
ワーク回路を示す図である。
【図5】同実施の形態のビット拡張器の動作を示す図で
ある。
【図6】同実施の形態のリミッタの構成を示す図であ
る。
【図7】(a)は重みメモリに記憶された複数の荷重値
(初期荷重値)Wij(o) を示す図、(b)は初期荷重値
Wij(o) と追加学習後の荷重値との差分値dWij(n) を
同実施の形態のリミッタで制限した図、(c)は1組の
入力データの認識動作時に使用される荷重値を示す図で
ある。
【図8】同実施の形態のリミッタの入出力関係の説明図
である。
【図9】本発明の第3の実施の形態のニューラルネット
ワーク回路の構成を示す図である。
【図10】同実施の形態のシフト拡張器の動作を示す図
である。
【図11】同実施の形態のシフトリミッタの構成を示す
図である。
【図12】同実施の形態のシフトリミッタの入出力関係
の説明図である。
【図13】従来のニューラルネットワーク回路の構成を
示す図である。
【図14】ニューロンの構成を示す図である。
【図15】ニューラルネットワークの構成図である。
【図16】初期学習と追加学習とで認識する数字の一例
を示す図である。
【図17】ヘブ学習則を用いた荷重値の追加学習処理の
流れを説明するフローチャート図である。
【図18】認識する数字の画素構成を示す図である。
【図19】(a)は出力層が10個のニューロンで構成
される場合のニューラルネットワークの構成図、(b)
はその各ニューロンにおけるn個の荷重値の追加学習前
後の状態を示す図である。
【符号の説明】
1 ニューロン 50、51、52 計算手段 60、61、62 荷重値変更手段 101 入力メモリ 102、203 重みメモリ 103 乗算器 105、213 加算器 106 レジスタ 107 出力メモリ 108、214、216 制御回路 202 係数レジスタ 211 オフセットレジスタ 205 算術演算回路 204、218 差分値メモリ 212 減算器 215 アドレス空間イネーブル
回路 221 ビット拡張器 220 リミッタ 201 教師メモリ 301 シフトリミッタ 302 シフト拡張器
───────────────────────────────────────────────────── フロントページの続き (72)発明者 崎山 史朗 大阪府門真市大字門真1006番地 松下電器 産業株式会社内

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】 1つの出力端子と複数の入力端子とを有
    するニューロンを複数個備えて少なくとも1層を構成
    し、1組の入力データを共通に前記各ニューロンの複数
    の入力端子に与えて前記各ニューロンの出力を得て、こ
    の各出力に基いて前記1組の入力データを認識するニュ
    ーラルネットワーク回路であって、 前記各ニューロンの複数の入力端子に対応し且つ初期学
    習された値を持つ複数の荷重値が記憶された重みメモリ
    と、 前記重みメモリに記憶された荷重値と、これ等の荷重値
    に対応し且つ追加学習された荷重値との差分値を記憶す
    る差分値メモリと、 与えられる1組の入力データの認識時に、この1組の入
    力データ、前記重みメモリの荷重値、及び前記差分値メ
    モリの差分値に基いて、各ニューロンの出力値を計算す
    る計算手段とを備えることを特徴とするニューラルネッ
    トワーク回路。
  2. 【請求項2】 前記追加学習時に、新たな1組の入力デ
    ータを正しく認識するように、前記重みメモリに記憶さ
    れた荷重値を所定の学習則に従って変更する荷重値変更
    手段を備えることを特徴とする請求項1記載のニューラ
    ルネットワーク回路。
  3. 【請求項3】 1つの出力端子と複数の入力端子とを有
    するニューロンを複数個備えて少なくとも1層を構成
    し、1組の入力データを共通に前記各ニューロンの複数
    の入力端子に与えて、この1組の入力データと前記各ニ
    ューロンの複数の入力端子に対応する荷重値とに基いて
    前記各ニューロンの出力を得て、この各出力に基いて前
    記1組の入力データを認識するニューラルネットワーク
    回路において、 前記各ニューロンの複数の入力端子に対応し且つ初期学
    習された値を持つ複数の荷重値が記憶された重みメモリ
    と、 追加学習時に、新たな1組の入力データを正しく認識す
    るように、前記重みメモリに記憶された荷重値を所定の
    学習則に従って変更する荷重値変更手段と、 前記重みメモリに記憶された荷重値と、これ等の荷重値
    に対応し且つ前記荷重値変更手段により追加学習された
    値を持つ荷重値との差分値を記憶する差分値メモリとを
    備えることを特徴とするニューラルネットワーク回路。
  4. 【請求項4】 前記重みメモリはROMで構成され、前
    記差分値メモリは前記重みメモリよりもサイズの小さい
    RAMで構成されることを特徴とする請求項1、2又は
    3記載のニューラルネットワーク回路。
  5. 【請求項5】 前記差分値メモリは、 一部のニューロンの荷重値に対する差分値のみを記憶す
    る少アドレス数のRAMで構成されることを特徴とする
    請求項1、2又は3記載のニューラルネットワーク回
    路。
  6. 【請求項6】 前記荷重値変更手段は、 前記学習則をヘブ則とすると共に、荷重値の変更に際
    し、その荷重値の変更回数をn、n回目の入力データを
    X (n) 、変更係数をα、n−1回目までの合計変更値
    をdW (n-1) として、n回目の合計変更値dW (n)
    を下記式 dW (n) =dW (n-1) +X (n) ・α に基いて算出するものであり、 前記算出したn回目の合計変更値dW (n) が差分値と
    して前記差分値メモリに記憶されることを特徴とする請
    求項2又は3記載のニューラルネットワーク回路。
  7. 【請求項7】 前記荷重値変更手段は、乗算器、及び加
    算器として動作可能な算術演算回路を用いて、n回目の
    合計変更値dW (n) を算出することを特徴とする請求
    項6記載のニューラルネットワーク回路。
  8. 【請求項8】 前記差分値メモリは、 前記重みメモリに保持された荷重値よりもビット数が少
    ない差分値であって且つ全てのニューロンの複数の入力
    端子の荷重値に対する差分値を記憶するRAMで構成さ
    れることを特徴とする請求項1、2又は3記載のニュー
    ラルネットワーク回路。
  9. 【請求項9】 差分値の最大値を所定値のリミットレベ
    ルで制限するリミッタを備え、 前記リミッタにより制限された後の差分値が前記差分値
    メモリに格納されることを特徴とする請求項1、2又は
    3記載のニューラルネットワーク回路。
  10. 【請求項10】 前記差分値メモリから読み出された差
    分値のビット幅を拡張するビット拡張器を備えることを
    特徴とする請求項9記載のニューラルネットワーク回
    路。
  11. 【請求項11】 所定ビット幅で表現される差分値にお
    いてその下位より所定数のビットを右にシフトすること
    により、このシフト後の差分値のビット幅を前記所定ビ
    ット幅より小さい数のビット幅に制限するシフトリミッ
    タを備え、 前記シフトリミッタにより制限された後の差分値が前記
    差分値メモリに格納されることを特徴とする請求項1又
    は2記載のニューラルネットワーク回路。
  12. 【請求項12】 前記差分値メモリから読み出された差
    分値のビット幅を拡張し、その差分値の変更幅を大きす
    るシフト拡張器を備えることを特徴とする請求項11記
    載のニューラルネットワーク回路。
  13. 【請求項13】 前記荷重値変更手段は、 前記学習則をデルタ則又はバックプロパゲーション則と
    すると共に、荷重値の変更に際し、その荷重値の変更回
    数をn、n回目の入力データをX (n) 、O( n) をニ
    ューロンの出力値、T (n) を前記ニューロンの出力の
    教師値、変更係数をα、n−1回目までの合計変更値を
    dW (n-1) として、n回目の合計変更値dW (n) を
    下記式 dW (n) =dW (n-1) +(T (n)-O (n))・X
    (n) ・α に基いて算出するものであり、 前記算出したn回目の合計変更値dW (n) が差分値と
    して前記差分値メモリに記憶されることを特徴とする請
    求項2又は3記載のニューラルネットワーク回路。
  14. 【請求項14】 前記荷重値変更手段は、乗算器、及び
    加算器として動作可能な算術演算回路を用いて、n回目
    の合計変更値dW (n) を算出することを特徴とする請
    求項13記載のニューラルネットワーク回路。
  15. 【請求項15】 前記計算手段は、 与えられる1組の入力データの認識時に、前記1組の入
    力データのうちの1つの入力データに対応する前記重み
    メモリの荷重値と、この荷重値に対応する前記差分値メ
    モリの差分値とを加算し、 前記加算結果の荷重値と、前記1つの入力データとを乗
    算することを繰返して、各ニューロンの出力値を計算す
    ることを特徴とする請求項1又は2記載のニューラルネ
    ットワーク回路。
JP9129810A 1996-05-30 1997-05-20 ニューラルネットワーク回路 Pending JPH1055346A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9129810A JPH1055346A (ja) 1996-05-30 1997-05-20 ニューラルネットワーク回路

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP8-136822 1996-05-30
JP13682296 1996-05-30
JP9129810A JPH1055346A (ja) 1996-05-30 1997-05-20 ニューラルネットワーク回路

Publications (1)

Publication Number Publication Date
JPH1055346A true JPH1055346A (ja) 1998-02-24

Family

ID=26465091

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9129810A Pending JPH1055346A (ja) 1996-05-30 1997-05-20 ニューラルネットワーク回路

Country Status (1)

Country Link
JP (1) JPH1055346A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018026102A (ja) * 2016-08-11 2018-02-15 富士通株式会社 グループ間インデックスを用いた人工ニューラルネットワークにおける加重値の表現
JP2020515989A (ja) * 2017-04-04 2020-05-28 ハイロ テクノロジーズ リミテッド 計算およびローカルメモリ要素を組み込むニューラルネットワーク処理要素
CN112540408A (zh) * 2019-09-20 2021-03-23 中国石油化工股份有限公司 一种基于深度学习的地震数据静校正处理方法及系统
US11615297B2 (en) 2017-04-04 2023-03-28 Hailo Technologies Ltd. Structured weight based sparsity in an artificial neural network compiler
US11811421B2 (en) 2020-09-29 2023-11-07 Hailo Technologies Ltd. Weights safety mechanism in an artificial neural network processor
US11874900B2 (en) 2020-09-29 2024-01-16 Hailo Technologies Ltd. Cluster interlayer safety mechanism in an artificial neural network processor

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018026102A (ja) * 2016-08-11 2018-02-15 富士通株式会社 グループ間インデックスを用いた人工ニューラルネットワークにおける加重値の表現
JP2020515989A (ja) * 2017-04-04 2020-05-28 ハイロ テクノロジーズ リミテッド 計算およびローカルメモリ要素を組み込むニューラルネットワーク処理要素
US11615297B2 (en) 2017-04-04 2023-03-28 Hailo Technologies Ltd. Structured weight based sparsity in an artificial neural network compiler
US11675693B2 (en) 2017-04-04 2023-06-13 Hailo Technologies Ltd. Neural network processor incorporating inter-device connectivity
CN112540408A (zh) * 2019-09-20 2021-03-23 中国石油化工股份有限公司 一种基于深度学习的地震数据静校正处理方法及系统
CN112540408B (zh) * 2019-09-20 2024-05-14 中国石油化工股份有限公司 一种基于深度学习的地震数据静校正处理方法及系统
US11811421B2 (en) 2020-09-29 2023-11-07 Hailo Technologies Ltd. Weights safety mechanism in an artificial neural network processor
US11874900B2 (en) 2020-09-29 2024-01-16 Hailo Technologies Ltd. Cluster interlayer safety mechanism in an artificial neural network processor

Similar Documents

Publication Publication Date Title
US6067536A (en) Neural network for voice and pattern recognition
US4994982A (en) Neural network system and circuit for use therein
JP4620943B2 (ja) 積和演算回路及びその方法
JP3634023B2 (ja) ニューラル・ネットワーク用の適応型重み調整回路
AU2020274862B2 (en) Training of artificial neural networks
US5845051A (en) Learning method for multilayer perceptron neural network with N-bit data representation
JPH1055346A (ja) ニューラルネットワーク回路
JP3172352B2 (ja) ニューラルネットワーク回路
EP0636991A2 (en) Information processing apparatus for implementing neural network
JP3177996B2 (ja) ニューロプロセッサ
JPH07141313A (ja) 神経回路素子
JP3172278B2 (ja) ニューラルネットワーク回路
CN115906936A (zh) 一种神经网络训练及推理方法、装置、终端及存储介质
JPH0744515A (ja) ニューラルネットワーク回路
JPH04237388A (ja) ニューロプロセッサ
JP2860057B2 (ja) ニューラルネットワークシステム
CN110703994A (zh) 一种神经网络模型的数据存储系统及方法
JPH05128285A (ja) ニユーロプロセツサ
JP3082530B2 (ja) ニューラルネットワーク回路
US5696882A (en) Method and apparatus for using a neural network to extract an optimal subset of data objects from an available class of data objects
JPH1091604A (ja) 関数学習装置
JP2004139606A (ja) 自律システム及び自律型ロボット
JP2022173059A (ja) ハイブリッドadc基盤のmac演算回路及び方法
JPH06131318A (ja) ニューロン素子
JPH05290014A (ja) 信号処理装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20011106