ISBN 9784297118051

AIセキュリティから学ぶ ディープラーニング[技術]入門

AIセキュリティから学ぶ ディープラーニング[技術]入門
著者
田篭 照博
出版社
技術評論社
刊行
2021-01

概要

敵対的攻撃の仕組みを実装しながらディープラーニングの基礎を体得する

想定読者

Pythonの基礎知識があり、ディープラーニングとAIセキュリティの両方を実装レベルで学びたいエンジニア・研究者

こんな人には向いていない

  • すでにCNN・TensorFlow/Kerasの実装経験があり、攻撃アルゴリズムの理論的詳細だけを求める中上級者には基礎部分の比重が大きい
  • 数式の厳密な導出や統計的背景を重視する読者には数学的説明が薄く感じる可能性がある
  • PyTorchを主軸に学びたい読者には本書のフレームワーク選択(TensorFlow/Keras)が合わない

読了後にできるようになること

  • FGSM・JSMA・C&W・PGD・Boundary Attackといった主要な敵対的攻撃アルゴリズムの仕組みと実装方法
  • ニューラルネットワークの順伝播・逆伝播・損失関数の基礎をNumPyとKerasで実装する力
  • Adversarial Robustness Toolbox(ART)を用いた攻撃・防御の実践的な適用手順
  • 自動運転や深層偽造(Deepfake)など実世界のAIシステムが直面する攻撃シナリオの把握
  • DockerとJupyter Notebookを組み合わせた再現可能なML実験環境の構築

本書のキー概念(章解説)

  • 第 1 章 ディープラーニングと脅威の概要 — AIセキュリティの全体像を把握する導入章。攻撃の分類と実世界の事例を整理する
  • 第 2 章 DockerとJupyter Notebookによる環境構築 — 初読時に躓きやすい環境セットアップを早期に解決する。以降の実装をすべてここで動かす
  • 第 3 章 数学的基礎とNumPy演算 — 行列演算・微分の基礎。数学が不安な読者はここで立ち止まってNumPy操作を習得すると後半が楽になる
  • 第 4 章 ニューラルネットワークの構造と学習 — 順伝播・逆伝播をスクラッチで実装。攻撃アルゴリズムを理解するうえで核心となる章
  • 第 5 章 分類モデルの構築 — Kerasで画像分類モデルを構築する実践章
  • 第 6 章 畳み込みニューラルネットワーク(CNN) — CNNの設計原理。攻撃対象モデルの構造を理解するための必須章
  • 第 7 章 TensorFlowとKerasによる実装 — Part 3の総括。ARTライブラリとの接続はここから始まる
  • 第 8 章 敵対的攻撃(FGSM / JSMA / C&W / Boundary / PGD) — 本書の核心。各攻撃の理論と実装を網羅。PyTorchで追実装したい場合も本章の理解が出発点になる
  • 第 9 章 防御手法と実世界の脅威 — 自動運転・Deepfakeなどへの応用を扱う。攻撃を学んだ後に防御視点で通読する価値が高い

ハイライト

  • ディープラーニングの適用範囲が拡がり、画像認識や音声認識の精度が高くなる一方、モデルに対して細工した画像を送り、誤った分類結果を引き起こす攻撃などが懸念され始めています。(AIセキュリティという切り口でディープラーニングを学ぶ本書の出発点が端的に示されている箇所)
  • パンダ(Panda)の画像にノイズを少し加えることでテナガザル(Gibbon)と誤認識させる現象が有名です。本書では、これらを理解するためにディープラーニングの基礎からハンズオンによる実装方法まで解説しています。(Adversarial exampleという具体的な現象から学習を始める本書の構成上の特徴が伝わる箇所)

外部からの言及

  • PGD・JSMA・C&W Attackの実装記事で、本書掲載のソースコードを参考にしたと明示する記事が複数ある。ARTライブラリを使わずPyTorchで追実装する際の出発点として参照されており、アルゴリズムの実装ハンズオン素材として機能していることが確認できる(qiita)
  • 敵対的サンプル攻撃の情報源調査記事で、本書が入門者向けの代表的な日本語資料として挙げられている。英語のペーパーや研究ライブラリと並んで日本語で攻撃手法を体系的に学べる書籍として位置付けられている(qiita)

編集メモ

Qiita言及4件 / 累計likes 2。件数・likes数ともに定番水準(essential: 10件超/200likes超)には未達。ただし言及記事はいずれも攻撃アルゴリズムの実装参考書として本書ソースコードを直接引用しており、実装ハンズオン素材としての活用実績は確認できる

読む前に押さえておきたいこと

  • Pythonの基礎文法と配列操作(リスト・NumPy配列の基本操作)
  • 高校数学レベルの行列演算と微分の概念(本書内でも解説されるが、事前知識があると進みが早い)
  • 機械学習の概念的な理解(教師あり学習・損失関数・最適化の流れを知っている程度で十分)

学習のコツ

  • Part 1(第1章)と Part 4(第8章)を先に読んで攻撃の全体像をつかみ、その後 Part 2-3 で実装基礎を補完する読み方が効率的。攻撃の動機が分かった状態で数学基礎を学ぶと吸収が早い
  • 第8章の各攻撃アルゴリズムは、本書のKeras/ARTコードを動かした後にPyTorchで追実装すると理解が深まる。Qiitaに複数の追実装記事があり、コード比較の参考になる
  • Stanford訪問研究員経験を持つ著者がシリコンバレーの研究動向を踏まえて書いているため、英語論文(Goodfellow et al.のFGSM、Carlini & Wagnerなど)と並読すると位置付けが分かりやすい
  • 第9章の防御手法は攻撃章(第8章)と対応して読む。各攻撃に対応する防御の有効性の限界まで把握することで、実務でのリスク評価の基準ができる
出版社による内容紹介

ディープラーニングの適用範囲が拡がり、画像認識や音声認識の精度が高くなる一方、モデルに対して細工した画像を送り、誤った分類結果を引き起こす攻撃などが懸念され始めています。海外では非常に活発な研究領域です。たとえば、敵対的サンプル(Adversarial example)として、パンダ(Panda)の画像にノイズを少し加えることでテナガザル(Gibbon)と誤認識させる現象が有名です。 本書では、これらを理解するためにディープラーニングの基礎からハンズオンによる実装方法まで解説しています。ディープラーニングは数式などがあって難易度が高く感じる方にも最適な一冊です。

この本がどの学習段階で役立つかは、 関連する ロードマップ から確認できます。

質問に答えるだけで、
あなたに合う専門書が見つかる

IT・デザイン・士業・医療・経理・教育・研究 ほか、あらゆる分野の専門書と 「読む順序」(学習ロードマップ)を収録。何を選べばいいか分からなくても、 いくつかの質問に答えるだけでたどり着けます。