TOP > 国内特許検索 > ニューラルネットワーク回路及びニューラルネットワーク集積回路

ニューラルネットワーク回路及びニューラルネットワーク集積回路 NEW

国内特許コード P190016043
整理番号 (S2016-0777-N0)
掲載日 2019年5月10日
出願番号 特願2018-518385
出願日 平成29年5月19日(2017.5.19)
国際出願番号 JP2017018836
国際公開番号 WO2017200088
国際出願日 平成29年5月19日(2017.5.19)
国際公開日 平成29年11月23日(2017.11.23)
優先権データ
  • 特願2016-100694 (2016.5.19) JP
  • 特願2016-222275 (2016.11.15) JP
発明者
  • 本村 真人
出願人
  • 国立大学法人北海道大学
発明の名称 ニューラルネットワーク回路及びニューラルネットワーク集積回路 NEW
発明の概要 回路規模及びコストを大幅に縮小しつつ、効率的且つ多様性を有するニューラルネットワーク回路を提供する。
1ビットの入力データIと重み付け係数Wとを乗算する乗算機能を実現し且つ入力データIと同数のメモリセル1と、各メモリセル1における乗算結果を加算し且つ当該加算結果に活性化関数を適用して1ビットの出力データを出力する加算/適用機能を実現する多数判定回路2と、を備える。各メモリセル1は、「1」又は「0」である重み付け係数、或いは「NC」のいずれかを記憶し、入力データI=記憶値の場合に「1」を出力し、入力データIの値≠記憶値の場合に「0」を出力し、「NC」が記憶されている場合にはそれを出力する。多数判定回路2は、「1」を出力するメモリセル1の総数と「0」を出力するメモリセル1の総数とに基づいて「1」又は「0」を出力する。
従来技術、競合技術の概要


近年、人の脳機能をモデル化した、いわゆるニューラルネットワーク回路についての研究開発が行われている。このとき、従来のニューラルネットワーク回路としては、例えば浮動小数点又は固定小数点を使った積和演算を用いて実現される場合が多く、この場合には、例えば演算コストが大きく、処理負荷が高いという問題点があった。



そこで近年、上記入力データ及び上記重み付け係数をそれぞれ1ビットとする、いわゆる「バイナリニューラルネットワーク回路」のアルゴリズムが提案されている。ここで、上記バイナリニューラルネットワーク回路のアルゴリズムを示す先行技術文献としては、例えば下記非特許文献1及び非特許文献2が挙げられる。

産業上の利用分野


本発明は、ニューラルネットワーク回路及びニューラルネットワーク集積回路の技術分野に属する。より詳細には、複数の入力データと重み付け係数とをそれぞれ乗算する乗算機能と、各乗算結果を加算しその加算結果に活性化関数を適用して出力する加算/適用機能と、を有するニューラルネットワーク回路、及び当該ニューラルネットワーク回路を複数備えるニューラルネットワーク集積回路の技術分野に属する。

特許請求の範囲 【請求項1】
各々が1ビットである入力データと重み付け係数とを乗算する乗算機能を実現する複数の第1回路部と、各前記第1回路部における乗算結果を加算し且つ当該加算結果に活性化関数を適用して1ビットの出力データを出力する加算/適用機能を実現する第2回路部と、を備えるニューラルネットワーク回路であって、
各前記第1回路部はそれぞれ、
「1」又は「0」である前記重み付け係数、或いは予め設定された所定値のいずれかを記憶する記憶部と、
前記記憶部に前記重み付け係数が記憶されている場合における当該重み付け係数と前記入力データの値とが一致する場合に前記入力データの入力タイミングに対応したタイミングで「1」を出力し、当該重み付け係数と前記入力データの値とが異なる場合に前記入力データの入力タイミングに対応したタイミングで「0」を出力し、前記記憶部に前記所定値が記憶されている場合に前記入力データの入力タイミングに対応したタイミングで当該所定値を出力する出力部と、
を備え、
前記第2回路部は、「1」を出力する前記第1回路部の総数と、「0」を出力する前記第1回路部の総数と、の差に基づいて、前記出力データとして「1」又は「0」を出力することを特徴とするニューラルネットワーク回路。

【請求項2】
請求項1に記載のニューラルネットワーク回路において、
前記第2回路部は、「1」を出力する前記第1回路部の前記総数と「0」を出力する前記第1回路部の前記総数との前記差が予め定められた閾値以上の場合に「1」を前記出力データとして出力し、前記差が前記閾値未満の場合に「0」を前記出力データとして出力することを特徴とするニューラルネットワーク回路。

【請求項3】
請求項2に記載のニューラルネットワーク回路において、
複数の前記入力データと同数の前記第1回路部を備え、
前記入力データの数及び前記第1回路部の数が、前記ニューラルネットワーク回路によりモデル化される脳機能に基づいて予め設定された数であることを特徴とするニューラルネットワーク回路。

【請求項4】
前記入力データがそれぞれ入力される前記第1回路部の数がn(nは2以上の自然数)である請求項3に記載のニューラルネットワーク回路をm個(mは2以上の自然数)備え、
各前記ニューラルネットワーク回路に対してn個の前記入力データが並列且つ共通に入力され、各前記ニューラルネットワーク回路から前記出力データをそれぞれ出力することを特徴とするニューラルネットワーク集積回路。

【請求項5】
前記nと前記mとが等しい請求項4に記載のニューラルネットワーク集積回路が直列に複数接続されてなり、
一の前記ニューラルネットワーク集積回路からの前記出力データが、当該ニューラルネットワーク集積回路の直後に接続された他の前記ニューラルネットワーク集積回路における前記入力データとされていることを特徴とするニューラルネットワーク集積回路。

【請求項6】
請求項4に記載のニューラルネットワーク集積回路をk個(kは2以上の自然数)備え、
各前記ニューラルネットワーク集積回路に対して前記n個の前記入力データが並列且つ共通に入力され、各前記ニューラルネットワーク集積回路から前記m個の前記出力データを並列にそれぞれ出力することを特徴とするニューラルネットワーク集積回路。

【請求項7】
複数の請求項4に記載のニューラルネットワーク集積回路と、
各前記ニューラルネットワーク集積回路をアレイ状に且つ相互に接続して各前記ニューラルネットワーク集積回路に対する前記入力データ及び前記出力データを切り換えるスイッチ部であって、前記脳機能に対応して当該スイッチ部における切換動作が予め設定されているスイッチ部と、
を備えることを特徴とするニューラルネットワーク集積回路。

【請求項8】
請求項2に記載のニューラルネットワーク回路において、
前記重み付け係数が、当該ニューラルネットワーク回路によりモデル化される脳機能に対応して予め設定されており、
前記記憶部は、
前記重み付け係数を記憶して前記出力部に出力する第1記憶部と、
前記脳機能に対応して予め設定された前記所定値を記憶して前記出力部に出力する第2記憶部と、
により構成されており、
前記出力部は、前記第1記憶部から出力される前記重み付け係数と前記入力データの値とが一致する場合に前記入力データの入力タイミングに対応したタイミングで「1」を出力し、前記出力される重み付け係数と前記入力データの値とが異なる場合に前記入力データの入力タイミングに対応したタイミングで「0」を出力し、前記第2記憶部から前記所定値が出力された場合に前記入力データの入力タイミングに対応したタイミングで当該所定値を出力することを特徴とするニューラルネットワーク回路。

【請求項9】
請求項8に記載のニューラルネットワーク回路において、
前記加算/適用機能における加算機能として、前記脳機能に対応して予め設定され且つ当該脳機能としての傾向をニューロンごとに示す整数である傾向係数であって、絶対値が0以上且つ前記入力データの数以下である傾向係数が、各前記乗算結果の加算結果に対して更に加算されるべき場合、当該傾向係数の絶対値に等しい数のいずれかの前記第1回路部に当該傾向係数が分けて入力されており、
当該傾向係数が分けて入力されている前記第1回路部は、前記所定値に応じて、各前記乗算結果の加算結果に対する当該傾向係数の更なる加算結果を前記第2回路部に出力し、
前記第2回路部は、前記傾向係数の更なる加算結果を各前記第1回路部について加算した合計値が正又は0であるとき「1」を前記出力データとして出力し、当該合計値が負であるとき「0」を前記出力データとして出力することを特徴とするニューラルネットワーク回路。

