スポンジコードがAIの四角い脳を破壊し、機械学習システムに対する新たな攻撃で計算能力を吸い上げる

Table of Contents

スポンジコードがAIの四角い脳を破壊し、機械学習システムに対する新たな攻撃で計算能力を吸い上げる

機械学習システムに不正確な入力を与えて処理時間を長くし、悪意のある行為や身体的危害さえも引き起こす可能性のある新しい敵対的攻撃が提案されている。

スポンジ攻撃と呼ばれるこれらの攻撃は、AIモデルを実行するハードウェアの消費電力を増加させ、動作を遅くします。これらの攻撃は、サービス拒否攻撃と似た動作をし、アプリケーションに過負荷をかけ、データフローを混乱させます。

スポンジサンプルは、リアルタイムで動作する必要があるソフトウェアに対して特に効果的です。例えば、自動運転車の画像認識ソフトウェアの応答時間を遅らせることは物理的に危険である可能性がありますが、テキスト生成モデルの速度を低下させることはそれほど大きな問題ではありません。本質的に、スポンジサンプルは、推論を実行するデバイスのレイテンシを増加させる悪意のある入力です。

英国ケンブリッジ大学、カナダのトロント大学およびベクター研究所の研究者グループは、スポンジのサンプルが、インテルのXeon E5-2620 V4 CPUやNvidiaのGeForce 1080 Ti GPUなどのさまざまなチップ、およびASICシミュレータによって加速されたコンピュータービジョンおよび自然言語処理(NLP)モデルをどのように妨害できるかを実証した。

スポンジ攻撃は、GoogleのカスタムTPUのような他の機械学習アクセラレータにも効果があると聞きました。NLPシステムの速度を2倍から200倍低下させ、コンピュータービジョンモデルの処理時間を約10%増加させました。これは、時間的に厳しい自動運転車では望ましくない事態です。

非常にシンプルな例を挙げましょう。コンピューターのテキスト理解能力をテストするために設計されたQ&Aモデルを想像してみてください。「explainable」ではなく「explsinable」のような誤字を含む質問をこのモデルに入力すると、システムが混乱し、処理速度が低下する可能性があると、ケンブリッジ大学の博士課程学生で、この研究[arXiv PDF]の共著者であるイリア・シュマイロフ氏はThe Register紙に語りました。

猫が縮小されて犬になる例

参考までに:スケーリングコードを悪用してトレーニングデータを汚染することで、画像認識AIを騙して、例えば猫と犬を混同させることができます。

続きを読む

NLPモデルは単語を理解しようと最善を尽くします。例えば、「explainable」は既知の単語なので、単一のトークンで表現されます。一方、「explsinable」は未知の単語ですが、処理は可能です。ただし、タイプミスと仮定して単純な近傍検索を行うと、処理に数倍の時間がかかる可能性があります。しかし、一般的なNLP最適化では、「expl」、「sin」、「able」という3つのトークンに分解されますが、その結果、システムが回答するのに100倍の時間がかかる可能性があります。つまり、「explsinable」のような単純な単語は、スポンジのような働きをする可能性があるのです。

産卵スポンジの例

このような悪事を働くには、悪党は時間をかけてスポンジサンプルを生成する必要があります。その秘訣は、遺伝的アルゴリズムを用いてランダムな入力セットを生成し、それらを変異させることで、ニューラルネットワークの速度を低下させるほど多様なデータセットを作成することです。これは、物体認識モデル用の画像であれ、機械翻訳システム用のテキストスニペットであれ、同じです。

生成された入力はダミーニューラルネットワークに渡され、処理されます。この処理中にハードウェアが消費するエネルギーは、チップの性能を分析するソフトウェアツールを使用して推定されます。

チップにさらなる計算能力を消費させる上位10%の入力は保持され、変異されて「子」入力の2番目のバッチが作成されます。これは、実際のモデルに対する攻撃でより効果的である可能性が高くなります。攻撃者は、阻止しようとしているニューラルネットワークに完全にアクセスできる必要はありません。スポンジ攻撃は、類似のモデルや異なるハードウェア間で機能します。

「Spongeのサンプルが1つのプラットフォームで動作する場合、他のプラットフォームでも動作することがよくあります。多くのハードウェアプラットフォームが、コンピューティングの効率化やエネルギー効率を高めるために同様のヒューリスティックを使用しているため、これは驚くべきことではありません」とシュマイロフ氏は述べています。

「たとえば、現代のハードウェアで最も時間やエネルギーを消費する操作はメモリアクセスです。そのため、攻撃者がメモリ帯域幅を増やすことができれば、アプリケーションの速度を低下させ、より多くのエネルギーを消費させることができます。」

スポンジサンプルは敵対的サンプルとは全く同じではありません。スポンジサンプルの目的は、システムを騙して誤った分類をさせようとするのではなく、システムのパフォーマンスを低下させることです。しかし、どちらも敵対的攻撃とみなされ、機械学習モデルに影響を与えます。

スポンジ攻撃を防ぐ簡単な方法があります。「モデルの展開前に、自然サンプルをプロファイリングし、推論にかかる時間やエネルギーコストを測定することを提案します。防御側はカットオフ閾値を設定できます。これにより、推論実行あたりの最大エネルギー消費量が制御され、スポンジサンプルが可用性に与える影響は限定的なものになります」と研究者らは論文に記しています。

言い換えれば、スポンジの例は、過剰なエネルギーを消費するモデルが特定の入力を処理することを停止することによって対処できます。

これはニューラルネットワークをスポンジ攻撃から守る簡単な方法のように見えるかもしれないが、シュマイロフ氏によると、そのような防御策が実装される可能性は低いという。「たとえ敵が最悪のパフォーマンスを強いたとしても、システムが十分に高速に動作するようにシステムのサイズを調整すれば、スポンジ攻撃を無意味にすることができます。その意味では簡単です。」

「しかし、多くの場合、そのような余裕はありません。機械学習を高速化するために、人々はアクセラレータチップに莫大な金額を費やしています。しかし、これらは平均的なパフォーマンスと最悪のパフォーマンスの差を広げ、結果として脆弱性を高めています。企業は数十億ドルを費やしてシステムをスポンジ攻撃に対してより脆弱にしています。それは、スーパースカラーCPUに数十億ドルを費やし、サーバーファームをスペクター攻撃やメルトダウン攻撃に対してより脆弱にしたのと同じです。」

現在、研究者たちは、現実世界に導入されている AI システムでスポンジの例を見つけることを計画している。

「私たちの攻撃で発見されたスポンジサンプルは、標的を絞って利用することで、組み込みシステムの性能目標を達せなくさせる可能性があります。自動運転車のマシンビジョンシステムの場合、攻撃者はこれによって車両を衝突させる可能性があります。また、ニューラルネットワークによる標的追跡装置で誘導されるミサイルの場合、スポンジサンプルの対抗手段によって追跡ロックを解除できる可能性があります。このようなアプリケーションでは、システムエンジニアが敵対的な最悪ケースのパフォーマンスを慎重にテストする必要があります」と論文は結論づけています。®

Discover More