JP6987860B2 - ハードウェアにおけるカーネルストライドの実行 - Google Patents
ハードウェアにおけるカーネルストライドの実行 Download PDFInfo
- Publication number
- JP6987860B2 JP6987860B2 JP2019524156A JP2019524156A JP6987860B2 JP 6987860 B2 JP6987860 B2 JP 6987860B2 JP 2019524156 A JP2019524156 A JP 2019524156A JP 2019524156 A JP2019524156 A JP 2019524156A JP 6987860 B2 JP6987860 B2 JP 6987860B2
- Authority
- JP
- Japan
- Prior art keywords
- tensor
- neural network
- convolutional neural
- network layer
- calculation unit
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Neurology (AREA)
- Complex Calculations (AREA)
- Image Analysis (AREA)
- Feedback Control In General (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
- Amplifiers (AREA)
Description
本明細書は、ハードウェアにおけるニューラルネットワーク推論の計算に関する。
一般に、この明細書はニューラルネットワーク推論を計算する専用ハードウェア回路について記載する。
詳細な説明
複数の層を有するニューラルネットワークを用いて推論を計算することができる。たとえば、入力が与えられると、ニューラルネットワークはその入力に対する推論を計算することができる。ニューラルネットワークは、ニューラルネットワークの各層を通って入力を処理することによって、この推論を計算する。各層は入力を受け取り、その層に対する重みのセットに従って入力を処理して出力を生成する。
例1:ハードウェア回路上でニューラルネットワークを処理するよう要求を受け取ることを備え、ニューラルネットワークは、1より大きいストライドを有する第1の畳み込みニューラルネットワーク層を含み、さらに、これに応答して、ハードウェア回路によって実行されると、ハードウェア回路に、ニューラルネットワークによる入力テンソルの処理中に、動作を実行することによって第1の畳み込みニューラルネットワーク層の出力と等価な層出力テンソルを生成させる命令を生成することを備え、動作は、第1の畳み込みニューラルネットワーク層への入力テンソルを、1に等しいストライドを有するがそれ以外は第1の畳み込みニューラルネットワーク層と同等である第2の畳み込みニューラルネットワーク層を用いて処理することにより、第1のテンソルを生成することと、第2の畳み込みニューラルネットワーク層が第1の畳み込みニューラルネットワーク層のストライドを有する場合には生成されなかったであろう第1のテンソルの要素を零出力して、第2のテンソルを生成することと、第2のテンソルに対して最大プーリングを実行して層出力テンソルを生成することとを含む、方法。
Claims (13)
- コンピュータにより実現される方法であって、
専用ハードウェア回路上に畳み込みニューラルネットワークを実装する要求を受け取り、前記畳み込みニューラルネットワークを用いて、前記専用ハードウェア回路に命令を実行させることによって、ニューラルネットワーク入力を受け取って処理することを備え、前記畳み込みニューラルネットワークは、1より大きいストライドを有する第1の畳み込みニューラルネットワーク層を含み、前記専用ハードウェア回路は、ニューラルネットワーク計算を実行するための集積回路であり、ベクトル-行列乗算を実行するようにされた行列計算ユニットと、前記行列計算ユニットの出力に対してプーリングを実行するようにされたプーリング回路を含むベクトル計算ユニットとを含み、前記方法はさらに、
前記専用ハードウェア回路によって実行されると、前記専用ハードウェア回路に、前記畳み込みニューラルネットワークによる入力テンソルの処理中に、動作を実行することによって前記第1の畳み込みニューラルネットワーク層の出力と等価な層出力テンソルを生成させる命令を生成することを備え、前記動作は、
前記行列計算ユニットが、前記第1の畳み込みニューラルネットワーク層への前記入力テンソルを、1に等しいストライドを有するがそれ以外は前記第1の畳み込みニューラルネットワーク層と同等である第2の畳み込みニューラルネットワーク層を用いて処理することにより、第1のテンソルを生成することと、
前記ベクトル計算ユニットが、前記第2の畳み込みニューラルネットワーク層が前記第1の畳み込みニューラルネットワーク層のストライドを有する場合には生成されなかったであろう前記第1のテンソルの要素を零出力して、第2のテンソルを生成することと、
前記ベクトル計算ユニットの前記プーリング回路が、前記第2のテンソルに対して最大プーリングを実行して前記層出力テンソルを生成することとを含み、
前記ベクトル計算ユニットが前記第1のテンソルの要素を零出力することは、
前記ベクトル計算ユニットがマスキングテンソルと前記第1のテンソルとの要素ごとの乗算を実行して前記第2のテンソルを生成することを含み、前記マスキングテンソルは、(i)前記第2の畳み込みニューラルネットワーク層が前記第1の畳み込みニューラルネットワーク層のストライドを有する場合には生成されなかったであろう前記第1のテンソルの要素に対応する前記マスキングテンソルの各要素位置において0を含み、(ii)前記マスキングテンソルの各他の要素位置において1を含む、コンピュータにより実現される方法。 - 前記ベクトル計算ユニットが前記第1のテンソルの要素を零出力することは、
前記第1のテンソルの要素のサブセットに0を乗算することと、
前記サブセットに含まれていない前記第1のテンソルの要素に1を乗算することとを含み、
前記サブセットは、前記第2の畳み込みニューラルネットワーク層が前記第1の畳み込みニューラルネットワーク層のストライドを有する場合には生成されなかったであろう前記第1のテンソルの要素に対応する前記マスキングテンソルの各要素からなる、請求項1に記載の方法。 - 前記マスキングテンソルは、前記専用ハードウェア回路によってアクセス可能なメモリに格納される、請求項1または2に記載の方法。
- コンピュータにより実現される方法であって、
専用ハードウェア回路上に畳み込みニューラルネットワークを実装する要求を受け取り、前記畳み込みニューラルネットワークを用いて、前記専用ハードウェア回路に命令を実行させることによって、ニューラルネットワーク入力を受け取って処理することを備え、前記畳み込みニューラルネットワークは、1より大きいストライドを有する第1の畳み込みニューラルネットワーク層を含み、前記専用ハードウェア回路は、ニューラルネットワーク計算を実行するための集積回路であり、ベクトル−行列乗算を実行するようにされた行列計算ユニットと、前記行列計算ユニットの出力に対してプーリングを実行するようにされたプーリング回路を含むベクトル計算ユニットとを含み、前記方法はさらに、
前記専用ハードウェア回路によって実行されると、前記専用ハードウェア回路に、前記畳み込みニューラルネットワークによる入力テンソルの処理中に、動作を実行することによって前記第1の畳み込みニューラルネットワーク層の出力と等価な層出力テンソルを生成させる命令を生成することを備え、前記動作は、
前記行列計算ユニットが、前記第1の畳み込みニューラルネットワーク層への前記入力テンソルを、1に等しいストライドを有するがそれ以外は前記第1の畳み込みニューラルネットワーク層と同等である第2の畳み込みニューラルネットワーク層を用いて処理することにより、第1のテンソルを生成することと、
前記ベクトル計算ユニットが、前記第2の畳み込みニューラルネットワーク層が前記第1の畳み込みニューラルネットワーク層のストライドを有する場合には生成されなかったであろう前記第1のテンソルの要素を零出力して、第2のテンソルを生成することと、
前記ベクトル計算ユニットの前記プーリング回路が、前記第2のテンソルに対して最大プーリングを実行して前記層出力テンソルを生成することとを含み、
前記ベクトル計算ユニットが前記第1のテンソルの要素を零出力することは、
前記ベクトル計算ユニットが、第1のマスキングテンソルと前記第1のテンソルとの要素ごとの乗算を実行して、修正された第1のテンソルを生成することを含み、前記第1のマスキングテンソルは、(i)前記第2の畳み込みニューラルネットワーク層が前記第1の畳み込みニューラルネットワーク層のストライドを有する場合には生成されなかったであろう前記第1のテンソルの要素に対応する前記第1のマスキングテンソルの各要素位置において0を含み、(ii)前記第2の畳み込みニューラルネットワーク層が前記第1の畳み込みニューラルネットワーク層のストライドを有する場合には生成されたであろう前記第1のテンソルの要素に対応する前記第1のマスキングテンソルの各要素位置においてそれぞれの非0値を含み、前記ベクトル計算ユニットが前記第1のテンソルの要素を零出力することはさらに、
前記ベクトル計算ユニットが第2のマスキングテンソルと前記修正された第1のテンソルとの要素ごとの乗算を実行することを含み、前記第2のマスキングテンソルは、前記第2の畳み込みニューラルネットワーク層が前記第1の畳み込みニューラルネットワーク層のストライドを有する場合に生成されるであろう前記第1のテンソルの要素に対応する各要素位置において、前記第1のマスキングテンソルの前記それぞれの非0値の逆数を含む、コンピュータにより実現される方法。 - 前記第1のマスキングテンソルおよび前記第2のマスキングテンソルは、前記専用ハードウェア回路によってアクセス可能なメモリに格納される、請求項4に記載の方法。
- 1より大きい複数のストライドにそれぞれ対応するように、複数のマスキングテンソルが前記メモリに格納され、
前記方法はさらに、前記複数のマスキングテンソルの中から、前記第1の畳み込みニューラルネットワーク層のストライドに対応するマスキングテンソルを選択することを備える、請求項5に記載の方法。 - 前記ベクトル計算ユニットの前記プーリング回路が最大プーリングを実行することは、前記第1の畳み込みニューラルネットワーク層のストライドによって定義される前記第2のテンソルの1つまたは複数のウィンドウの各々について、前記ウィンドウ内の要素の最大値要素を取得することを含む、請求項1〜6のいずれか1項に記載の方法。
- 前記第2のテンソルの前記1つまたは複数のウィンドウの各々は、前記第1の畳み込みニューラルネットワーク層のストライドに対応する次元を有する矩形ウィンドウであり、前記第2のテンソルの異なる要素を含む、請求項7に記載の方法。
- 前記ベクトル計算ユニットの前記プーリング回路が最大プーリングを実行することは、前記第2のテンソルの要素の1つまたは複数のサブセットの各々について、前記サブセットの最大値要素を取得することを含む、請求項1〜8のいずれか1項に記載の方法。
- 前記第1の畳み込みニューラルネットワーク層は、前記畳み込みニューラルネットワーク内の複数の畳み込みニューラルネットワーク層のうちの第1のニューラルネットワーク層であり、前記入力テンソルは、デジタル画像の、前記デジタル画像の画素に対応する要素を含む表現である、請求項1〜9のいずれか1項に記載の方法。
- 前記入力テンソルは前記専用ハードウェア回路のユニファイドバッファに格納され、前記第2の畳み込みニューラルネットワーク層の重みは前記専用ハードウェア回路のダイナミックメモリに格納され、前記第2の畳み込みニューラルネットワーク層を用いて前記第1の畳み込みニューラルネットワーク層への前記入力テンソルを処理することは、
前記入力テンソルを前記ユニファイドバッファから前記行列計算ユニットに送ることと、
前記ダイナミックメモリから前記行列計算ユニットに前記第2の畳み込みニューラルネットワーク層の前記重みを送ることと、
前記行列計算ユニットによって、前記第2の畳み込みニューラルネットワーク層の前記重みを用いて前記入力テンソルを処理して、前記第1のテンソルを生成することとを含む、請求項1〜10のいずれか1項に記載の方法。 - システムであって、
請求項1に記載の専用ハードウェア回路と、
命令を格納する1つまたは複数の記憶装置とを備え、前記命令は、前記専用ハードウェア回路によって実行されると、前記専用ハードウェア回路に請求項1〜11のいずれか1項に記載の方法を実行させるよう動作可能である、システム。 - 1つまたは複数のコンピュータによって実行されると、前記1つまたは複数のコンピュータに請求項1〜11のいずれか1項に記載の方法を実行させる命令を含むコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021195320A JP7394104B2 (ja) | 2016-11-10 | 2021-12-01 | ハードウェアにおけるカーネルストライドの実行 |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/348,199 US10733505B2 (en) | 2016-11-10 | 2016-11-10 | Performing kernel striding in hardware |
US15/348,199 | 2016-11-10 | ||
US15/467,382 US9721203B1 (en) | 2016-11-10 | 2017-03-23 | Performing kernel striding in hardware |
US15/467,382 | 2017-03-23 | ||
PCT/US2017/048123 WO2018089079A1 (en) | 2016-11-10 | 2017-08-23 | Performing kernel striding in hardware |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021195320A Division JP7394104B2 (ja) | 2016-11-10 | 2021-12-01 | ハードウェアにおけるカーネルストライドの実行 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2019537139A JP2019537139A (ja) | 2019-12-19 |
JP2019537139A5 JP2019537139A5 (ja) | 2020-06-25 |
JP6987860B2 true JP6987860B2 (ja) | 2022-01-05 |
Family
ID=59382805
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019524156A Active JP6987860B2 (ja) | 2016-11-10 | 2017-08-23 | ハードウェアにおけるカーネルストライドの実行 |
JP2021195320A Active JP7394104B2 (ja) | 2016-11-10 | 2021-12-01 | ハードウェアにおけるカーネルストライドの実行 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021195320A Active JP7394104B2 (ja) | 2016-11-10 | 2021-12-01 | ハードウェアにおけるカーネルストライドの実行 |
Country Status (13)
Country | Link |
---|---|
US (3) | US10733505B2 (ja) |
EP (2) | EP3539059B1 (ja) |
JP (2) | JP6987860B2 (ja) |
KR (2) | KR102385843B1 (ja) |
CN (2) | CN108073983B (ja) |
DE (2) | DE102017121887A1 (ja) |
DK (1) | DK3539059T3 (ja) |
FI (1) | FI3539059T3 (ja) |
GB (2) | GB2556670B (ja) |
HK (1) | HK1254699A1 (ja) |
IE (1) | IE20170205A1 (ja) |
SG (2) | SG10201707700WA (ja) |
WO (1) | WO2018089079A1 (ja) |
Families Citing this family (61)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9959498B1 (en) | 2016-10-27 | 2018-05-01 | Google Llc | Neural network instruction set architecture |
US10360163B2 (en) | 2016-10-27 | 2019-07-23 | Google Llc | Exploiting input data sparsity in neural network compute units |
US10175980B2 (en) | 2016-10-27 | 2019-01-08 | Google Llc | Neural network compute tile |
US10733505B2 (en) * | 2016-11-10 | 2020-08-04 | Google Llc | Performing kernel striding in hardware |
TWI634490B (zh) * | 2016-11-14 | 2018-09-01 | 美商耐能股份有限公司 | 卷積運算裝置及卷積運算方法 |
US10198401B2 (en) * | 2016-12-30 | 2019-02-05 | Intel Corporation | Max pooling in a matrix processing architecture |
TWI607389B (zh) * | 2017-02-10 | 2017-12-01 | 耐能股份有限公司 | 卷積神經網路的池化運算裝置及方法 |
US10346944B2 (en) | 2017-04-09 | 2019-07-09 | Intel Corporation | Machine learning sparse computation mechanism |
DE102018110687A1 (de) | 2017-05-05 | 2018-11-08 | Intel Corporation | Dynamisches Genauigkeitsmanagement für Deep-Learning-Ganzzahlprimitive |
US10643297B2 (en) * | 2017-05-05 | 2020-05-05 | Intel Corporation | Dynamic precision management for integer deep learning primitives |
KR102442055B1 (ko) * | 2017-09-26 | 2022-09-13 | 삼성전자주식회사 | 전자 장치 및 그 제어 방법 |
CN110020716A (zh) | 2017-11-06 | 2019-07-16 | 畅想科技有限公司 | 神经网络硬件 |
CN108108811B (zh) * | 2017-12-18 | 2021-07-30 | 南京地平线机器人技术有限公司 | 神经网络中的卷积计算方法和电子设备 |
CN108133270B (zh) * | 2018-01-12 | 2020-08-04 | 清华大学 | 卷积神经网络加速方法及装置 |
US11461579B2 (en) | 2018-02-08 | 2022-10-04 | Western Digital Technologies, Inc. | Configurable neural network engine for convolutional filter sizes |
US11551064B2 (en) | 2018-02-08 | 2023-01-10 | Western Digital Technologies, Inc. | Systolic neural network engine capable of forward propagation |
CN111886605B (zh) * | 2018-03-22 | 2024-03-22 | 亚马逊技术股份有限公司 | 针对多个输入数据集的处理 |
US11475306B2 (en) | 2018-03-22 | 2022-10-18 | Amazon Technologies, Inc. | Processing for multiple input data sets |
US10621489B2 (en) | 2018-03-30 | 2020-04-14 | International Business Machines Corporation | Massively parallel neural inference computing elements |
US20190332925A1 (en) * | 2018-04-30 | 2019-10-31 | International Business Machines Corporation | Neural hardware accelerator for parallel and distributed tensor computations |
US11783174B2 (en) | 2018-05-04 | 2023-10-10 | Apple Inc. | Splitting of input data for processing in neural network processor |
CN108764182B (zh) * | 2018-06-01 | 2020-12-08 | 阿依瓦(北京)技术有限公司 | 一种优化的用于人工智能的加速方法和装置 |
CN112513885B (zh) | 2018-06-22 | 2024-02-27 | 三星电子株式会社 | 神经处理器 |
CN109036460B (zh) * | 2018-08-28 | 2020-01-07 | 百度在线网络技术(北京)有限公司 | 基于多模型神经网络的语音处理方法和装置 |
EP3617953A1 (en) * | 2018-08-30 | 2020-03-04 | Koninklijke Philips N.V. | An adaptable neural network |
CN109190758B (zh) * | 2018-09-04 | 2021-06-15 | 地平线(上海)人工智能技术有限公司 | 用于展开卷积神经网络的张量数据的方法和装置 |
CN112771546A (zh) * | 2018-09-30 | 2021-05-07 | 华为技术有限公司 | 运算加速器和压缩方法 |
CN110969247B (zh) * | 2018-09-30 | 2024-04-09 | 北京地平线信息技术有限公司 | 基于神经网络的张量处理方法、装置和电子设备 |
DE102018217090A1 (de) * | 2018-10-05 | 2020-04-09 | Robert Bosch Gmbh | Verfahren, künstliches neuronales Netz, Vorrichtung, Computerprogramm und maschinenlesbares Speichermedium zur semantischen Segmentierung von Bilddaten |
CN109376843B (zh) * | 2018-10-12 | 2021-01-08 | 山东师范大学 | 基于fpga的脑电信号快速分类方法、实现方法及装置 |
US11636325B2 (en) | 2018-10-24 | 2023-04-25 | Macronix International Co., Ltd. | In-memory data pooling for machine learning |
JP7315317B2 (ja) | 2018-11-09 | 2023-07-26 | 株式会社Preferred Networks | プロセッサおよびプロセッサのデータ転送方法 |
US11204976B2 (en) * | 2018-11-19 | 2021-12-21 | Groq, Inc. | Expanded kernel generation |
US11562229B2 (en) * | 2018-11-30 | 2023-01-24 | Macronix International Co., Ltd. | Convolution accelerator using in-memory computation |
US11934480B2 (en) | 2018-12-18 | 2024-03-19 | Macronix International Co., Ltd. | NAND block architecture for in-memory multiply-and-accumulate operations |
US20200202198A1 (en) * | 2018-12-21 | 2020-06-25 | Waymo Llc | Neural network processor |
CN109919321A (zh) * | 2019-02-01 | 2019-06-21 | 京微齐力(北京)科技有限公司 | 单元具有本地累加功能的人工智能模块及系统芯片 |
US11556764B2 (en) * | 2019-03-01 | 2023-01-17 | Microsoft Technology Licensing, Llc | Deriving a concordant software neural network layer from a quantized firmware neural network layer |
US11783176B2 (en) | 2019-03-25 | 2023-10-10 | Western Digital Technologies, Inc. | Enhanced storage device memory architecture for machine learning |
US10929058B2 (en) | 2019-03-25 | 2021-02-23 | Western Digital Technologies, Inc. | Enhanced memory device architecture for machine learning |
US20200311543A1 (en) * | 2019-03-30 | 2020-10-01 | Microsoft Technology Licensing, Llc | Embedded learning for response prediction in content item relevance |
US11671111B2 (en) | 2019-04-17 | 2023-06-06 | Samsung Electronics Co., Ltd. | Hardware channel-parallel data compression/decompression |
CN110135580B (zh) * | 2019-04-26 | 2021-03-26 | 华中科技大学 | 一种卷积网络全整型量化方法及其应用方法 |
US11880760B2 (en) | 2019-05-01 | 2024-01-23 | Samsung Electronics Co., Ltd. | Mixed-precision NPU tile with depth-wise convolution |
KR102373802B1 (ko) * | 2019-06-12 | 2022-03-16 | 주식회사 사피온코리아 | 신경망 연산 효율 증대를 위한 신경망 가속기 및 그의 동작 방법 |
US11487998B2 (en) * | 2019-06-17 | 2022-11-01 | Qualcomm Incorporated | Depth-first convolution in deep neural networks |
US11449739B2 (en) * | 2019-08-22 | 2022-09-20 | Google Llc | General padding support for convolution on systolic arrays |
TWI774067B (zh) * | 2019-10-18 | 2022-08-11 | 旺宏電子股份有限公司 | 記憶體裝置及其記憶體內計算方法 |
JP7462140B2 (ja) * | 2019-10-29 | 2024-04-05 | 国立大学法人 熊本大学 | ニューラルネットワーク回路及びニューラルネットワーク演算方法 |
CN110852424B (zh) * | 2019-11-15 | 2023-07-25 | 广东工业大学 | 一种对抗生成网络的处理方法和装置 |
JP7298713B2 (ja) * | 2019-12-06 | 2023-06-27 | 日本電気株式会社 | パラメータ最適化装置、パラメータ最適化方法、およびパラメータ最適化プログラム |
CN111027683A (zh) * | 2019-12-09 | 2020-04-17 | Oppo广东移动通信有限公司 | 数据处理方法、装置、存储介质及电子设备 |
US11507831B2 (en) * | 2020-02-24 | 2022-11-22 | Stmicroelectronics International N.V. | Pooling unit for deep learning acceleration |
US11604975B2 (en) | 2020-04-09 | 2023-03-14 | Apple Inc. | Ternary mode of planar engine for neural processor |
US11507817B2 (en) | 2020-04-17 | 2022-11-22 | Samsung Electronics Co., Ltd. | System and method for performing computations for deep neural networks |
US11488066B2 (en) * | 2020-04-21 | 2022-11-01 | SiMa Technologies, Inc. | Efficient convolution of multi-channel input samples with multiple kernels |
JP6931252B1 (ja) * | 2020-08-07 | 2021-09-01 | LeapMind株式会社 | ニューラルネットワーク回路およびニューラルネットワーク回路の制御方法 |
KR102430837B1 (ko) * | 2020-08-24 | 2022-08-09 | 울산과학기술원 | 기계학습 모델에 포함된 복수의 레이어들을 분할하고, 분할한 레이어들을 수행하는 프로세서를 결정하는 방법 및 상기 방법을 수행하는 장치 |
CN112070067B (zh) * | 2020-10-12 | 2023-11-21 | 乐普(北京)医疗器械股份有限公司 | 一种光体积描计信号的散点图分类方法和装置 |
JP7413249B2 (ja) * | 2020-12-25 | 2024-01-15 | 日立Astemo株式会社 | 情報処理装置、情報処理方法 |
KR102361249B1 (ko) * | 2021-08-02 | 2022-02-14 | 오픈엣지테크놀로지 주식회사 | 브로드캐스팅 멀티플라이 최적화 방법 및 이를 이용한 하드웨어 가속기, 이를 이용한 컴퓨팅 장치 |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6505224B1 (en) | 1999-09-29 | 2003-01-07 | Sun Microsystems, Inc. | System and computer-implemented method for performing multi-stage fast Walsh transform |
US7107304B2 (en) | 2001-11-30 | 2006-09-12 | Apple Computer, Inc. | Single-channel convolution in a vector processing computer system |
US7653675B2 (en) | 2005-08-08 | 2010-01-26 | Freescale Semiconductor, Inc. | Convolution operation in a multi-mode wireless processing system |
JP5075861B2 (ja) | 2009-03-16 | 2012-11-21 | 株式会社東芝 | 画像処理装置及び画像処理方法 |
US8583896B2 (en) * | 2009-11-13 | 2013-11-12 | Nec Laboratories America, Inc. | Massively parallel processing core with plural chains of processing elements and respective smart memory storing select data received from each chain |
US8458635B2 (en) | 2009-12-04 | 2013-06-04 | Synopsys, Inc. | Convolution computation for many-core processor architectures |
US9811775B2 (en) | 2012-12-24 | 2017-11-07 | Google Inc. | Parallelizing neural networks during training |
US9858220B2 (en) * | 2014-03-17 | 2018-01-02 | Purdue Research Foundation | Computing architecture with concurrent programmable data co-processor |
IL231862A (en) * | 2014-04-01 | 2015-04-30 | Superfish Ltd | Image representation using a neural network |
US20150311050A1 (en) * | 2014-04-28 | 2015-10-29 | Thermo Finnigan Llc | Method for Determining a Spectrum from Time-Varying Data |
CN104035751B (zh) * | 2014-06-20 | 2016-10-12 | 深圳市腾讯计算机系统有限公司 | 基于多图形处理器的数据并行处理方法及装置 |
US20160026912A1 (en) * | 2014-07-22 | 2016-01-28 | Intel Corporation | Weight-shifting mechanism for convolutional neural networks |
FR3025344B1 (fr) * | 2014-08-28 | 2017-11-24 | Commissariat Energie Atomique | Reseau de neurones convolutionnels |
US10223333B2 (en) | 2014-08-29 | 2019-03-05 | Nvidia Corporation | Performing multi-convolution operations in a parallel processing system |
EP3035204B1 (en) | 2014-12-19 | 2018-08-15 | Intel Corporation | Storage device and method for performing convolution operations |
US9418458B2 (en) | 2015-01-05 | 2016-08-16 | Superfish Ltd. | Graph image representation from convolutional neural networks |
JP6360802B2 (ja) * | 2015-02-20 | 2018-07-18 | 株式会社デンソーアイティーラボラトリ | ニューラルネットワーク処理装置、ニューラルネットワーク処理方法、検出装置、検出方法、および、車両 |
US10762894B2 (en) * | 2015-03-27 | 2020-09-01 | Google Llc | Convolutional neural networks |
CN104915322B (zh) * | 2015-06-09 | 2018-05-01 | 中国人民解放军国防科学技术大学 | 一种卷积神经网络硬件加速方法 |
US9734567B2 (en) * | 2015-06-24 | 2017-08-15 | Samsung Electronics Co., Ltd. | Label-free non-reference image quality assessment via deep neural network |
CN105488565A (zh) * | 2015-11-17 | 2016-04-13 | 中国科学院计算技术研究所 | 加速深度神经网络算法的加速芯片的运算装置及方法 |
CN105426517B (zh) * | 2015-12-02 | 2020-02-18 | 上海越峰信息科技有限公司 | 一种具有图像处理功能的智能存储设备 |
CN105589938A (zh) * | 2015-12-13 | 2016-05-18 | 公安部第三研究所 | 基于fpga的图像检索系统及检索方法 |
US10460231B2 (en) * | 2015-12-29 | 2019-10-29 | Samsung Electronics Co., Ltd. | Method and apparatus of neural network based image signal processor |
CN105681628B (zh) * | 2016-01-05 | 2018-12-07 | 西安交通大学 | 一种卷积网络运算单元及可重构卷积神经网络处理器和实现图像去噪处理的方法 |
CN105678379B (zh) * | 2016-01-12 | 2020-08-07 | 腾讯科技(深圳)有限公司 | 一种cnn的处理方法和装置 |
CN205621018U (zh) * | 2016-02-26 | 2016-10-05 | 陈进民 | 手机细胞/卷积神经网络加速器 |
US10706348B2 (en) | 2016-07-13 | 2020-07-07 | Google Llc | Superpixel methods for convolutional neural networks |
US10402697B2 (en) * | 2016-08-01 | 2019-09-03 | Nvidia Corporation | Fusing multilayer and multimodal deep neural networks for video classification |
US9779786B1 (en) * | 2016-10-26 | 2017-10-03 | Xilinx, Inc. | Tensor operations and acceleration |
US10733505B2 (en) * | 2016-11-10 | 2020-08-04 | Google Llc | Performing kernel striding in hardware |
-
2016
- 2016-11-10 US US15/348,199 patent/US10733505B2/en active Active
-
2017
- 2017-03-23 US US15/467,382 patent/US9721203B1/en active Active
- 2017-08-23 EP EP17761170.4A patent/EP3539059B1/en active Active
- 2017-08-23 JP JP2019524156A patent/JP6987860B2/ja active Active
- 2017-08-23 KR KR1020197016416A patent/KR102385843B1/ko active IP Right Grant
- 2017-08-23 DK DK17761170.4T patent/DK3539059T3/da active
- 2017-08-23 WO PCT/US2017/048123 patent/WO2018089079A1/en active Search and Examination
- 2017-08-23 KR KR1020227011437A patent/KR102512936B1/ko active IP Right Grant
- 2017-08-23 EP EP24153561.6A patent/EP4336411A3/en active Pending
- 2017-08-23 FI FIEP17761170.4T patent/FI3539059T3/fi active
- 2017-09-18 SG SG10201707700WA patent/SG10201707700WA/en unknown
- 2017-09-18 SG SG10201804284XA patent/SG10201804284XA/en unknown
- 2017-09-21 DE DE102017121887.4A patent/DE102017121887A1/de active Pending
- 2017-09-21 DE DE202017105729.1U patent/DE202017105729U1/de active Active
- 2017-09-22 GB GB1715309.9A patent/GB2556670B/en active Active
- 2017-09-22 GB GB2008121.2A patent/GB2583594B/en active Active
- 2017-09-28 IE IE20170205A patent/IE20170205A1/en unknown
- 2017-09-29 CN CN201710909648.4A patent/CN108073983B/zh active Active
- 2017-09-29 CN CN202210408223.6A patent/CN114897132A/zh active Pending
-
2018
- 2018-10-25 HK HK18113684.4A patent/HK1254699A1/zh unknown
-
2020
- 2020-07-06 US US16/921,436 patent/US11816532B2/en active Active
-
2021
- 2021-12-01 JP JP2021195320A patent/JP7394104B2/ja active Active
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6987860B2 (ja) | ハードウェアにおけるカーネルストライドの実行 | |
JP7000387B2 (ja) | ニューラルネットワークプロセッサにおけるベクトル計算ユニット | |
US11704547B2 (en) | Transposing neural network matrices in hardware | |
JP6840827B2 (ja) | ニューラルネットワークプロセッサにおけるバッチ処理 | |
JP6900487B2 (ja) | ハードウェアにおける平均プーリングの実行 | |
TWI787262B (zh) | 用於執行類神經網路層之計算的方法、系統及非暫時性電腦可讀儲存媒體 | |
KR102705474B1 (ko) | 신경망 프로세서의 벡터 컴퓨테이션 유닛 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200507 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200507 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210421 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210525 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210811 |
|
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: 20211102 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20211201 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6987860 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |