米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> 松下電器産業株式会社

発明の名称 ニューラルネットワーク回路
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開平7−191951
公開日 平成7年(1995)7月28日
出願番号 特願平5−329246
出願日 平成5年(1993)12月27日
代理人 【弁理士】
【氏名又は名称】前田 弘 (外2名)
発明者 丸山 征克 / 崎山 史朗 / 中平 博幸
要約 目的
画像等の認識処理を行うニューラルネットワーク回路において、小規模な回路で高速に処理を実行でき且つ簡易に規模の拡張ができるようにする。

構成
1入力複数出力の量子化ニューロンを上下に複数個ツリー状に分岐配置した複数層のネットワークと、その最上層の更に上方に配置された複数入力1出力の出力ニューロンを有する最終層のネットワークとを有し、与えられた特徴データのネットワークの演算を実行することで認識処理を行う多層のニューラルネットワーク回路であって、前記最終層のネットワークの出力ニューロンは、隣りの同一構成のニューラルネットワーク回路から最終層の出力ニューロンの出力を外部データとして入力される入力端子を有する。従って、これ等複数のニューラルネットワーク回路を簡易に接続するだけで柔軟に規模の拡張可能なニューラルネットワーク回路を提供でき、処理能力の向上が図れる
特許請求の範囲
【請求項1】 1入力複数出力の量子化ニューロンを上下に複数個ツリー状に分岐配置した複数層のネットワークと、その最上層の更に上方に配置された複数入力1出力の出力ニューロンを有する最終層のネットワークとを有し、与えられた特徴データのネットワークの演算を実行することで認識処理を行う多層のニューラルネットワーク回路であって、前記最終層のネットワークの出力ニューロンは、外部データが入力される入力端子を有することを特徴とするニューラルネットワーク回路。
【請求項2】 複数層のネットワーク及び最終層のネットワークは、計算すべきネットワークの回数を出力する制御回路と、前記制御回路の出力により計算すべきネットワークの回数を順次カウントするアドレス発生器と、前記アドレス発生器によって読み出される特徴データを記憶している特徴データメモリと、最終層の出力ニューロンの重みを記憶する重みメモリと、最終層以外のニューロンの結合係数を記憶する最終層以外の層別の結合係数メモリと、前記制御回路、特徴データメモリ及びアドレス発生器の出力を、前記重みメモリに与えるアドレス、及び前記結合係数メモリに与えるアドレスに変換するアドレス変換器と、前記層別の結合係数メモリの出力を入力として各入力を乗算した値を出力するテーブルメモリと、前記テーブルメモリの出力と前記重みメモリの出力とを累積加算する累積演算器と、前記アドレス発生器の出力アドレスに前記累積演算器の結果を保持する出力メモリとから成ることを特徴とする請求項1記載のニューラルネットワーク回路。
【請求項3】 累積演算器は、アドレス発生器の信号により外部データの加算を実行する機能を有することを特徴とする請求項2記載のニューラルネットワーク回路。
【請求項4】 テーブルメモリと外部データとを入力として何れか一方を選択する選択回路を有するとともに、重みメモリは、前記選択回路が外部データを選択したとき所定の重みを出力するものであり、累積演算器は、前記選択回路により選択された外部データと前記重みメモリの所定の重みとを累積加算して外部に出力するものであることを特徴とする請求項2記載のニューラルネットワーク回路。
【請求項5】 請求項3記載のニューラルネットワーク回路又は請求項4記載のニューラルネットワーク回路を複数備え、相い隣る2つのニューラルネットワーク回路は、その一方のニューラルネットワーク回路の累積演算器の累積結果が外部データとして他方のニューラルネットワーク回路に出力されることを特徴とするニューラルネットワーク回路。
【請求項6】 累積演算器の累積結果が外部データとして入力される側のニューラルネットワーク回路の演算は、前記累積演算器の累積結果が出力される側のニューラルネットワーク回路の演算よりも1クロック遅れることを特徴とする請求項5記載のニューラルネットワーク回路
発明の詳細な説明
【0001】
【産業上の利用分野】本発明は、画像認識処理等を行うニューラルネットワーク回路の改良に関するものである。
【0002】
【従来の技術】情報処理のニューラルネットワークの分野に最近大きな関心が集まってきている。これらのニューラルネットワークは生物のニューロンの構造を模倣して考えられており、これらのニューラルネットワークの処理の多くは、従来のフォン・ノイマン型の逐次計算機で実現されているため、処理速度はきわめて遅い。そこで、専用の電子回路での構成の試みがなされている。
【0003】専用の電子回路で構成したニューラルネットワークは色々あるが、その中の1つのニューラルネットワークである量子化ニューロン(量子化セル)のネットワークによる画像認識は、例えば文献:『機能別階層ネットワークを用いた文字認識システム』平成2年度画像電子通信学会全国大会予稿ページ77〜80、又は『Multi-Functional Layered Network using Quantizer Neurons』ComputerWorld '90,November 1990 )に開示される。以下、このニューラルネットワークによる画像認識について説明する。
【0004】図12に量子化ニューロンのネットワークを示す。このネットワークは、量子化ニューロンを多層ネットワーク状に連結し、最終層は多入力1出力の通常の人工神経細胞を連結した構成となっている。このネットワークに与える画像の特徴データは、その1例として、8×8の画素値、8×8の画素値の横方向の差分値、及び8×8の画素値の縦方向の差分値である。図12に示すように、第1層は、8×8画素数に相当する64個の量子化ニューロンからなり、これらの量子化ニューロンの量子化信号入力端子には特徴データ入力1として画素値を入力する。第2層では、量子化ニューロンの量子化信号入力端子に特徴データ入力2として画素値の横方向の差分値を入力する。第3層では、量子化ニューロンの量子化信号入力端子に特徴データ入力3として画素値の縦方向の差分値を入力する。第4層は教師入力層であって、教師入力によって最終層の各ニューロンのシナプシスの結合係数を変化させる。最終層は解答の出力層であって、例えば、英数字62文字に対する62個の通常の人工神経細胞からなる。
【0005】前記出力層のニューロンは、図15に示すように、それぞれの入力データに対し、各々、学習で決定されている重みWn (n は入力の番号)を掛けて、それらの総和を出力する。
【0006】前記量子化ニューロン(量子化セル)は、図13に示すように、量子化信号入力端子S及び選択入力端子Rと、複数の出力とを有している。選択入力端子Rより入力された信号は、量子化信号入力端子Sから入力される値x によって、例えば、(式1)に従った重みτが掛けられ各出力に出力される。
【0007】
τj =1−β(|j-x |) …(式1)
|a |:a の絶対値ここで、j は量子化ニューロンの出力番号を示す。
【0008】前記図13の量子化ニューロンは、量子化信号入力端子Sからの入力レベルが8レベルであって、出力数が8ケのものである。例えば、関数(1−β)を図16で示すものとするならば、量子化信号入力が値0であったとき、量子化ニューロンのそれぞれの出力に現れる値は、選択信号入力に与えられる値に図14(a)で示される対応する重みτ(n)を掛けた値となる。
【0009】図13で示したような量子化信号入力レベルSが8レベル、出力数が8ケの量子化ニューロンでネットワークを構成する場合、第1層の量子化ニューロンの8つの出力それぞれに、第2層の量子化ニューロンの選択信号入力が接続される。更に、この8つの第2層の量子化ニューロンの各々の8つの出力それぞれに第3層の量子化ニューロンの選択信号入力が接続される。このように、第1層の量子化ニューロン1個から、量子化ニューロンを経由し、ツリー状に分岐すると、第3層の量子化ニューロンの出力数(第4層)は512となる。
【0010】第1層の量子化ニューロンの8つの出力に接続される8個の第2層の量子化ニューロンの量子化信号入力は、第1層の特徴データ入力1である画素値と同位置の横方向差分値が与えられる。
【0011】8個ある第2層の量子化ニューロンの各8つの出力に接続される64個の第3層の量子化ニューロンの量子化信号入力は、第1層の特徴データ入力1である画素値、および第2層の特徴データ入力2である横方向差分値と同位置の縦方向差分値が与えられる。
【0012】図12に示した量子化ニューロンの画像認識ネットワークは、第1層の1個の量子化ニューロンを元として、第3層の量子化ニューロンの数が64個となる第4層までのツリー状のネットワークを構成し、それに最終層のネットワークを付して構成されている。
【0013】先ず、量子化ニューロンの一層について説明する。図13で説明したように、量子化ニューロンは、下層のニューロンの出力、又は選択信号(通常は1か最大の値)が与えられる選択信号入力Rと、特徴データが与えられる量子化信号入力Sとがある。ここでは、特徴データを0〜7までの8レベルとして説明する。この時、量子化ニューロンの出力は出力0〜7の8つある。
【0014】量子化信号入力Sが値0であったとき、それぞれの出力に現れる値は、選択信号入力Rに与えられる値に図14(a)で示された対応する結合係数を掛けたものとなる。量子化信号入力Rが値3であれば、それぞれの結合係数は、図14(b)となる。図14(b)は、同図(a)を出力番号方向に3つスライドしたのと同様である。また、量子化信号入力Rが値7であれば、それぞれの結合係数は、出力番号方向に7つスライドしたのと同様で図14(c)のようになる。
【0015】第1層の量子化ニューロンの選択信号入力Rは、最大の値が与えられている。例えば、量子化ニューロンを8ビットの演算で行うとするならば、第1層で、量子化信号入力が0の場合は、選択信号入力=FF出力番号0=FF 出力番号1=7F 出力番号2=0出力番号3=0 出力番号4=0 出力番号5=0出力番号6=0 出力番号7=7F (16進表現)
となる。
【0016】第2層の量子化ニューロンの選択信号入力は、第1層の量子化ニューロンの出力が与えられる。また、第3層の量子化ニューロンの選択信号入力は、第2層の量子化ニューロンの出力が与えられる。
【0017】従って、第3層の量子化ニューロンの出力は、第1層の量子化ニューロンの結合係数、第2層の量子化ニューロンの結合係数、第3層の量子化ニューロンの結合係数の3つと第1層の量子化ニューロンの選択信号入力を掛け合わせたものになっている。
【0018】このニューラルネットワークを高速に計算するために図11に示す構成が提案されており(出願番号03-237674 )、以下に説明する。
【0019】図11示す従来回路は、特徴データを特徴データメモリ107〜109に与え、その特徴データを認識するニューラルネットワーク回路である。すなわち、特徴データについてネットワークの演算を行うものである。
【0020】図11において、特徴データメモリ107〜109は、それぞれ第1層〜第3層の量子化ニューロンの量子化信号入力に与えるデータが保持されている。係数メモリ101〜103は、それぞれ第1層〜第3層の量子化ニューロンの結合係数が保持されている。テーブルメモリ112は、係数メモリ101〜103の出力J,K,Hを入力とし、それらの掛け合わせた値を出力する。重みメモリ118は量子化ニューロンのネットワークの最終層のニューロンの重みを保持する。累積乗算器113は、テーブルメモリ112の出力と重みメモリ118の出力とを入力とし、その両値の累積乗算を行う。
【0021】制御回路117は、ニューラルネットワーク回路1を制御し、スタート入力によって処理を開始し、クロック信号によって動作する。前記制御回路117は、第1層〜第3層の各結合係数の零以外のデータの数Wj,Wk,Whをアドレス発生器119とアドレス変換器104〜106に与える。アドレス変換器104〜106は、アドレス発生器119と対応する特徴データメモリ107〜109との各データを受け取り、それぞれ対応する係数メモリ101〜103のアドレス入力の変換と重みメモリ118へのアドレス入力の変換を行う。
【0022】前記アドレス発生器119は、図8に示すように、5つのカウンタ121〜124で構成されている。第1層カウンタ120、第2層カウンタ121及び第3層カウンタ122は、キャリ入力が1のとき、零から幅入力の値−1までカウントアップする。例えば、幅入力が値3であれば0、1、2とカウントし、その後に0に戻り、再び1、2とカウントする。特徴データカウンタ123は、特徴データ数をカウントするカウンタであり、出力層カウンタ124は、出力数をカウントするカウンタである。
【0023】また、図11において、出力メモリ114は、前記アドレス発生器119の出力カウンタ124の出力Pのアドレスに累積演算器113の値が書き込まれるものである。
【0024】次に、前記従来回路の動作について説明する。
【0025】特徴データメモリ107、108、109には、認識すべき画像の特徴データが書き込まれている。
【0026】アドレス発生器119の特徴データカウンター123の出力iにより特徴データメモリ107、108、109から各層に与えられる特徴データj,k,hが読み出される。
【0027】アドレス変換器104は、第1層の特徴データj、アドレス発生器119の第1層カウンター120の出力x、第1層の結合係数の零以外のデータの数Wjを入力としている。ここで、例えば、第1層の結合係数を図16に示したものとするならば、Wjは3となる。前記アドレス変換器104は、第1層の量子化ニューロンの結合係数を保持している係数メモリ101のアドレスと、最終層のニューロンの結合係数を記憶している重みメモリ118のアドレスの一部とに変換する。
【0028】前記アドレス変換器104によるアドレスの変換式を次に示す。
【0029】重みメモリ119のアドレスへの出力jjは、jj=j−wj/2+xで示され、係数メモリ101のアドレスへの出力jjjは、jjj=−wj/2+xで示される。ここで、量子化ニューロン出力数を8、量子化信号入力のレベルを0〜7とした場合、それの変数の範囲は0〜7である。jjj、jjの結果の下位より3ビットを出力とする。
【0030】同様に、アドレス変換器105は、第2層の量子化ニューロンの結合係数を保持している係数メモリ102のアドレスと、最終層のニューロンの係数を記憶している重みメモリ119のアドレスの一部とに変換し、出力する。同様に、アドレス変換器106は、第3層の量子化ニューロンの結合係数を保持している係数メモリ103のアドレスと、最終層のニューロンの係数を記憶している重みメモリ119のアドレスの一部とに変換し、出力する。
【0031】前記係数メモリ101〜103は、それぞれ第1層〜第3層の量子化ニューロンの結合係数が保持されており、入力されたデータのアドレスの結合係数を出力する。
【0032】テーブルメモリ112は、係数メモリ101〜103からの出力を入力とし、それらの掛け合わせた値を出力する。すなわち、第3層の量子化ニューロンの出力となる。
【0033】量子化ニューロンのネットワークの最終層のニューロンの重みを保持する重みメモリ118は、3個のアドレス変換器104、105、106からの入力と、アドレス発生器119の特徴データカウンター123の出力iと、アドレス発生器119の出力層カウンター124の出力pからの入力とによって、テーブルメモリ112の出力データ(すなわち、第3層の量子化ニューロンの出力)に一致する出力ニューロンの重みデータを出力する。
【0034】累積演算器113は、テーブルメモリ112の出力と重みメモリ118の出力を掛け合わせ、累積する。
【0035】以上の動作を、アドレス発生器119のカウントアップに従って実行する。アドレス発生器119の出力層カウンタ124が変化するときに、そのアドレスに累積演算器113の値を書き込み、累積演算器113の値を0にする。
【0036】アドレス発生器119のカウントアップが終了すれば、認識の演算が終了しており、出力メモリ114には量子化ニューロンのネットワークの解答出力が得られる。
【0037】
【発明が解決しようとする課題】しかしながら、前記従来のハードウェアで構成したニューラルネットワーク回路では、処理する入力特徴データの数とネットワークの規模を予め決めて構成する必要があり、このため、処理内容の複雑化に伴いネットワーク規模を拡大することが困難であった。
【0038】本発明は、以上のような問題点を解決するためになされたものであり、その目的は、柔軟に規模の拡張可能なニューラルネットワーク回路を提供することにある。
【0039】
【課題を解決するための手段】上記目的を達成するために、本発明では、ニューラルネットワークを一定の規模のハードウェアで構築して複数設け、それ等を簡易に接続して演算結果を利用できる構成とする。
【0040】すなわち、請求項1記載の発明のニューラルネットワーク回路は、1入力複数出力の量子化ニューロンを上下に複数個ツリー状に分岐配置した複数層のネットワークと、その最上層の更に上方に配置された複数入力1出力の出力ニューロンを有する最終層のネットワークとを有し、与えられた特徴データのネットワークの演算を実行することで認識処理を行う多層のニューラルネットワーク回路を対象として、前記最終層のネットワークの出力ニューロンは、外部データが入力される入力端子を有する構成である。
【0041】また、請求項2記載の発明のニューラルネットワーク回路は、前記請求項1記載の発明の複数層のネットワーク及び最終層のネットワークを特定し、これ等を、計算すべきネットワークの回数を出力する制御回路と、前記制御回路の出力により計算すべきネットワークの回数を順次カウントするアドレス発生器と、前記アドレス発生器によって読み出される特徴データを記憶している特徴データメモリと、最終層の出力ニューロンの重みを記憶する重みメモリと、最終層以外のニューロンの結合係数を記憶する最終層以外の層別の結合係数メモリと、前記制御回路、特徴データメモリ及びアドレス発生器の出力を、前記重みメモリに与えるアドレス、及び前記結合係数メモリに与えるアドレスに変換するアドレス変換器と、前記層別の結合係数メモリの出力を入力として各入力を乗算した値を出力するテーブルメモリと、前記テーブルメモリの出力と前記重みメモリの出力とを累積加算する累積演算器と、前記アドレス発生器の出力アドレスに前記累積演算器の結果を保持する出力メモリとにより構成したものである。
【0042】更に、請求項3記載の発明のニューラルネットワーク回路では、外部データを入力する素子を限定し、累積演算器に対して、アドレス発生器の信号により外部データの加算を実行する機能を持たせる構成としている。
【0043】加えて、請求項4記載の発明のニューラルネットワーク回路では、更に、テーブルメモリと外部データとを入力として何れか一方を選択する選択回路を設けるとともに、重みメモリは、前記選択回路が外部データを選択したとき所定の重みを出力するものであり、累積演算器は、前記選択回路により選択された外部データと前記重みメモリの所定の重みとを累積加算して外部に出力する機能を持たせる構成としている。
【0044】
【作用】以上の構成により、請求項1ないし請求項4記載の発明のニューラルネットワーク回路では、最終層の出力ニューロンに別途設けた入力端子に外部データを入力できる構成,即ち累積演算器が外部データの加算を実行する構成であるので、このニューラルネットワーク回路を複数設け、ニューラルネットワーク回路で得た解答出力を他のニューラルネットワーク回路の最終層で加算利用できるようにそれ等を簡易に接続すれだけで、柔軟に規模の拡張したニューラルネットワーク回路を提供できる。従って、各ニューラルネットワーク回路別に異なる分別能力を持たせれば、簡易に処理能力の向上を図ることができる。
【0045】
【実施例】
(実施例1)本発明の第1の実施例を図1に示す。同図の実施例は、最終層の出力ニューロンを図6に示すように従来での最終層の出力ニューロンより1入力多く、増加した入力の重みを1としている。これにより、図5に示すように、隣りのニューラルネットワークの出力を最終層の出力ニューロンに与えることで拡張性に優れたニューラルネットワーク回路となる。
【0046】同図の実施例は、特徴データを特徴データメモリ107〜109に与え、そのデータについて処理するニューラルネットワーク回路である。
【0047】係数メモリ101〜103には、それぞれ第1層〜第3層の量子化ニューロンの結合係数が保持されている。テーブルメモリ112は、3個の係数メモリ101〜103の出力J,K,Hを入力とし、それらの掛け合わせた値を出力する。重みメモリ118は量子化ニューロンのネットワークの最終層のニューロンの重みを保持する。
【0048】そして、累積乗算器130は、切替入力がLOWのとき、テーブルメモリ112の出力と、重みメモリ118の出力とを入力として累積乗算を行い、一方、切替入力がHIGHのとき、外部加算入力より入った信号を加算する。特徴データメモリ107〜109には、それぞれ第1層〜第3層の量子化ニューロンの量子化信号入力Sに与えるデータが保持されている。
【0049】制御回路132は、ニューラルネットワーク回路10を制御し、スタート入力によって処理を開始し、クロック信号によって動作する。
【0050】また、制御回路132のスタート出力は、スタート入力を1クロック遅らせたものである。
【0051】前記制御回路132は、第1層〜第3層の各結合係数の零以外のデータの数Wj,Wk,Whをアドレス発生器131とアドレス変換器104〜106とに与える。前記アドレス変換器104〜106は、アドレス発生器110と特徴データメモリ107〜109との両データを受け取り、それぞれ係数メモリ101〜103のアドレス入力の変換と、重みメモリ118へのアドレス入力の変換を行う。
【0052】図2に示すように、アドレス発生器131は、6つのカウンタで構成されている。第1層カウンタ120、第2層カウンタ121及び第3層カウンタ122は、キャリ入力が1のとき、零から幅入力の値−1までカウントアップする。例えば、幅入力が値3であれば0、1、2とカウントし、その後に0に戻り、再び1、2とカウントする。特徴データカウンタ123は特徴データ数をカウントするカウンタであり、出力層カウンタ124は出力数をカウントするカウンタである。
【0053】そして、133は外部アクセスカウンタであって、この外部アクセスカウンタ133は、特徴データカウンタ123の出力を1クロック遅らせて出力カウンタ124に与えて、累積演算器130の外部入力の計算サイクルをカウントするカウンタである。
【0054】次に、本発明の実施例の動作について説明する。
【0055】特徴データメモリ107、108、109には、処理すべき特徴データが書き込まれている。
【0056】アドレス発生器131の特徴データカウンター123の出力iにより特徴データメモリ107、108、109から各層に与えられる特徴データj,k,hが読み出される。
【0057】アドレス変換器104は、第1層の特徴データj、アドレス発生器131の第1層カウンター120の出力x、第1層の結合係数の零以外のデータの数Wjを入力としている。ここで、例えば、第1層の結合係数を図16に示したものとするならば、Wjは3となる。
【0058】アドレス変換器104は、第1層の量子化ニューロンの結合係数を保持している係数メモリ101のアドレスと、最終層のニューロンの結合係数を記憶している重みメモリ118のアドレスの一部とに変換する。
【0059】前記アドレス変換器104のアドレスの変換式を次に示す。
【0060】重みメモリ118のアドレスへの出力jjは、jj=j−wj/2+xで示され、係数メモリ101のアドレスへの出力jjjは、jjj=−wj/2+xで示される。ここで、量子化ニューロン出力数を8、量子化信号入力のレベルを0〜7とした場合、それの変数の範囲は0〜7である。jjj、jjの結果の下位より3ビットを出力とする。
【0061】同様に、アドレス変換器105は、第2層の量子化ニューロンの結合係数を保持している係数メモリ102のアドレスと、最終層のニューロンの係数を記憶している重みメモリ118のアドレスの一部とに変換し、出力する。同様に、アドレス変換器106は、第3層の量子化ニューロンの結合係数を保持している係数メモリ103のアドレスと、最終層のニューロンの係数を記憶している重みメモリ118のアドレスの一部とに変換し、出力する。
【0062】係数メモリ101〜103には、それぞれ対応する第1層〜第3層の量子化ニューロンの結合係数が保持されており、入力されたデータのアドレスの結合係数を出力する。
【0063】テーブルメモリ112は、3個の係数メモリ101〜103からの出力を入力として、それらの掛け合わせた値を出力する。すなわち、第3層の量子化ニューロンの出力となる。
【0064】量子化ニューロンのネットワークの最終層のニューロンの重みを保持する重みメモリ118は、アドレス変換器104、105、106からの入力と、アドレス発生器131の特徴データカウンター123の出力iと、出力層カウンター124の出力pからの入力によって、テーブルメモリ112の出力データ(すなわち、第3層の量子化ニューロンの出力)に一致する出力ニューロンの重みデータを出力する。
【0065】累積演算器130はテーブルメモリ112の出力と重みメモリ118の出力とを掛け合わせ、累積する。
【0066】以上の動作を、図4の波形図に示すように、アドレス発生器131のカウントアップに従って実行する。
【0067】アドレス発生器131の外部アクセスカウンタ133の出力がHIGHになったとき、特徴データカウンタ123のキャリ出力Cにより累積演算器130の入力が外部加算入力に切り替えられて、外部のデータの加算を行う。
【0068】その後、アドレス発生器131の出力層カウンタ124の出力Pが変化するときに、そのアドレスに累積演算器130の値を出力メモリ114に書き込み、累積演算器130の値を0にする。そして、特徴データカウンタ123、第3層カウンタ122、第2層カウンタ121、及び第1層カウンタ120がリセットされる。
【0069】アドレス発生器131のカウントアップが終了すれば、認識の演算が終了しており、出力メモリ114には量子化ニューロンのネットワークの解答出力が得られる。
【0070】本ニューラルネットワーク回路10を、図3のように、例えば2つ設け、一方の回路10Aには外部データとして0を入力すると共に、他の回路10Bには、前記一方の回路10Aの累積演算器130の累積演算結果を外部データとして入力するように接続することにより、図5に示すようなネットワークの拡張ができる。ここで、前記累積演算器130の累積演算結果を外部データとして入力する側の回路10Bは、図4の波形図に示すように、その累積演算結果を外部データとして出力する側の回路10Aより1クロック遅れて動作演算する。
【0071】尚、図5に示すネットワークは、入力特徴データが各層128データ、すなわち2倍の拡張とした場合であるが、3倍以上の拡張とする場合も同様である。
【0072】(実施例2)本発明の第2の実施例を図7に示す。同図の実施例は、最終層の出力ニューロンを図10のような従来での最終層の出力ニューロンより1入力多く、その増加した入力に対し重みWsを有している。これにより、図9に示すように隣りのニューラルネットワークの出力を最終層の出力ニューロンに与えることで拡張性に優れたニューラルネットワーク回路となる。
【0073】図7の実施例は、特徴データを特徴データメモリ107〜109に与えたデータを処理する回路である。
【0074】制御回路132、アドレス発生器131、係数メモリ101〜103、テーブルメモリ112、特徴データメモリ107〜109、アドレス変換器104〜106、出力メモリ114は、前記実施例1と同様のものである。
【0075】重みメモリ134は、アドレス変換器104〜106の出力hh,kk,jjとアドレス発生器131の出力c,i,pとをアドレス信号とし、量子化ニューロンのネットワークの最終層のニューロンの重みを保持する。
【0076】136はマルチプレクサであって、このマルチプレクサ136は、外部累積入力とテーブルメモリ112の出力との2つを入力とし、アドレス発生器131からの切り替え信号cによって、切替入力がLOWのときはテーブルメモリ112を、切り替え入力がHIGHのときは外部累積入力を出力する。累積乗算器113は、マルチプレクサ136の出力と、重みメモリ134の出力を入力とし、累積乗算を行う。
【0077】前記実施例1と同様に、図4の波形図に示すようにアドレス発生器131のカウントアップに従って実行する。アドレス発生器131の外部アクセスカウンタ133の出力がHIGHになったとき、その出力カウンタ124の出力Cによりマルチプレクサ136は外部累算入力を選択し、累積乗算器113に外部累算入力データの値を出力する。累積乗算器113は、外部累算入力データの値と、重みメモリ134から読み出された値との累積を計算する。この時、重みメモリ134から読み出された値は、図9での重みWsの値である。その後、アドレス発生器131の出力層カウンタ124の出力Pが変化するときに、そのアドレスに累積演算器113の値を出力メモリ114に書き込み、累積演算器113の値を0にする。そして、その後、特徴データカウンタ123、第3層カウンタ122、第2層カウンタ121、第1層カウンタ120がリセットされる。
【0078】アドレス発生器131のカウントアップが終了すれば、認識の演算が終了しており、出力メモリ114には量子化ニューロンのネットワークの解答出力が得られる。
【0079】本ニューラルネットワーク回路11を図3と同様に接続することで図9に示すネットワークの拡張ができる。図9に示すネットワークは、入力特徴データが各層64データであるが、左右それぞれのニューラルネットワークに違った分別能力持たせ、それぞれの結果を重み付け加算することで、最終的な解答出力とし、これによりニューラルネットワークの能力の向上を実現できる。
【0080】尚、以上の説明では、量子化ニューロンを用いたネットワークを、1層の特徴データを8×8の64ヶ、3層の特徴データ、64解答出力として説明したがこの限りではない。
【0081】
【発明の効果】以上説明したように、本発明によれば、量子化ニューロンを用いたニューラルネットワーク回路において、ニューラルネットワークを一定の規模のハードウェアで構築し、それを外部入力可能な構成としたので、そのニューラルネットワークを複数設けてそれ等を簡易に接続するだけで柔軟に規模の拡張可能なニューラルネットワーク回路を提供でき、処理能力の向上が図れるニューラルネットワーク回路が実現できる。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013