IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 延世大学校 産学協力団の特許一覧

特許7597407ハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置及び方法
<>
  • 特許-ハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置及び方法 図1
  • 特許-ハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置及び方法 図2
  • 特許-ハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置及び方法 図3
  • 特許-ハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置及び方法 図4
  • 特許-ハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置及び方法 図5
  • 特許-ハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置及び方法 図6
  • 特許-ハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置及び方法 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-02
(45)【発行日】2024-12-10
(54)【発明の名称】ハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置及び方法
(51)【国際特許分類】
   G06N 3/0985 20230101AFI20241203BHJP
   G06N 3/084 20230101ALI20241203BHJP
【FI】
G06N3/0985
G06N3/084
【請求項の数】 9
(21)【出願番号】P 2023128690
(22)【出願日】2023-08-07
(65)【公開番号】P2024137603
(43)【公開日】2024-10-07
【審査請求日】2023-08-07
(31)【優先権主張番号】10-2023-0038887
(32)【優先日】2023-03-24
(33)【優先権主張国・地域又は機関】KR
【新規性喪失の例外の表示】特許法第30条第2項適用 ウェブサイトの掲載日 2022年 8月23日 ウェブサイトのアドレス https://dl.acm.org/doi/10.1145/3489517.3530507
(73)【特許権者】
【識別番号】514274672
【氏名又は名称】延世大学校 産学協力団
【氏名又は名称原語表記】UIF (University Industry Foundation), Yonsei University
【住所又は居所原語表記】50,YONSEI-RO, SEODAEMUN-GU, SEOUL 03722, REPUBLIC OF KOREA
(74)【代理人】
【識別番号】110000051
【氏名又は名称】弁理士法人共生国際特許事務所
(72)【発明者】
【氏名】イ, ジン ホ
(72)【発明者】
【氏名】パク, ノ ソン
(72)【発明者】
【氏名】キム, ヨン ソク
(72)【発明者】
【氏名】ホン, ドク キ
(72)【発明者】
【氏名】チェ, カン ヒョン
(72)【発明者】
【氏名】イ, ヘ ユン
【審査官】山本 俊介
(56)【参考文献】
【文献】米国特許出願公開第2023/0077987(US,A1)
【文献】特表2022-545038(JP,A)
【文献】米国特許出願公開第2022/0108054(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00-99/00
(57)【特許請求の範囲】
【請求項1】
ニューラルネットワークアーキテクチャを決定するNAS(Neural Architecture Search)モジュールと、
前記決定されたニューラルネットワークアーキテクチャによるアクセラレータアーキテクチャを決定し、前記決定されたニューラルネットワークアーキテクチャの損失及び前記決定されたアクセラレータアーキテクチャに関するハードウェアメトリックを予測するHDX(High-constrained Differentiable Co-Exploration)評価モジュールと、
勾配降下法に基づいて前記予測されたハードウェアメトリックが指定された制約を満たす方向に進むように損失関数(Loss)及び制約関数(Const)の勾配を調節する勾配調節モジュールと、を備え、
前記勾配調節モジュールは、
前記予測されたハードウェアメトリックが指定された制約を満たさない場合、当該制約を満たす方向に前記ニューラルネットワークアーキテクチャを選別するように前記損失関数の勾配を調節し、
前記損失関数の勾配が前記制約関数の勾配との角度が90度以下になるように擬似逆行列(pseudo-inverse)を介して調節方向を算出することを特徴とするハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置。
【請求項2】
前記NASモジュールは、逆伝播(backpropagation)を使用してスーパーネット(SuperNet)内の経路を見つけて最終的に検索される前記ニューラルネットワークアーキテクチャを生成し、交差エントロピーの損失(LossCE)を算出することを特徴とする請求項1に記載のハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置。
【請求項3】
前記HDX評価モジュールは、
事前学習を介して構築され、前記決定されたニューラルネットワークアーキテクチャによる最適なハードウェアを前記アクセラレータアーキテクチャとして探索し、前記アクセラレータアーキテクチャに関するPE(Processing Element)アレイ構成(PEx、PEy)、レジスタファイル(RF:Register File)構成、及びデータフロー(DF:dataflow)構成の少なくとも1つを決定するハードウェア生成ネットワーク(Hardware generation network)と、
前記ニューラルネットワークアーキテクチャに関するパラメータ及び前記アクセラレータアーキテクチャに関する構成に基づいて前記ハードウェアメトリックを予測するコスト推定ネットワーク(Cost estimation network)と、を含むことを特徴とする請求項1に記載のハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置。
【請求項4】
前記コスト推定ネットワークは、残差接続がある多層パーセプトロンで構成し、前記多層パーセプトロンを介して遅延時間、面積、及びエネルギー消費量を決定し、前記ハードウェアメトリックを予測することを特徴とする請求項3に記載のハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置。
【請求項5】
前記コスト推定ネットワークは、前記遅延時間、面積、及びエネルギー消費量に関するバランス加重合計をコスト関数として計算して前記ハードウェアメトリックを予測することを特徴とする請求項4に記載のハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置。
【請求項6】
ニューラルネットワークアーキテクチャを決定するNASモジュール実行ステップと、
前記決定されたニューラルネットワークアーキテクチャによるアクセラレータアーキテクチャを決定し、前記決定されたニューラルネットワークアーキテクチャの損失及び前記決定されたアクセラレータアーキテクチャに関するハードウェアメトリックを予測するHDX評価モジュール実行ステップと、
勾配降下法に基づいて前記予測されたハードウェアメトリックが指定された制約を満たす方向に進むように損失関数(Loss)及び制約関数(Const)の勾配を調節する勾配調節モジュール実行ステップと、を有し、
前記勾配調節モジュール実行ステップは、
前記予測されたハードウェアメトリックが指定された制約を満たさない場合、当該制約を満たす方向に前記ニューラルネットワークアーキテクチャを選別するように前記損失関数の勾配を調節し、
前記損失関数の勾配が前記制約関数の勾配との角度が90度以下になるように擬似逆行列(pseudo-inverse)を介して調節方向を算出することを特徴とするハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索方法。
【請求項7】
前記NASモジュール実行ステップは、逆伝播(backpropagation)を使用してスーパーネット(SuperNet)内の経路を見つけて最終的に検索される前記ニューラルネットワークアーキテクチャを生成し、交差エントロピーの損失(LossCE)を算出することを特徴とする請求項に記載のハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索方法。
【請求項8】
前記HDX評価モジュール実行ステップは、
事前学習を介して構築され、前記決定されたニューラルネットワークアーキテクチャによる最適なハードウェアを前記アクセラレータアーキテクチャとして探索し、前記アクセラレータアーキテクチャに関するPE(Processing Element)アレイ構成(PEx、PEy)、レジスタファイル(RF:Register File)構成、及びデータフロー(DF:dataflow)構成の少なくとも1つを決定するハードウェア生成ネットワーク(Hardware generation network)実行ステップと、
前記ニューラルネットワークアーキテクチャに関するパラメータ及び前記アクセラレータアーキテクチャに関する構成に基づいて前記ハードウェアメトリックを予測するコスト推定ネットワーク(Cost estimation network)実行ステップと、を含むことを特徴とする請求項に記載のハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索方法。
【請求項9】
前記コスト推定ネットワーク実行ステップは、残差接続がある多層パーセプトロンで構成し、前記多層パーセプトロンを介して遅延時間、面積、及びエネルギー消費量を決定し、前記ハードウェアメトリックを予測することを特徴とする請求項に記載のハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、人工ニューラルネットワークと専用ハードウェアアクセラレータとの統合探索技術に関し、より詳細には、人工ニューラルネットワークと演算アクセラレータとを統合探索しながら、1秒当たりのスループットやエネルギー消費量などのハードな制約を満たすことができるハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置及び方法に関する。
【背景技術】
【0002】
殆どのDNN(Deep Neural Network)研究の主要な関心事は応用性能(即ち、正確度)であったが、実行のために膨大な計算リソース(resource)が必要なネットワークサイズの急速な成長ももたらした。近年、リソースの問題を緩和するための数多くの体系が登場しており、殆どがネットワーク及びハードウェアの最適化カテゴリのうちの1つに属する。ネットワークの最適化は、類似した正確度を維持しながら計算を減らすためにニューラルネットワークアーキテクチャを改善することをいい、ハードウェアの最適化は、アクセラレータという最適化されたハードウェアを使用してDNN実行の効率性を改善する作業が含まれる。残念ながら、一方の努力はしばしば他方の利点を妨げる。一例として、速い速度を出すために開発されたMobileNetを有名なアクセラレータであるTPUで実行する場合、一般ニューラルネットワークを実行するよりも遅い速度を出すことが知られているが、これは、チャンネルの数を減らすMobileNetの特性がTPUの加速化戦略に正面から違背するからである。
【0003】
このような理由で、アクセラレータで行われる作業が既に知られている場合には、アクセラレータと人工ニューラルネットワークを互いにシナジーを出せるように同時に設計することが必要である。
【0004】
既存の統合設計方法論は大きく2つに分けられる。第一は、強化学習(Reinforcement Learning、RL)又は進化アルゴリズムに基づくものであり、伝統的な統合設計方式に近いと見られる。この方法では、任意のアクセラレータ構造及びニューラルネットワーク構造を有する解を導出した後にこれを評価し、評価結果に基づいてより良い解を見つけていく方法を選ぶ。伝統的には、より良い解を見つけるために量子化近似アルゴリズム、遺伝アルゴリズムなどを使用してディープラーニングの大衆化以降から強化学習を使用している。
【0005】
しかし、このような方法の場合、解が導出されるたびにこれを評価する過程が非常に長くかかるという欠点がある。人工ニューラルネットワークの場合、その正確度を評価するためには学習過程が必要であるが、通常ニューラルネットワーク1つの学習には数週間程度かかることが知られており、多量のサーバを使用して並列化を行っても、その莫大な演算量を負うのは容易なことではない。
【0006】
これを克服するために、逆伝播ベースの方法論が最近提示されているが、これはニューラルネットワーク探索方式に基づくものであり、ニューラルネットワーク及びアクセラレータの解空間を微分可能に設計した後、微分可能な経路のそれぞれに学習可能な乗算因子(factor)を配置する方式で行われる。このように学習が終わると、最も大きな値を有する因子が配置された経路が最終の解となり、これに基づいてニューラルネットワーク及びアクセラレータの設計が導出される。ニューラルネットワークの場合には、こうして作られた構造を1回学習することで正確度を評価する。
【0007】
この方式は、殆どのディープラーニングベースの方法論及びその欠点を共有するが、これは、逆伝播が単一損失関数に依存するという点に起因する。所望の目標が1つの場合はあまり問題がないが、複数個の場合は、これらの目標間のバランスを希望通りに合わせることが難しく、特に特定の目標にハードな制約がある場合は、事実上反映できない。
【先行技術文献】
【特許文献】
【0008】
【文献】韓国公開特許第10-2019-0101677号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
本発明は、上記従来の問題点に鑑みてなされたものであって、本発明の目的は、人工ニューラルネットワークと演算アクセラレータとを統合探索しながらハードな制約を満たすことができるハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置及び方法を提供することにある。
【課題を解決するための手段】
【0010】
上記目的を達成するためになされた本発明の一態様によるハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置は、ニューラルネットワークアーキテクチャを決定するNAS(Neural Architecture Search)モジュールと、前記決定されたニューラルネットワークアーキテクチャによるアクセラレータアーキテクチャを決定し、前記決定されたニューラルネットワークアーキテクチャの損失及び前記決定されたアクセラレータアーキテクチャに関するハードウェアメトリックを予測するHDX(High-constrained Differentiable Co-Exploration)評価モジュールと、勾配降下法に基づいて前記予測されたハードウェアメトリックが指定された制約を満たす方向に進むように損失関数(Loss)及び制約関数(Const)の勾配を調節する勾配調節モジュールと、を備える。
【0011】
前記NASモジュールは、逆伝播(backpropagation)を使用してスーパーネット(SuperNet)内の経路を見つけて最終的に検索される前記ニューラルネットワークアーキテクチャを生成し、交差エントロピーの損失(LossCE)を算出することができる。
前記HDX評価モジュールは、事前学習を介して構築され、前記決定されたニューラルネットワークアーキテクチャによる最適なハードウェアを前記アクセラレータアーキテクチャとして探索し、前記アクセラレータアーキテクチャに関するPE(Processing Element)アレイ構成(PEx、PEy)、レジスタファイル(RF;Register File)構成、及びデータフロー(DF;dataflow)構成の少なくとも1つを決定するハードウェア生成ネットワーク(Hardware generation network)と、前記ニューラルネットワークアーキテクチャに関するパラメータ及び前記アクセラレータアーキテクチャに関する構成に基づいて前記ハードウェアメトリックを予測するコスト推定ネットワーク(Cost estimation network)と、を含むことができる。
前記コスト推定ネットワークは、残差接続がある多層パーセプトロンで構成し、前記多層パーセプトロンを介して遅延時間、面積、及びエネルギー消費量を決定し、前記ハードウェアメトリックを予測することができる。
前記コスト推定ネットワークは、前記遅延時間、面積、及びエネルギー消費量に関するバランス加重合計をコスト関数として計算して前記ハードウェアメトリックを予測することができる。
前記勾配調節モジュールは、前記予測されたハードウェアメトリックが指定された制約を満たさない場合、当該制約を満たす方向に前記ニューラルネットワークアーキテクチャを選別するように前記損失関数の勾配調節を行うことができる。
前記勾配調節モジュールは、前記損失関数の勾配が前記制約関数の勾配との角度が90度以下になるように擬似逆行列(pseudo-inverse)を介して調節方向を算出することができる。
前記勾配調節モジュールは、前記予測されたハードウェアメトリックが指定された制約を満たさない場合、当該制約を満たす方向に前記アクセラレータアーキテクチャを選別するようにハードウェアコスト関数の勾配調節を行うことができる。
【0012】
上記目的を達成するためになされた本発明の一態様によるハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索方法は、ニューラルネットワークアーキテクチャを決定するNASモジュール実行ステップと、前記決定されたニューラルネットワークアーキテクチャによるアクセラレータアーキテクチャを決定し、前記決定されたニューラルネットワークアーキテクチャの損失及び前記決定されたアクセラレータアーキテクチャに関するハードウェアメトリックを予測するHDX評価モジュール実行ステップと、勾配降下法に基づいて前記予測されたハードウェアメトリックが指定された制約を満たす方向に進むように損失関数(Loss)及び制約関数(Const)の勾配を調節する勾配調節モジュール実行ステップと、を有する。
【0013】
前記NASモジュール実行ステップは、逆伝播(backpropagation)を使用してスーパーネット(SuperNet)内の経路を見つけて最終的に検索される前記ニューラルネットワークアーキテクチャを生成し、交差エントロピーの損失(LossCE)を算出することができる。
前記HDX評価モジュール実行ステップは、事前学習を介して構築され、前記決定されたニューラルネットワークアーキテクチャによる最適なハードウェアを前記アクセラレータアーキテクチャとして探索し、前記アクセラレータアーキテクチャに関するPE(Processing Element)アレイ構成(PEx、PEy)、レジスタファイル(RF;Register File)構成、及びデータフロー(DF;dataflow)構成の少なくとも1つを決定するハードウェア生成ネットワーク(Hardware generation network)実行ステップと、前記ニューラルネットワークアーキテクチャに関するパラメータ及び前記アクセラレータアーキテクチャに関する構成に基づいて前記ハードウェアメトリックを予測するコスト推定ネットワーク(Cost estimation network)実行ステップとを含むことができる。
前記コスト推定ネットワーク実行ステップは、残差接続がある多層パーセプトロンで構成し、前記多層パーセプトロンを介して遅延時間、面積、及びエネルギー消費量を決定し、前記ハードウェアメトリックを予測することができる。
前記勾配調節モジュール実行ステップは、前記予測されたハードウェアメトリックが指定された制約を満たさない場合、当該制約を満たす方向に前記ニューラルネットワークアーキテクチャを選別するように前記損失関数の勾配調節を行うことができる。
前記勾配調節モジュール実行ステップは、前記予測されたハードウェアメトリックが指定された制約を満たさない場合、当該制約を満たす方向に前記アクセラレータアーキテクチャを選別するようにハードウェアコスト関数の勾配調節を行うことができる。
【発明の効果】
【0014】
本明細書に開示する技術は、次の効果を有する。但し、特定の実施形態が次の効果を全て含まなければならないとか、又は次の効果のみを含まなければならないという意味ではないため、開示する技術の権利範囲はこれによって制限されるものと理解してはならない。
【0015】
本発明のハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索装置及び方法によれば、人工ニューラルネットワークと演算アクセラレータとを統合探索しながら、1秒当たりのスループット又はエネルギー消費量などのハードな制約を満たすことができる。
【0016】
また、勾配降下法を使用して探索を進めることによって、全体探索空間を代表する人工ニューラルネットワークを一度訓練することで探索を完了することができ、非常に速い探索が可能であり、ハードな制約が反映された微分可能な方式で遅延時間やエネルギー消費量のような直接的なハードウェアメトリックを最適化することができる。
【0017】
更に、ハードな制約によって勾配調節を通じてハードな制約を満たす方向に探索が進むように誘導することによって、設計目標を損なうことなく高品質の解を得ることができる。
【図面の簡単な説明】
【0018】
図1】本発明による統合探索装置の機能的構成を説明する図である。
図2】本発明によるハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合方法の一例を説明するフローチャートである。
図3】ハードな制約を考慮した損失関数調節方式の実験結果を示す図である。
図4】本発明によるハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索方法を説明する図である。
図5】本発明による実験結果を説明する図である。
図6】本発明による実験結果を説明する図である。
図7】本発明による探索ネットワーク及びアクセラレータデザインの一例を説明する図である。
【発明を実施するための形態】
【0019】
本発明は、下記の研究課題をもって支援を受けて出願された。
[この発明を支援した国家研究開発事業]
[課題固有番号] 1711193986
[課題番号] 2020-0-01361-004
[省庁名] 科学技術情報通信部
[課題管理(専門)機関名] 情報通信企画評価院
[研究事業名] 情報通信放送革新人材養成
[研究課題名] 人工知能大学院支援(延世大学校)
[寄与率] 1/1
[課題実行機関名] 延世大学校産学協力団
[研究期間] 2023.01.01~2023.12.31
【0020】
本発明に関する説明は、構造的又は機能的説明のための実施形態に過ぎないため、本発明の権利範囲は、本明細書に説明している実施形態によって制限されるものと解釈してはならない。即ち、実施形態は、様々な変更が可能であり、種々の形態を有することができるため、本発明の権利範囲は、技術的思想を実現できる均等物を含むものと理解しなければならない。また、本発明で提示している目的又は効果は、特定の実施形態がこれを全て含むべきであるとか、そのような効果だけを含むべきであるという意味ではないため、本発明の権利範囲は、これによって制限されるものと理解してはならない。
【0021】
一方、本明細書で述べる用語の意味は、次のように理解されなければならない。
【0022】
「第1」、「第2」などの用語は、1つの構成要素を他の構成要素から区別するためのものであって、これらの用語によって権利範囲が限定されてはならない。例えば、第1構成要素は第2構成要素と名付けられてもよく、同様に第2構成要素も第1構成要素と名付けられてもよい。
【0023】
ある構成要素が他の構成要素に「連結されて」いると言及する場合には、その他の構成要素に直接連結されることもあるが、中間に他の構成要素が存在することもあると理解されなければならない。それに対し、ある構成要素が他の構成要素に「直接連結されて」いると言及する場合には、中間に他の構成要素が存在しないものと理解されなければならない。一方、構成要素間の関係を説明する他の表現、即ち、「~間に」と「すぐ~間に」、又は「~に隣り合う」と「~に直接隣り合う」なども同様に解釈されなければならない。
【0024】
単数の表現は、文脈上明白に異なる意味ではない限り、複数の表現を含むものと理解されなければならず、「含む」又は「有する」などの用語は、実施される特徴、数字、ステップ、動作、構成要素、部分品、又はこれらを組み合わせたものが存在することを指定しようとするものであり、1つ又はそれ以上の他の特徴や数字、ステップ、動作、構成要素、部分品、又はこれらを組み合わせたものの存在又は付加可能性を予め排除しないものと理解されなければならない。
【0025】
各ステップにおいて、識別符号(例えば、a、b、cなど)は、説明の便宜のために使用されるものであって、識別符号は、各ステップの順序を説明するものではなく、各ステップは、文脈上明白に特定の順序を記載しない限り、明記された順序と異なって生じ得る。即ち、各ステップは、明記された順序と同一に生じることもあり、実質的に同時に行われることもあり、反対の順序で行われることもある。
【0026】
本発明は、コンピュータ読み取り可能な記録媒体にコンピュータ読み取り可能なコードとして実現され、コンピュータ読み取り可能な記録媒体は、コンピュータシステムによって読み取られるデータが格納される全ての種類の記録装置を含む。コンピュータ読み取り可能な記録媒体の例としては、ROM、RAM、CD-ROM、磁気テープ、フロッピー(登録商標)ディスク、光データ格納装置などがある。また、コンピュータ読み取り可能な記録媒体は、ネットワークで連結されたコンピュータシステムに分散されて、分散方式でコンピュータ読み取り可能なコードが格納され、実行され得る。
【0027】
ここで使用する全ての用語は、異なって定義されない限り、本発明が属する分野における通常の知識を有する者により一般的に理解されるものと同じ意味を有する。一般的に使用される辞書に定義されている用語は、関連技術の文脈上有する意味と一致するものと解釈されなければならず、本明細書において明白に定義しない限り、理想的であるか又は過度に形式的な意味を有するものと解釈することはできない。
【0028】
以下、本発明を実行するための形態の具体例を、図面を参照しながら詳細に説明する。
【0029】
図1は、本発明による統合探索装置の機能的構成を説明する図である。
【0030】
図1を参照すると、統合探索装置100は、全体の探索空間を代表する人工ニューラルネットワークを一度訓練することで探索を完了し、非常に速い探索を可能にして、ハードな制約を考慮した微分可能な方式で遅延時間やエネルギー消費量のような直接的なハードウェアメトリックを最適化する。そのための構成として、統合探索装置100は、NAS(Neural Architecture Search)モジュール110、HDX(Hard-constrained Differentiable Co-Exploration)評価モジュール130、及び勾配調節モジュール150を含めて実現される。
【0031】
NASモジュール110は、ニューラルネットワークアーキテクチャを決定する動作を行い、HDX評価モジュール130は、NASモジュール110により決定されたニューラルネットワークアーキテクチャに対応するアクセラレータアーキテクチャを決定し、当該ニューラルネットワークアーキテクチャ及びアクセラレータアーキテクチャに関するハードウェアメトリックを予測する動作を行い、勾配調節モジュール150は、NASモジュール110及びHDX評価モジュール130の統合探索過程でハードな制約を満たすように最適化する動作を行う。
【0032】
より具体的に、NASモジュール110は逆伝播(backpropagation)を使用してスーパーネット(SuperNet)内の経路を見つけて、最終的に検索されるニューラルネットワークアーキテクチャを生成し、これに関する交差エントロピーの損失(LossCE)を算出する。
【0033】
一実施形態において、HDX評価モジュール130は、事前学習を介して構築され、2つのネットワークを含めて構成される。即ち、HDX評価モジュール130は、ハードウェア生成ネットワーク(Hardware generation network)及びコスト推定ネットワーク(Cost estimation network)を含む。
【0034】
先ず、ハードウェア生成ネットワークは、NASモジュール110により決定されたニューラルネットワークアーキテクチャによる最適なハードウェアをアクセラレータアーキテクチャとして探索し、アクセラレータアーキテクチャに関するPE(Processing Element)アレイ構成(PEx、PEy)、レジスタファイル(RF、Register File)構成、及びデータフロー構成の少なくとも1つを決定する動作を行う。即ち、ハードウェア生成ネットワークは、最適なハードウェアアーキテクチャを探索するために事前学習が行われ、最適なハードウェアアーキテクチャに関する最適な構成をパラメータとして生成する。例えば、ハードウェア生成ネットワークは、出力として最適なハードウェアアーキテクチャに関するPEアレイのフィーチャー(PEx、PEy)、レジスタファイルRF、データフローDF等を生成する。
【0035】
一実施形態において、ハードウェア生成ネットワークは、ニューラルネットワークアーキテクチャパラメータを入力として使用し、最適なハードウェアの実現を出力する。ハードウェア生成ネットワークは、特定のコスト関数に依存せず、制約条件に適応するように統合探索中に共同で訓練される。ハードウェア生成ネットワークは、ニューラルネットワークアーキテクチャから最適なアクセラレータ構造を決定するが、このとき、最適なアクセラレータ構造は、目標とする損失関数及びハードな制約に応じて変わる。ハードウェア生成ネットワークは、出力をコスト推定ネットワークの入力に連結するように実現され、損失関数を最適化する方向に学習させる。
【0036】
コスト推定ネットワーは、アクセラレータアーキテクチャに関する構成に基づいてハードウェアメトリックを予測する動作を行う。一実施形態において、コスト推定ネットワークは、ハードウェア生成ネットワーク及びNASモジュール110の出力を入力としてハードウェアメトリックを予測する。コスト推定ネットワークは、ネットワーク及びアクセラレータ検索空間によって事前訓練され、このためにMAESTRO、Timeloop、Accelergyなどが使用される。コスト推定ネットワークは、事前訓練の後、ニューラルネットワークアーキテクチャが与えられたハードウェアコスト(CostHW)を推定する。一実施形態において、コスト推定ネットワークは、残差接続(residual connection)のある多層パーセプトロンで構成される。
【0037】
一実施形態において、コスト推定ネットワークは、多層パーセプトロンを介して遅延時間(latency)、面積(area)、及びエネルギー消費量(energy consumption)を決定してハードウェアメトリックを予測する。このとき、コスト推定ネットワークは、遅延時間、面積、及びエネルギー消費量に関するバランス加重合計をコスト関数で算出し、ハードウェアメトリックを予測する。
【0038】
勾配調節モジュール150は、勾配降下法に基づいて予測されたハードウェアメトリックが指定された制約を満たす方向に進むように損失関数(Loss)及び制約関数(Const)の勾配を調節する。一実施形態において、勾配調節モジュール150は、予測されたハードウェアメトリックが指定された制約を満たさない場合、当該制約を満たす方向にニューラルネットワークアーキテクチャを選別するように損失関数の勾配調節を行う。勾配調節モジュール150は、損失関数の勾配が制約関数の勾配との角度が90度以下になるように擬似逆行列(pseudo-inverse)を介して調節方向を算出する。
【0039】
一実施形態において、勾配調節モジュール150は、予測されたハードウェアメトリックが指定された制約を満たさない場合、当該制約を満たす方向にアクセラレータアーキテクチャを選別するように損失関数の代わりにハードウェアコスト関数(cost function)の勾配調節を行う。
【0040】
図2は、本発明によるハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索方法の一例を説明するフローチャートである。
【0041】
図2を参照すると、統合探索装置100は、NASモジュール110を介してニューラルネットワークアーキテクチャを決定する(ステップS210)。統合探索装置100は、HDX評価モジュール130を介してニューラルネットワークアーキテクチャによるアクセラレータアーキテクチャを決定する(ステップS230)。統合探索装置100は、HDX評価モジュール130を介してニューラルネットワークアーキテクチャの損失及びアクセラレータアーキテクチャに関するハードウェアメトリックを予測する(ステップS250)。統合探索装置100は、勾配調節モジュール150を介して勾配降下法に基づいて予測されたハードウェアメトリックが指定された制約を満たす方向に進むように損失関数(Loss)及び制約関数(Const)の勾配を調節する(ステップS270)。
【0042】
以下、図3図7を参照して、本発明によるハードな制約を考慮した人工ニューラルネットワークと演算アクセラレータ構造の統合探索方法をより具体的に説明する。
【0043】
ニューラルネットワークアーキテクチャ検索(NAS:Neural Architecture Search)は、増加するネットワークのサイズ及びこれに相応する受動的な設計の努力に対応するために、DNNアーキテクチャの設計を自動化する。ニューラルネットワークアーキテクチャ検索において、初期にはネットワークの生成のために強化学習(RL)又は進化アルゴリズム(EA)が採択されてきた。
【0044】
但し、このようなアルゴリズムの場合、検索コストが非常に高いことがあり、全ての候補に要求される全体学習(full training)により、最大数千個のGPU日(GPU-days)がかかる。微分可能な(differentiable)ニューラルネットワークアーキテクチャ検索は、このようなコストを緩和する方法でスーパーネット(SuperNet)を作り、その中で経路を見つける。即ち、微分可能なニューラルネットワークアーキテクチャ検索は、何倍も短い時間内に最先端の性能のネットワークを見つけることができる。それにも拘らず、ネットワークの性能だけで最適化することは、ハードウェアの効率性を考慮していないため不十分なことがある。この問題を解決する一部の最近の作業は、損失条件を追加してハードウェアコストを考慮し、一部は簡単な遅延時間モデルを使用して遅延時間の制約に対するネットワークのサイズを減らすために試みる。しかし、ネットワークの設計のみが考慮され、ネットワークの正確度とハードウェア構造との間の関係がモデルに反映されないため、統合探索に使用できない。
【0045】
統合探索に対する初期の作業は、強化学習の変形又は進化アルゴリズムを活用して単純性を活用する。各候補ネットワークは評価のために訓練され、アクセラレータの設計はハードウェアの効率性のために分析される。このような値は、エージェントが次の候補解を生成するのに使用する補償を生成する。しかし、これらの全ては各候補解を評価するためにかなりコストがかかる訓練が必要なRLベースのNAS方法で同じ問題を継承する。また、統合探索はネットワークのみを検索するよりも更に大きいネットワーク/ハードウェア検索空間が必要である。
【0046】
これに関して、微分可能なアクセス方式が統合探索に採択された。Auto-NBAは微分可能なアクセラレータ検索エンジンを使用して統合検索のパイプラインを構築し、DANCEはハードウェア検索及びコスト評価のために補助のニューラルネットワークを訓練した。しかし、ハードな制約条件の問題を適切に取り扱っていない。本発明は、微分可能な統合探索に対するハードな制約を処理する全体論的方法を提案する。
【0047】
微分可能な統合探索内でハードな制約を考慮する非常に簡単な方法は、ハードウェアコストに対する相対的重みを調節することである。例えば、正確度(cross-entropy)、遅延時間、エネルギーを同時に考慮する場合、次の数式1のような損失関数の設定が可能である。
【0048】
【数1】
【0049】
ここで、λCostを調節することによって、解が関数のどの部分により集中するかを調節可能である。λCostを増加させると、検索プロセスがハードウェアメトリックをより多く考慮するように間接的に指示するが、より大きなペナルティを与えることが制約メトリック値の減少に直接つながるわけではない。
【0050】
図3は、このような問題を端的に示す。λCostを0.001から0.010まで調節していき、各地点から3回ずつ探索を進めた結果であり、3回探索の平均値が太い円で表示されている。λCostによってわずかな傾向が観察されたとしても、軌跡の方向及び分散の両方で不一致がより優勢である。設計者が既存の統合探索方法を使用して一部の制約条件(例えば、33.3ms)で遅延時間があるニューラルネットワーク-アクセラレータアーキテクチャの組を設計しようとするシナリオを考慮する場合、初期のλCostで探索を試みて、複数の探索過程で値を調節することができる。しかし、λCost間のこのような不一致及び遅延時間は、探索を数回進める莫大な時間コストはいうまでもなく、適切な解を得ることも難しくする。ハードな制約統合探索の問題を解決するための効果的な戦略の設計が必要である。
【0051】
ハードな制約がある微分可能な統合探索は、次の数式2で定義される。
【0052】
【数2】
【0053】
ここで、tは、遅延時間又はエネルギーのような制約されたメトリックの現在値を示し、Tは、対象値(例えば、遅延時間の場合33.3ms)を示す。α及びβは、それぞれニューラルネットワークアーキテクチャパラメータ及びハードウェアアクセラレータの構成を示す。wは、NASスーパーネットの重みであり、net(α)は、選択されたニューラルネットワークアーキテクチャである。eval(α、β)は、α及びβに対して評価されたハードウェアメトリックを示す。統合探索の目的は、ユーザから定義されたニューラルアーキテクチャの損失(LossNAS)とハードウェアコスト(CostHW)の2つの評価メトリックを使用して表現される。
【0054】
図4を参照すると、本発明による統合探索装置100で実行される統合探索方法が図示されている。即ち、本発明による統合探索方法は、HDX(Hard-constrained Differentiable co-eXploration)というハードな制約を考慮した微分可能な統合探索方法に該当する。図4の(a)における左側部分は、ネットワーク検索モジュール(即ち、図1のNASモジュール110に対応する)に該当し、逆伝播(backpropagation)を使用してスーパーネット内の経路を見つけることによって、最終的に検索されるネットワークを生成する。
【0055】
図4の(a)における右側部分は、ネットワーク検索モジュールから取得されたアーキテクチャパラメータを用いて最適なハードウェアアクセラレータの設計を検索し、コストメトリックを評価する評価器(evaluator)(即ち、図1のHDX評価モジュール130に対応する)に該当する。評価器ネットワークeval()は、ハードウェアアクセラレータ間の関係を考慮し、勾配(gradient)がスーパーネットに流れるようにする微分可能な統合探索の核心である。評価器ネットワークは、ハードウェア生成ネットワークgen()と推定ネットワークest()で構成される。ハードウェア生成ネットワークは、ニューラルアーキテクチャパラメータを入力として最適なハードウェアの実現を出力する(即ち、数式2のβに該当する)。ハードウェア生成ネットワークは、特定のコスト関数に依存せずに制約条件に適応するように統合探索中に共同で訓練される。
【0056】
推定ネットワークは、ネットワーク検索モジュール及び生成ネットワークの出力を取得し、ハードウェア関連のメトリックを出力する。推定ネットワークは、ネットワーク及びアクセラレータ検索空間によって事前訓練される。このために、MAESRTO、Timeloop、及びAccelergyのような伝統的な(微分できない)コスト推定フレームワークを正解(ground truth)として使用する。事前訓練の後、推定ネットワークは、探索中に固定(frozen)され、ネットワークアーキテクチャが与えられたハードウェアコストを推論するためにのみ使用される。これにより、上記数式2は、次の数式3のように変換される。
【0057】
【数3】
【0058】
ここで、vは、ハードウェア生成ネットワークに対する重みである。
【0059】
本発明は、微分可能な統合探索方法にハードな制約に対する効果的なソリューションとして勾配調節を適用する。勾配調節は、連続関数又は微分方程式のような多数の目標を達成するためによく使用される。ここでは、ハードな制約を満たすために、統合探索に勾配調節を適用する。図4の図(b)及び(c)を参照すると、勾配調節方式は制約に同意する方向に勾配を引くことができる力を人為的に生成する。新しい勾配gを計算するために方法が適用される条件は、次の数式4のように定義される。
【0060】
【数4】
【0061】
ここで、gLossは、上記数式3に示したように、次の数式5のように定義されたグローバル損失関数の元の勾配である。
【0062】
【数5】
【0063】
Constは制約損失の勾配であり、Const=max(t-T,0)で定義される。tはαの関数であるため、αに対する勾配を見つけるために逆伝播される。t≦Tの理想的な場合には、制約が既に満たされているため、何もしない。制約が依然として満たされない場合には、2つの勾配の内積を計算し、当該方向の一致を決定する。gLoss・gConst≧0(即ち、2つの勾配間の角度が90度以下)である場合、勾配降下更新が制約を満たすのに寄与することを意味する。従って、方向の一致として解釈され、同じgLossがそのまま使用される(図4の図(b)に該当)。しかし、図4の図(c)に示すように、不一致の場合(即ち、gLoss・gConst<0)、勾配がmαだけ方向を移動するように強制して(mα+gLoss)・gConst≧0から求めて、勾配下降の後、目標コストの減少を保証する。これは、mα・gConst+gLoss・gConst=δで再構成される。ここで、δ≧0は、制約を満たす方向に漸進的な移動を保証するための小さい値である。α及びwを更新するためにネットワークアーキテクチャのパラメータであるαに対する最適なmαを解決する。
【0064】
αは、ハードな制約の勾配に平行であり、そのサイズは損失関数の勾配に与える影響を制限するために、最小限に定める。これは、pseudo-inverseを介して簡単に計算可能であり、次のように表現される。
【0065】
【数6】
【0066】
プル(pull)のサイズを制御するために、δに小さな乗算係数p>0を使用する。pを使用してδを更新するポリシーは次の通りである。
【0067】
δに対する一部の初期値δが存在する。対象メトリックが制約を満たさない場合、δに1+pを掛けてプルを強化し(δ′=(1+p)δ))、制約を満たす場合、δが初期値に再設定される(δ′=δ)。勾配降下法を使用してハードウェア生成ネットワークの重みであるvも訓練される。従って、同じ方式でm に対して計算するが、ハードウェア生成ネットワークの更新のためにgLossの代わりにgCostHWを使用する。これを応用して、ハードな制約が多数個存在する場合にも適用され、この場合は、次の数式7で表現される。
【0068】
【数7】
【0069】
基本的に、ハードウェアのコスト関数は、3つのハードウェアコストメトリックに関するバランス加重合計をコスト関数CostHWとして使用し、次の数式8のように表現される。
【0070】
【数8】
【0071】
CE、CL、及びCAを制御することによって、各コストメトリック間のバランスを測定する方法に対する条件が設定される。このようなハイパーパラメータのスケール(scale)をマッチングさせるために、各コストに対してmJ、ms、及びμmの単位が使用される。
【0072】
また、推定及び生成ネットワークは、残差接続がある5-階層パーセプトロン(Perceptron)でモデリングされる。推定ネットワークを訓練するために、先ず検索空間で10.8Mネットワークアクセラレータの組(全体検索空間の2.95e-9%)をランダムにサンプリングしてデータセットを構築し、Timeloop及びAccelergyを使用してハードウェアメトリックで評価する。このデータセットを使用し、推定ネットワークは、バッチサイズ256で200エポック(epoch)に対して訓練する。重み更新は、学習率が1e-4のAdamオプティマイザを使用して実行される。推定ネットワークの正確度は、全てのメトリックにおいて99%以上であり、統合探索のためのエンジンとして十分に強力である。生成ネットワークは、ランダムに初期化され、NASスーパーネットと共同で訓練される。ハードな制約で調節された勾配が逆伝播されるにつれて、生成ネットワークは、与えられたニューラルネットワークアーキテクチャの制約を満たすアクセラレータを生成する方法を学習する。
【0073】
検索空間(Search Space)は、ProxylessNASがバックボーンとして使用される。カーネルサイズが{3,5,7}であり、拡張比率が{3,6}であるMBConv作業の様々な設定で構成される。総階層数は、CIFAR-10及びイメージネット(ImageNet)データセットに対してそれぞれ18個及び21個である。本発明は、NAS実現と直交して、DARTS又はOFAのような微分可能なNASアルゴリズムの中から選択される。アクセラレータのバックボーンアーキテクチャとしてEyerissが使用される。これは、各PEがレジスタファイルに接続されたMAC(Multiply-Accumulate)装置を有する2次元のPEアレイで構成される。従って、ハードウェアアクセラレータの設計空間は、12×8から20×24までのPEアレイサイズ、16Bから256BまでのPE当たりのレジスタファイルサイズを含む。また、検索空間は、WS(Weight-Stationary)、OS(Output-Stationary)、及びRS(Row-Stationary)のデータフローを含む。
【0074】
以下、本発明に関する実験結果を説明する。
【0075】
≪実験(EXPERIMENTS)≫
【0076】
<実験環境(Experimental Environment)>
【0077】
CIFAR-10及びイメージネット(ImageNet)データセットを使用して実験を行った。報告された全てのハードウェアメトリック(遅延時間、エネルギー、及びチップ面積)に対して、学習されたモデルでできるだけエラーを防止するために、コスト推定ネットワークにより出力された値の代わりに、タイムループ及びアクセラレータで設計されたハードウェアに対する直接評価を使用した。ネットワーク正確度の評価は、最終のネットワークアーキテクチャを訓練して行われ、バッチサイズ64を使用して300エポックの間に初めから訓練する。Nesterovモーメンタムと共にSGDオプティマイザを使用し、初期値が0.008であるコサイン学習速度スケジューリングを使用し、重み減衰項とモーメンタムは、それぞれ1e-3と0.9である。訓練データに対する拡張は、両データセットの全てでAutoAugmentから採択される。
【0078】
<既存の方法との比較(Comparison with Existing Methods)>
【0079】
次の表1は、HDXと比較し、既存の微分可能な統合探索方法を並べている。
【0080】
【表1】
【0081】
ここで、比較対象方法は次の通りである。
【0082】
NAS→HW:微分可能な一般NASのみあり、タイムループ(Timeloop)を使用して徹底したハードウェア検索が続く。
【0083】
Auto-NBA:勾配降下法を使用してハードウェア媒介変数を直接検索する微分可能な統合探索方法であり、ハードウェアとDNNとの間の関係をルックアップテーブルで表現する。
【0084】
DANCE:ハードウェア生成ネットワーク及びコスト推定ネットワークがニューラルネットワークとしてモデリングされるハードな制約条件のない微分可能な統合探索方法である。
【0085】
DANCE+Soft Constraint:既存の解で制約条件を考慮する合理的なアクセス方式を示すために、ソフトな制約条件の用語λSoft・max(t/T-1,0)を追加した。
【0086】
HDX:p=1e-2の提案方法である。
【0087】
上記表1に示すように、HDXは、微分可能な統合探索と共にハードな制約条件を考慮する唯一の方法である。定量的比較のために、ハードな制約なく統合探索を使用して制約された解を見つけるアルゴリズムを考案した。制約されたメトリック(例えば、遅延時間)が低すぎるということは、しばしば非効率的な解を意味するため(他のメトリック(例えば、正確度及びエネルギー)の側面で)、対象制約条件の50%~100%の解を有する基準を設定した。二分検索に似たアルゴリズムの概略的なスケッチは次の通りである。
【0088】
(1)制約条件(例えば、遅延時間)でメトリックに間接的に影響を与える制御媒介変数(λSoft及びλCost)を選択する。
【0089】
(2)基本制御媒介変数値を使用して検索を行う。
【0090】
(3)メトリックが制約条件下にあるまで各ステップで制御媒介変数を2倍に増やして検索を行う。
【0091】
(4)メトリックが目標値の50%未満である場合、二分検索の方式で制御媒介変数を縮小する。
【0092】
この問題は、検索毎の大きな変動及び非線形関係により、二分検索で正確に解くことができない。実際の実現では、コーナーケースを処理し、誤った媒介変数領域(検索別の変動により発生する)に陥らないように、より多くの機能が追加された。アルゴリズムを100回実行して平均を報告し、また平均エラーを解品質に対するプロキシに報告した。
【0093】
上記表1に提示されているように、全てのベースライン(baselines)は制約条件を満たす解を見つけるために複数の検索が必要である。DANCEの場合、平均12.2GPU時間で6.6検索、ソフトな制約条件でも4.9検索及び9.1GPU時間がかかる。これに対し、HDXは常に単一検索で制約条件を満たす解を検索する。また、ベースライン検索の回数は、制御媒介変数の基本値の選択によって大きく変わる。正しい初期の媒介変数を推測することは難しく、より大きな繰り返しコストが発生する。これは、HDXの必要性を擁護する。
【0094】
<統合探索結果(Co-exploration Results)>
【0095】
図5は、CIFAR-10データセットに対する様々な技術の統合探索の実験結果を2次元プロットで示す。横軸は人工ニューラルネットワークの正確度であり、縦軸は左側と中間の場合は遅延時間を、右側の場合は損失関数のハードウェア因子の全てを示す。遅延時間が30フレーム(33.3ms)及び60フレーム(16.6ms)の2つの場合を実験した。全ての統合探索方法について、λCostを0.001から0.005に変更し、5つの解を得て各アクセス方式から得られた多様な設計ポイントを公正に比較した。
【0096】
NAS→HWは、統合設計ではなく人工ニューラルネットワークを先に設計し、これによってアクセラレータ構造を導出する方法論(個別設計)をいい、DANCE及びAuto-NBAは既存のハードな制約を考慮しない逆伝播ベースの方法論に損失関数技法を活用したものである。最後に、HDXは本発明で提案した技法を示す。NAS→HWの場合、λCostを直接適用できないため、参照用として多様な範囲の10個の解を得る。DANCE及びAuto-NBAの場合、黒色マーカーは拘束されず、カラーマーカーは当該色相のソフトな拘束で取得される。
【0097】
全ての実験において、数式8でCE=2.9,CL=6.2,CA=1.0を使用し、公正な比較のために各メトリックの差の尺度を略等しくする。NAS専用方式の場合、CostHWはハードウェア設計ステップで使用された。
【0098】
図5の図左側及び中間は、エラーと遅延時間との間の関係を示し、色付きの横棒は、2つの遅延時間の目標を示す。λCostの値に関係なく、HDXが見つけた全ての解が与えられたハードな制約を合わせていることが容易に分かる。また、全ての解が制約条件のすぐ下に遅延時間があり、解が制限されたメトリック(遅延時間)に対して過度に最適化されていないことを示す。DANCE及びAuto-NBAは、ハードウェアメトリックと正確度との間の折衷点を活用するが、制約条件を満たすためには制御できない。ソフトな制約条件を使用しても、制約内の解を得るのに殆ど失敗した。
【0099】
個別設計の場合、事実上正確度に重点を置いたあまり、ハードウェア関連の目標を考慮できておらず、損失関数ベースの方法論を考慮した2つの技法とも30フレーム及び60フレーム共に多くの場合ハードな制約目標を達成できなかった。特に、30フレームの場合には、偶然目標を達成する場合も多数あったが、60フレームのような難しい制約がある場合には、損失関数の修正にも拘らず目標を達成できなかった。これは、損失関数は最適化のためのわずかなガイドを提供するだけであって、実質的なハードな制約を強制できないためである。
【0100】
右側のプロットは、損失関数を正確度とハードウェア数値との2つに分けて、損失関数の最適化品質を示すが、左側の下であるほど優れた結果である。図から容易に確認できるように、提案した技法は、既存の技法に比べて損失関数の品質において全く遅れておらず、むしろより優れた場合も存在することが分かり、これは本方法が品質を犠牲にしてハードな制約を達成するものではないことを示す。
【0101】
<HDXが見つけた解の品質(Solution Quality Found by HDX)>
【0102】
本発明で提案したHDX方法は、1)3つのメトリック(遅延時間、エネルギー、及びチップ面積)の全ての制約条件を処理し、2)様々な制約条件を処理し、3)全般的に優れた品質の解が得られることを示す。図5の右側の場合は、CostHW及びエラーを共に表示し、パレートの最適化の側面で解の品質を評価する。図5の左側及び中間の場合は、他のメトリックを見落としているため、CostHWを共に比較することで公正しなければならない。
【0103】
プロットを見ると、HDXの解の品質がNAS→HW方式よりも優れており、既存の統合探索方式に比べて、低下がないことが分かる。実際に、厳しく制限(16.6ms)された解は、パレートの最適化の側面で既存の解よりもより良い解を見つけることができる。HDXが見つけた解の品質をより詳しく研究するために、また別の一連の実験を行った。既存の統合設計方式であるDANCE方法によって得られた解を「Anchor」と呼び、次の表2に並べる。
【0104】
【表2】
【0105】
上記表2は、多様なセッティングで提案された方式がハードな制約を満たし、統合設計を行うことができることを示す。CIFAR-10データセットを活用し、既存の統合設計方式によって得られた「Anchor」の解を基準にハードな制約を設計した。その中で、ハードな制約条件で固定するハードウェアメトリックの1つ又は3つともを選択し、HDXを使用して統合探索を行った。例えば、Aの場合、遅延時間が69ms、エネルギー使用量が37mJであるが、遅延時間に対するハードな制約を同じ69msに設定した後、提案された方式によって統合設計を行うことによって、1)ハードな制約を満たすことができるか、2)ハードな制約なく設計された解と同一/類似品質の解を導出できるかを判断可能である。実際に、遅延時間69msによって設計した場合、43.99msの解が得られ、全体損失(loss)もむしろより低い値で、品質が劣らないことを示している。また、遅延時間、エネルギー、チップ面積の全てにおいてハードな制約をかけた場合、成功的に全ての制約を満たしながらも、優れた解が得られることが観測された。
【0106】
<イメージネットデータセットの結果(Results from ImageNet Dataset)>
【0107】
次の表3は、125msの制約条件において、イメージネットを対象に行った2つずつの統合設計結果を示す。
【0108】
【表3】
【0109】
表3に示すように、本発明で提案されたHDX方式のみが唯一に2つの場合において全て制約を満たしており、解の品質面においても制約を満たした解のうち、最も品質が良いことを損失(Loss)値から確認可能である。また、Top-1エラー及びグローバル損失は、HDXが見つけた解の品質がDANCE又はその変形に比べて全く損なわれていないことを示す。
【0110】
<プリングの大きさに対する敏感度研究(Sensitivity Study on Pulling Magnitude)>
【0111】
図6を参照すると、本発明で提案するHDX方法が有する唯一の調節可能因子pに対する反応を示し、提案された技法の性能がpを任意に調節して得られた結果ではないことを示す。
【0112】
図6の(a)~(c)は、それぞれ1e-2、7e-3、4e-3の多様なpで遅延時間が制限(33.3ms)された探索でグローバル損失及び遅延時間がどのように変わるかを示す。pが小さい場合に制約が少し遅れて満たされ、大きい場合に少し早く満たされるという差はあるが、全ての場合において制約を最終的に満たすのに成功しており、制約に比べてひどく低い遅延時間を得ていないことも示す。
【0113】
即ち、pの値とは関係なく拘束された値に対する曲線は類似の傾向を示す。初めはグローバル損失が主に最適化されるのに対し、遅延時間は一定に維持される。このステップで、プリングの大きさδ(式6参照)は依然として増加しており、意味のある変化を作るほど強くない。特定の時点で、δは遅延時間を減少させる方向に解を引くことができるほど十分に強くなる。遅延時間が制約条件を満たすと、遅延時間を維持しながらグローバル損失が減少し始める。グローバル損失と遅延時間の最終解との間には大きな差がなく、これは、本発明で提案したHDX方法が調節可能因子pに鈍感であるということを示す。
【0114】
<検索された解に対する分析(Analysis on the Searched Solutions)>
【0115】
図7を参照すると、(a)及び(b)は、それぞれ60フレーム及び30フレームの遅延時間の制約下で得られた例示のニューラルネットワーク及びアクセラレータ構造を示す。ここで、(m,n)はm×mカーネルとn拡張比率を有するMBConvブロックを意味する。
【0116】
図7(a)の60フレームの場合には、遅延時間の制約が強い方であるため、ニューラルネットワークは小さなカーネルを殆ど有し、代わりに層数を増やして遅延時間と正確度との間のトレードオフ(trade-off)を確保する。正確度を維持しながら厳しい制約条件を満たすために、ネットワークには主に3×3の小さなカーネルがあり、より小さなカーネルを使用すると、乗算の回数を2次的に減らすことができる。従って、カーネルのサイズを減らして層数を増やすことが推論遅延時間を減らすのに良い選択である。アクセラレータは、速度が速いことが知られている重み固定(weight stationary:WS)構造を多くのPE数と共に活用して、遅延時間の減少を追求する。アクセラレータの設計を見ると、低い遅延時間を達成するために、相対的に大きなPEアレイ(16×16)を使用し、遅延時間が短いことが知られているWSデータフローが必要である。また、ネットワークにはチャンネル拡張比率が高い一部のカーネルがある。WSは速い実行のために並列性を利用するため、見つかったネットワークよりも利点がある。
【0117】
これに対し、図7(b)の30フレームの制約下で得られたニューラルネットワークの場合、時間に余裕があるため、正確度を上げるのに有利な大きなカーネルが多数選択され、アクセラレータはエネルギー効率に優れると知られている行固定(Row stationary:RS)構造を使用する。30fpsに対する設計では、制約条件を満たしながらエネルギー消費を最適化する解に設計が安着する。この設計は、アクセラレータでネットワーク及びRSデータフローでより大きなカーネルを使用する。RSは、エネルギー効率に優れると知られており、カーネルの空間次元及び活性化において並列性を用いる。従って、より大きなカーネルを使用すると、RSデータフローに利点がある。エネルギー消費を減らすために、設計には、より少ないPE(12×8)、オフチップアクセスエネルギーを節約するためのより大きなRF、ネットワークのより少ない層数がある。
【0118】
本発明による統合探索方法であるハードな制約微分可能な統合探索方法であるHDXを提案し、制約条件を満たす方向に解を移動する勾配操作を条件付きで適用することによって、厳格な制約条件を高品質の解で安定的に充足することができる。本発明による統合探索方法は、ハードな制約を考慮した強化学習ベースのニューラルネットワーク/アクセラレータ統合設計で演算量の負担を大きく減らすことができる。
【0119】
以上、本発明の実施形態について図面を参照しながら詳細に説明したが、本発明は、上述の実施形態に限定されるものではなく、本発明の技術思想から逸脱しない範囲内で多様に変更実施することが可能である。
【符号の説明】
【0120】
100 統合探索装置
110 NASモジュール
130 HDX評価モジュール
150 勾配調節モジュール
図1
図2
図3
図4
図5
図6
図7