JP7461344B2 - 畳み込みニューラルネットワークの畳み込み処理方法、装置及び記憶媒体 - Google Patents
畳み込みニューラルネットワークの畳み込み処理方法、装置及び記憶媒体 Download PDFInfo
- Publication number
- JP7461344B2 JP7461344B2 JP2021516435A JP2021516435A JP7461344B2 JP 7461344 B2 JP7461344 B2 JP 7461344B2 JP 2021516435 A JP2021516435 A JP 2021516435A JP 2021516435 A JP2021516435 A JP 2021516435A JP 7461344 B2 JP7461344 B2 JP 7461344B2
- Authority
- JP
- Japan
- Prior art keywords
- weight
- convolution
- weight values
- value
- indicator
- 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
- 238000013527 convolutional neural network Methods 0.000 title claims description 57
- 238000003672 processing method Methods 0.000 title claims description 24
- 238000012545 processing Methods 0.000 claims description 109
- 238000000034 method Methods 0.000 claims description 46
- 230000001186 cumulative effect Effects 0.000 claims description 21
- 238000006243 chemical reaction Methods 0.000 claims description 18
- 238000007781 pre-processing Methods 0.000 claims description 10
- 238000013507 mapping Methods 0.000 description 40
- 238000009825 accumulation Methods 0.000 description 39
- 238000010586 diagram Methods 0.000 description 26
- 230000008707 rearrangement Effects 0.000 description 25
- 230000006870 function Effects 0.000 description 21
- 238000004364 calculation method Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 13
- 238000004590 computer program Methods 0.000 description 11
- 230000009466 transformation Effects 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
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
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Complex Calculations (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
前記畳み込みニューラルネットワークのサブ畳み込みカーネルにおける重み値を分類するステップと、
各前記重み値の分類結果に応じて、対応する重み値のために、データに対する相応の操作を記憶するためのインジケータ及び重み値を特徴付けるためのアドレスを生成するステップと、
前記重み値のアドレスに応じて、対応する処理対象データを取得するステップと、
前記インジケータに応じて、前記処理対象データに対して畳み込み操作を行って、畳み込み結果を獲得するステップと、を含む。
前記畳み込みニューラルネットワークのサブ畳み込みカーネルにおける重み値を分類するように構成される分類ユニットと、
各前記重み値の分類結果に応じて、対応する重み値のために、データに対する相応の操作を記憶するためのインジケータ及び重み値を特徴付けるためのアドレスを生成するように構成される生成ユニットと、
前記重み値のアドレスに応じて、対応する処理対象データを取得するように構成される取得ユニットと、
前記インジケータに応じて、前記処理対象データに対して畳み込み操作を行って、畳み込み結果を獲得するように構成される畳み込み処理ユニットと、を含む。
本開示の実施例は、畳み込みニューラルネットワークの畳み込み処理方法を提供し、図1は、本開示の実施例1にて提供される畳み込みニューラルネットワークの畳み込み処理方法の概略フローチャートであり、図1に示すように、当該方法は、ステップS101~S104を含む。
ここで、予め設定されたポリシーに応じて、畳み込みニューラルネットワークにおけるサブ畳み込みカーネルを分類し、分類結果に応じて、重み値を再配列し、再配列後の重み値に対して相応の変換を行う。
ここで、重み値の分類及び再配列の結果に応じて、重み値を相応のインジケータテーブル及びマッピングテーブルに変換することができ、インジケータテーブルはデータに対して相応の操作を行うインジケータを記憶するためのものであり、マッピングテーブルは重み値のアドレスを特徴付けるためのものである。
ここで、重み値のアドレスは処理対象データアドレスと対応関係が付けられ、当該対応関係に応じて、対応する処理対象データを取得することができる。処理対象データは、画像、車両運転データ、言語データなどであってもよい。
ここで、インジケータは、重み値、終了アドレス、シフト値、加減算タイプ、拡張情報及び分類指示を含むため、インジケータにおける操作に応じて、処理対象データに対して相応の処理を行うことができ、例えば、シフト又は加算/減算操作を行う。
本開示の実施例は、畳み込みニューラルネットワークの畳み込み処理方法を提供し、図2Aは、本開示の実施例2にて提供される畳み込みニューラルネットワークの畳み込み処理方法の概略フローチャートであり、図2Aに示すように、当該方法は、ステップS201a~ステップS206aを含む。
ここで、コンパイラを使用して重み変換を行うことを例とし、コンパイラにより反復操作を行うことができ、1つのR×S×CH大きさの畳み込みカーネルを複数のR×S×Cのサブ畳み込みカーネル(ここで、Rは畳み込みカーネルの列幅で、Sは畳み込みカーネルの行幅で、Cはサブ畳み込みカーネルのチャネル数であり、当層の畳み込みカーネルのチャネル数はChであると仮定すると、C<=Chである)に分割する。
ここで、予め設定されたポリシーに応じて、畳み込みニューラルネットワークにおけるサブ畳み込みカーネルを分類し、分類結果に応じて、重み値を再配列し、再配列後の重み値に対して相応の変換を行う。
ここで、重み値の分類及び再配列結果に応じて、重み値を相応のインジケータテーブル及びマッピングテーブルに変換することができ、インジケータテーブル内のインジケータはデータに対する相応の操作を記憶するためのものであり、マッピングテーブルは重み値のアドレスを特徴付けるためのものである。
ここで、重み値のアドレスは処理対象データアドレスと対応関係が付けられ、当該対応関係に応じて、対応する処理対象データを取得することができる。
ここで、インジケータは、重み値、終了アドレス、シフト値、加減算タイプ、拡張情報及び分類指示を含むため、インジケータにおける操作に応じて、処理対象データに対して相応の処理を行うことができ、例えば、シフト又は加算/減算操作を行う。
ここで、元の処理対象データ集合は、全ての処理対象データの集合であり、本開示の実施例では、元の処理対象データ集合から相応の処理対象データ集合を取得する必要があり、当該処理対象データ集合の行幅、列幅及びチャネル数はサブ畳み込みカーネルの行幅、列幅及びチャネル数とそれぞれ同じである。
ここで、処理対象データ集合における各処理対象データはサブ畳み込みカーネル内の相応の重み値と1対1に対応する関係であり、サブ畳み込みカーネルにおけるある重み値のアドレスに応じて、相応のある処理対象データのアドレスを取得することができる。
ここで、サブ畳み込みカーネルにおけるある重み値のアドレスに応じて、相応のある処理対象データのアドレスを取得することができると、当該アドレスに応じて、相応の処理対象データを決定することができる。
ここで、重み値の分類及び再配列結果に応じて、重み値を相応のインジケータテーブル及びマッピングテーブルに変換することができ、インジケータテーブルはデータに対して相応の操作を行うインジケータを記憶するためのものであり、マッピングテーブルは重み値のアドレスを特徴付けるためのものである。
ここで、重み値のアドレスは処理対象データアドレスと対応関係が付けられ、当該対応関係に応じて、対応する処理対象データを取得することができる。
本開示の実施例は、畳み込みニューラルネットワークの畳み込み処理方法を提供し、図3は、本開示の実施例3にて提供される畳み込みニューラルネットワークの畳み込み処理方法の概略フローチャートであり、図3に示すように、当該方法は、ステップS301を含む。
ここで、重み変換ユニットは、ソフトウェアコーデック、スクリプト・ファイルなどのツールであってもよいし、手動方式を用いてもよく、畳み込みカーネルに対して分割と再配列を行い、処理ユニットに対するシミュレーションにより、最適な方式で畳み込みカーネルを分割して再配列し、再配列後のインジケータテーブル及びマッピングテーブルはグローバルバッファに記憶される。
ここで、畳み込みカーネル分割モジュールが元の畳み込みカーネルを分割することにより、サブ畳み込みカーネルが形成される。図5は、本開示の実施例3にて提供される元の畳み込みカーネルをサブ畳み込みカーネルに分割した構造の概略図であり、図5に、元の畳み込みカーネルを分割して得た複数のサブ畳み込みカーネル及び各サブ畳み込みカーネルの行幅501、列幅502及びチャネル数503を示した。
本開示の実施例では、同じ重みを一緒に再配列し、256個の重みがある場合、当該重みに対応する畳み込みカーネルの列幅はRで、行幅はSで、チャネル数はCであると仮定すると、本来R×S×C回の乗加算操作が必要であるが、本開示の実施例によると、最大でR×S×C+256回の加算操作と256回の乗算操作のみが必要となるように変換することができる。
本開示の実施例では、同じ重みのみを一緒に再配列し、先に正の重みを配列し、後で負の重みを配列する。256個の重みがある場合、当該重みに対応する畳み込みカーネルは、列幅がRで、行幅がSで、チャネル数がCであり、本来R×S×C回の乗加算操作が必要であるが、本開示の実施例によると、変換後に、最大でR×S×C+256回の加算操作と256回の乗算操作のみが必要となり、それとともに、畳み込み計算の累積和がオフセット未満である場合、畳み込み演算を早期中止することができる。
本開示の実施例では、絶対値が同じの正負の重み値を併合する方式、2の冪乗倍数重みを併合する方式などの併合方式により、重みの類別を64類以下に減らし、64類に減らすことを例とし、この場合、畳み込みの早期中止機能を有効にせず、当該重みに対応する畳み込みカーネルは、列幅がRで、行幅がSで、チャネル数がCであると仮定すると、本来R×S×C回の乗加算操作が必要であるが、本開示の実施例によると、変換後に、最大でR×S×C+64回の加算操作と64回の乗算操作のみが必要となる。
本開示の実施例では、正の重みと負の重みとを分けて併合し、正の重みの類別を前に配列し、負の重みの類別を後ろに配列して、2つの機能を両立できるという特徴があるが、本方式で重み再配列を行う乗算の使用率は、方式3での乗算の使用率より高い。
ここで、図11は、本開示の実施例3にて提供される畳み込みニューラルネットワークの畳み込み処理構造の概略図であり、図11に示すように、制御ユニット1101のコントローラが命令1102を解析した後、処理ユニット1103に対してパラメータコンフィグレーションを行い、バッファユニット1104のグローバルバッファ内のデータ1105から入力するデータブロックを選択し、処理ユニットに対して機能パラメータコンフィグレーションを行う。
ここで、1つの処理ユニットの1回のスケジューリング実行について、グローバルバッファから分割後のサブ畳み込みカーネルと同じ大きさ、即ち列幅がRで、行幅がSで、チャネル数がC(R×S×C)であるデータを読み取って、データバッファ(ここで、Rはサブ畳み込みカーネルの列幅で、Sはサブ畳み込みカーネルの行幅で、Cはサブ畳み込みカーネルのチャネル数である)に格納する。グローバルバッファから、処理する必要のあるサブ畳み込みカーネルの重みインジケータをインジケータバッファに読み込む。
ここで、重み再配列後のマッピングテーブル内容を順番に読み取り、マッピングテーブル内容をアドレス又は選択条件として、プロセッサの内部バッファからデータを読み取る。本開示の実施例では、処理ユニットのコントローラは、1番目のインジケータをコントローラに読み込み、その後、重みの再配列後のマッピングテーブルの内容を順番に読み取り、マッピングテーブルの内容をアドレス/選択条件として、データバッファからデータを読み取る。
ここで、分類累積ユニットは、主に、ある重み分類の累積操作、を完了するとともに、ゼロデータスキップ操作をサポートする。
ここで、同一のインジケータテーブルエントリに対応するマッピングテーブルエントリの読み取りが完了すると、分類終了フラグを確認し、分類終了フラグが「終了していない」である場合、次のインジケータテーブルエントリを読み取り、ステップS305を繰り返す。
ここで、同一のインジケータ内のマッピングテーブルエントリの読み取が完了すると、分類終了フラグを確認し、分類終了フラグが「終了した」である場合、累積/減算の結果と、対応する重み値及び分類累積処理ユニットの番号とを分類乗加算処理ユニットに送り、同時に、次のインジケータテーブルエントリを読み取って、分類累積プロセッサ内の累積値をクリアしてゼロにし、ステップS305の操作を再開始し、これを、インジケータテーブルエントリにおける分類終了フラグが、畳み込み操作が全部完了したことを示すまで行う。
ここで、分類乗算と部分和累積ユニットは、主に、分類累積ユニットによって出力された累積和と、対応する重みとの乗算操作、及び乗算結果を部分和に累積する動作を完了する。そして、クロックゲーティング機能及び早期中止機能をサポートする。
グローバルバッファはデータバッファ、重みインジケータバッファ及び重みマッピングバッファに1回のスケジューリング、即ちサブ畳み込みカーネルの畳み込み操作に必要なデータ、重みインジケータテーブル及び重みマッピングテーブルを提供する。
前記の実施例に基づいて、本開示の実施例は、畳み込みニューラルネットワークの畳み込み処理装置を提供し、当該装置に含まれる各ユニット、及び各ユニットに含まれる各サブユニットは、いずれもコンピュータ機器のプロセッサによって実装されることができ、勿論、論理回路によって実装されることもでき、実施プロセスにおいて、プロセッサは、中央処理装置(CPU)、マイクロプロセッサ(MPU)、デジタル信号プロセッサ(DSP)或いはフィールドプログラマブルゲートアレイ(FPGA)などであってもよく、ここで、コンピュータ機器は、携帯電話、ノートパソコン、デスクトップ、サーバなどであってもよい。
前記畳み込みニューラルネットワークのサブ畳み込みカーネルの重み値を分類するように構成される分類ユニット1401と、
各前記重み値の分類結果に応じて、対応する重み値のために、データに対する相応の操作を記憶するためのインジケータ及び重み値を特徴付けるためのアドレスを生成するように構成される生成ユニット1402と、
前記重み値のアドレスに応じて、対応する処理対象データを取得するように構成される取得ユニット1403と、
前記インジケータに応じて、前記処理対象データに対して畳み込み操作を行って、畳み込み結果を獲得するように構成される畳み込み処理ユニット1404と、を含む。
前記畳み込みニューラルネットワークにおける元の畳み込みカーネルを分割して、少なくとも2つのサブ畳み込みカーネルを獲得するように構成される分割ユニットと、
各前記サブ畳み込みカーネルにおける元の重み値に対して固定小数点化処理を行って、前記サブ畳み込みカーネルにおける重み値を獲得するように構成される固定小数点化ユニットと、を含む。
入力された元の処理対象データ集合から、前記サブ畳み込みカーネルと列幅、行幅及びチャネル数がいずれも同じの処理対象データ集合を決定し、
前記処理対象データ集合内の各処理対象データのアドレスと前記サブ畳み込みカーネル内の相応の重み値のアドレスとの対応関係を確立し、
対応関係に応じて、前記処理対象データ集合内の相応のアドレスの処理対象データを取得するように構成される。
前記インジケータに応じて、各類の重み値における全ての重み値に対応する全ての処理対象データの累積和を取得し、
前記累積和に、対応する重み値を掛けて部分和を取得し、
全ての類別の重み値に、対応する全ての部分和を加算して畳み込み結果を獲得するように構成される。
前記インジケータに応じて、各類の重み値における全ての重み値に対応する全ての処理対象データに対して前処理を行い、前処理された全ての処理対象データの累積和を取得するように構成され、ここで、前記処理対象データはゼロではない。
前記累積和が予め設定されたオフセット値以上であると決定された場合、前記累積和に、対応する重み値を掛けて部分和を獲得するように構成される。
前記部分和と予め設定されたオフセット値との差分値を決定し、
前記部分和と予め設定されたオフセット値との差分値がゼロ以上であると決定した場合、全ての類別の重み値に対応する全ての部分和を加算して畳み込み結果を獲得するように構成される。
前記サブ畳み込みカーネルにおける同じ重み値を1つの類別に分類し、又は、
絶対値が同じの重み値を1つの類別に分類し、又は、
2の冪乗倍数である重み値を1つの類別に分類し、又は、
正の重み値と負の重み値とをそれぞれ1つの類別にするように構成される。
Claims (10)
- 畳み込みニューラルネットワークのサブ畳み込みカーネルにおける重み値を分類するステップであって、前記畳み込みニューラルネットワークのサブ畳み込みカーネルにおける重み値を分類する前記ステップは、絶対値が同じの重み値を1つの類別に分類し、又は、2の冪乗倍数である重み値を1つの類別に分類し、又は、正の重み値と負の重み値をそれぞれ1つの類別にするステップを含むステップと、
各前記重み値の分類結果に応じて、対応する重み値のために、データに対する相応の操作を記憶するためのインジケータ及び重み値を特徴付けるためのアドレスを生成するステップであって、前記インジケータに対応する操作は、重み値、終了アドレス、シフト値及び加減算タイプを含むステップと、
前記重み値のアドレスに応じて、対応する処理対象データを取得するステップと、
前記インジケータに応じて、前記処理対象データに対して畳み込み操作を行って、畳み込み結果を獲得するステップと、を含む、
畳み込みニューラルネットワークの畳み込み処理方法。 - 前記畳み込みニューラルネットワークにおける元の畳み込みカーネルを分割して、少なくとも2つのサブ畳み込みカーネルを獲得するステップと、
各前記サブ畳み込みカーネルにおける元の重み値に対して固定小数点化処理を行って、前記サブ畳み込みカーネルにおける重み値を獲得するステップと、をさらに含む、
請求項1に記載の方法。 - 前記重み値のアドレスに応じて、対応する処理対象データを取得する前記ステップは、
入力された元の処理対象データ集合から、前記サブ畳み込みカーネルと列幅、行幅及びチャネル数がいずれも同じの処理対象データ集合を決定するステップと、
前記処理対象データ集合内の各処理対象データのアドレスと前記サブ畳み込みカーネル内の相応の重み値のアドレスとの間の対応関係を確立するステップと、
前記対応関係に応じて、前記処理対象データ集合内の相応のアドレスの処理対象データを取得するステップと、を含む、
請求項1又は請求項2に記載の方法。 - 前記インジケータに応じて、、前記処理対象データに対して畳み込み操作を行って、畳み込み結果を獲得する前記ステップは、
前記インジケータに応じて、、各類の重み値における全ての重み値に対応する全ての処理対象データの累積和を取得するステップと、
前記累積和に、対応する重み値を掛けて部分和を獲得するステップと、
全ての類別の重み値に対応する全ての部分和を加算して畳み込み結果を獲得するステップと、を含む、
請求項3に記載の方法。 - 前記インジケータに応じて、各類の重み値における全ての重み値に対応する全ての処理対象データの累積和を取得する前記ステップは、
前記インジケータに応じて、各類の重み値における全ての重み値に対応する全ての処理対象データに対して前処理を行うステップと、前処理された全ての処理対象データの累積和を取得するステップと、を含み、ここで、前記処理対象データはゼロではない、
請求項4に記載の方法。 - 前記累積和に、対応する重み値を掛けて部分和を獲得する前記ステップは、
前記累積和が予め設定されたオフセット値以上であると決定された場合、前記累積和に、対応する重み値を掛けて部分和を獲得するステップを含む、
請求項4に記載の方法。 - 全ての類別の重み値に対応する全ての部分和を加算して畳み込み結果を獲得する前記ステップは、
前記部分和と予め設定されたオフセット値との差分値を決定するステップと、
前記部分和と予め設定されたオフセット値との差分値がゼロ以上であると決定された場合、全ての類別の重み値に対応する全ての部分和を加算して畳み込み結果を獲得するステップと、を含む、
請求項4に記載の方法。 - 畳み込みニューラルネットワークのサブ畳み込みカーネルにおける重み値を分類する前記ステップは、
前記サブ畳み込みカーネルにおける同じ重み値を1つの類別に分類するステップをさらに含む、
請求項1に記載の方法。 - 絶対値が同じの重み値を1つの類別に分類し、又は、2の冪乗倍数である重み値を1つの類別に分類し、又は、正の重み値と負の重み値をそれぞれ1つの類別にするような方式により、畳み込みニューラルネットワークのサブ畳み込みカーネルにおける重み値を分類するように構成される分類ユニットと、
各前記重み値の分類結果に応じて、対応する重み値のために、データに対する相応の操作を記憶するためのインジケータ及び重み値を特徴付けるためのアドレスを生成するように構成される生成ユニットであって、前記インジケータに対応する操作は、重み値、終了アドレス、シフト値及び加減算タイプを含む生成ユニットと、
前記重み値のアドレスに応じて、対応する処理対象データを取得するように構成される取得ユニットと、
前記インジケータに応じて、前記処理対象データに対して畳み込み操作を行って、畳み込み結果を獲得するように構成される畳み込み処理ユニットと、を含む、
畳み込みニューラルネットワークの畳み込み処理装置。 - コンピュータ実行可能な命令が記憶されているコンピュータ可読記憶媒体であって、前記コンピュータ実行可能な命令は、請求項1~8のいずれか1項に記載の畳み込みニューラルネットワークの畳み込み処理方法を実行できるように構成される、
コンピュータ可読記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811103473.9A CN110928576A (zh) | 2018-09-20 | 2018-09-20 | 一种卷积神经网络的卷积处理方法、装置及存储介质 |
CN201811103473.9 | 2018-09-20 | ||
PCT/CN2019/106649 WO2020057593A1 (zh) | 2018-09-20 | 2019-09-19 | 一种卷积神经网络的卷积处理方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022502747A JP2022502747A (ja) | 2022-01-11 |
JP7461344B2 true JP7461344B2 (ja) | 2024-04-03 |
Family
ID=69856439
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021516435A Active JP7461344B2 (ja) | 2018-09-20 | 2019-09-19 | 畳み込みニューラルネットワークの畳み込み処理方法、装置及び記憶媒体 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20210350205A1 (ja) |
EP (1) | EP3855362A4 (ja) |
JP (1) | JP7461344B2 (ja) |
CN (1) | CN110928576A (ja) |
WO (1) | WO2020057593A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108304923B (zh) * | 2017-12-06 | 2022-01-18 | 腾讯科技(深圳)有限公司 | 卷积运算处理方法及相关产品 |
CN111885213A (zh) * | 2020-06-09 | 2020-11-03 | 中国科学院信息工程研究所 | 一种基于门控卷积变分自编码器的IPv6地址发现方法和装置 |
CN111783378B (zh) * | 2020-06-30 | 2022-05-17 | 迈普通信技术股份有限公司 | 数据处理方法及fpga |
CN116348882A (zh) * | 2020-06-30 | 2023-06-27 | 华为技术有限公司 | 一种卷积神经网络数据处理方法及其相关设备 |
JP2023056644A (ja) * | 2021-10-08 | 2023-04-20 | LeapMind株式会社 | ニューラルネットワーク回路およびニューラルネットワーク回路の制御方法 |
CN116303108B (zh) * | 2022-09-07 | 2024-05-14 | 芯砺智能科技(上海)有限公司 | 一种适用于并行计算架构的权重地址排布方法 |
TWI805511B (zh) | 2022-10-18 | 2023-06-11 | 國立中正大學 | 內積計算裝置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4513865B2 (ja) * | 2008-01-25 | 2010-07-28 | セイコーエプソン株式会社 | 並列演算装置および並列演算方法 |
CN107977704B (zh) * | 2017-11-10 | 2020-07-31 | 中国科学院计算技术研究所 | 权重数据存储方法和基于该方法的神经网络处理器 |
CN108416425B (zh) * | 2018-02-02 | 2020-09-29 | 浙江大华技术股份有限公司 | 一种卷积运算方法及装置 |
CN108510058B (zh) * | 2018-02-28 | 2021-07-20 | 中国科学院计算技术研究所 | 神经网络中的权重存储方法以及基于该方法的处理器 |
-
2018
- 2018-09-20 CN CN201811103473.9A patent/CN110928576A/zh active Pending
-
2019
- 2019-09-19 US US17/278,379 patent/US20210350205A1/en active Pending
- 2019-09-19 EP EP19861877.9A patent/EP3855362A4/en active Pending
- 2019-09-19 WO PCT/CN2019/106649 patent/WO2020057593A1/zh unknown
- 2019-09-19 JP JP2021516435A patent/JP7461344B2/ja active Active
Non-Patent Citations (1)
Title |
---|
HEGDE, K. et al.,UCNN: Exploiting Computational Reuse in Deep Neural Networks via Weight Repetition,arXiv:1804.06508 [cs.NE],2018年04月18日,pp. 1-14,[online], [retrieved on 2023-08-24]. Retrieved from <https://arxiv.org/abs/1804.06508> <doi: 10.48550/arXiv.1804.06508> |
Also Published As
Publication number | Publication date |
---|---|
WO2020057593A1 (zh) | 2020-03-26 |
CN110928576A (zh) | 2020-03-27 |
EP3855362A1 (en) | 2021-07-28 |
EP3855362A4 (en) | 2021-11-24 |
US20210350205A1 (en) | 2021-11-11 |
JP2022502747A (ja) | 2022-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7461344B2 (ja) | 畳み込みニューラルネットワークの畳み込み処理方法、装置及び記憶媒体 | |
CN111652368B (zh) | 一种数据处理方法及相关产品 | |
US20190138902A1 (en) | Methods and systems for improved transforms in convolutional neural networks | |
TW201915839A (zh) | 對人工神經網路及浮點神經網路進行量化的方法及裝置 | |
US11586903B2 (en) | Method and system of controlling computing operations based on early-stop in deep neural network | |
CN105447498A (zh) | 配置有神经网络的客户端设备、系统和服务器系统 | |
EP3663915A1 (en) | Scheduling task graph operations | |
JP2023510566A (ja) | ニューラル・ネットワークのための適応的探索方法および装置 | |
US20210191733A1 (en) | Flexible accelerator for sparse tensors (fast) in machine learning | |
CN114723033B (zh) | 数据处理方法、装置、ai芯片、电子设备及存储介质 | |
US20200110988A1 (en) | Computing device and method | |
CN115362449A (zh) | 在机器学习作业期间基于改善的存储器压缩传输的稀疏度的特征重排序 | |
Lai et al. | Rethinking machine learning development and deployment for edge devices | |
Langroudi et al. | Tent: Efficient quantization of neural networks on the tiny edge with tapered fixed point | |
CN108604313B (zh) | 自动化的预测性建模与框架 | |
CN118043821A (zh) | 混合稀疏压缩 | |
CN113963241B (zh) | Fpga硬件架构及其数据处理方法、存储介质 | |
US20200242467A1 (en) | Calculation method and calculation device for sparse neural network, electronic device, computer readable storage medium, and computer program product | |
Choi et al. | Squeezing large-scale diffusion models for mobile | |
Ascia et al. | Improving inference latency and energy of network-on-chip based convolutional neural networks through weights compression | |
CN116997909A (zh) | 稀疏机器学习加速 | |
CN114595627A (zh) | 模型量化方法、装置、设备及存储介质 | |
CN114356512A (zh) | 一种数据处理方法、设备以及计算机可读存储介质 | |
CN108664368B (zh) | 处理器性能指标评估方法及设备 | |
CN113902088A (zh) | 神经网络结构搜索的方法、装置与系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220914 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230725 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230905 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231205 |
|
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: 20240227 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240322 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7461344 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |