Skip to main content
QUICK REVIEW

[論文レビュー] Scaling Polyhedral Neural Network Verification on GPUs

Christoph Müller, François Serre|arXiv (Cornell University)|Jul 20, 2020
Adversarial Robustness in Machine Learning被引用数 15
ひとこと要約

GPUPoly は、大規模なディープニューラルネットワークのスケーラビリティと精度を両立させるために、独自の整合的で多面体的な抽象ドメインを用いた GPU 並列化されたニューラルネットワーク検証ツールです。従来手法に比べ最大 68,000 倍の高速化を達成し、100万ニューロンの ResNet34 をわずか 34.5 ms で検証するなど、大規模モデルにおける多面体検証のスケーラビリティと精度の分野で、新たな最先端水準を確立しました。

ABSTRACT

Certifying the robustness of neural networks against adversarial attacks is essential to their reliable adoption in safety-critical systems such as autonomous driving and medical diagnosis. Unfortunately, state-of-the-art verifiers either do not scale to bigger networks or are too imprecise to prove robustness, limiting their practical adoption. In this work, we introduce GPUPoly, a scalable verifier that can prove the robustness of significantly larger deep neural networks than previously possible. The key technical insight behind GPUPoly is the design of custom, sound polyhedra algorithms for neural network verification on a GPU. Our algorithms leverage the available GPU parallelism and inherent sparsity of the underlying verification task. GPUPoly scales to large networks: for example, it can prove the robustness of a 1M neuron, 34-layer deep residual network in approximately 34.5 ms. We believe GPUPoly is a promising step towards practical verification of real-world neural networks.

研究の動機と目的

  • 100万ニューロンを超える大規模モデルに対して、ニューラルネットワーク検証におけるスケーラビリティと精度のトレードオフを解消すること。
  • GPU ハードウェア上で、浮動小数点演算の正確性を保証する多面体抽象ドメインを用いた整合的で正確な検証を可能にすること。
  • GPU の並列処理能力と畳み込み層・残差接続におけるスパarsity を活用し、CPU 基盤の手法を凌駕する検証速度を実現すること。
  • 実世界のディープニューラルネットワーク、特に大規模な残差構造を有するアーキテクチャに対しても実用的な検証時間を達成すること。
  • 特に困難で大規模なネットワークに対して、精度とスケーラビリティの両面で既存の近似検証ツールを上回ること。

提案手法

  • ニューロンおよびレイヤー間の細粒度なデータ並列性を活用した、GPU に最適化された独自の多面体アルゴリズムを設計する。
  • スパarsity を意識した表現を用いることで、限られた GPU メモリ内に大規模ネットワークを収容可能なメモリ効率の良いデータ構造を実装する。
  • GPU 浮動小数点演算における丸めモードや非結合性を反映する、整合的な浮動小数点意味論モデルを統合する。
  • バックサブスティチューション中に耐性が確認された場合に早期終了を適用し、検証が容易なケースの実行時間を顕著に短縮する。
  • ReLU 活性化関数の出力を過剰近似する多面体抽象化を用い、凸多面体上の効率的な線形計画法を可能にする。
  • 畳み込み層および残差接続に内在するスパarsity を活用し、計算負荷を低減するとともに GPU のスレッド占有率を向上させる。

実験結果

リサーチクエスチョン

  • RQ1GPU 並列化を用いることで、多面体検証は 100万ニューロン規模の大規模ディープニューラルネットワークにまでスケーリング可能か?
  • RQ2GPUPoly の精度と性能は、大規模ネットワークにおいて、CR-IBP や DeepPoly といった最先端の近似検証ツールと比較してどの程度優れているか?
  • RQ3GPU の並列処理能力とスパarsity の活用によって、検証時間をどれほど短縮できるか、かつ整合性は保たれるか?
  • RQ4早期終了ヒューリスティクスは、耐性学習済みネットワークにおいて、正しさを損なわずに実行時間を顕著に短縮可能か?
  • RQ5非結合性演算や異なる丸めモードを含む浮動小数点演算において、GPUPoly は整合性を保っているか?

主な発見

  • GPUPoly は、約 34.5 ms で 100万ニューロン、34層の ResNet34 を検証し、正確な多面体検証におけるスケーラビリティの面で前例のない水準を達成しました。
  • PGD で訓練された CIFAR10 ネットワークでは、GPUPoly は 1,299 個の耐性特性を証明しましたが、CR-IBP は残差接続のサポート不足により 0 個に留まりました。
  • DiffAI で訓練されたネットワークでは、CR-IBP がこれらのネットワークに対して高速であるものの、GPUPoly は CR-IBP よりも 420 個多く耐性特性を証明しました。
  • DiffAI で訓練された ResNet34 では、GPUPoly は DeepPoly より最大 68,000 倍速く、通常訓練済みネットワークでは最大 250 倍速くなりました。
  • GPUPoly の実行時間分布は、耐性学習済みネットワークでは多数のケースで早期終了が発生するため長尾を示し、完全計算を必要とする外れ値は僅かにとどまります。
  • GPUPoly は浮動小数点演算においても整合性を保ち、非結合性や丸め動作を正しくモデル化しています。これは、一部の先行研究で整合性を欠いた検証ツールとは対照的です。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。