[論文レビュー] TensorFuzz: Debugging Neural Networks with Coverage-Guided Fuzzing
TensorFuzz は、近傍探索に基づく近似最近傍を用いてカバレッジを定義し、珍しい入力での失敗を検出するためのニューラルネットワーク向けカバレージ指向ファジングを導入し、オープンソースの TensorFuzz ライブラリを公開します。
Machine learning models are notoriously difficult to interpret and debug. This is particularly true of neural networks. In this work, we introduce automated software testing techniques for neural networks that are well-suited to discovering errors which occur only for rare inputs. Specifically, we develop coverage-guided fuzzing (CGF) methods for neural networks. In CGF, random mutations of inputs to a neural network are guided by a coverage metric toward the goal of satisfying user-specified constraints. We describe how fast approximate nearest neighbor algorithms can provide this coverage metric. We then discuss the application of CGF to the following goals: finding numerical errors in trained neural networks, generating disagreements between neural networks and quantized versions of those networks, and surfacing undesirable behavior in character level language models. Finally, we release an open source library called TensorFuzz that implements the described techniques.
研究の動機と目的
- 重要な応用分野におけるニューラルネットワークの信頼性あるデバッグツールの必要性を動機づける。
- ニューラルネットワークに特化したカバレージ指向ファジングフレームワークを導入する。
- 近似最近傍法による活性化空間の近接性を用いた実用的なカバレージ指標を定義する。
- TensorFuzz が数値エラー、量子化の不一致、望ましくない言語モデル挙動を顕在化させる能力を示す。
- より広い普及のためにオープンソースの TensorFuzz ライブラリを公開する。
提案手法
- コード分岐ではなく活性化空間でのカバレージを測定することにより、従来のソフトウェアから TensorFlow グラフへのカバレージ指向ファジングを適応させる。
- 有効なニューラルネット入力のシードコーパスを使用し、入力を変異させて新しい活性化を探索する。
- 新しい活性化状態を検出するために近似最近傍を用いてカバレージを計算する。
- 望ましい/望ましくないモデル挙動を引き起こす入力を特定する目的関数を使用する。
- ハードウェアの並列性を活用し、計算グラフの非決定性に対処するためにバッチ変異を行う。
実験結果
リサーチクエスチョン
- RQ1カバレージ指向ファジングは、訓練済みニューラルネットワークにおける数値エラー(例:NaN)をランダム検索より効率的に検出できるか?
- RQ2CGF は単一点評価では見逃されるニューラルネットワークとその量子化版の不一致を明らかにできるか?
- RQ3CGF はランダムテストでは容易に見つからない文字レベルの言語モデルの望ましくない挙動を浮かび上がらせるか?
- RQ4近似最近傍に基づく活性化空間カバレージ指標は、ニューラルネットワークアーキテクチャ全体で実用的かつ効果的か?
主な発見
- CGF は訓練済みネットワークにおける NaN のような数値エラーを迅速に見つける一方、ランダム検索はそれらを見逃すことが多い。
- CGF は局所的な入力領域(例:シード画像の周辺)で32ビットと16ビットの量子化モデル間の不一致を生み出すことができる。
- CGF は文字レベルの言語モデルにおける望ましくない挙動を浮き上がらせ、24時間の実行でランダム検索より多くのブラックリスト語を生成する。
- 近似最近傍を用いた活性化空間カバレージは、ニューラルネットワークにとって実用的でアーキテクチャに依存しないカバレージ信号を提供します。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。