JP7174831B2 - 畳み込みニューラルネットワークに基づくビデオメモリ処理方法、装置及び記録媒体 - Google Patents

畳み込みニューラルネットワークに基づくビデオメモリ処理方法、装置及び記録媒体 Download PDF

Info

Publication number
JP7174831B2
JP7174831B2 JP2021506309A JP2021506309A JP7174831B2 JP 7174831 B2 JP7174831 B2 JP 7174831B2 JP 2021506309 A JP2021506309 A JP 2021506309A JP 2021506309 A JP2021506309 A JP 2021506309A JP 7174831 B2 JP7174831 B2 JP 7174831B2
Authority
JP
Japan
Prior art keywords
data
storage space
temporary storage
video memory
convolutional neural
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
Application number
JP2021506309A
Other languages
English (en)
Other versions
JP2021532498A (ja
Inventor
モン チャン
イーチュン タン
ポン カオ
チアン チョン
クオトン シエ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Publication of JP2021532498A publication Critical patent/JP2021532498A/ja
Application granted granted Critical
Publication of JP7174831B2 publication Critical patent/JP7174831B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1407General aspects irrespective of display type, e.g. determination of decimal point position, display with fixed or driving decimal point, suppression of non-significant zeros
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

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)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)

Description

本願は、中国特許出願番号第201910497396.8号(出願日2019年6月10日、発明の名称「畳み込みニューラルネットワークに基づくビデオメモリ処理方法、装置及び記録媒体」)の特許出願の優先権を主張するものである。
本願は、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)の技術分野に関し、特に畳み込みニューラルネットワークに基づくビデオメモリ処理方法、装置及び記録媒体に関する。
ビデオメモリは、GPU表示コアの一時メモリであり、処理すべきコアデータを一時的に記憶するものである。その役割は、CPU及びメモリの役割と同じである。ビデオメモリの容量は、ビデオメモリがデータを一時的に記憶する能力を決定し、ビデオカードのコアが十分強い場合、大容量ビデオメモリは、データを読み取る回数を低減し、遅延を低減することができる。出願人は、現在の畳み込みニューラルネットワークモデルのトレーニングプロセスにおいて、モデルの入出力データが異なるビデオメモリ空間に繰り返して記憶され、不必要なビデオメモリオーバーヘッドを引き起こし、モデルのトレーニングのバッチ処理数を低減するため、モデルのトレーニングの精度に影響を与えることを着目した。
例えば、Concat層及びAddition層は、現在の深層学習分類ネットワーク及びターゲット検出ネットワークにおいてよく使用されている層である。Concat層は、特徴次元で複数の入力データに対してマージ処理を行うものであり、Addition層は、複数の入力データに対して累積処理を行うものである。Caffe、TensorFlowなどの従来の深層学習ネットワークトレーニングフレームワークは、いずれもConcat及びAddition層に対してビデオメモリ最適化を行わないため、入出力データが異なるビデオメモリ空間に繰り返し記憶され、不必要なビデオメモリオーバーヘッドをもたらし、モデルのトレーニングのバッチ処理数の低減を引き起こすため、モデルのトレーニング精度に影響を与える。それと共に、ビデオメモリ空間はまた、自動化機械学習技術autoMLの最適化方式の探索空間などを制限する。
本願は、共有一時記憶空間を作成し、処理すべきデータのタイプ及び指示に応じてデータを対応する一時記憶空間内に読み込むか又は書き込むことを主な目的として、従来のフレームワークと比較して、ユーザが様々なモジュールと任意に組み合わせて新たなCNN構造を形成することができ、ビデオメモリを大幅に節約し、GPU計算の並列度を向上させることができる、畳み込みニューラルネットワークに基づくビデオメモリ処理方法、装置及びコンピュータ読取り可能な記録媒体を提供する。
上記目的を達成するために、本願に係る、電子装置に適用される畳み込みニューラルネットワークに基づくビデオメモリ処理方法は、入力データ、出力データ、入力誤差及び出力誤差を一時的に記憶する記憶空間である一時記憶空間を作成するステップと、処理対象データのタイプ及び方向に応じて、前記処理対象データに対応する一時記憶空間を呼び出し、前記処理対象データを呼び出された一時記憶空間に読み込むステップと、前記呼び出された一時記憶空間で前記処理対象データに対して所定の処理を行うステップと、処理後のデータのタイプ及び方向に応じて、前記呼び出された一時記憶空間内のデータを指定された外部記憶空間に書き込むステップと、を含む。
本願に係る畳み込みニューラルネットワークに基づくビデオメモリ処理システムは、入力データ、出力データ、入力誤差及び出力誤差を一時的に記憶する記憶空間である一時記憶空間を作成する空間作成部と、処理対象データのタイプ及び方向に応じて、前記処理対象データに対応する一時記憶空間を呼び出し、前記処理対象データを呼び出された一時記憶空間に読み込むデータ呼び出し部と、前記呼び出された一時記憶空間で前記処理対象データに対して所定の処理を行う前処理部と、処理後のデータのタイプ及び方向に応じて、前記呼び出された一時記憶空間内のデータを指定された外部記憶空間に書き込むデータ書き込み部と、を含む。
また、上記目的を達成するために、本願に係る電子装置は、メモリ及びプロセッサを含み、前記メモリは、前記プロセッサによって実行されると、前述した畳み込みニューラルネットワークに基づくビデオメモリ処理方法のステップを実現する、畳み込みニューラルネットワークに基づくビデオメモリ処理プログラムを含む。
また、上記目的を達成するために、本願に係るコンピュータ読取り可能な記録媒体は、プロセッサによって実行されると、上記畳み込みニューラルネットワークに基づくビデオメモリ処理方法のステップを実現する、畳み込みニューラルネットワークに基づくビデオメモリ処理プログラムを含む。
本願に係る畳み込みニューラルネットワークに基づくビデオメモリ処理方法、システム、電子装置及びコンピュータ読取り可能な記録媒体は、共有一時記憶空間を設定し、処理すべきデータのタイプ及び指示に応じて、対応する一時記憶空間を呼び出し、かつデータを対応する一時記憶空間内に読み込むか又は書き込んで演算処理を行うことにより、CNNアルゴリズムに適用することができ、他のフレームワークと比較して、Dense、Residual、Inceptionモジュールと任意に組み合わせて新たなCNN構造を形成することができ、約半分のビデオメモリを節約すると共に、GPU計算の並列度を向上させることができる。
本願の目的の達成、機能特徴及び利点について、実施例と組み合わせて、図面を参照しながらさらに説明する。
本願の実施例に係る畳み込みニューラルネットワークに基づくビデオメモリ処理方法の適用環境の概略図である。 図1における畳み込みニューラルネットワークに基づくビデオメモリ処理プログラムの具体的な実施例のモジュールの概略図である。 従来のCNN構造の部分構造の概略図である。 ビデオメモリ最適化処理後の図3の部分構造の概略図である。 本願の実施例に係る畳み込みニューラルネットワークに基づくビデオメモリ処理方法のフローチャートである。 本願の実施例に係る畳み込みニューラルネットワークに基づくビデオメモリ処理システムの論理構造の概略図である。
なお、ここで説明する具体的な実施例は、本願を解釈するためのものに過ぎず、本願を限定するものではない。
(実施例1)
本願は、電子装置1に適用される畳み込みニューラルネットワークに基づくビデオメモリ処理方法を提供する。図1に示すように、本願の畳み込みニューラルネットワークに基づくビデオメモリ処理方法の好ましい実施例の適用環境の概略図である。
本実施例で、電子装置1は、サーバ、スマートフォン、タブレットコンピュータ、ポータブルコンピュータ、デスクトップコンピュータなどの、演算機能を持つ端末装置であってよい。
該電子装置1は、プロセッサ12、メモリ11、ネットワークインタフェース14及び通信バス15を含む。
メモリ11は、少なくとも1種の読取り可能な記録媒体を含み、フラッシュメモリ、ハードディスク、マルチメディアカード、カード型メモリ11などの不揮発性記録媒体であってよい。いくつかの実施例では、読取り可能な記録媒体は、上記電子装置1の内部記憶部であってよく、例えば、該電子装置1のハードディスクである。別の実施例では、読取り可能な記録媒体は、上記電子装置1の外部メモリ11であってよく、例えば、電子装置1に搭載されたプラグインハードディスク、スマートメディアカード(Smart Media Card、SMC)、セキュアデジタル(Secure Digital、SD)カード、フラッシュカード(Flash Card)である。
本実施例では、メモリ11の読取り可能な記録媒体は、一般的に、電子装置1に搭載された畳み込みニューラルネットワークに基づくビデオメモリ処理プログラム10などを記憶する。また、メモリ11は、出力されたデータ又は出力しようとするデータを一時的に記憶することができる。
いくつかの実施例では、プロセッサ12は、中央処理装置(Central Processing Unit、CPU)、マイクロプロセッサ又はその他のデータ処理チップであってよく、メモリ11に記憶されたプログラムコード又は処理データを実行し、例えば、畳み込みニューラルネットワークに基づくビデオメモリ処理プログラム10などを実行する。
ネットワークインタフェース14は、好ましくは、標準的な有線インタフェース、無線インタフェース(例えば、WI-FIインタフェース)を含んでよく、一般的に該電子装置1とその他の電子装置との間に通信接続を確立する。
通信バス15は、これらのコンポーネントの間の接続通信を実現する。
図1でコンポーネント11~15を有する電子装置1のみを示しているが、全ての示されたコンポーネントを実施することを要求せず、より多くの又はより少ないコンポーネントを代替的に実施できることを理解されたい。
該電子装置1は、ユーザインタフェース、ディスプレイ、タッチセンサを含んでよく、ユーザインタフェースは、キーボードなどの入力部と、マイクロホンなどの音声認識機能を持つ装置などの音声入力装置と、オーディオ、ヘッドフォンなどの音声出力装置とを含んでよい。ディスプレイは、LEDディスプレイ、液晶ディスプレイ、タッチ式液晶ディスプレイ及び有機発光ダイオード(Organic Light-Emitting Diode、OLED)タッチ装置などであってよい。タッチセンサは、抵抗式タッチセンサ、静電容量式タッチセンサなどであってよい。また、上記タッチセンサは、接触式タッチセンサを含むだけでなく、近接式タッチセンサなどを含んでもよい。また、上記タッチセンサは、単一のセンサであってもよいし、例えばアレイ状に配置された複数のセンサであってもよい。
好ましくは、該電子装置1は、無線周波数(Radio Frequency、RF)回路、センサ、オーディオ回路などをさらに含んでよく、ここでは説明を省略する。
図1に示す装置の実施例では、コンピュータ記録媒体であるメモリ11には、オペレーティングシステム、畳み込みニューラルネットワークに基づくビデオメモリ処理プログラム10などが含まれてよく、プロセッサ12は、メモリ11に記憶された畳み込みニューラルネットワークに基づくビデオメモリ処理プログラム10を実行すると、入力データ、出力データ、入力誤差及び出力誤差を一時的に記憶する記憶空間である一時記憶空間を作成するステップ1と、処理対象データのタイプ及び方向に応じて、上記処理対象データに対応する一時記憶空間を呼び出し、上記処理対象データを呼び出された一時記憶空間に読み込むステップ2と、呼び出された一時記憶空間で上記処理対象データに対して所定の処理を行うステップ3と、処理後のデータのタイプ及び方向に応じて、上記呼び出された一時記憶空間内のデータを指定された外部記憶空間に書き込むステップ4とを実現する。
ステップ1では、一時記憶空間は、入力データ、出力データ、入力誤差及び出力誤差を一時的に記憶する記憶空間であり、対応する一時記憶空間は、入力データ一時記憶空間、出力データ一時記憶空間、入力誤差一時記憶空間及び出力誤差一時記憶空間を含む。該一時記憶空間はビデオメモリ内に設定されてもよく、ビデオメモリはモデル又はデータを記憶するもので、ビデオメモリが大きいほど、動作可能なネットワークも大きくなり、一般的なビデオカードは、主に以下のいくつかの種類を有する。
Figure 0007174831000001
ビデオメモリの記憶単位は、主に、
1Byte=8bitと、
1K=1024Byteと、
1KB=1000Byteと、
1M=1024Kと、
1MB=1000KBと、
1G=1024Mと、
1GB=1000GBと、
10K=10*1024Byteと、
10KB=10000Byteと、を含む。
一般的な数値のタイプ及びそのサイズは以下の表に示すとおりである。
Figure 0007174831000002
上記表において、Intは整数型の数値であり、longは長整数型の数値であり、floatは浮動小数点型の数値である(singleは単精度浮動小数点型の数値であり、doubleは倍精度浮動小数点型の数値である)。
ステップ2で、処理対象データのタイプが誤差であり方向が出力である場合、出力誤差データに応じて、対応する出力誤差一時記憶空間を呼び出し、該出力誤差を該出力誤差一時記憶空間内に読み込んで処理することができる。
上記処理対象データに対して所定の処理を行うステップは、上記処理対象データに対して畳み込み処理、重畳処理、乗算処理又は積分演算のうちの少なくとも1つを行うステップを含む。
例えば、データに対して畳み込み処理を行うときに、主に2つの変数をある範囲内で乗算した後に加算した結果を取得する。畳み込みの変数が系列x(n)及びh(n)であれば、畳み込み結果は下式に示すとおりである。
Figure 0007174831000003
式中、*は畳み込みを示す。時系列n=0の場合、系列h(-i)はh(i)の時系列iが反転された結果であり、時系列の反転によりh(i)が縦軸を中心として180度反転するため、このような、乗算後に加算する計算法は、畳み込み和と呼ばれ、畳み込みと略称される。また、nはh(-i)をシフトさせる量であり、異なるnは異なる畳み込み結果に対応する。
畳み込みの変数がx(t)とh(t)の2つの関数であれば、畳み込みの計算は下式に従って行われる。
Figure 0007174831000004
pは積分変数であり、積分も加算であり、tは関数h(-p)をシフトさせた量であり、*は畳み込みを示す。
ビデオメモリを節約するという目的を達成するために、上記これらの演算は、いずれも一時記憶空間内で行うことができる。
ステップ4で、上記呼び出された一時記憶空間内のデータを指定された外部記憶空間に書き込むステップは、設定された書き込み方式で上記一時記憶空間内の処理後のデータを指定された外部記憶空間に書き込むステップを含み、上記書き込み方式はAdditionモード及びConcatモードを含む。
また、データのタイプは、入力データ、出力データ、入力誤差及び出力誤差を含み、上記データの方向は、入力及び出力を含む。
具体的には、ユーザにより設定された書き込み方式(Addition、Concat)に応じて異なる方式でデータを指定されたメモリ空間内に書き込むことができる。例えば、ユーザがAdditionモードを設定した場合、対応する一時記憶空間内のデータを指定された記憶空間内に累積的に書き込み、ユーザがConcatモードを設定した場合、ユーザにより設定されたデータ長情報に基づいて、対応する一時記憶空間内のデータを指定された記憶空間内に間隔をあけて順次書き込む。
以下、畳み込みニューラルネットワークを例として、本願の畳み込みニューラルネットワークに基づくビデオメモリ処理プログラムの実行について詳細に説明する。
ニューラルネットワークの各層の出力のビデオメモリ使用量状況を取得するには、各層のfeature mapの形状を計算し、かつバックプロパゲーションのために勾配を保存する必要があり、ビデオメモリ使用量はbatch sizeに正比例する。ニューラルネットワーク全体のビデオメモリ使用量は、モデルビデオメモリ+batch size*各サンプルのビデオメモリ使用量であり、モデルが小さい場合に、batch size*各サンプルのビデオメモリ使用量とほぼ等しい。
畳み込みニューラルネットワークモデルによるトレーニングプロセスにおけるビデオメモリの使用量を節約するために、例えば、対応する一時記憶空間で複数の入力データにマージ処理を行い、対応する一時記憶空間で複数の入力データに累積処理を行うようにConcat及びAddition層などに対してビデオメモリ最適化を行うことができる。
例えば、図3は、ビデオメモリ最適化処理が行われていない従来のCNNネットワークの部分構造である。
図3に示すように、逆伝搬を一時的に考慮せず、順伝搬を例とすると、畳み込み層の入力データのサイズは32*32*3であり、batch sizeが5であれば、該層の入力データのサイズは32*32*3*5であり、各入出力データのサイズの計算方式は以上と同じである。したがって、データがfloatで表されると、最適化処理が行われていない該CNNネットワーク部分が使用するビデオメモリは1980kbである。
本願の畳み込みニューラルネットワークに基づくビデオメモリ処理方法を利用して上記部分に対してビデオメモリ最適化を行い、最適化後の構成図は図4に示すとおりである。
逆伝搬を一時的に考慮しないため、出力データ一時記憶空間を呼び出すことのみを考慮すればよく、該一時記憶空間の寸法又はサイズは、CNNネットワークにおける畳み込み層の出力データの最大サイズに設定され、該実施例では32*32*16である。図4における破線枠内の畳み込み層の出力データに対して、いずれも実際のビデオメモリ空間を割り当てず、出力データ一時記憶空間を呼び出す。
以上より、batch sizeが5であり、かつデータがfloatで表される場合、ビデオメモリ最適化後、該CNNネットワーク部分が使用するビデオメモリは1340kbであり、ビデオメモリを32.3%節約することができる。
上記実施例に係る電子装置1は、共有一時記憶空間を設定し、処理すべきデータのタイプ及び指示に応じて対応する一時記憶空間を呼び出し、データを対応する一時記憶空間内に読み込むか又は書き込んで演算処理を行うことにより、CNNアルゴリズムに適用することができ、他のフレームワークと比較して、Dense、Residual、Inceptionモジュールと任意に組み合わせて新たなCNN構造を形成することができ、約半分のビデオメモリを節約すると共に、GPU計算の並列度を向上させることができる。
他の実施例では、畳み込みニューラルネットワークに基づくビデオメモリ処理プログラム10には、共有一時記憶空間マネージャがさらに設定されてもよく、該マネージャは、入力データ、出力データ、入力誤差及び出力誤差を一時的に記憶する一時記憶空間を含む。該マネージャは、対応する一時記憶空間を取得し操作するいくつかのサブモジュールを提供し、1つ以上のモジュールは、メモリ11に記憶され、かつプロセッサ12により実行されることで、本願を完成させる。本願でいうモジュールとは、特定の機能を実行できる一連のコンピュータプログラム命令セグメントを指す。図2は図1における畳み込みニューラルネットワークに基づくビデオメモリ処理プログラム10の好ましい実施例のプログラムモジュールの図である。上記畳み込みニューラルネットワークに基づくビデオメモリ処理プログラム10は、以下のサブモジュール210~230に分割することができる。
一時空間取得サブモジュール210は、モジュールに入力されたデータのタイプ(データ又は誤差)及び方向(入力又は出力)に応じて、対応する一時記憶空間を呼び出して出力する。
例えば、該一時空間取得サブモジュールに「誤差及び出力」を入力すれば、該サブモジュールは対応する出力誤差一時記憶空間を呼び出して出力する。
データ読み込みサブモジュール220は、該データ読み込みサブモジュールに入力されたデータのタイプ(データ又は誤差)及び方向(入力又は出力)に応じて、指定された記憶空間内のデータを対応する一時記憶空間内に読み込み、かつ該一時記憶空間を出力する。
例えば、該データ読み込みサブモジュールに「誤差及び出力」を入力すれば、該モジュールは指定された記憶空間内のデータを出力誤差一時記憶空間内に読み込み、出力誤差一時記憶空間を出力する。
上記指定された空間とは、主に、処理対象データが現在存在する記憶空間を指し、処理対象データは該指定された空間から一時記憶空間内に読み込まれて処理される。以下は同じである。
データ書き込みサブモジュール230は、該データ書き込みサブモジュールに入力されたデータのタイプ(データ又は誤差)及び方向(入力又は出力)に応じて、対応する一時記憶空間内のデータを指定された一時記憶空間内に書き込む。
例えば、該データ書き込みサブモジュールに「誤差及び入力」を入力すれば、該データ書き込みモジュールは入力誤差一時記憶空間内のデータを指定された記憶空間内に書き込む。
なお、該データ書き込みサブモジュールはまたユーザにより設定された書き込み方式(Addition¥Concat)に応じて、異なる方式でデータを指定されたメモリ空間内に書き込む場合もある。例えば、ユーザがAdditionモードを設定した場合、該データ書き込みサブモジュールは、対応する一時記憶空間内のデータを指定された記憶空間に累積的に書き込み、ユーザがConcatモードを設定した場合、該データ書き込みサブモジュールは、ユーザにより設定されたデータ長情報に基づいて、対応する一時記憶空間内のデータを指定された記憶空間に間隔をあけて順次書き込む。
(実施例2)
本願は、畳み込みニューラルネットワークに基づくビデオメモリ処理方法をさらに提供する。図5は本願に係る畳み込みニューラルネットワークに基づくビデオメモリ処理方法の好ましい実施例のフローチャートである。該方法は、装置によって実行されてよく、該装置は、ソフトウェア及び/又はハードウェアによって実現されてよい。
本実施例では、畳み込みニューラルネットワークに基づくビデオメモリ処理方法は、以下のS110~S140を含む。
S110では、入力データ、出力データ、入力誤差及び出力誤差を一時的に記憶する記憶空間である一時記憶空間を作成する。
該ステップでは、一時記憶空間は、入力データ、出力データ、入力誤差及び出力誤差を一時的に記憶する記憶空間であり、対応する一時記憶空間は、入力データ一時記憶空間、出力データ一時記憶空間、入力誤差一時記憶空間及び出力誤差一時記憶空間を含む。
該一時記憶空間はビデオメモリ内に設定されてもよく、ビデオメモリはモデル又はデータを記憶するもので、ビデオメモリが大きいほど、動作可能なネットワークも大きくなり、一般的なビデオカードは、主に以下のいくつかの種類を有する。
Figure 0007174831000005
ビデオメモリの記憶単位は、主に、
1Byte=8bitと、
1K=1024Byteと、
1KB=1000Byteと、
1M=1024Kと、
1MB=1000KBと、
1G=1024Mと、
1GB=1000GBと、
10K=10*1024Byteと、
10KB=10000Byteと、を含む。
一般的な数値のタイプ及びそのサイズは以下の表に示すとおりである。
Figure 0007174831000006
上記表において、Intは整数型の数値であり、longは長整数型の数値であり、floatは浮動小数点型の数値である(singleは単精度浮動小数点型の数値であり、doubleは倍精度浮動小数点型の数値である)。
S120では、処理対象データのタイプ及び方向に応じて、上記処理対象データに対応する一時記憶空間を呼び出し、上記処理対象データを呼び出された一時記憶空間内に読み込む。
例えば、処理対象データのタイプが誤差であり、方向が出力である場合、出力誤差データに応じて、対応する出力誤差一時記憶空間を呼び出し、該出力誤差を該出力誤差一時記憶空間内に読み込んで処理することができる。
S130では、呼び出された一時記憶空間で上記処理対象データに対して所定の処理を行う。
上記処理対象データに対して所定の処理を行うステップは、上記処理対象データに対して畳み込み処理、重畳処理、乗算処理又は積分演算のうちの少なくとも1つを行うステップを含む。
例えば、データに対して畳み込み処理を行うとき、主に2つの変数をある範囲内で乗算した後に加算した結果を取得する。畳み込みの変数が系列x(n)及びh(n)であれば、畳み込み結果は、下式に示すとおりである。
Figure 0007174831000007
式中、*は畳み込みを示す。時系列n=0の場合、系列h(-i)はh(i)の時系列iが反転された結果であり、時系列の反転によりh(i)が縦軸を中心として180度反転するため、このような、乗算後に加算する計算法は、畳み込み和と呼ばれ、畳み込みと略称される。また、nはh(-i)をシフトさせる量であり、異なるnは異なる畳み込み結果に対応する。
畳み込みの変数がx(t)とh(t)の2つの関数であれば、畳み込みの計算は、下式に従って行われる。
Figure 0007174831000008
pは積分変数であり、積分も加算であり、tは関数h(-p)をシフトさせた量であり、*は畳み込みを示す。
同様に、ビデオメモリを節約するという目的を達成するために、上記これらの演算はいずれも一時記憶空間内で行うことができる。
S140では、処理後のデータのタイプ及び方向に応じて、上記呼び出された一時記憶空間内のデータを指定された外部記憶空間内に書き込む。
該ステップでは、上記呼び出された一時記憶空間内のデータを指定された外部記憶空間内に書き込むステップは、設定された書き込み方式で、上記一時記憶空間内の処理後のデータを指定された外部記憶空間内に書き込むステップを含み、書き込み方式は、additionモード及びconcatモードを含む。
また、データのタイプは、入力データ、出力データ、入力誤差及び出力誤差を含み、上記データの方向は、入力及び出力を含む。
具体的には、ユーザにより設定された書き込み方式(Addition、Concat)に応じて、異なる方式でデータを指定されたメモリ空間内に書き込むことができる。例えば、ユーザがAdditionモードを設定した場合、対応する一時記憶空間内のデータを指定された記憶空間内に累積的に書き込み、ユーザがConcatモードを設定した場合、ユーザにより設定されたデータ長情報に基づいて、対応する一時記憶空間内のデータを指定された記憶空間内に間隔をあけて順次書き込む。
以下、畳み込みニューラルネットワークを例として、本願に係る畳み込みニューラルネットワークに基づくビデオメモリ処理方法について詳細に説明する。
ニューラルネットワークの各層の出力のビデオメモリ使用量状況を取得するには、各層のfeature mapの形状を計算し、かつバックプロパゲーションのために勾配を保存する必要があり、ビデオメモリ使用量はbatch sizeに正比例する。ニューラルネットワーク全体のビデオメモリ使用量は、モデルビデオメモリ+batch size*各サンプルのビデオメモリ使用量であり、モデルが小さい場合に、batch size*各サンプルのビデオメモリ使用量とほぼ等しい。
畳み込みニューラルネットワークモデルによるトレーニングプロセスにおけるビデオメモリの使用量を節約するために、例えば対応する一時記憶空間内で複数の入力データにマージ処理を行い、対応する一時記憶空間内で複数の入力データに累積処理を行うようにconcat及びaddition層などに対してビデオメモリ最適化を行うことができる。
例えば、図3は、ビデオメモリ最適化処理が行われていない従来のCNNネットワークの部分構造である。
図3に示すように、逆伝搬を一時的に考慮せず、順伝搬を例とすると、畳み込み層の入力データのサイズは32*32*3であり、batch sizeが5であれば、該層の入力データのサイズは32*32*3*5であり、各入出力データのサイズの計算方式は以上と同じである。したがって、データがfloatで表されると、最適化処理が行われない該CNNネットワーク部分が使用するビデオメモリは1980kbである。
本願に係る畳み込みニューラルネットワークに基づくビデオメモリ処理方法を利用して上記部分に対しビデオメモリ最適化を行い、最適化後の構成図は図4に示すとおりである。
逆伝搬を一時的に考慮しないため、出力データ一時記憶空間を呼び出すことのみを考慮すればよく、該一時記憶空間の寸法又はサイズは、CNNネットワークにおける畳み込み層の出力データの最大サイズに設定され、該実施例では32*32*16である。図4における破線枠内の畳み込み層の出力データに対して、いずれも実際のビデオメモリ空間を割り当てず、出力データ一時記憶空間を呼び出す。
以上より、batch sizeが5であり、かつデータがfloatで表される場合、ビデオメモリ最適化後、該CNNネットワーク部分が使用するビデオメモリは1340kbであり、ビデオメモリを32.3%節約することができる。
上記実施例に係る畳み込みニューラルに基づくビデオメモリ処理方法は、共有一時記憶空間を設定し、処理すべきデータのタイプ及び指示に応じて、対応する一時記憶空間を呼び出し、かつデータを対応する一時記憶空間内に読み込むか又は書き込んで演算処理を行うことにより、CNNアルゴリズムに適用することができ、他のフレームワークと比較して、Dense、Residual、Inceptionモジュールと任意に組み合わせて新たなCNN構造を形成することができ、約半分のビデオメモリを節約すると共に、GPU計算の並列度を向上させることができる。
(実施例3)
上記実施例2に係る畳み込みニューラルネットワークに基づくビデオメモリ処理方法に対応し、本願は畳み込みニューラルネットワークに基づくビデオメモリ処理システムをさらに提供する。図6は、本実施例に係る畳み込みニューラルネットワークに基づくビデオメモリ処理システムの論理構造を示す。
図6に示すように、本実施例に係る畳み込みニューラルネットワークに基づくビデオメモリ処理システム600は、空間作成部610、データ呼び出し部620、前処理部630、及びデータ書き込み部640を含む。空間作成部610、データ呼び出し部620、前処理部630及びデータ書き込み部640により実現される機能は、上記実施例2における畳み込みニューラルネットワークに基づくビデオメモリ処理方法における対応するステップと一対一に対応する。
具体的には、空間作成部610は、入力データ、出力データ、入力誤差及び出力誤差を一時的に記憶する記憶空間である一時記憶空間を作成し、空間作成部610は、ビデオメモリ内で一時記憶空間を作成することができ、ビデオメモリは、モデル又はデータを記憶するもので、ビデオメモリが大きいほど、動作可能なネットワークも大きくなる。作成された一時記憶空間は、入力データ一時記憶空間、出力データ一時記憶空間、入力誤差一時記憶空間及び出力誤差一時記憶空間を含んでよい。
データ呼び出し部620は、処理対象データのタイプ及び方向に応じて、該処理対象データに対応する一時記憶空間を呼び出し、該処理対象データを呼び出された一時記憶空間内に読み込む。例えば、処理対象データのタイプが誤差であり、方向が出力である場合、出力誤差データに応じて、対応する出力誤差一時記憶空間を呼び出し、該出力誤差を該出力誤差一時記憶空間内に読み込んで処理することができる。
前処理部630は、データ呼び出し部620により呼び出された一時記憶空間内で処理対象データに対して所定の処理を行う。該所定の処理は、上記処理対象データに対して行う畳み込み処理、重畳処理、乗算処理又は積分演算のうちの少なくとも1つを含んでよい。
例えば、前処理部630がデータに対して畳み込み処理を行うときに、主に2つの変数をある範囲内で乗算した後に加算した結果を取得する。畳み込みの変数が系列x(n)及びh(n)であれば、畳み込み結果は下式に示すとおりである。
Figure 0007174831000009
式中、*は畳み込みを示す。時系列n=0の場合、系列h(-i)はh(i)の時系列iが反転された結果であり、時系列の反転によりh(i)が縦軸を中心として180度反転するため、このような乗算後に加算する計算法は畳み込み和と呼ばれ、畳み込みと略称される。また、nはh(-i)をシフトさせる量であり、異なるnは異なる畳み込み結果に対応する。
畳み込みの変数がx(t)とh(t)の2つの関数であれば、畳み込みの計算は、下式に従って行われる。
Figure 0007174831000010
pは積分変数であり、積分も加算であり、tは関数h(-p)をシフトさせた量であり、*は畳み込みを示す。
同様に、ビデオメモリを節約するという目的を達成するために、上記これらの演算はいずれも一時記憶空間内で行うことができる。
データ書き込み部640は、処理後のデータのタイプ及び方向に応じて、呼び出された一時記憶空間内のデータを指定された外部記憶空間内に書き込む。
データ書き込み部640は、設定された書き込み方式で、上記一時記憶空間内の処理後のデータを指定された外部記憶空間に書き込むことができ、該書き込み方式はAdditionモード及びConcatモードを含む。ユーザがAdditionモードを設定した場合、対応する一時記憶空間内のデータを指定された記憶空間に累積的に書き込み、ユーザがConcatモードを設定した場合、ユーザにより設定されたデータ長情報に基づき、対応する一時記憶空間内のデータを指定された記憶空間に間隔をあけて順次書き込む。
上記実施例に係る畳み込みニューラルに基づくビデオメモリ処理システムは、共有一時記憶空間を設定し、処理すべきデータのタイプ及び指示に応じて、対応する一時記憶空間を呼び出し、かつデータを対応する一時記憶空間に読み込むか又は書き込んで演算処理を行うことにより、CNNアルゴリズムに適用することができ、他のフレームワークと比較して、Dense、Residual、Inceptionモジュールと任意に組み合わせて新たなCNN構造を形成することができ、約半分のビデオメモリを節約すると共に、GPU計算の並列度を向上させることができる。
(実施例4)
本願の実施例に係るコンピュータ読取り可能な記録媒体は、プロセッサによって実行されると、入力データ、出力データ、入力誤差及び出力誤差を一時的に記憶する記憶空間である一時記憶空間を作成する動作と、処理対象データのタイプ及び方向に応じて、処理対象データに対応する一時記憶空間を呼び出し、処理対象データを呼び出された一時記憶空間内に読み込む動作と、呼び出された一時記憶空間で処理対象データに対して所定の処理を行う動作と、処理後のデータのタイプ及び方向に応じて、呼び出された一時記憶空間内のデータを指定された外部記憶空間に書き込む動作と、を実現する、畳み込みニューラルに基づくビデオメモリ処理プログラムを含む。
好ましくは、一時記憶空間は、入力データ一時記憶空間、出力データ一時記憶空間、入力誤差一時記憶空間及び出力誤差一時記憶空間を含む。
好ましくは、処理対象データに対して所定の処理を行うステップは、処理対象データに対して畳み込み処理、重畳処理、乗算処理又は積分演算のうちの少なくとも1つを行うステップを含む。
好ましくは、上記呼び出された一時記憶空間内のデータを指定された外部記憶空間に書き込むステップは、設定された書き込み方式で、一時記憶空間内の処理後のデータを指定された外部記憶空間に書き込むステップを含み、書き込み方式は、Additionモード及びConcatモードを含む。
好ましくは、データのタイプは、入力データ、出力データ、入力誤差及び出力誤差を含み、上記データの方向は、入力及び出力を含む。
本願のコンピュータ読取り可能な記録媒体の具体的な実施形態は、上記畳み込みニューラルネットワークに基づくビデオメモリ処理方法、システム、電子装置の具体的な実施形態とほぼ同じであるため、ここでは説明を省略する。
なお、本明細書において、用語「含む」、「備える」又はそれらの任意の他の変形は、非排他的な包含をカバーするものであることにより、一連の要素を含むプロセス、装置、物品又は方法は、それらの要素を含むだけでなく、明確に例示されていない他の要素をさらに含むか、又はこれらのプロセス、装置、物品又は方法固有の要素をさらに含む。更なる限定がない限り、語句「……を含む」により限定された要素は、該要素を含むプロセス、装置、物品又は方法に別の同一の要素がさらに存在する可能性がある。
本願の上記実施例の番号は、説明のためのものに過ぎず、実施例の優劣を示すものではない。以上の実施形態の説明により、当業者が明確に理解できるように、上記実施例の方法は、ソフトウェアと必要な汎用ハードウェアプラットフォームを併用した方法で実現でき、当然のことながら、ハードウェアでも実現できるが、多くの場合に前者がより好ましい実施形態である。このような理解に基づいて、本願の技術手段は、本質的又は従来技術に寄与する部分が、ソフトウェア製品の形態で具現化されてよく、該コンピュータソフトウェア製品は、上記記録媒体(例えば、ROM/RAM、磁気ディスク、光ディスク)に記憶されており、1台の端末装置(携帯電話、コンピュータ、サーバ又はネットワーク装置などであってよい)に本願の各実施例に記載の方法を実行させるための複数の命令を含む。
以上は、本願の好ましい実施例に過ぎず、本願の保護範囲を限定するものではなく、本願の明細書及び図面の内容を利用してなされた等価構造又は等価フロー変換、又は他の関連する技術分野における直接又は間接運用は、いずれも同様に本願の保護範囲に含まれる。