【請求項10】
請求項8に記載のニューラルネットワーク回路において、
前記脳機能に対応して予め設定され且つ当該脳機能としての傾向をニューロンごとに示す整数である傾向係数であって、絶対値が0以上且つ前記入力データの数以下である傾向係数を記憶する傾向係数記憶部を更に備え、
前記第2回路部は、各前記第1回路部からの前記乗算結果の加算結果に対して前記所定値に応じて前記傾向係数を更に加算した合計値が正又は0であるとき「1」を前記出力データとして出力し、当該合計値が負であるとき「0」を前記出力データとして出力することを特徴とするニューラルネットワーク回路。

【請求項11】
請求項8に記載のニューラルネットワーク回路において、
前記入力データの数が一であり、
前記出力データ、前記第1記憶部、前記第2記憶部、前記第1回路部及び前記第2回路部それぞれの数が、前記脳機能に対応して予め設定された二以上の数であり、
前記重み付け係数及び前記所定値のそれぞれが前記脳機能に対応して予め設定された値であり、
各前記第1回路部の前記出力部は、各前記出力データにそれぞれ対応する前記重み付け係数と前記入力データとに基づいて前記乗算結果を前記出力データごとにそれぞれ出力し、
各前記第2回路部は、
前記所定値が前記予め設定された値である場合において、「1」である前記乗算結果の総数から「0」である前記乗算結果の総数を減じた値が前記閾値以上であるとき、「1」を前記出力データとして出力し、前記所定値が前記予め設定された値である場合において、前記減じた値が前記閾値未満であるとき、「0」を前記出力データとして出力することを特徴とするニューラルネットワーク回路。

【請求項12】
請求項8に記載のニューラルネットワーク回路において、
前記出力データ及び前記第2回路部の数がそれぞれ一であり、
前記入力データ、前記第1記憶部、前記第2記憶部及び前記第1回路部それぞれの数が、前記脳機能に対応して予め設定された二以上の数であり、
前記重み付け係数及び前記所定値のそれぞれが前記脳機能に対応した値であり、
各前記第1回路部は、各前記入力データにそれぞれ対応する前記重み付け係数と当該各入力データとに基づいて各前記乗算結果を当該入力データごとにそれぞれ出力し、
前記第2回路部は、
前記所定値が前記予め設定された値である場合において、「1」である前記乗算結果の総数から「0」である前記乗算結果の総数を減じた値が前記閾値以上であるとき、「1」を前記出力データとして出力し、前記所定値が前記予め設定された値である場合において、前記減じた値が前記閾値未満であるとき、「0」を前記出力データとして出力することを特徴とするニューラルネットワーク回路。

【請求項13】
請求項11に記載のニューラルネットワーク回路と、
請求項12に記載のニューラルネットワーク回路と、
を備え、
一の入力データが入力される請求項11に記載の前記ニューラルネットワーク回路から出力される各出力データがそれぞれ、請求項12に記載の前記ニューラルネットワーク回路における各入力データとされており、
請求項12に記載の前記ニューラルネットワーク回路から一の出力データを出力することを特徴とするニューラルネットワーク集積回路。

【請求項14】
請求項13に記載のニューラルネットワーク集積回路において、
請求項11に記載のニューラルネットワーク回路と請求項12に記載の前記ニューラルネットワーク回路との間にレジスタ部を更に備え、
当該レジスタ部は、請求項11に記載のニューラルネットワーク回路から出力される各出力データを一基準クロック分だけバッファリングし、請求項12に記載の前記ニューラルネットワーク回路における各入力データとして請求項12に記載の当該ニューラルネットワーク回路に出力することを特徴とするニューラルネットワーク集積回路。

【請求項15】
複数の請求項13に記載のニューラルネットワーク集積回路が直列に接続されており、
一の当該ニューラルネットワーク集積回路からの一の前記出力データが、直後段の当該ニューラルネットワーク集積回路への一の前記入力データとされていることを特徴とするニューラルネットワーク集積回路。

【請求項16】
複数の請求項13に記載のニューラルネットワーク集積回路を備え、
当該複数の請求項13に記載のニューラルネットワーク集積回路のそれぞれに対して一の前記入力データが共通に入力されており、
当該複数の請求項13に記載のニューラルネットワーク集積回路からそれぞれ別個に前記出力データが一ずつ出力されることを特徴とするニューラルネットワーク集積回路。
国際特許分類(IPC)
画像

※ 画像をクリックすると拡大します。

JP2018518385thum.jpg
出願権利状態 公開
ライセンスをご希望の方、特許の内容に興味を持たれた方は、下記までご連絡ください


PAGE TOP

close
close
close
close
close
close
close