AIシステムに対する敵対的攻撃の影響、その種類、実際の例、およびAIセキュリティを強化するための防御戦略をご覧ください。
敵対的攻撃は、機械学習(ML)モデルを欺き、高い信頼度で誤った予測を行わせるよう設計された高度な操作手法の一種である。これらの攻撃は、画像、音声、テキストなどの入力データに、微細でしばしば知覚できない擾乱を導入することで機能する。 こうした変更は人間の観察者には無害またはランダムに見えるが、高次元ニューラルネットワークの決定境界における特定の数学的脆弱性を悪用する。人工知能(AI)システムが安全上重要なインフラに不可欠になるにつれ、これらの脆弱性の作用を理解することは、堅牢なAI安全プロトコルと防御メカニズムを開発するために不可欠である。
典型的な深層学習(DL)の学習プロセスでは、 モデルは学習データセット上の誤差を最小化するために重みを最適化する。しかし、これらのモデルは本質的に 多次元空間における複雑な写像を生成する。敵対的攻撃は、入力データを境界を越えさせモデルの分類を反転させるために必要な、 この空間における正確な「方向」を計算する。例えばコンピュータビジョン(CV)では、 パンダ画像のピクセル値を計算された量の「ノイズ」で変更すると、 システムが自信を持ってそれをテナガザルと誤分類する可能性がある。 人間の目には依然として完全にパンダに見えるにもかかわらず。
攻撃戦略は、一般的に攻撃者が標的システムに対して持つアクセスレベルによって分類される:
理論研究では頻繁に議論されるものの、敵対的攻撃は実世界の展開、特に自律システムやセキュリティにおいて具体的なリスクをもたらす。
モデルがいかに脆弱になり得るかを理解するには、画像がいかに容易に擾乱されるかを観察することが有用である。YOLO26のようなモデルを用いた標準的な推論は一般的な用途では頑健であるが、研究者はモデル監視と防御を改善するため、しばしば攻撃をシミュレートする。以下の概念的な例では、PyTorch を用いて画像に対する敵対的擾乱(ノイズ)を計算するために勾配がどのように利用PyTorch
import torch.nn.functional as F
# Assume 'model' is a loaded PyTorch model and 'image' is a normalized tensor
# 'target_class' is the correct label index for the image
def generate_adversarial_noise(model, image, target_class, epsilon=0.01):
# Enable gradient calculation for the input image
image.requires_grad = True
# Forward pass: get prediction
output = model(image)
# Calculate loss based on the correct class
loss = F.nll_loss(output, target_class)
# Backward pass: calculate gradients of loss w.r.t input
model.zero_grad()
loss.backward()
# Create perturbation using the sign of the data gradient (FGSM)
# This pushes the image in the direction of maximizing error
perturbation = epsilon * image.grad.data.sign()
return perturbation
敵対的攻撃を、他の形態のモデル障害や操作と区別することが重要である:
これらの攻撃に対する防御策の開発は、現代のMLOpsの中核をなす要素である。 敵対的学習(攻撃対象となる例をトレーニングセットに追加する手法)などの技術は、モデルの耐性を高めるのに役立つ。 Ultralytics プラットフォームは、厳密なトレーニングと検証のパイプラインを促進し、チームがエッジデバイスへのデプロイ前にモデルの堅牢性を評価することを可能にする。