Claims (18)

  1. 電子装置に適用される畳み込みニューラルネットワークに基づくビデオメモリ処理方法であって、
    ビデオメモリ内に、入力データ、出力データ、入力誤差及び出力誤差を一時的に記憶する記憶空間である一時記憶空間を作成するステップと、
    処理対象データのタイプ及び方向に応じて、前記処理対象データに対応する一時記憶空間を呼び出し、前記処理対象データを呼び出された一時記憶空間に読み込むステップと、
    前記呼び出された一時記憶空間内で前記処理対象データに対して所定の処理を行うステップと、
    処理後のデータのタイプ及び方向に応じて、前記呼び出された一時記憶空間内のデータを指定された外部記憶空間に書き込むステップと、を含むことを特徴とする、畳み込みニューラルネットワークに基づくビデオメモリ処理方法。
  2. 前記一時記憶空間は、入力データ一時記憶空間、出力データ一時記憶空間、入力誤差一時記憶空間及び出力誤差一時記憶空間を含むことを特徴とする、請求項1に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理方法。
  3. 前記処理対象データに対して所定の処理を行うステップは、
    前記処理対象データに対して畳み込み処理、重畳処理、乗算処理又は積分演算のうちの少なくとも1つを行うステップを含むことを特徴とする、請求項1に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理方法。
  4. 前記処理対象データに対して行う所定の処理は、2つの変数をある範囲内で乗算した後に加算した結果を取得する畳み込み処理であることを特徴とする、請求項1に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理方法。
  5. 畳み込みの変数が系列x(n)及びh(n)であれば、畳み込み結果は下式に示すとおりであり、
    Figure 0007174831000011
    式中、*は畳み込みを示し、nはh(-i)をシフトさせる量であり、異なるnが異なる畳み込み結果に対応し、時系列n=0の場合、系列h(-i)がh(i)の時系列iが反転された結果であり、時系列の反転によりh(i)が縦軸を中心として180度反転することを特徴とする、請求項に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理方法。
  6. 畳み込みの変数がx(t)とh(t)の2つの関数であれば、畳み込み結果は下式に示すとおりであり、
    Figure 0007174831000012
    *は畳み込みを示し、tは関数h(-p)をシフトさせた量であり、pは積分変数であることを特徴とする、請求項に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理方法。
  7. 前記呼び出された一時記憶空間内のデータを指定された外部記憶空間内に書き込むステップは、
    設定された書き込み方式で、前記一時記憶空間内の処理後のデータを指定された外部記憶空間内に書き込むステップを含み、前記書き込み方式は、Additionモード及びConcatモードを含むことを特徴とする、請求項1に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理方法。
  8. Additionモードが設定されている場合、対応する一時記憶空間内のデータを前記外部記憶空間に累積的に書き込み、
    Concatモードが設定されている場合、設定されたデータ長情報に基づいて、対応する一時記憶空間内のデータを前記外部記憶空間に間隔をあけて順次書き込むことを特徴とする、請求項に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理方法。
  9. 前記データのタイプは、入力データ、出力データ、入力誤差及び出力誤差を含み、
    前記データの方向は、入力及び出力を含むことを特徴とする、請求項1~のいずれか一項に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理方法。
  10. ビデオメモリ内に、入力データ、出力データ、入力誤差及び出力誤差を一時的に記憶する記憶空間である一時記憶空間を作成する空間作成部と、
    処理対象データのタイプ及び方向に応じて、前記処理対象データに対応する一時記憶空間を呼び出し、前記処理対象データを呼び出された一時記憶空間に読み込むデータ呼び出し部と、
    前記呼び出された一時記憶空間内で前記処理対象データに対して所定の処理を行う前処理部と、
    処理後のデータのタイプ及び方向に応じて、前記呼び出された一時記憶空間内のデータを指定された外部記憶空間に書き込むデータ書き込み部と、を含むことを特徴とする、畳み込みニューラルネットワークに基づくビデオメモリ処理システム。
  11. 前記空間作成部により作成された一時記憶空間は、入力データ一時記憶空間、出力データ一時記憶空間、入力誤差一時記憶空間及び出力誤差一時記憶空間を含むことを特徴とする、請求項10に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理システム。
  12. 前記前処理部が前記処理対象データに対して行う所定の処理は、前記処理対象データに対する畳み込み処理、重畳処理、乗算処理又は積分演算のうちの少なくとも1つの処理を含むことを特徴とする、請求項10に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理システム。
  13. 前記前処理部が前記処理対象データに対して行う所定の処理は、2つの変数をある範囲内で乗算した後に加算した結果を取得する畳み込み処理であり、
    畳み込みの変数が系列x(n)及びh(n)であれば、畳み込み結果は下式に示すとおりであり、
    Figure 0007174831000013
    式中、*は畳み込みを示し、nはh(-i)をシフトさせる量であり、異なるnが異なる畳み込み結果に対応し、時系列n=0の場合、系列h(-i)がh(i)の時系列iが反転された結果であり、時系列の反転によりh(i)が縦軸を中心として180度反転することを特徴とする、請求項10に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理システム。
  14. 前記前処理部が前記処理対象データに対して行う所定の処理は、2つの変数をある範囲内で乗算した後に加算した結果を取得する畳み込み処理であり、
    畳み込みの変数がx(t)とh(t)の2つの関数であれば、畳み込み結果は下式に示すとおりであり、
    Figure 0007174831000014
    *は畳み込みを示し、tは関数h(-p)をシフトさせた量であり、pは積分変数であることを特徴とする、請求項10に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理システム。
  15. 前記データ書き込み部は、設定された書き込み方式で、前記一時記憶空間内の処理後のデータを指定された外部記憶空間に書き込み、
    前記書き込み方式は、Additionモード及びConcatモードを含むことを特徴とする、請求項10に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理システム。
  16. Additionモードが設定されている場合、前記データ書き込み部は、対応する一時記憶空間内のデータを前記外部記憶空間に累積的に書き込み、
    Concatモードが設定されている場合、前記データ書き込み部は、設定されたデータ長情報に基づいて、対応する一時記憶空間内のデータを前記外部記憶空間に間隔をあけて順次書き込むことを特徴とする、請求項10に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理システム。
  17. メモリ及びプロセッサを含み、
    前記メモリは、前記プロセッサによって実行されると、請求項1~のいずれか一項に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理方法のステップを実現する、畳み込みニューラルネットワークに基づくビデオメモリ処理プログラムを含むことを特徴とする、電子装置。
  18. プロセッサによって実行されると、請求項1~のいずれか一項に記載の畳み込みニューラルネットワークに基づくビデオメモリ処理方法のステップを実現する、畳み込みニューラルネットワークに基づくビデオメモリ処理プログラムを含むことを特徴とする、コンピュータ読取り可能な記録媒体。
