本書系統介紹對抗樣本的基本原理,從相關的背景知識開始,包含搭建學習對抗樣本的軟硬體環境、常用工具,帶領讀者快速上手實踐。本書作者在安全領域有多年實踐經驗,對業界常見的方法做了系統的歸納總結,包含大量案例,深入淺出,實踐性強。
主要內容包括:
對抗樣本相關的深度學習背景知識,如梯度、最佳化器、反向傳遞等。
如何搭建學習對抗樣本的軟硬體環境。
對抗樣本領域的一些常見圖像處理技巧。
常見的白盒攻擊算法與黑盒攻擊算法。
對抗樣本在目標檢測領域的套用。
對抗樣本的常見加固算法。
常見的對抗樣本工具以及如何搭建NIPS對抗樣本競賽環境。
如何站在巨人的肩膀上,快速生成自己的對抗樣本,進行攻防對抗
基本介紹
- 書名:AI安全之對抗樣本入門
- 作者:兜哥
- 類別:人工智慧
- 出版社: 機械工業出版社
- 出版時間:2019年6月1日
- 頁數:300 頁
- ISBN:9787111626824
內容簡介,圖書目錄,作者簡介,
內容簡介
第1章介紹了深度學習的基礎知識,重點介紹了與對抗樣本相關的梯度、最佳化器、反向傳遞等知識點。
第2章介紹了如何搭建學習對抗樣本的軟硬體環境,雖然GPU不是必需的,但是使用GPU可以更加快速地驗證你的想法。
第3章概括介紹了常見的深度學習框架,從TensorFlow、Keras、PyTorch到MXNet。
第4章介紹了圖像處理領域的基礎知識,這部分知識對於理解對抗樣本領域的一些常見圖像處理技巧非常有幫助。
第5章介紹了常見的白盒攻擊算法,從基礎的FGSM、DeepFool到經典的JSMA和CW。
第6章介紹了常見的黑盒攻擊算法。
第7章介紹了對抗樣本在目標識別領域的套用。
第8章介紹了對抗樣本的常見抵禦算法,與對抗樣本一樣,抵禦對抗樣本的技術也非常有趣。
第9章介紹了常見的對抗樣本工具以及如何搭建NIPS 2017對抗防禦環境和輕量級攻防對抗環境robust-ml,通過這章讀者可以了解如何站在巨人的肩膀上,快速生成自己的對抗樣本,進行攻防對抗。
圖書目錄
序一
序二
自序
前言
第1章 深度學習基礎知識 1
1.1 深度學習的基本過程及相關概念 1
1.1.1 數據預處理 1
1.1.2 定義網路結構 2
1.1.3 定義損失函式 6
1.1.4 反向傳遞與最佳化器 7
1.1.5 範數 12
1.2 傳統的圖像分類算法 13
1.3 基於CNN的圖像分類 14
1.3.1 局部連線 14
1.3.2 參數共享 15
1.3.3 池化 17
1.3.4 典型的CNN結構 18
1.3.5 AlexNet的結構 19
1.3.6 VGG的結構 19
1.3.7 ResNet50 20
1.3.8 InceptionV3 20
1.3.9 可視化CNN 20
1.4 常見性能衡量指標 30
1.4.1 測試數據 30
1.4.2 混淆矩陣 31
1.4.3 準確率與召回率 31
1.4.4 準確度與F1-Score 32
1.4.5 ROC與AUC 33
1.5 集成學習 34
1.5.1 Boosting算法 35
1.5.2 Bagging算法 37
1.6 本章小結 39
第2章 打造對抗樣本工具箱 40
2.1 Anaconda 41
2.2 APT更新源 45
2.3 Python更新源 45
2.4 Jupyter notebook 45
2.5 TensorFlow 49
2.6 Keras 50
2.7 PyTorch 51
2.8 PaddlePaddle 52
2.9 AdvBox 52
2.10 GPU伺服器 52
2.11 本章小結 55
第3章 常見深度學習平台簡介 56
3.1 張量與計算圖 56
3.2 TensorFlow 58
3.3 Keras 62
3.4 PyTorch 64
3.5 MXNet 67
3.6 使用預訓練模型 70
3.7 本章小結 76
第4章 圖像處理基礎知識 77
4.1 圖像格式 77
4.1.1 通道數與像素深度 77
4.1.2 BMP格式 80
4.1.3 JPEG格式 81
4.1.4 GIF格式 81
4.1.5 PNG格式 81
4.2 圖像轉換 81
4.2.1 仿射變換 81
4.2.2 圖像縮放 83
4.2.3 圖像旋轉 85
4.2.4 圖像平移 85
4.2.5 圖像剪下 86
4.2.6 圖像翻轉 87
4.2.7 亮度與對比度 88
4.3 圖像去噪 89
4.3.1 高斯噪聲和椒鹽噪聲 90
4.3.2 中值濾波 91
4.3.3 均值濾波 93
4.3.4 高斯濾波 93
4.3.5 高斯雙邊濾波 94
4.4 本章小結 96
第5章 白盒攻擊算法 97
5.1 對抗樣本的基本原理 97
5.2 基於最佳化的對抗樣本生成算法 100
5.2.1 使用PyTorch生成對抗樣本 102
5.2.5 使用TensorFlow生成對抗樣本 106
5.3 基於梯度的對抗樣本生成算法 109
5.4 FGM/FGSM算法 110
5.4.1 FGM/FGSM基本原理 110
5.4.2 使用PyTorch實現FGM 111
5.4.3 使用TensorFlow實現FGM 112
5.5 DeepFool算法 115
5.5.1 DeepFool基本原理 115
5.5.2 使用PyTorch實現DeepFool 117
5.5.3 使用TensorFlow實現DeepFool 122
5.6 JSMA算法 124
5.6.1 JSMA基本原理 124
5.6.2 使用PyTorch實現JSMA 126
作者簡介
兜哥,百度安全實驗室AI模型安全負責人,具有10餘年安全從業經歷,曾任百度基礎架構安全負責人、Web安全產品線負責人。主要研究方向為對抗樣本、生成對抗網路。著有AI安全暢銷書籍《Web安全之機器學習入門》《Web安全之深度學習實戰》《Web安全之強化學習與GAN》。著名開源AI安全工具箱AdvBox的作者,FreeBuf、雷鋒網、安全客特邀專欄作家。