Skip to main content
QUICK REVIEW

[論文レビュー] Verification of Neural Networks: Enhancing Scalability through Pruning

Dario Guidotti, Francesco Leofante|arXiv (Cornell University)|Mar 17, 2020
Adversarial Robustness in Machine Learning参考文献 18被引用数 6
ひとこと要約

本稿では、ニューロンと重みのプルーニングを用いたトレーニングパイプラインを提案し、深層ニューラルネットワークの形式的検証のスケーラビリティを向上させることを目的としている。精度とロバストネスを維持したままネットワークの複雑さを低減することで、Marabou や ERAN、MIPVerify といった最先端の検証ツールが、従来では処理不可能だったネットワークを10分のタイムアウト内で検証可能にした。特にニューロンプルーニングは重みプルーニングよりも顕著に優れた効果を示した。

ABSTRACT

Verification of deep neural networks has witnessed a recent surge of interest, fueled by success stories in diverse domains and by abreast concerns about safety and security in envisaged applications. Complexity and sheer size of such networks are challenging for automated formal verification techniques which, on the other hand, could ease the adoption of deep networks in safety- and security-critical contexts. In this paper we focus on enabling state-of-the-art verification tools to deal with neural networks of some practical interest. We propose a new training pipeline based on network pruning with the goal of striking a balance between maintaining accuracy and robustness while making the resulting networks amenable to formal analysis. The results of our experiments with a portfolio of pruning algorithms and verification tools show that our approach is successful for the kind of networks we consider and for some combinations of pruning and verification techniques, thus bringing deep neural networks closer to the reach of formally-grounded methods.

研究の動機と目的

  • 安全性やセキュリティが求められるアプリケーションへの適用が制限される、深層ニューラルネットワーク(DNN)の形式的検証におけるスケーラビリティの課題を解決すること。
  • ネットワークプルーニングが、精度やロバストネスを損なわせることなく、DNNの複雑さを低減し、形式的検証に適した形にできるかどうかを調査すること。
  • ニューロンプルーニングと重みプルーニングが、さまざまな検証ツールのパフォーマンス向上にどの程度寄与するかを評価すること。
  • プルーニング技術を統合した実用的なトレーニングパイプラインを確立し、形式的解析に適したネットワークの生成を可能にすること。

提案手法

  • 著者らは、MNIST および Fashion-MNIST データセットでトレーニングされた全結合DNNに対して、ニューロンプルーニングと重みプルーニングを適用するトレーニングパイプラインを導入した。
  • ニューロンプルーニングは、完全なニューロンとその接続を削除するのに対し、重みプルーニングはしきい値以下の個々の重みをゼロにすることで、スパースで単純化されたネットワークを生成することを目的としている。
  • モデルの精度とロバストネスをプルーニング後も維持するために、修正されたトレーニングプロセスとプルーニングを統合した。
  • 検証には、複数のツールを用いたパフォーマンス評価を実施した:Marabou(SMTベース)、ERAN(MILPおよび過剰近似)、MIPVerify(MILPコンパイル)、いずれも敵対的摂動に対するロバストネスを検証している。
  • プルーニングが検証時間と成功確率に与える影響を、同一の検証クエリのもとで、ベースライン、スパース、プルーネッドネットワークの比較を通じて評価した。
  • パフォーマンス分析には、Gurobi の MILP 解法の挙動をログ記録し、スパースネスと整数変数・制約の数の削減との相関関係を分析した。

実験結果

リサーチクエスチョン

  • RQ1ネットワークプルーニング技術は、深層ニューラルネットワークの形式的検証ツールのスケーラビリティを向上させることができるか?
  • RQ2ニューロンプルーニングと重みプルーニングは、検証の複雑さ低減において、どの程度の効果を示すか?
  • RQ3プルーニングされたネットワークは、実用的な時間制限内に検証可能である一方で、精度とロバストネスをどの程度維持できるか?
  • RQ4異なる検証ツール(例:SMTベース対MILPベース)は、プルーニングに起因するスパースネスに対して、異なる反応を示すか?
  • RQ5プルーニングによる整数変数および制約の数の削減は、直接的に検証パフォーマンスの向上と関連しているか?

主な発見

  • プルーニングを行わない場合、約50Kの接続と896個のニューロンを持つ全結合DNNの検証は、10分間のCPU時間制限内で常にタイムアウトした。
  • ニューロンプルーニングは重みプルーニングを著しく上回り、特定のプルーニングパラメータ設定では、すべての検証ツールがすべてのネットワークインスタンスをタイムアウト内に検証できた。
  • 重みプルーニングは、高いプルーニング度(例:90%の重み削除)の場合にのみ検証パフォーマンスを向上させたが、その効果は主にERAN(完全および非完全)に顕著に現れた。
  • ERAN-incompleteは、重みプルーニングされたネットワークに対してニューロンプルーニングされたネットワークよりも高速に検証を完了し、そのスピードアップはプルーニングされた重みの数に比例していた。
  • MIPVerifyとERANは、ゼロ重みの接続を活用してMILP問題を単純化し、ニューロンプルーニングおよびスパースネットワークでは整数変数の数を元の1/4未満に削減した。
  • ログ解析により、ニューロンプルーニングは重みプルーニングネットワークと比較して、Gurobi のMILP問題における整数変数の数を75%以上削減していることが確認され、これがパフォーマンス向上の要因であると説明された。

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

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

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

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