JP2021506309A 2019-06-10 2019-11-14 畳み込みニューラルネットワークに基づくビデオメモリ処理方法、装置及び記録媒体 Active JP7174831B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201910497396.8A CN110377342B (zh) 2019-06-10 2019-06-10 基于卷积神经网络的显存处理方法、装置及存储介质
CN201910497396.8 2019-06-10
PCT/CN2019/118467 WO2020248499A1 (zh) 2019-06-10 2019-11-14 基于卷积神经网络的显存处理方法、装置及存储介质

Publications (2)

Publication Number Publication Date
JP2021532498A JP2021532498A (ja) 2021-11-25
JP7174831B2 true JP7174831B2 (ja) 2022-11-17

Family

ID=68249933

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021506309A Active JP7174831B2 (ja) 2019-06-10 2019-11-14 畳み込みニューラルネットワークに基づくビデオメモリ処理方法、装置及び記録媒体

Country Status (3)

Country Link
JP (1) JP7174831B2 (ja)
CN (1) CN110377342B (ja)
WO (1) WO2020248499A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110377342B (zh) * 2019-06-10 2022-08-30 平安科技(深圳)有限公司 基于卷积神经网络的显存处理方法、装置及存储介质
CN112957068B (zh) * 2021-01-29 2023-07-11 青岛海信医疗设备股份有限公司 超声信号处理方法及终端设备
CN114330755B (zh) * 2022-03-11 2022-06-21 深圳鹏行智能研究有限公司 数据集的生成方法、装置、机器人和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018074012A1 (ja) 2016-10-19 2018-04-26 ソニーセミコンダクタソリューションズ株式会社 演算処理回路および認識システム
JP2018537788A (ja) 2015-12-10 2018-12-20 ディープマインド テクノロジーズ リミテッド 外部メモリを用いたニューラルネットワークの拡張
US20190156188A1 (en) 2017-11-17 2019-05-23 Kabushiki Kaisha Toshiba Arithmetic processing device

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7526634B1 (en) * 2005-12-19 2009-04-28 Nvidia Corporation Counter-based delay of dependent thread group execution
CN103136724B (zh) * 2011-11-30 2015-11-25 北大方正集团有限公司 加网方法和装置
CN103207841B (zh) * 2013-03-06 2016-01-20 青岛海信传媒网络技术有限公司 基于键值对缓存的数据读写方法及装置
CN104090938A (zh) * 2014-06-26 2014-10-08 广州金山网络科技有限公司 一种提交数据的方法及装置
CN106779057B (zh) * 2016-11-11 2020-04-17 北京旷视科技有限公司 基于gpu的计算二值神经网络卷积的方法及装置
CN108229687B (zh) * 2016-12-14 2021-08-24 腾讯科技(深圳)有限公司 数据处理方法、数据处理装置及电子设备
CN107832839B (zh) * 2017-10-31 2020-02-14 南京地平线机器人技术有限公司 执行卷积神经网络中的运算的方法和装置
CN108182469A (zh) * 2017-12-27 2018-06-19 郑州云海信息技术有限公司 一种神经网络模型训练方法、***、装置及存储介质
CN108197705A (zh) * 2017-12-29 2018-06-22 国民技术股份有限公司 卷积神经网络硬件加速装置及卷积计算方法及存储介质
CN109657793B (zh) * 2018-12-26 2020-09-22 广州小狗机器人技术有限公司 模型训练方法及装置、存储介质及电子设备
CN110377342B (zh) * 2019-06-10 2022-08-30 平安科技(深圳)有限公司 基于卷积神经网络的显存处理方法、装置及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018537788A (ja) 2015-12-10 2018-12-20 ディープマインド テクノロジーズ リミテッド 外部メモリを用いたニューラルネットワークの拡張
WO2018074012A1 (ja) 2016-10-19 2018-04-26 ソニーセミコンダクタソリューションズ株式会社 演算処理回路および認識システム
US20190156188A1 (en) 2017-11-17 2019-05-23 Kabushiki Kaisha Toshiba Arithmetic processing device

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Feng Liang, et al.,"Design of 16-bit fixed-point CNN coprocessor based on FPGA",Proceedings of 2018 IEEE 23rd International Conference on Digital Signal Processing (DSP),IEEE,2018年11月21日,全5頁,ISBN:978-1-5386-6811-5, <DOI: 10.1109/ICDSP.2018.8631564>.
齋藤 修(外3名),「大規模ニューラルネットワークに対応可能な学習機能内蔵ディジタルニューロチップ」,電子情報通信学会技術研究報告,日本,社団法人 電子情報通信学会,1998年04月23日,Vol.98, No.24,第25~32頁.

