JP7475855B2 - ニューラルネットワークのコンボルーション演算を処理する方法及びその装置 - Google Patents
ニューラルネットワークのコンボルーション演算を処理する方法及びその装置 Download PDFInfo
- Publication number
- JP7475855B2 JP7475855B2 JP2019232816A JP2019232816A JP7475855B2 JP 7475855 B2 JP7475855 B2 JP 7475855B2 JP 2019232816 A JP2019232816 A JP 2019232816A JP 2019232816 A JP2019232816 A JP 2019232816A JP 7475855 B2 JP7475855 B2 JP 7475855B2
- Authority
- JP
- Japan
- Prior art keywords
- feature map
- kernel
- output
- processor
- region
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/15—Correlation function computation including computation of convolution operations
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/15—Correlation function computation including computation of convolution operations
- G06F17/153—Multidimensional correlation or convolution
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0495—Quantised networks; Sparse networks; Compressed networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Neurology (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Image Analysis (AREA)
- Complex Calculations (AREA)
Description
図1は、一実施形態によるニューラルネットワークのアーキテクチャについて説明するための図面である。
他の例として、ニューラルネットワーク1は、入力イメージの代わりに、入力ソース文章(input source sentence)(例えば、音声入力)を受信することができる。そのような例において、カーネルと共に、入力ソース文章に対して、コンボルーション演算が行われ、その結果、フィーチャマップが出力される。このとき、生成された出力フィーチャマップは、入力フィーチャマップとして、さらにカーネルとのコンボルーション演算が行われ、新たなフィーチャマップが出力される。そのように、コンボルーション動作が反復して遂行される結果、ニューラルネットワーク1を介して、入力ソース文章の特徴に係わる認識結果が出力される。
一方、図2A及び図2Bにおいては、二次元コンボルーション演算について説明されたが、コンボルーション演算は、複数チャネルの入力フィーチャマップ、カーネル、出力フィーチャマップが存在する三次元コンボルーション演算に該当する。それについては、図2Cを参照して説明する。
図3は、一実施形態によるニューラルネットワーク装置のハードウェア構成を図示したブロック図である。
プロセッサ110は、コンボルーション演算のための演算ユニットと、キャッシュ(cache)機能を担当するオンチップ(on-chip)メモリを含んでもよい。
同様に、プロセッサ110は、第1領域及び第2領域とは異なる領域である入力フィーチャマップ内第N領域(Nは、3以上の自然数)の再使用を基に、カーネル内ウェイトそれぞれと第N領域との演算を行い、第N部分出力フィーチャマップを生成することができる。従って、プロセッサ110は、出力フィーチャマップ上において、第1部分出力フィーチャマップないし第N部分出力フィーチャマップを累算し、出力フィーチャマップを生成することができる。
プロセッサ110は、カーネルの一部領域に限定し、入力フィーチャマップの1領域と、カーネルの一部領域との演算を行い、部分出力フィーチャマップを生成することができる。プロセッサ110は、カーネルの一部領域に限定して演算を進めるために、部分出力フィーチャマップのサイズを小さくすることができ、結果として、部分出力フィーチャマップに対するバッファサイズを小さくすることができる。例えば、入力フィーチャマップの1領域のサイズが1×10ピクセル領域であり、カーネルのサイズが3×3ピクセル領域である場合、演算結果である部分出力フィーチャマップは、3×12ピクセル領域を有さなければならない。その場合、プロセッサ110は、カーネルのサイズを1×3ピクセル領域に限定し、コンボルーション演算を進めることができ、その結果、部分出力フィーチャマップは、1×12ピクセル領域を有するが、部分出力フィーチャマップに対するバッファサイズを小さくすることができる。
また、プロセッサ110は、第1領域510とは異なる入力フィーチャマップ501内第N領域(Nは、2以上の自然数である)についても、第N領域の再使用を基に、カーネル520内ウェイトそれぞれと第N領域との演算を行い、出力値を生成することができ、ウェイトのカーネル520内位置を基に設定された第N部分出力フィーチャマップ内位置において、出力値を累算し、第N部分出力フィーチャマップを生成することができる。次に、プロセッサ110は、生成された第N部分出力フィーチャマップを出力フィーチャマップ531上で累算することができる。結果として、プロセッサ110は、第1部分出力フィーチャマップないし第N部分出力フィーチャマップを、出力フィーチャマップ531上で累算し、出力フィーチャマップ531を生成することができる。言い換えれば、プロセッサ110は、第1部分出力フィーチャマップないし第N部分出力フィーチャマップの出力値が充填された出力フィーチャマップ531を生成することができる。また、図5においては、説明の便宜上、計9回のサイクル間カーネル520のウェイトそれぞれと、第1領域510との演算が行われるように図示されているが、ゼロ値を有するウェイトと、第1領域510との演算は、省略される。言い換えれば、プロセッサ110は、カーネル520内において、非ゼロ(non-zero)値を有するウェイトの個数だけカーネル520のウェイトそれぞれと、第1領域510との演算を行うことができる。
36個の加算器及び累算演算器のそれぞれは、36個のマルチプレクサそれぞれから選択される出力値を累算することができる。従って、36個の累算演算器それぞれは、計9回のサイクル間出力値を累算した結果、36個のピクセル値で構成された第1部分出力フィーチャマップ530を生成することができる。
1番目サイクルにおいて、プロセッサ110は、第1領域810と、カーネル820の第1ウェイト822との演算を行い、第1出力値を生成することができ、カーネル820内第1ウェイト822の位置を基に設定された第1部分出力フィーチャマップ830内位置において、第1出力値を累算することができる。言い換えれば、プロセッサ110は、第1出力値を、第1部分出力フィーチャマップ830内領域832において累算することができる。
従って、図8と比較するとき、図9においてプロセッサ110は、カーネルの一部領域に限定して演算を進めた結果、部分出力フィーチャマップのサイズを小さくすることができ、結果として、部分出力フィーチャマップを保存するためのバッファのサイズを小さくすることができる。
具体的には、第1出力ユニット1122の第2バッファは、複数の演算ユニット1112,1114,1116それぞれから、必要とする部分出力フィーチャマップを受信することができ、受信された部分出力フィーチャマップを累算し、出力フィーチャマップの第1領域OFM_1を生成することができる。例えば、第1出力ユニット1122の第2バッファは、第1演算ユニット1112のバッファ1から第(1-1)部分出力フィーチャマップを受信することができ、第2演算ユニット1112のバッファ1から第(2-1)部分出力フィーチャマップを受信することができ、第N演算ユニット1116のバッファ1から、第(N-1)部分出力フィーチャマップを受信することができる。また、第1出力ユニット1122の第2バッファは、受信された第(1-1)部分出力フィーチャマップないし第(N-1)部分出力フィーチャマップを累算し、出力フィーチャマップの第1領域OFM_1を生成することができる。次に、第1出力ユニット1122の出力処理器は、出力フィーチャマップの第1領域OFM_1に対するピクセル処理を行うことができ、ピクセル処理された出力フィーチャマップの第1領域OFM_1をメモリ120に出力することができる。
従って、複数の演算ユニット1412ないし1418それぞれは、入力フィーチャマップの1領域と、カーネルとの演算を行うとき、ロードバランシング(load balancing)のために、まず演算を完了したプロセッシングユニットが、他のプロセッシングユニットの演算の代わりをするように制御することができる。具体的には、第1演算ユニット1412の第3プロセッシングユニットが、第1入力IFM0と第3カーネルとの演算を介して、第(1-3)部分出力フィーチャマップを生成した後、第3プロセッシングユニットは、第4プロセッシングユニットが演算する第1入力IFM0と第4カーネルとの演算のうち一部に対して、代わりに演算することができる。その結果、図面(1530)のように、全体処理時間が短縮される。
100 ニューラルネットワーク装置
110 プロセッサ
120 メモリ
Claims (18)
- ニューラルネットワーク装置であって、
少なくとも1つのプログラムが保存されたメモリと、
前記少なくとも1つのプログラムを実行することにより、ニューラルネットワークのコンボルーション演算を処理するプロセッサと、を含み、
前記プロセッサは、
カーネルのウェイトそれぞれと入力フィーチャマップとの演算を行い、出力値を生成し、
前記ウェイトの前記カーネル内位置を基に設定された出力フィーチャマップ内位置において、前記出力値を累算し、前記出力フィーチャマップを生成する、
ように構成されており、
前記プロセッサは、
前記入力フィーチャマップの複数領域のうち互いに異なる領域と、前記カーネルとの演算を行い、部分出力フィーチャマップを生成する複数の演算ユニット、を含み、
前記複数の演算ユニットそれぞれは、互いに独立して並列的に、前記カーネルと前記互いに異なる領域との演算を行う、
ニューラルネットワーク装置。 - 前記プロセッサは、
前記入力フィーチャマップと、前記カーネルの第1ウェイトとの演算を行い、第1出力値を生成し、
前記第1ウェイトの前記カーネル内位置を基に設定された前記出力フィーチャマップ内第1位置において、前記第1出力値を累算し、
前記入力フィーチャマップと、前記カーネルの第2ウェイトとの演算を行い、第2出力値を生成し、
前記第2ウェイトの前記カーネル内位置を基に設定された前記出力フィーチャマップ内第2位置において、前記第2出力値を累算する、
ように構成されている、請求項1に記載のニューラルネットワーク装置。 - 前記プロセッサは、
前記入力フィーチャマップの第1領域と、前記カーネルのウェイトそれぞれとの演算を行い、第1出力値を生成し、
前記ウェイトの前記カーネル内位置を基に設定された第1部分出力フィーチャマップ内位置において、前記第1出力値を累算し、前記第1部分出力フィーチャマップを生成し、
前記出力フィーチャマップ上において、前記第1部分出力フィーチャマップを累算する、
ように構成されている、請求項1に記載のニューラルネットワーク装置。 - 前記プロセッサは、
前記第1領域とは異なる領域である前記入力フィーチャマップの第2領域と、前記カーネル内ウェイトそれぞれとの演算を行い、第2出力値を生成し、
前記ウェイトの前記カーネル内位置を基に設定された第2部分出力フィーチャマップ内位置において、前記第2出力値を累算し、前記第2部分出力フィーチャマップを生成し、
前記出力フィーチャマップ上において、前記第2部分出力フィーチャマップを累算する、
ように構成されている、請求項3に記載のニューラルネットワーク装置。 - 記第1領域は、前記入力フィーチャマップ内においてnピクセル、(n×m)ピクセル、(n×m×l)ピクセルのうち少なくとも一つによって構成された領域であり、
n、m、及びlは、1以上の自然数である、
ことを特徴とする請求項3に記載のニューラルネットワーク装置。 - 前記プロセッサは、
前記カーネル内第1ウェイトがゼロである場合、前記入力フィーチャマップと前記第1ウェイトとの演算を省略する、
ように構成されている、請求項1に記載のニューラルネットワーク装置。 - 前記プロセッサは、
前記メモリから圧縮された入力フィーチャマップを、ストリームのように連続的に読み取り、前記カーネルのウェイトそれぞれと、前記圧縮された入力フィーチャマップとの演算を行う、
ように構成されている、請求項1に記載のニューラルネットワーク装置。 - 前記プロセッサは、
前記部分出力フィーチャマップのうち、必要とする部分出力フィーチャマップを累算し、前記出力フィーチャマップの複数領域それぞれを生成する複数の出力ユニット、を含む、
ことを特徴とする請求項1に記載のニューラルネットワーク装置。 - 前記ニューラルネットワーク装置は、さらに、
バス、を含み、
前記複数の出力ユニットは、
前記バスを介して、前記複数の演算ユニットから、必要とする出力フィーチャマップを受信する、
ことを特徴とする請求項8に記載のニューラルネットワーク装置。 - 前記複数の演算ユニットそれぞれは、
前記複数領域における1領域と、複数のカーネルそれぞれとの演算を行い、部分出力フィーチャマップを生成する複数のプロセッシングユニットを含む、
ことを特徴とする請求項1に記載のニューラルネットワーク装置。 - 前記複数のプロセッシングユニットは、
前記1領域と第1カーネルとの演算を行う第1プロセッシングユニットと、
前記1領域と第2カーネルとの演算を行う第2プロセッシングユニットと、を含み、
前記第1プロセッシングユニットは、前記1領域と前記第1カーネルとの演算を完了した後で、前記1領域と前記第2カーネルとの演算のうち一部を、前記第2プロセッシングユニットの代わりに遂行する、
ことを特徴とする請求項10に記載のニューラルネットワーク装置。 - ニューラルネットワークのコンボルーション演算を処理する方法であって、
ニューラルネットワーク装置におけるプロセッサにより、カーネルのウェイトそれぞれと入力フィーチャマップとの演算を行い、出力値を生成する段階と、
前記プロセッサにより、前記ウェイトの前記カーネル内位置を基に設定された出力フィーチャマップ内位置において、前記出力値を累算し、前記出力フィーチャマップを生成する段階と、
前記プロセッサにより、前記入力フィーチャマップの複数領域のうち互いに異なる領域と、前記カーネルとの演算を行い、部分出力フィーチャマップを生成する段階と、
を含み、
前記部分出力フィーチャマップを生成する段階では、互いに独立して並列的に、前記カーネルと前記互いに異なる領域との演算を行う、
方法。 - 前記出力値を生成する段階は、前記プロセッサにより、
前記入力フィーチャマップと、前記カーネルの第1ウェイトとの演算を行い、第1出力値を生成する段階と、
前記入力フィーチャマップと、前記カーネルの第2ウェイトとの演算を行い、第2出力値を生成する段階と、を含み、
前記出力フィーチャマップを生成する段階は、前記プロセッサにより、
前記第1ウェイトの前記カーネル内位置を基に設定された前記出力フィーチャマップ内第1位置において、前記第1出力値を累算する段階と、
前記第2ウェイトの前記カーネル内位置を基に設定された前記出力フィーチャマップ内第2位置において、前記第2出力値を累算する段階と、
を含む、ことを特徴とする請求項12に記載の方法。 - 前記出力値を生成する段階は、前記プロセッサにより、
前記入力フィーチャマップの第1領域と、前記カーネルのウェイトそれぞれとの演算を行い、第1出力値を生成する段階と、
前記第1領域とは異なる領域である前記入力フィーチャマップの第2領域と、前記カーネル内ウェイトそれぞれとの演算を行い、第2出力値を生成する段階と、を含み、
前記出力フィーチャマップを生成する段階は、前記プロセッサにより、
前記ウェイトの前記カーネル内位置を基に設定された第1部分出力フィーチャマップ内位置において、前記第1出力値を累算し、前記第1部分出力フィーチャマップを生成し、前記出力フィーチャマップ上において、前記第1部分出力フィーチャマップを累算する段階と、
前記ウェイトの前記カーネル内位置を基に設定された第2部分出力フィーチャマップ内位置において、前記第2出力値を累算し、前記第2部分出力フィーチャマップを生成し、前記出力フィーチャマップ上において、前記第2部分出力フィーチャマップを累算する段階と、
を含む、ことを特徴とする請求項12に記載の方法。 - 前記出力値を生成する段階は、前記プロセッサにより、
前記カーネル内第1ウェイトがゼロである場合に、前記入力フィーチャマップと前記第1ウェイトとの演算を省略する、
ことを特徴とする請求項12に記載の方法。 - 前記出力値を生成する段階は、前記プロセッサにより、
圧縮された入力フィーチャマップを、ストリームのように連続的に読み取り、前記カーネルのウェイトそれぞれと、前記圧縮された入力フィーチャマップとの演算を行う段階、
を含む、ことを特徴とする請求項12に記載の方法。 - 前記プロセッサにより、前記部分出力フィーチャマップのうち、必要とする部分出力フィーチャマップを累算し、前記出力フィーチャマップの複数領域それぞれを生成する段階、
を含む、ことを特徴とする請求項12に記載の方法。 - 請求項12ないし17のうちいずれか一項に記載の方法をコンピュータで実行させるためのプログラムを記録したコンピュータで読み取り可能な記録媒体。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020180171132A KR102861760B1 (ko) | 2018-12-27 | 2018-12-27 | 뉴럴 네트워크의 컨볼루션 연산을 처리하는 방법 및 장치 |
| KR10-2018-0171132 | 2018-12-27 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2020107338A JP2020107338A (ja) | 2020-07-09 |
| JP7475855B2 true JP7475855B2 (ja) | 2024-04-30 |
Family
ID=68887279
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2019232816A Active JP7475855B2 (ja) | 2018-12-27 | 2019-12-24 | ニューラルネットワークのコンボルーション演算を処理する方法及びその装置 |
Country Status (5)
| Country | Link |
|---|---|
| US (2) | US11769037B2 (ja) |
| EP (1) | EP3674987A1 (ja) |
| JP (1) | JP7475855B2 (ja) |
| KR (1) | KR102861760B1 (ja) |
| CN (1) | CN111382859B (ja) |
Families Citing this family (20)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102178932B1 (ko) * | 2018-12-19 | 2020-11-18 | 고려대학교 산학협력단 | 출력 특징 맵의 0에 대한 연산을 스킵할 수 있는 합성곱 신경망의 연산 장치 및 그 동작 방법 |
| KR102861760B1 (ko) * | 2018-12-27 | 2025-09-17 | 삼성전자주식회사 | 뉴럴 네트워크의 컨볼루션 연산을 처리하는 방법 및 장치 |
| CN111814972B (zh) * | 2020-07-08 | 2024-02-02 | 上海雪湖科技有限公司 | 一种基于fpga的神经网络卷积运算加速方法 |
| CN111860778B (zh) * | 2020-07-08 | 2025-05-13 | 北京灵汐科技有限公司 | 一种全加卷积方法和装置 |
| CN111882050B (zh) * | 2020-07-20 | 2024-02-06 | 复旦大学 | 基于fpga的用于提高bcpnn速度的设计方法 |
| CN112200295B (zh) * | 2020-07-31 | 2023-07-18 | 星宸科技股份有限公司 | 稀疏化卷积神经网络的排序方法、运算方法、装置及设备 |
| CN114187540B (zh) * | 2020-08-25 | 2025-05-02 | 数网金融有限公司 | 一种物体识别方法、装置、服务器及计算机可读存储介质 |
| CN116134831B (zh) * | 2020-09-14 | 2026-01-02 | 索尼半导体解决方案公司 | 成像元件和成像装置 |
| EP4191477A4 (en) * | 2020-10-15 | 2024-01-24 | Samsung Electronics Co., Ltd. | Electronic device and control method for electronic device |
| KR20220071605A (ko) * | 2020-11-24 | 2022-05-31 | 삼성전자주식회사 | 신경망 장치 및 신경망 장치의 동작 방법 |
| KR102793525B1 (ko) | 2020-12-22 | 2025-04-09 | 삼성전자주식회사 | 컨벌루션 연산을 위한 데이터 전송 방법, 페처 및 컨벌루션 연산 장치 |
| WO2022143916A1 (zh) * | 2020-12-31 | 2022-07-07 | 中科寒武纪科技股份有限公司 | 执行神经网络模型的数据处理装置、方法及相关产品 |
| US20220309344A1 (en) * | 2021-03-25 | 2022-09-29 | Qualcomm Incorporated | Broadcasted residual learning |
| JP7622563B2 (ja) * | 2021-06-17 | 2025-01-28 | 富士通株式会社 | データ配置プログラム、プロセッサ、及びデータ配置方法 |
| US20220414457A1 (en) * | 2021-06-29 | 2022-12-29 | Microsoft Technology Licensing, Llc | Selective data structure encoding for deep neural network training |
| US20220101091A1 (en) * | 2021-10-26 | 2022-03-31 | Intel Corporation | Near memory sparse matrix computation in deep neural network |
| US11762946B1 (en) * | 2022-09-23 | 2023-09-19 | Recogni Inc. | Systems for using shifter circuit and 3×3 convolver units to emulate functionality of larger sized convolver units |
| CN119226676A (zh) * | 2023-06-30 | 2024-12-31 | 华为技术有限公司 | 计算核和数据处理方法 |
| KR20250082802A (ko) * | 2023-11-30 | 2025-06-09 | 성균관대학교산학협력단 | 커널 형상 제어를 이용한 컨볼루션 연산 방법 및 장치 |
| TWI882578B (zh) * | 2023-12-12 | 2025-05-01 | 大陸商星宸科技股份有限公司 | 資料填充裝置及資料填充方法 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20160358069A1 (en) | 2015-06-03 | 2016-12-08 | Samsung Electronics Co., Ltd. | Neural network suppression |
| US20180315155A1 (en) | 2017-04-27 | 2018-11-01 | Apple Inc. | Configrable convolution engine for interleaved channel data |
Family Cites Families (20)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10460230B2 (en) * | 2015-06-04 | 2019-10-29 | Samsung Electronics Co., Ltd. | Reducing computations in a neural network |
| CN108603922A (zh) * | 2015-11-29 | 2018-09-28 | 阿特瑞斯公司 | 自动心脏体积分割 |
| US20180046898A1 (en) | 2016-08-11 | 2018-02-15 | Vivante Corporation | Zero Coefficient Skipping Convolution Neural Network Engine |
| KR102631381B1 (ko) | 2016-11-07 | 2024-01-31 | 삼성전자주식회사 | 컨볼루션 신경망 처리 방법 및 장치 |
| KR102868989B1 (ko) | 2016-11-28 | 2025-10-10 | 삼성전자주식회사 | 컨볼루션 처리 장치 및 방법 |
| KR102642853B1 (ko) * | 2017-01-05 | 2024-03-05 | 한국전자통신연구원 | 컨볼루션 회로, 그것을 포함하는 어플리케이션 프로세서 및 그것의 동작 방법 |
| KR102390379B1 (ko) * | 2017-03-06 | 2022-04-26 | 삼성전자주식회사 | 뉴럴 네트워크 프로세서, 뉴럴 네트워크 프로세서의 동작 방법, 및 뉴럴 네트워크 장치 |
| KR102415508B1 (ko) * | 2017-03-28 | 2022-07-01 | 삼성전자주식회사 | 컨볼루션 신경망 처리 방법 및 장치 |
| EP3401840A1 (en) * | 2017-05-12 | 2018-11-14 | Frobas GmbH | Compressed data streams in object recognition |
| EP3657398B1 (en) * | 2017-05-23 | 2025-10-08 | Shanghai Cambricon Information Technology Co., Ltd | Processing method and accelerating device |
| US10572963B1 (en) * | 2017-07-14 | 2020-02-25 | Synapse Technology Corporation | Detection of items |
| CN108228696B (zh) * | 2017-08-31 | 2021-03-23 | 深圳市商汤科技有限公司 | 人脸图像检索方法和系统、拍摄装置、计算机存储介质 |
| CN107657581B (zh) * | 2017-09-28 | 2020-12-22 | 中国人民解放军国防科技大学 | 一种卷积神经网络cnn硬件加速器及加速方法 |
| CN107862650B (zh) * | 2017-11-29 | 2021-07-06 | 中科亿海微电子科技(苏州)有限公司 | 加速计算二维图像cnn卷积的方法 |
| US10628705B2 (en) * | 2018-03-29 | 2020-04-21 | Qualcomm Incorporated | Combining convolution and deconvolution for object detection |
| CN108985449B (zh) * | 2018-06-28 | 2021-03-09 | 中国科学院计算技术研究所 | 一种对卷积神经网络处理器的控制方法及装置 |
| CN108875925A (zh) * | 2018-06-28 | 2018-11-23 | 中国科学院计算技术研究所 | 一种针对卷积神经网络处理器的控制方法及装置 |
| CN108875917A (zh) * | 2018-06-28 | 2018-11-23 | 中国科学院计算技术研究所 | 一种用于卷积神经网络处理器的控制方法及装置 |
| US10853694B2 (en) * | 2018-12-04 | 2020-12-01 | Apical Ltd. | Processing input data in a convolutional neural network |
| KR102861760B1 (ko) * | 2018-12-27 | 2025-09-17 | 삼성전자주식회사 | 뉴럴 네트워크의 컨볼루션 연산을 처리하는 방법 및 장치 |
-
2018
- 2018-12-27 KR KR1020180171132A patent/KR102861760B1/ko active Active
-
2019
- 2019-07-18 CN CN201910653551.0A patent/CN111382859B/zh active Active
- 2019-09-03 US US16/558,493 patent/US11769037B2/en active Active
- 2019-12-12 EP EP19215554.7A patent/EP3674987A1/en active Pending
- 2019-12-24 JP JP2019232816A patent/JP7475855B2/ja active Active
-
2023
- 2023-08-22 US US18/453,615 patent/US12056591B2/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20160358069A1 (en) | 2015-06-03 | 2016-12-08 | Samsung Electronics Co., Ltd. | Neural network suppression |
| US20180315155A1 (en) | 2017-04-27 | 2018-11-01 | Apple Inc. | Configrable convolution engine for interleaved channel data |
Also Published As
| Publication number | Publication date |
|---|---|
| US20230394277A1 (en) | 2023-12-07 |
| CN111382859A (zh) | 2020-07-07 |
| KR20200081044A (ko) | 2020-07-07 |
| US11769037B2 (en) | 2023-09-26 |
| EP3674987A1 (en) | 2020-07-01 |
| US20200210806A1 (en) | 2020-07-02 |
| US12056591B2 (en) | 2024-08-06 |
| CN111382859B (zh) | 2025-05-02 |
| KR102861760B1 (ko) | 2025-09-17 |
| JP2020107338A (ja) | 2020-07-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP7475855B2 (ja) | ニューラルネットワークのコンボルーション演算を処理する方法及びその装置 | |
| KR102637733B1 (ko) | 뉴럴 네트워크 프로세서 및 그것의 컨볼루션 연산 방법 | |
| JP6987860B2 (ja) | ハードウェアにおけるカーネルストライドの実行 | |
| JP7132824B2 (ja) | ニューラルネットワークにおいてデコンボルーション演算を実行する装置及びその方法 | |
| EP3496008B1 (en) | Method and apparatus for processing convolution operation in neural network | |
| US11977928B2 (en) | Apparatus and method for performing a recognition operation in a neural network | |
| US11112980B2 (en) | Method and apparatus for allocating memory space for driving neural network | |
| US20240095532A1 (en) | Method and apparatus for processing data | |
| TW202123093A (zh) | 實行卷積運算的系統及方法 | |
| WO2020073211A1 (zh) | 运算加速器、处理方法及相关设备 | |
| KR102452951B1 (ko) | 뉴럴 네트워크의 컨볼루션 연산을 수행하는 방법 및 장치 | |
| US12361571B2 (en) | Method and apparatus with convolution neural network processing using shared operand | |
| EP3093757B1 (en) | Multi-dimensional sliding window operation for a vector processor | |
| CN114118348A (zh) | 加速器、操作加速器的方法以及包括加速器的电子装置 | |
| US12014505B2 (en) | Method and apparatus with convolution neural network processing using shared operand | |
| US20240111828A1 (en) | In memory computing processor and method thereof with direction-based processing | |
| CN117063182A (zh) | 一种数据处理方法和装置 | |
| KR20200072308A (ko) | 뉴럴 네트워크에서 컨볼루션 연산을 수행하는 방법 및 장치 | |
| KR20210082970A (ko) | 컨볼루션 연산을 수행하는 방법 및 장치 | |
| KR102859457B1 (ko) | 다이나믹 컨볼루션 연산 수행 방법 및 장치 | |
| US20240094988A1 (en) | Method and apparatus with multi-bit accumulation | |
| CN117217269A (zh) | 一种神经网络加速器、加速方法以及装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221222 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231115 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231121 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240209 |
|
| 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: 20240402 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240417 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7475855 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |