JP2018055570A - 演算処理装置、演算処理方法及びプログラム - Google Patents

演算処理装置、演算処理方法及びプログラム Download PDF

Info

Publication number
JP2018055570A
JP2018055570A JP2016193553A JP2016193553A JP2018055570A JP 2018055570 A JP2018055570 A JP 2018055570A JP 2016193553 A JP2016193553 A JP 2016193553A JP 2016193553 A JP2016193553 A JP 2016193553A JP 2018055570 A JP2018055570 A JP 2018055570A
Authority
JP
Japan
Prior art keywords
feature data
arithmetic
feature
data
holding
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.)
Granted
Application number
JP2016193553A
Other languages
English (en)
Other versions
JP6964969B2 (ja
Inventor
悠介 谷内出
Yusuke Yachide
悠介 谷内出
加藤 政美
Masami Kato
政美 加藤
山本 貴久
Takahisa Yamamoto
貴久 山本
野村 修
Osamu Nomura
修 野村
伊藤 嘉則
Yoshinori Ito
嘉則 伊藤
克彦 森
Katsuhiko Mori
克彦 森
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2016193553A priority Critical patent/JP6964969B2/ja
Publication of JP2018055570A publication Critical patent/JP2018055570A/ja
Application granted granted Critical
Publication of JP6964969B2 publication Critical patent/JP6964969B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Advance Control (AREA)

Abstract

【課題】 複数の特徴面を単純に複数の演算回路に割当てて並列演算させると、各演算回路のメモリに重複して保持するデータが多い可能性がある。【解決手段】 演算処理装置は、階層的な演算処理における複数の特徴データのうち、参照側の複数の特徴データを保持する第1保持手段と、それぞれが前記参照側の複数の特徴データのうちの一部の特徴データを参照して、出力側の複数の特徴データを並列に算出する複数の演算回路と、それぞれが前記複数の演算回路の一つに対応し、該演算回路が複数の特徴データを算出するために参照する複数の特徴データを保持する複数の第2保持手段と、それぞれの前記演算回路に割当てる特徴データの複数の候補のうち、前記複数の第2保持手段のそれぞれによって保持される前記特徴データに重複して保持される特徴データの数が少なくなる一つの候補を選択する割当て手段と、を有することを特徴とする。【選択図】 図1

Description

本発明は、パターン認識等に使用される演算処理装置、演算処理方法及びプログラムに関するものである。
ディープネット(或いはディープニューラルネット、ディープラーニングとも称される)と呼ばれる多階層のニューラルネットワークが、近年非常に大きな注目を集めている。ディープネットは、特定の演算手法を指すものではないが、一般的には、入力データ(例えば、画像データ)に対して、ある階層の処理結果を、その後段の階層の処理の入力とする階層的な演算処理を行うものを指す。特に画像識別の分野では、畳込みフィルタ演算を行う畳込み層と、結合演算を行う結合層とから構成されるディープネットが主流になりつつある。Convolutional Neural Networks(以下CNNと略記する)はそのディープネットの実現方法として代表的な手法であり、以下CNNに基づく手法について説明する。
図3は、畳込みフィルタ演算の例を示す図である。図3では、処理対象画像301に対して、フィルタカーネル302のカーネルサイズが3×3のフィルタ演算を行う場合を示している。このような場合、次式に示す積和演算処理により、畳込みフィルタ演算結果が算出される。
Figure 2018055570

ここで、「di,j」は座標(i,j)での処理対象画像画素値を示し、「fi,j」は座標(i,j)でのフィルタ演算結果を示す。また、「ws,t」は座標(i+s−1,j+t−1)の処理対象画像画素値に適用するフィルタカーネルの値(フィルタ係数パラメータ)を示し、「columnSize」及び「rowSize」はフィルタカーネルサイズを示す。フィルタカーネル302を処理対象画像中でスキャンさせつつ、上記の演算を行うことで、畳込みフィルタ演算の出力結果を得ることができる。
この畳込みフィルタ演算及びシグモイド変換に代表される非線形変換処理から、特徴量が生成される。入力画像に対してこの特徴量を生成する演算を階層的に繰り返し行うことで、画像の特徴を表現する特徴面が得られる。つまり、入力画像全体に対して畳込みフィルタ演算を繰り返して生成された二次元特徴量が特徴面になる。
画像からの特徴量抽出処理に畳込みフィルタ演算を用い、抽出した特徴量を用いた識別処理に、パーセプトロンに代表される行列積演算を用いる構成になっているものを典型的なディープネットとしている。この特徴量抽出処理は畳込みフィルタ演算を何度も繰り返す多階層処理であることが多く、また識別処理も全結合の多階層のパーセプトロンが用いられることがある。この構成は、近年盛んに研究されているディープネットとしては非常に一般的な構成である。
ここで、図4を用いてディープネットの演算例について説明する。図4は、入力層となる入力画像401に対して、畳込みフィルタ演算により特徴データ抽出を行い、特徴面407の特徴量が得られた後、特徴面407の特徴量に対して、識別処理を行い、識別結果414を得るような処理を示している。入力画像401から特徴面407を得るまでに畳込みフィルタ演算を何度も繰り返している。また、特徴面407の特徴量に対して全結合のパーセプトロン処理を複数回行い、最終的な識別結果414を得ている。
まず、前半の畳込みフィルタ演算を説明する。図4において、入力画像401は、画像データに対してラスタスキャンされた所定サイズの画像データを示す。特徴面403a〜403cは第1段目の階層408の特徴面を示す。前述のとおり、特徴面とは、所定の特徴抽出フィルタ(畳込みフィルタ演算及び非線形処理)の演算結果を示すデータ面である。ラスタスキャンされた画像データに対する演算結果であるため、演算結果も面で表される。特徴面403a〜403cは、入力画像401に対する畳込みフィルタ演算及び非線形処理により生成される。例えば、特徴面403aは、フィルタカーネル4021aを用いた畳込みフィルタ演算及び演算結果の非線形変換により得られる。なお、図4中のフィルタカーネル4021b及びフィルタカーネル4021cは、各々特徴面403b及び特徴面403cを生成する際に使用されるフィルタカーネルである。上述の各特徴面生成のための畳込みフィルタ演算関係にある構造を、階層的な結合関係と呼ぶ。
次に、第2段目の階層409の特徴面405aを生成する演算について説明する。
特徴面405aは前段の階層408の一部の特徴面である3つの特徴面403a〜403cと結合している。従って、特徴面405aのデータを算出する場合、特徴面403aに対してはフィルタカーネル4041aで示すカーネルを用いた畳込みフィルタ演算を行い、この結果を保持する。同様に、特徴面403b及び403cに対しては、各々フィルタカーネル4042a及び4043aの畳込みフィルタ演算を行い、これらの結果を保持する。これらの3種類のフィルタ演算の終了後、保持された結果を加算し、非線形変換処理を行う。以上の処理を画像全体に対して処理することにより、特徴面405aを生成する。
同様に、特徴面405bの生成の際には、前段の階層408の特徴面403a〜403cに対するフィルタカーネル4041b、4042b及び4043bによる3つの畳込みフィルタ演算を行う。また、第3段目の階層410の特徴面407の生成の際には、前段の階層409の特徴面405a〜405bに対するフィルタカーネル4061及び4062による2つの畳込みフィルタ演算を行う。
続いて後半のパーセプトロン処理を説明する。図4では2階層のパーセプトロンになっている。パーセプトロンは、入力特徴量のそれぞれの要素に対する重み付き和を非線形変換したものである。従って、特徴面407の特徴量に対して、行列積演算を行い、その結果に非線形変換を行えば、中間処理結果413を得ることができる。さらに同様の処理を繰り返せば、最終的な識別結果414を得ることができる。
畳込み層における階層的な畳込みフィルタ演算は、参照側の多数の特徴面を参照して、出力側の多数の特徴面を算出するという結合関係に基づく演算であるので、演算の処理量が多く、処理時間が長い。非特許文献1で示されているように、階層間の結合を粗密化することで畳込みフィルタ演算数やフィルタカーネルを削減することは可能である。
ディープネットの階層構造が大規模化するにあたって、性能を向上・維持しつつ処理するために、複数の演算回路を用いて並列に複数の特徴面を算出する並列化処理を含めた効率的な処理を行っていく必要がある。
しかし、各階層間の特徴面にはたくさんの結合関係があるので、複数の演算回路が並列して算出する複数の特徴面を単純に分割して、複数の演算回路に割当てると、各演算回路のメモリでは、重複して保持する参照側の特徴面やカーネルフィルタが多い。重複して保持するデータに起因して、メモリへのアクセス時間が長くなり、複数の演算回路の並列化処理による高速な演算処理が妨げられる。
この問題を解決するために、特許文献1では、複数の階層間で予め結合関係を分割しておいて、分割した結合関係で独立に学習した後に、結合関係の独立した特徴面の算出を複数の演算回路に割当てて並列化処理を行う構造を提案している。
WO2014105865A
Yann LeCun, Leon Bottou,Yoshua Bengio,and Patrick Haffner."Gradient−Based Learning Applied to Document Recognition,"in proceedings of the IEEE,86(11):2278−2324,November 1998
しかしながら、特許文献1の手法は予め階層的結合関係の構造を決めた後に学習する前提があるので、機械学習の制限があり、非特許文献1の従来手法で学習した結合関係に対して特許文献1の手法を適用することはできない。そのために、特許文献1の手法では、学習の自由度が少ないことによる画像識別や物体検出の精度への影響はある。つまり、特許文献1の手法の予め並列化を見越した構造は、非特許文献1で示したよう粗密な階層的結合関係のような結合関係の構成に対して適用できないので、複数の演算回路による並列化処理を高速に実行することができない。
本発明は、上記の課題に鑑みてなされたものであり、予め階層的結合関係の構造を決めていない場合でも、算出する複数の特徴面を、複数の演算回路に適切に割り当てることによって、並列化処理を高速に行う演算処理装置を提供することを目的とする。また、その演算処理方法及びプログラムを提供することを目的とする。
上記課題を解決するために、本発明に係る演算処理装置は、以下の構成を有する。すなわち、階層的な演算処理における複数の特徴データのうち、参照側の複数の特徴データを保持する第1保持手段と、それぞれが前記参照側の複数の特徴データのうちの一部の特徴データを参照して、出力側の複数の特徴データを並列に算出する複数の演算回路と、それぞれが前記複数の演算回路の一つに対応し、該演算回路が複数の特徴データを算出するために参照する複数の特徴データを保持する複数の第2保持手段と、前記複数の演算回路の並列処理のために、前記出力側の複数の特徴データのうち、それぞれの前記演算回路に割当てる特徴データの複数の候補のうち、前記複数の第2保持手段のそれぞれによって保持される前記特徴データに重複して保持される特徴データの数が少なくなる一つの候補を選択して、それぞれの前記演算回路に割当てる特徴データを決定する割当て手段と、を有することを特徴とする。
本発明によれば、算出する複数の特徴面を、複数の演算回路に適切に割り当てることによって、並列化処理を高速に行う演算処理装置を提供することができる。
第1の実施形態の演算処理装置のハード構成である。 (a)演算回路の概略構成を示す図である。(b)演算回路の制御部の構成を示す図である。 畳込みフィルタ演算の模式図である。 連続するディープネット階層間の関係の模式図である。 階層的結合関係の一つの分割例である。 階層的結合関係のもう一つの分割例である。 第1の実施形態の演算処理装置の動作を説明するフローチャートである。 階層間の分割手法に基づく処理全体のフローチャートである。 階層間の分割手法を表すフローチャートである。 階層間の特徴面割当ての交換を説明する図である。 階層間の特徴面割当ての交換を説明する図である。 第2の実施形態のグラフ生成を表す模式図である。 第2の実施形態のグラフカットに基づく全体フローチャートである。 第4の実施形態における階層的な結合の動的な変動を示す模式図である。 第5の実施形態のクラウドサーバーシステムの構成を示す図である。
(第1の実施形態)
本実施形態の目的は、階層的な結合関係の構成に応じて特徴面を効率よく高速に並列処理するための階層的な結合関係の分割の最適化を行うことにある。以下、図を用いて本実施形態の詳細について説明する。
図1は本実施形態の演算処理装置の構成例を示すものである。この演算処理装置は、入力された画像データから特定の物体を検出し、認識するパターン認識の機能を有する。
演算処理装置は、画像入力モジュール1000、演算回路1002−1〜1002−n、RAM1001−1〜1001−n、I/F1011、RAM1009、DMAC1006、CPU1007及びROM1008などによって構成される。画像入力モジュール1000は、光学系、CCD又はCMOSセンサー等の光電変換デバイス及びセンサーを制御するドライバー回路/ADコンバーター/各種画像補正を司る信号処理回路/フレームバッファ等により構成される。
RAM(Random Access Memory)1001−1〜1001−nは、それぞれ演算回路1002−1〜1002−nの演算作業バッファとして使用される。
また、本実施形態の並列演算処理装置は、並列処理を行うための演算回路1002−1〜1002−nおよびRAM1001−1〜1001−nは、複数ある。
図4の階層的な結合関係に示すように、出力側の複数の特徴面を算出するための参照側の複数の特徴面やそれぞれのフィルタカーネルは、演算処理装置の外部からI/F1011を通じて一旦、RAM1009に記憶される。RAM1009に保持してある階層的な結合関係に係る各種データを分けて、各演算回路1002−1〜1002−nのメモリであるRAM1001−1〜1001−nに記憶させるための割当てモジュール1012が、階層的な結合関係の分割情報を作成する。ここで、階層的な結合関係は、階層的な特徴面の結合関係の構造および各結合関係に対する畳込みフィルタ演算に必要な畳込みフィルタ係数、複数の特徴面に関する情報を含む。
演算回路1002−1〜1002−nは、本実施形態に関する階層的なの結合関係の分割情報に基づいて割り当てられた畳込みフィルタ演算を処理するCNN処理部である。
DMAC(Direct Memory Access Controller)1006は、画像バス1003上の各処理モジュールとCPUバス1010間のデータ転送を司る。ブリッジ1004は、画像バス1003とCPUバス1010のブリッジ機能を提供する。前処理モジュール1005は、CNN処理によるパターン認識処理を効果的に行うための各種前処理を行う。具体的には色変換処理/コントラスト補正処理等の画像データ変換処理をハードウェアで処理する。なお、前処理モジュール1005は本実施形態の演算処理装置に含まれなくてもよい。CPU1007は、装置全体の動作を制御するものである。ROM(Read Only Memory)1008は、CPU1007の動作を規定する命令やパラメータデータを格納する。RAM1009はCPU1007の動作に必要なメモリである。CPU1007はブリッジ1004を介して画像バス1003上のRAM1001にアクセスする事も可能である。なお、階層的な結合関係の分割情報は、割当てモジュール1012によって生成されることに限らず、I/F1011を通じて外部の装置から取得してもよい。例えば、外部のPCにおいて、階層的な結合関係の分割情報が生成され、I/F1011を通じてRAM1009に保持された場合は、RAM1009に保持され分割情報を用いて、並列処理を行うことができる。
本実施形態の演算処理装置の各演算回路1002−1〜1002−nの構成及び動作は同じであるので、図2(a)を用いて代表的な演算回路1002の内部構成及び動作を説明する。制御部601は分割情報に基づき、必要な参照側の特徴面のデータ・畳込みフィルタ係数をRAM1001に格納する。なお、本実施形態の演算処理装置の各演算回路1002−1〜1002−nに対応するメモリであるRAM1001−1〜1001−nも同じであるので、RAM1001はそのうちの一つを示す。制御部601は、RAM1001に保持した参照側の特徴面のデータ・畳込みフィルタ係数の読み出し、畳込み演算部602への供給を行う。畳込み演算部602は式(1)で示した演算に基づいて、参照側の特徴面、畳込みフィルタ係数に対し畳込み演算を行い、演算結果を出力する。制御部601は前記演算結果をRAM1009に出力する。
図2(b)は、図2(a)の制御部601の詳細な構成を説明する図である。シーケンス制御部1201は、レジスタ群1202に設定された情報に従って、演算回路の動作を制御する各種制御信号1204を入出力する。同様に、シーケンス制御部1201はメモリ制御部1205を制御するための制御信号1206を算出する。シーケンス制御部1201はバイナリカウンタやジョンソンカウンタ等からなるシーケンサにより構成される。レジスタ群1202は複数のレジスタセットからなり、例えば、参照側の特徴面や算出する特徴面に関する情報、カーネルに関する情報、階層を分割されて保持される特徴面の等に関する情報等が記録される。レジスタ群1202は、ブリッジ1004及び画像バス1003を介してCPU1007から予め所定の値が書き込まれる。
メモリ制御部1205は、シーケンス制御部1201からの制御信号1206に基づいてRAMから参照側の特徴面のデータ1207および畳込みフィルタ係数データ1208を畳込み演算部602に供給する。演算結果1209は畳込み演算部602より取得する。ここで、供給される参照側の特徴面のデータおよび畳込みフィルタ係数データは階層的な結合関係の分割情報に基づくものである。
図5は、参照側の階層123および出力側の階層124の結合関係の初期分割例を示している。異なるフィルタカーネルによる特徴面間の畳込みフィルタ演算の結合関係を矢印113〜122で表しており、階層123内の特徴面101〜106を参照側の特徴面として、階層124内の特徴面107〜112に上記矢印113〜122で接続されている。ここで、矢印113〜122はフィルタカーネルによる結合関係を示すと共に、フィルタカーネルによる畳込みフィルタ演算を行うことを示している。例えば、矢印113は、参照側の特徴面101から出力側の特徴面107が畳込みフィルタ演算によって生成されることを示すと共に、フィルタカーネル113を用いて畳込みフィルタ演算を行うことを示す。
出力側の階層である階層124の視点から見ると、特徴面107はフィルタカーネル113によって特徴面101を参照側の特徴面として生成され、特徴面108はフィルタカーネル115によって特徴面102を参照側の特徴面として生成される。特徴面109はフィルタカーネル116、119によって、それぞれ特徴面103、105を参照側の特徴面として生成され、特徴面110はフィルタカーネル114、121によって、それぞれ特徴面101、106を参照側の特徴面として生成される。特徴面111はフィルタカーネル117、118によって、それぞれ特徴面102、104を参照側の特徴面として生成され、特徴面112はフィルタカーネル120、122によって、それぞれ特徴面103、106を参照側の特徴面データとして生成される。一つの演算回路が、特徴面107、特徴面108及び特徴面109を順次に算出するために、その演算回路のメモリから特徴面101、特徴面102、特徴面103及び特徴面105とそれぞれの特徴面に対応するフィルタカーネルを順次に読み出す必要がある。
次に、図5を用いて、並列化のための階層的な結合関係の初期分割の概要および初期分割の結果について説明する。初期分割は、割当てモジュール1012が分割条件に基づいて実行される。分割条件は、使用可能な演算回路の個数に基づく分割数の指定や演算回路のメモリで保持する最大なデータ量などである。また、処理負荷を分散するために、割当てモジュール1012は、算出される特徴面の数と参照される特徴面の数などに基づいて、それぞれの演算回路の演算量の差が小さくなるように、初期分割の処理を行う。割当てモジュール1012の初期分割の処理によって、それぞれの演算回路が算出する出力側の特徴面として、それぞれの演算回路に割当てられる特徴面の一つの候補が得られる。
図5は、階層間の結合関係の初期分割の結果を示し、演算によって生成される特徴面を分割125および分割126に分割した様子を示す。分割125では特徴面107、108、109を一つの単位として、特徴面107、108、109を算出するための畳込みフィルタ演算を演算回路1002−1に割当てている。分割126では特徴面110、111、112を一つの単位として、特徴面110、111、112を算出するための畳込みフィルタ演算を演算回路1002−2に割当てている。
ここで、それぞれの特徴面を生成するために必要な参照側の特徴面およびフィルタ係数は、割当てられた演算回路1002のRAM1001で保持して動作することを想定している。例えば、図5の分割125で示す特徴面107、108、109を生成するための参照側の特徴面101、102、103、105と、矢印113、115、116、119のそれぞれで示す畳込みフィルタ係数はRAM1001−1に保持されている。また、分割126で示す特徴面110、111、112を生成するための参照側の特徴面101、102、103、106と、矢印114、117、120、118、122のそれぞれで示す畳込みフィルタ係数はRAM1001−2に保持されている。
ここで、保持されている保持データについて注目すると、参照側の特徴面101、102、103はそれぞれの割当て先の演算回路のRAM1001で重複して保持する必要があるため、並列演算に必要なメモリ領域及びデータの転送量が増大する。
次に、図5と同じ階層的な結合関係に対して、図5と異なる分割結果の一例を図6に示す。図6に示す分割結果は、本実施形態の割当てモジュール1012の処理によって、それぞれの演算回路が算出する出力側の特徴面として、それぞれの演算回路に割当てられる特徴面のもう一つの候補である。割当てモジュール1012は、図5に示す候補と図6に示す候補から、割当てを選択する。割当ての選択については後に述べるが、ここでは、まず、図6に示す分割結果について説明する。
図6に示す分割結果は、分割201と分割202である。分割201に示す特徴面107、108、111を生成するための演算処理を演算回路1002−1に割当てており、分割202で示す特徴面109、110、112を生成するための演算処理を演算回路1002−2に割当てている。
分割201で示す特徴面107、108、111を生成するための参照側の特徴面101、102、104と、矢印113、115、117、118のそれぞれで示す畳込みフィルタ係数のそれぞれをRAM1001−1で保持する。また、分割202に示す特徴面109、110、112を生成するための参照側の特徴面101、103、105、106と、矢印114、116、119〜122のそれぞれで示す畳込みフィルタ係数のそれぞれをRAM1001−2で保持する。
ここで、RAM1001−1及びRAM1001−2の保持データについて注目すると、参照側の特徴面101のみ、重複して保持する必要がある。
図5の分割125、126と図6の分割201、202とを比べると、出力側の階層124の特徴面を算出するための処理内容・演算量は同じにもかかわらず、RAM1001−1及びRAM1001−2で重複して保持する特徴面の数が異なってくる。このように、並列処理を行うための割り当て単位次第で、メモリに保持すべきデータの重複量が変わってくるので、並列処理の効率が大きく左右される。
図7は、本実施形態の並列演算装置がパターン認識を行うための動作を説明するフローチャートである。以下、フローチャートは、CPU1007が制御プログラムを実行することにより実現されるものとする。
ステップS1101では、認識処理の開始に先立ち、CPU1007が各種初期化処理を実行する。CPU1007は、演算回路のCNN処理動作に必要なフィルタ係数をROM1008からRAM1001に転送すると共に、演算回路1002の動作、即ち階層的な結合関係を定義する為の各種レジスタ設定を行う。具体的には演算回路1002の制御部601に存在する複数のレジスタに所定の値を設定する。同様に、CPU1007は、前処理モジュール1005等のレジスタに対しても動作に必要な値を書き込む。
次に、ステップS1102で割当てモジュール1012は、各特徴面を算出する際の階層構造の分割を決定し、階層的な結合関係の分割情報を生成する。ここでは、並列に動作する演算回路の数等の条件に従って階層構造の分割を決定するが、具体的な分割手法は後述する。
初期化処理を行うステップS1101及び階層構造の分割を行うステップS1102の後に、一連の物体認識動作を開始する。まず、ステップS1103では画像入力モジュール1000が、画像センサーの出力する信号を画像データに変換し、フレーム単位で図示しないが、画像入力モジュール1000に内蔵するフレームバッファに格納する。フレームバッファへの画像データの格納が完了すると、所定の信号に基づいて、前処理モジュール1005が画像変換処理を開始する。ステップS1104では、前処理モジュール1005は前記フレームバッファ上の画像データから輝度データを抽出し、コントラスト補正処理を行う。
輝度データの抽出は一般的な線形変換処理によりRGB画像データから輝度データを生成する。コントラスト補正の手法も一般的に知られているコントラスト補正処理を適用してコントラストを強調する。前処理モジュール1005は階層的な結合関係の分割情報に基づき、コントラスト補正処理後の輝度データを検出用画像として、並列処理が振り分けられた演算回路1002に対応するRAM1001に格納する。1フレームの画像データに対して前処理が完了すると、前処理モジュール1005は図示しない完了信号を有効にする。
ステップS1105では、演算回路1002は前処理モジュール1005が有効にした完了信号に基づいて起動し、CNN処理に基づく物体の検出処理を開始する。ステップS1105での処理はステップS1102で生成された階層な結合関係の分割情報に基づいて動作である。ステップS1106では、最終層の特徴面の算出を終了すると演算回路1002はCPU1007に対して完了割り込みを発生する。
ステップS1107では、CPU1007は演算回路1002の処理終了を示す完了割り込みを受信すると、最終層の特徴面を解析し、画像中の物体の位置や属性を判定する。ステップS1107の解析処理を完了すると、ステップS1108に進み、次のフレームの画像に対する処理が継続する各特徴面を算出する際の階層構造の分割を決定し、階層的な結合関係の分割情報を生成する。
次に、図8を用いて、ステップS1102で割当てモジュール1012が、CNN処理の階層構造を分割して、複数の特徴面の算出を複数の演算回路に並列処理させるために、階層的な結合関係の分割情報を生成する方法について述べる。本実施形態では焼きなまし法(シミュレーテッドアニーリング法)に基づく算出手法について説明する。まず、ステップS801で分割条件を取得する。ここでいう分割条件とは、使用可能な演算回路の個数に基づく分割数の指定や演算回路当たりで保持ないしは転送する必要のあるデータ量に基づく条件などである。次に、ステップS802で階層的な結合関係から任意の階層間を選択する。つまり直接結合されている入力層と出力層の組を選択する。選択した階層間の結合関係の分割をステップS803で決定する。そして、ステップS804では、すべての階層間で終了するまでステップS803までの処理を繰り返し行う。
図9は、ステップ803での選択した階層間の具体的な分割決定のプロセスを示すフローチャートである。
まず、ステップS901では、CNN処理における複数の畳込みフィルタ演算を割り当てることが可能な演算回路の数に基づいて、図5に示すように、割当てモジュール1012が初期の階層間の結合分割を決定する。次に、初期の階層的な結合関係の分割を解析する。その結果、図5に示す階層間の結合関係127に対して、図10に示すように、割当てモジュール1012が出力側の特徴面107〜112の算出を、演算回路1への割当て1306および演算回路2への割り当て1315のように割り当てていることが分かった。この際、割当て1306に関して出力側の特徴面107〜109を算出するために必要なデータ1301は、演算回路1に対応する非図示のRAMに保持する必要がある。具体的に、出力側の特徴面107を算出するために、参照側の特徴面101と畳込みフィルタカーネル1302、出力側の特徴面108を算出するために、参照側の特徴面102と畳込みフィルタカーネル1303が演算回路1のRAMに保持される。また、出力側の特徴面109を算出するために、参照側の特徴面103と畳込みフィルタカーネル1304、参照側の特徴面105と畳込みフィルタカーネル1305が演算回路1のRAMに保持される。
また、演算回路2への割当て1315に関しては、出力側の特徴面110〜112を算出するために必要なデータ1308は、演算回路2に対応する非図示のRAMに保持する必要がある。具体的に、出力側の特徴面110を算出するために、参照側の特徴面101と畳込みフィルタカーネル1309、参照側の特徴面106と畳込みフィルタカーネル1313が演算回路2のRAMに保持される。同様に、出力側の特徴面111を算出するために、参照側の特徴面102と畳込みフィルタカーネル1310、参照側の特徴面104と畳込みフィルタカーネル1312が演算回路2のRAMに保持される。また、出力側の特徴面112を算出するために、参照側の特徴面103と畳込みフィルタカーネル1311、参照側の特徴面106と畳込みフィルタカーネル1314が演算回路2のRAMに保持される。
ここで、演算回路1への割当て1306と演算回路2への割当て1315によって、それぞれのRAMで保持する必要のあるデータを見てみると、参照側の特徴面101、102、103のデータが重複して保持するデータとなっている。なお、図5の例では、各演算回路への割当てられた特徴面の個数がバランスよくなるようにするために同じであるが、これに限ったものではなく、各演算回路へ割当てた特徴面の個数が異なってもよい。
次に、ステップS902で、階層処理間の異なる演算回路に割り当てられている出力側の特徴面を二つピックアップする。例えば、図10の演算回路1への割当て1306と、演算回路2への割当て1315とから、それぞれ出力側の特徴面109および特徴面111をピックアップし、ステップS903にて、ピックアップした特徴面割当てを交換する。特徴面割当ての交換は、演算回路1に割当てられた特徴面109の算出を演算回路2に割当て、演算回路2に割当てられた特徴面111の算出を演算回路1に割当てるように結合関係の分割情報を変更する処理である。
二つの演算回路に割当てられた出力側の特徴面を交換した後のそれぞれの演算回路のRAMに保持するデータについて図11を用いて説明する。交換後の演算回路1及び演算回路2への算出する出力側の特徴面の割当ては割当て1402及び割当て1405のようになる。交換後の結合関係を解析すると、割当て1402に関して、出力側の特徴面107、108、111を作成するために必要なデータはデータ1401である。即ち、出力側の特徴面107を算出するために、参照側の特徴面101と畳込みフィルタカーネル1302、出力側の特徴面108を算出するために、参照側の特徴面102と畳込みフィルタカーネル1303を演算回路1のRAMに保持する必要がある。また、出力側の特徴面111を算出するために、参照側の特徴面102と畳込みフィルタカーネル1310、参照側の特徴面104と畳込みフィルタカーネル1312を演算回路1のRAMに保持する必要がある。
また、割当て1405に関しては、出力側の特徴面110、109、112を生成するために必要なデータはデータ1404である。即ち、出力側の特徴面110を算出するために、参照側の特徴面101とフィルタカーネル1309、参照側の特徴面106とフィルタカーネル1313を演算回路2のRAMに保持する必要がある。また、出力側の特徴面109を算出するために、参照側の特徴面103とフィルタカーネル1304、参照側の特徴面105とフィルタカーネル1305を演算回路2のRAMに保持する必要がある。また、出力側の特徴面112を算出するために、参照側の特徴面103とフィルタカーネル1311、参照側の特徴面106とフィルタカーネル1314を演算回路2のRAMに保持する必要がある。
ここで、割当て1402と割当て1405でそれぞれの演算回路のRAMで保持する必要のあるデータを見てみると、参照側の特徴面101のみが重複して保持するデータとなっている。図10で示した割当て1306と割当て1315と比べると、RAMに保持する必要なデータ数を特徴面の数で比較すると、9面から7面へと少なくさせることが可能である。
次に、ステップS904にて評価値を算出する。ここで、評価値は、それぞれの演算回路のRAMで重複して保持するデータのデータ量および、ペナルティ値で構成される。ペナルティ値は、ステップS801で取得した分割条件に基づき決定する。分割条件は、例えば、演算回路の個数や演算回路一つあたりで割当て(分割)可能な演算処理量である。演算回路の演算処理量は、参照側の特徴面、フィルタカーネルのサイズや演算サイクル数などの条件によって算出される。また、それぞれの演算回路のRAMで重複して保持する特徴面の許容数、各演算回路の処理負荷分散条件などを考慮して分割条件を決定してもよい。本実施形態では、説明の簡単化のために、演算回路一つあたりで処理可能な演算処理量として参照側の特徴面サイズとフィルタカーネルのサイズの合計値を用いて分割条件例を説明する。
まず、評価値算出にあたり、分割数がa個の時、割当てlと割当てk間で重複して保持すべきデータ量をn(l,k)とすると、全割当てにおいて重複して保持すべきデータ量の合計sは
Figure 2018055570

と表すことができる。
次に、ペナルティ値について説明する。割当てiを処理するために必要な参照側の特徴面総サイズをxと、フィルタカーネルの総サイズをwとすると、演算回路一つあたりでの必要データサイズの合計tはt=x+wと表すことができる。前述のとおり、本実施形態では演算回路一つあたりで処理可能な参照側の特徴面サイズとフィルタカーネルのサイズの合計値を分割条件として扱うため、その条件値をthとすると、各tがth以下か否かを比較し、thを超えた場合は各割当て毎のペナルティ値pにCを与える。
Figure 2018055570

つまり、全割当てでのペナルティ値の合計は
Figure 2018055570

以上より評価値fは以下のように表すことができる。
f=s+P
ステップS905では、ステップS904で算出した評価値に基づいて、評価値が割当て前より良い場合、割当ての変更を採用し、そうでない場合は交換前の割当てに戻す。ここで、割当て変更の基準は、変更前後で評価値が良悪だけではなく、n%以上良い場合なら変更するなどの幅を持った閾値で採用選択を行ってもよい。
ステップS906で事前に設定した繰り返し回数や時間、それぞれの演算回路のRAMで重複して保持する特徴面の数、特徴面の交換による重複データ量削減率などの制約条件を満たすまでステップS902からステップS905までの処理を繰り返し行う。例えば、それぞれの演算回路のRAMで重複して保持する特徴面の数が所定数以下になるまで、ステップS902からステップS905までの処理を繰り返す。また、焼きなまし法に基づく場合は、その収束条件に従うことも可能である。また、本実施形態は、焼きなまし方に限らず、遺伝的アルゴリズムなどに代表される進化的アルゴリズムを持ちしても良い。
本実施形態の方法によって、既存の階層的な結合関係に応じて、各演算回路への複数の畳込みフィルタ演算の最適な分割(割当て)を行うことができる。最適な分割を行うことで、各演算回路のメモリで重複して保持するデータの量が少なくなり、データ転送やデータ読み取りの時間が短縮されて、効率よい並列処理が可能となる。また、本実施形態は、学習済みの階層的な結合関係に対して適用することが可能であるため柔軟性が高いといえる。
本実施形態ではCNN処理の場合について説明したが、本実施形態の方法は、Restricted Boltzmann MachinesやRecursive Neural Network等の他の階層的な処理にも適用可能である。
また、本実施形態では2次元の特徴データである特徴面に対する階層的な演算処理の例について説明したが、音声データ等の1次元の特徴データや時間の変化を含めた3次元の特徴データに対するCNN処理等の階層的な演算処理に適用することも可能である。
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。本実施形態のハード構成は、第1の実施形態と同じであるので、その説明を省略する。
本実施形態では、割当てモジュール1012が階層間の結合関係を分割する際に、階層間の結合関係をグラフと見立て、最大フロー最小カット定理に基づいてグラフをカットすることで階層間での結合の分割を決定する。本実施形態の分割方法を図12および図13を用いて説明する。図13は図8のフローチャート上の階層間分割決定ステップS803の別の実施形態を表している。本実施形態でいうグラフとは階層的な結合関係を表している。また、以下では階層的な結合関係をグラフとして扱うに当たり、特徴面をグラフの結合点として、特徴面の結合関係を入力層から出力層に向けて有効グラフとする。
ステップS1602では、分割対象である階層的な結合関係を選択する。本処理は分割統治的に繰り返しグラフを分割していくことを想定した説明となるため、すべての条件を満たすグラフになるまでグラフを繰り返し処理していく。つまり、条件を満たしていないグラフをこのステップで選択する。
次に、ステップS1603では選択したグラフに対して、グラフカットを行うための整形を行う。本ステップを説明するにあたり、図5に示すような階層的な結合関係を例に説明する。図12は図5の階層関係に対して、各特徴面101−112を結合点と見立て、s点1501およびt点1514をそれぞれ送信点、受信点として追加する。また、s点と全結合点を結合点方向に接続、t点と結合点をt点方向に接続してある。ここで矢印113−122は参照側の特徴面の階層123および出力側の特徴面の階層124間での結合関係を表しているが、それぞれの矢印に対して参照側の特徴面のサイズおよびカーネルフィルタの係数の合計値を重みとして与える。ここで矢印の重みを特徴面のサイズおよびカーネルフィルタの係数の合計値として説明したが、これに限るものではない。矢印1502−1513および矢印1515−1526に対しては、矢印113−122の重みに対して十分大きな値とする。
ステップS1604では、前ステップで作成した階層間の関係をグラフ化したものに対して、最大フロー最小カットのような、古典的なグラフカット手法を用いてグラフを切断する。グラフカットによって、十分に大きい重みの矢印1502−1513や矢印1515−1526間は切断されずに矢印113−122間で、最も重みが小さい結合関係で入力層及び出力層が切断されることとなる。
ステップS1605では、カットしたグラフが分割条件を満たすかを確認し、条件を満たすまで、ステップS1602−S1604を繰り返し実行する。以下で説明している分割条件は図8のステップS801で取得することが可能である。ここで分割条件とは、実施形態1と同様、カットされた全ての分割内で処理に必要なデータ量の所定値などである。通常、処理に必要なデータは、演算回路のRAMで保持するので、RAMで保持するデータのデータ量が、所定値を超えていないかどうかを確認し、所定値に収まらない場合は該グラフに対して再度カットする処理を行う。また、カットされたグラフの個数を規定する場合は、カット済みのグラフをランダムに複数選択、マージし、マージしたグラフに対して再度グラフカットを行う。これを繰り返すことで、規定数になるように繰り返し行うことも可能である。本実施形態の処理によって、第1の実施形態と同様に図6に示す分割結果が得られることができる。本実施形態の分割方法は、各演算回路のRAMで重複して保持するデータのデータ量を最も小さくすることができる。また、演算回路のRAMで保持するデータのデータ量が所定値を超えないようにすることができる。
(第3の実施形態)
次に、本発明の第3の実施形態について説明する。本実施形態では、所定の条件に基づいて機器内で、階層的な結合関係を動的に分割して畳込みフィルタ演算を行う手法について説明する。本実施形態のハード構成は、第1の実施形態と同じであるので、その説明を省略する。本実施形態では、割当てモジュール1012が、所定のタイミングで演算回路1002−1〜1002−nの稼働状態を確認する。
割当てモジュール1012は、それぞれの演算回路1002−1〜1002−nの稼働状態に応じて、動的に分割する。割当てモジュール1012は、結合関係の分割結果を出力し、CPU1007はそれに基づいて、それぞれの演算回路1002−1〜1002−nのRAMに参照側の特徴面やフィルタカーネルを随時転送する。
これにより、例えば、あるタイミングで演算回路の稼働状態を確認した結果、N個ある演算回路のうち、M個の演算回路が処理を終了している場合、このM個の演算回路に未処理のCNN演算を割り当てることができる。その結果、演算回路の稼働状態は変動するような場合でも、適宜最適な分割によって効率よく並列処理することが可能となる。
(第4の実施形態)
次に、本発明の第4の実施形態について説明する。本実施形態では、階層的な結合関係が動的に変更される場合にも有効である。図14は、階層的な結合関係が動的に変更している様子を示している。
通常時のCNN処理は、図4の階層的な結合に対して行う。しかし、撮像状況や特徴抽出の途中結果などの内的要因や機器内の演算リソースや消費電力などの物理要因に応じて、図14の破線501、502、503で示す結合関係の構造や畳込みフィルタ係数の変更、特徴面に関する動的な変更にも、適応可能である。
撮像状況や特徴抽出の途中結果によって変動が生じる場合として、認識処理の途中結果から、識別対象が人物である確率が所定値より高くなった時に、破線501〜503で示す部分が動物に関する特徴量がメインであれば、破線で示す部分の処理を行わない。
また、機器内の演算リソースや消費電力などの優先度に応じて、認識処理の結果に対して大きく影響を及ぼさない範囲で、破線501〜503で示す部分を処理しない場合がある。
この場合、CPU1007が、変更後の階層的な結合関係を割当てモジュール1012に通知し、割当てモジュール1012が変更された結合関係を分割する。CPU1007は、割当てモジュール1012の動的に分割した結合関係に基づいて各演算回路のメモリであるRAMにデータを供給することで、動的に並列処理を実行する。
(第5の実施形態)
次に、本発明の第5の実施形態について説明する。これまでに説明してきた実施形態では、組込み向け機器についての実施形態であったが、本実施形態ではクラウドサーバーシステムでの実施について説明する。図15は、クラウドサーバーシステムを表した図である。
制御PC1701が、全てのCNN処理PC1705〜1713の制御を、通信ネットワーク1702〜1704を介して行う。ここでいう制御とは、階層の分割情報に基づく、並列処理をするために、参照側の特徴面データ・重みカーネルのCNN処理PC1705〜1713への割当て、およびこの割当てに基づく分散データ処理制御である。
具体的には、制御PC1701は、図7や図8などで説明した方法により、階層構造の分割を実施し、各CNN処理PCへの特徴面などの割当てを決定する。第1の実施形態と同様に、各CNN処理PCで重複して保持する必要があるデータを少なくなるように階層構造の分割方法が決定されるので、CNN処理PC1705−1713へのデータ供給量が少なく、並列演算が効率的に行われる。
制御PC1701の決定した分割情報に基づき、それぞれのCNN処理PC1705−1713が畳込み演算を行い、演算結果を制御PCへと出力する。これにより、組込み機器内のみならずクラウドサーバーシステムにおける並列化処理も効率的に施行することができる。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
1000 画像入力モジュール
1001−1〜1001−n RAM
1002−1〜1002−n 演算回路
1012 割当てモジュール
1007 CPU
1008 ROM
1009 RAM

Claims (10)

  1. 階層的な演算処理における複数の特徴データのうち、参照側の複数の特徴データを保持する第1保持手段と、
    それぞれが前記参照側の複数の特徴データのうちの一部の特徴データを参照して、出力側の複数の特徴データを並列に算出する複数の演算回路と、
    それぞれが前記複数の演算回路の一つに対応し、該演算回路が複数の特徴データを算出するために参照する複数の特徴データを保持する複数の第2保持手段と、
    前記複数の演算回路の並列処理のために、前記出力側の複数の特徴データのうち、それぞれの前記演算回路に割当てる特徴データの複数の候補のうち、前記複数の第2保持手段のそれぞれによって保持される前記特徴データに重複して保持される特徴データの数が少なくなる一つの候補を選択して、それぞれの前記演算回路に割当てる特徴データを決定する割当て手段と、
    を有することを特徴とする演算処理装置。
  2. 前記割当て手段は、参照される複数の特徴データと、算出される複数の特徴データとに基づいて、それぞれの演算回路の演算量の差が少なくなるように、前記候補を選択して、それぞれの前記演算回路に割当てる特徴データを決定することを特徴とする請求項1に記載の演算処理装置。
  3. 前記割当て手段は、一つの演算回路に割当てられる複数の特徴データの一部と、他の演算回路に割当てられる複数の特徴データの一部とを交換することによって、前記複数の候補を生成することを特徴とする請求項1又は2の何れか1項に記載の演算処理装置。
  4. 前記分割手段は、前記第2保持手段に保持されるデータの量が所定値を超えないように、前記複数の演算回路のそれぞれに、該演算回路が算出する複数の特徴面を割り当てることを特徴とする請求項1乃至3の何れか1項に記載の演算処理装置。
  5. 前記割当て手段は、前記複数の第2保持手段のそれぞれによって保持される前記特徴データに重複して保持される特徴データの数が所定値より少なくなる一つの候補を選択して、それぞれの前記演算回路に割当てる特徴データを決定することを特徴とする請求項1又は4の何れか1項に記載の演算処理装置。
  6. 前記複数の演算回路の稼働状態を確認する第1確認手段をさらに有し、前記割当て手段は、前記第1確認手段によって確認された前記稼働状態に基づいて、前記出力側の複数の特徴データのうち、それぞれの前記複数の演算回路に割当てる特徴データを改めて決定することを特徴とする請求項1乃至5の何れか1項に記載の演算処理装置。
  7. 前記参照側の特徴データの変更を確認する第2確認手段をさらに有し、前記割当て手段は、参照側の前記特徴データの変更が前記第2確認手段によって確認された場合、前記出力側の複数の特徴データのうち、それぞれの前記複数の演算回路に割当てる特徴データを改めて決定することを特徴とする請求項1乃至5の何れか1項に記載の演算処理装置。
  8. 前記演算回路は、前記参照側の特徴データとフィルタカーネルとの畳込み演算を行うことによって前記出力側の特徴データを算出し、
    前記第2保持手段は、前記演算回路によって参照される前記参照側の特徴データと前記フィルタカーネルとを保持することを特徴とする請求項1乃至7の何れか1項に記載の演算処理装置。
  9. 階層的な演算処理における複数の特徴データのうち、参照側の複数の特徴データを第1保持手段に保持させる第1保持工程と、
    複数の演算回路のそれぞれに、前記参照側の複数の特徴データのうちの一部の特徴データを参照して、出力側の複数の特徴データを並列に算出させる算出工程と、
    それぞれの演算回路が複数の特徴データを算出するために参照する複数の特徴データを、該演算回路に対応する第2保持手段に保持させる第2保持工程と、
    前記複数の演算回路の並列処理のために、前記出力側の複数の特徴データのうち、それぞれの前記演算回路に割当てる特徴データの複数の候補のうち、前記複数の第2保持手段のそれぞれによって保持される前記特徴データに重複して保持される特徴データの数が少なくなる一つの候補を選択して、それぞれの前記演算回路に割当てる特徴データを決定する割当て工程と、
    を有することを特徴とする演算処理方法。
  10. 階層的な演算処理における複数の特徴データのうち、参照側の複数の特徴データを第1保持手段に保持させる第1保持ステップと、
    複数の演算回路のそれぞれに、前記参照側の複数の特徴データのうちの一部の特徴データを参照して、出力側の複数の特徴データを並列に算出させる算出ステップと、
    それぞれの演算回路が複数の特徴データを算出するために参照する複数の特徴データを、該演算回路に対応する第2保持手段に保持させる第2保持ステップと、
    前記複数の演算回路の並列処理のために、前記出力側の複数の特徴データのうち、それぞれの前記演算回路に割当てる特徴データの複数の候補のうち、前記複数の第2保持手段のそれぞれによって保持される前記特徴データに重複して保持される特徴データの数が少なくなる一つの候補を選択して、それぞれの前記演算回路に割当てる特徴データを決定する割当てステップと、
    をコンピュータに実行させることを特徴とするプログラム。
JP2016193553A 2016-09-30 2016-09-30 演算処理装置、演算処理方法及びプログラム Active JP6964969B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016193553A JP6964969B2 (ja) 2016-09-30 2016-09-30 演算処理装置、演算処理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016193553A JP6964969B2 (ja) 2016-09-30 2016-09-30 演算処理装置、演算処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2018055570A true JP2018055570A (ja) 2018-04-05
JP6964969B2 JP6964969B2 (ja) 2021-11-10

Family

ID=61835879

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016193553A Active JP6964969B2 (ja) 2016-09-30 2016-09-30 演算処理装置、演算処理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6964969B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019102082A (ja) * 2017-11-28 2019-06-24 南京地平綫机器人技術有限公司 折り畳まれた特徴データに対して畳み込み演算を実行するための方法および装置
JP2021009566A (ja) * 2019-07-01 2021-01-28 キヤノン株式会社 演算処理装置及び演算処理方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04548A (ja) * 1990-04-17 1992-01-06 Fujitsu Ltd ニューラルネットワーク装置
JP2001188767A (ja) * 1999-12-28 2001-07-10 Fuji Xerox Co Ltd ニューラルネットワーク演算装置及びニューラルネットワークの演算方法
JP2010211496A (ja) * 2009-03-10 2010-09-24 Mitsubishi Electric Corp 動的再構成装置
JP2013114538A (ja) * 2011-11-30 2013-06-10 Toshiba Corp 情報処理装置、情報処理方法及び制御プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04548A (ja) * 1990-04-17 1992-01-06 Fujitsu Ltd ニューラルネットワーク装置
JP2001188767A (ja) * 1999-12-28 2001-07-10 Fuji Xerox Co Ltd ニューラルネットワーク演算装置及びニューラルネットワークの演算方法
US6654730B1 (en) * 1999-12-28 2003-11-25 Fuji Xerox Co., Ltd. Neural network arithmetic apparatus and neutral network operation method
JP2010211496A (ja) * 2009-03-10 2010-09-24 Mitsubishi Electric Corp 動的再構成装置
JP2013114538A (ja) * 2011-11-30 2013-06-10 Toshiba Corp 情報処理装置、情報処理方法及び制御プログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019102082A (ja) * 2017-11-28 2019-06-24 南京地平綫机器人技術有限公司 折り畳まれた特徴データに対して畳み込み演算を実行するための方法および装置
JP2021009566A (ja) * 2019-07-01 2021-01-28 キヤノン株式会社 演算処理装置及び演算処理方法

Also Published As

Publication number Publication date
JP6964969B2 (ja) 2021-11-10

Similar Documents

Publication Publication Date Title
US10691464B1 (en) Systems and methods for virtually partitioning a machine perception and dense algorithm integrated circuit
US20210224125A1 (en) Operation Accelerator, Processing Method, and Related Device
EP4064130A1 (en) Neural network model update method, and image processing method and device
JP6504590B2 (ja) 画像のセマンティックセグメンテーションのためのシステム及びコンピューター実施方法、並びに非一時的コンピューター可読媒体
US11699067B2 (en) Arithmetic processing apparatus and control method therefor
US7978905B2 (en) Calculation processing apparatus and control method thereof
CN115456161A (zh) 一种数据处理方法和数据处理系统
JP6393058B2 (ja) 情報処理装置、情報処理方法
JP2018073102A (ja) 演算回路、その制御方法及びプログラム
CN111338695B (zh) 基于流水线技术的数据处理方法及相关产品
CN109936745A (zh) 用于改善原始视频数据的解压的方法和系统
JP7402623B2 (ja) フィルタ処理装置及びその制御方法
US20200074285A1 (en) Artificial neural network and method of controlling fixed point in the same
JP6195342B2 (ja) 情報処理装置およびメモリアクセス制御方法
JP7492555B2 (ja) 複数の入力データセットのための処理
WO2018158293A1 (en) Allocation of computational units in object classification
KR102442055B1 (ko) 전자 장치 및 그 제어 방법
CN111008631A (zh) 图像的关联方法及装置、存储介质和电子装置
JP2019008421A (ja) 処理方法、プログラム、情報処理装置、および画像処理装置
US20220215617A1 (en) Viewpoint image processing method and related device
CN113066018A (zh) 一种图像增强方法及相关装置
JP6964969B2 (ja) 演算処理装置、演算処理方法及びプログラム
CN113158970B (zh) 一种基于快慢双流图卷积神经网络的动作识别方法与系统
CN111242066A (zh) 大尺寸图像目标检测方法、装置及计算机可读存储介质
JP2019197445A (ja) 画像認識装置、画像認識方法、およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190924

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200715

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200721

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200909

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20201124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210222

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20210222

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20210308

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20210309

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20210326

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20210330

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20210615

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20210817

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20210921

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20210921

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211020

R151 Written notification of patent or utility model registration

Ref document number: 6964969

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151