Also Published As

Publication number Publication date
JP2021532498A (ja) 2021-11-25
WO2020248499A1 (zh) 2020-12-17
CN110377342A (zh) 2019-10-25
CN110377342B (zh) 2022-08-30

Similar Documents

Publication Publication Date Title
JP7174831B2 (ja) 畳み込みニューラルネットワークに基づくビデオメモリ処理方法、装置及び記録媒体
US10140251B2 (en) Processor and method for executing matrix multiplication operation on processor
CN108491359B (zh) 子矩阵运算装置及方法
CN103336758B (zh) 一种采用带有局部信息的压缩稀疏行的稀疏矩阵存储方法及基于该方法的SpMV实现方法
US20180137414A1 (en) Convolution operation device and convolution operation method
WO2022037257A1 (zh) 卷积计算引擎、人工智能芯片以及数据处理方法
US9489342B2 (en) Systems, methods, and computer program products for performing mathematical operations
US20120221788A1 (en) Multi-dimensional array manipulation
US11328395B2 (en) Image processing method, image processing device, electronic equipment and computer readable storage medium
CN109840585B (zh) 一种面向稀疏二维卷积的运算方法和***
CN117574970A (zh) 用于大规模语言模型的推理加速方法、***、终端及介质
CN116227209A (zh) 一种点云数据多维线性差值方法、终端设备及存储介质
CN117312330B (zh) 基于便签式存储的向量数据聚集方法、装置及计算机设备
CN114092708A (zh) 特征图像的处理方法、装置和存储介质
US20200242467A1 (en) Calculation method and calculation device for sparse neural network, electronic device, computer readable storage medium, and computer program product
US10761847B2 (en) Linear feedback shift register for a reconfigurable logic unit
CN116611476A (zh) 性能数据预测方法、性能数据预测装置、电子设备及介质
US11256940B1 (en) Method, apparatus and system for gradient updating of image processing model
EP4024206A1 (en) Computing device and method for reusing data
US11409523B2 (en) Graphics processing unit
CN112927125B (zh) 一种数据处理方法、装置、计算机设备及存储介质
CN114821272A (zh) 图像识别方法、***、介质、电子设备及目标检测模型
Fuzong et al. Dynamic data compression algorithm selection for big data processing on local file system
CN114581676B (zh) 特征图像的处理方法、装置和存储介质
CN117891751B (zh) 内存数据访存方法及装置、电子设备与存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210204

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220412

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220627

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: 20221011

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221107

R150 Certificate of patent or registration of utility model

Ref document number: 7174831

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150