好 那 上 週 呢 我 們 是 講 到 這 個 地 方 好 那 到 目 前 為 止 啊 我 們 在 上 課 講 的 內 容 其 實 都 是 white box 的 attack 什 麼 意 思 呢 也 就 是 說 我 們 要 計 算 這 個 gradient 我 們 做 fgsm 要 計 算 這 個 gradient 嘛 在 計 算 gradient 的 時 候 我 們 需 要 知 道 模 型 的 參 數 知 道 模 型 的 參 數 才 有 辦 法 計 算 這 個 gradient 才 有 辦 法 去 在 image 上 加 上 noise 那 像 這 種 知 道 模 型 參 數 的 攻 擊 啊 叫 做 white box 的 attack 那 中 文 有 時 候 就 翻 譯 成 白 箱 攻 擊 那 白 箱 就 是 一 個 動 畫 了 知 道 嗎 這 個 是 白 箱 沒 有 很 重 要 沒 有 很 重 要 不 用 管 我 那 但 是 你 可 能 會 覺 得 說 哇 這 個 攻 擊 需 要 知 道 network 的 參 數 看 來 這 個 攻 擊 呢 不 是 很 危 險 為 什 麼 呢 因 為 一 般 線 上 的 服 務 你 當 然 要 攻 擊 一 定 是 去 攻 擊 別 人 的 模 型 嘛 某 一 個 線 上 的 服 務 嘛 線 上 的 服 務 它 的 模 型 你 又 不 知 道 參 數 是 什 麼 所 以 也 許 要 攻 擊 一 個 線 上 的 服 務 並 沒 有 那 麼 容 易 所 以 其 實 如 果 我 們 要 保 護 我 們 的 模 型 不 被 別 人 攻 擊 也 許 我 們 只 要 記 住 不 要 隨 便 把 自 己 的 模 型 放 到 網 路 上 公 開 讓 大 家 取 用 也 許 我 們 的 模 型 就 會 是 安 全 的 但 真 的 是 這 樣 嗎 不 知 道 模 型 參 數 下 的 攻 擊 啊 叫 做 black box attack 也 就 是 黑 箱 攻 擊 黑 箱 攻 擊 是 有 可 能 的 嗎 黑 箱 攻 擊 是 有 可 能 怎 麼 做 黑 箱 攻 擊 呢 我 們 到 目 前 為 止 講 說 我 們 在 做 攻 擊 的 時 候 都 需 要 計 算 gradient 計 算 gradient 需 要 知 道 model 的 參 數 那 黑 箱 攻 擊 是 怎 麼 做 到 的 呢 黑 箱 攻 擊 是 這 樣 子 做 的 那 我 們 的 作 業 剛 才 助 教 也 有 講 過 就 是 黑 箱 攻 擊 所 以 網 路 上 有 一 個 模 型 這 個 模 型 你 是 沒 有 辦 法 拿 到 的 你 根 本 不 知 道 它 的 參 數 是 什 麼 這 個 其 實 就 是 judgeboi 上 面 的 那 一 個 模 型 你 並 不 知 道 助 教 使 用 了 哪 一 個 模 型 你 並 不 知 道 它 的 參 數 是 什 麼 那 怎 麼 辦 呢 假 設 你 知 道 這 個 network 是 用 什 麼 樣 的 訓 練 資 料 訓 練 出 來 的 話 那 你 可 以 去 訓 練 一 個 proxy 的 network 也 就 是 你 訓 練 一 個 network 讓 這 個 network 來 模 仿 我 們 要 攻 擊 的 對 象 那 我 們 要 攻 擊 的 對 象 跟 proxy 的 network 如 果 都 是 用 同 樣 的 訓 練 資 料 訓 練 出 來 的 話 也 許 它 們 就 會 有 一 定 程 度 的 相 似 度 如 果 proxy network 跟 要 被 攻 擊 的 對 象 有 同 樣 的 有 一 定 程 度 的 相 似 程 度 的 話 那 我 們 只 要 對 proxy 的 network 進 行 攻 擊 也 許 這 個 有 被 攻 擊 過 的 image 拿 去 丟 到 我 們 不 知 道 參 數 的 network 上 攻 擊 也 會 成 功 那 這 個 其 實 就 是 在 我 們 作 業 裡 面 做 的 事 情 所 以 在 作 業 裡 面 做 的 事 情 是 你 從 某 一 個 地 方 找 來 某 一 個 已 經 訓 練 好 的 影 像 辨 識 的 模 型 這 個 是 你 的 proxy 的 network 你 自 己 在 自 己 的 機 器 上 你 在 colab 上 攻 擊 這 個 自 己 的 network 然 後 丟 到 judgeboi 上 面 看 看 這 個 攻 擊 能 否 成 功 那 有 人 可 能 會 問 說 那 如 果 我 根 本 就 沒 有 訓 練 資 料 我 根 本 不 知 道 現 在 要 攻 擊 的 對 象 是 用 什 麼 樣 的 訓 練 資 料 的 話 怎 麼 辦 呢 在 作 業 裡 面 我 們 知 道 是 cifar-10 我 們 要 被 攻 擊 的 對 象 是 用 cifar-10 訓 練 出 來 的 所 以 你 只 要 用 一 個 cifar-10 訓 練 出 來 的 模 型 你 可 能 就 可 以 攻 擊 成 功 但 是 假 設 我 們 完 全 沒 有 訓 練 資 料 的 話 怎 麼 辦 呢 這 也 不 是 完 全 無 解 的 怎 麼 解 呢 就 是 你 就 假 設 這 是 你 要 攻 擊 的 影 像 辨 識 模 型 你 就 把 一 堆 圖 片 丟 進 去 然 後 看 看 它 會 輸 出 什 麼 線 上 的 service 就 算 是 它 不 會 告 訴 你 network 的 參 數 你 總 是 可 以 丟 東 西 進 去 看 它 輸 出 什 麼 嘛 再 把 輸 入 輸 出 的 成 對 資 料 拿 去 訓 練 一 個 模 型 你 就 有 可 能 可 以 訓 練 出 一 個 類 似 的 模 型 當 做 proxy network 進 行 攻 擊 好 那 這 種 黑 箱 攻 擊 容 易 成 功 嗎 蠻 容 易 成 功 的 你 在 作 業 裡 面 就 可 以 體 會 一 下 這 個 黑 箱 攻 擊 其 實 非 常 容 易 成 功 那 這 個 是 文 獻 上 的 結 果 那 這 邊 有 5 個 不 同 的 network resnet 152 層 resnet 101 層 resnet-50 vgg-16 還 有 googlenet 總 共 有 5 個 network 好 那 這 個 column 啊 代 表 要 被 攻 擊 的 network 總 共 有 5 個 要 被 攻 擊 的 network 那 這 個 row 啊 這 代 表 說 我 們 有 5 個 proxy 的 network 那 如 果 是 對 角 線 的 地 方 代 表 說 proxy 的 network 跟 要 被 攻 擊 的 network 它 們 是 一 模 一 樣 的 所 以 這 個 情 況 就 不 是 黑 箱 攻 擊 對 角 線 的 地 方 其 實 是 白 箱 攻 擊 所 以 如 果 你 拿 resnet-152 當 做 proxy network 攻 擊 的 時 候 其 實 是 攻 擊 一 個 一 模 一 樣 的 network 太 容 易 成 功 了 這 邊 這 個 數 字 是 正 確 率 是 要 被 攻 擊 的 那 個 模 型 的 正 確 率 所 以 這 個 值 呢 是 越 低 越 好 越 低 的 正 確 率 代 表 你 的 攻 擊 越 成 功 你 現 在 是 站 在 攻 擊 方 的 所 以 你 不 是 負 責 你 不 是 訓 練 模 型 方 的 你 是 攻 擊 方 的 所 以 這 個 正 確 率 越 低 代 表 你 的 攻 擊 是 越 成 功 的 你 發 現 對 角 線 也 就 是 白 箱 攻 擊 的 部 分 white box attack 的 部 分 這 個 攻 擊 的 成 功 率 是 百 分 之 百 也 就 是 模 型 的 正 確 率 是 0 % 你 的 攻 擊 總 是 會 成 功 但 如 果 在 非 對 角 線 的 地 方 也 就 是 黑 箱 攻 擊 舉 例 來 說 你 用 resnet-101 當 proxy network 去 攻 擊 resnet-152 得 到 的 正 確 率 是 19 % 或 者 是 你 拿 resnet-152 當 做 是 proxy network 去 攻 擊 resnet-50 你 得 到 的 正 確 率 是 18 % 那 這 個 非 對 角 線 的 地 方 是 黑 箱 攻 擊 你 會 發 現 說 黑 箱 攻 擊 模 型 的 正 確 率 是 比 白 箱 攻 擊 還 要 高 的 但 是 其 實 這 些 正 確 率 也 都 非 常 低 都 是 低 於 50 % 所 以 顯 然 黑 箱 攻 擊 也 有 一 定 的 成 功 的 可 能 性 不 過 實 際 上 黑 箱 攻 擊 是 在 non-targeted attack 的 時 候 比 較 容 易 成 功 啦 targeted attack 就 不 太 容 易 成 功 就 是 假 設 你 用 proxy network 說 你 要 把 一 個 狗 變 成 一 個 兔 子 那 如 果 你 把 attacked image 拿 到 那 個 你 要 攻 擊 的 對 象 上 面 的 話 你 可 能 可 以 讓 它 辨 識 錯 誤 你 可 能 會 讓 機 器 辨 識 出 不 是 狗 但 你 要 指 定 它 一 定 要 變 成 兔 子 就 比 較 難 所 以 在 黑 箱 攻 擊 的 時 候 這 個 targeted attack 比 較 難 成 功 但 non-targeted attack 還 是 非 常 容 易 成 功 的 那 如 果 你 要 增 加 這 個 black box attack 的 成 功 率 怎 麼 辦 呢 剛 才 助 教 也 講 了 一 個 可 以 過 strong baseline 的 tip 就 是 ensemble 的 network 那 這 個 ensemble 的 network 要 怎 麼 做 呢 這 邊 的 這 個 表 格 的 看 法 是 這 個 樣 子 的 這 個 column 代 表 要 被 攻 擊 的 network 那 每 一 個 row 是 什 麼 意 思 呢 你 會 發 現 這 個 每 一 個 模 型 的 名 字 前 面 放 了 一 個 減 號 它 是 什 麼 意 思 呢 那 就 代 表 說 我 們 現 在 把 這 5 個 模 型 都 集 合 起 來 但 拿 掉 resnet-152 我 們 要 找 一 個 攻 擊 的 image 在 resnet-152 以 外 的 模 型 都 是 成 功 的 我 們 假 設 我 們 手 上 沒 有 resnet-152 但 是 有 resnet-101 resnet-50 vgg-16 跟 googlenet 找 一 張 image 攻 擊 這 4 個 network 都 是 成 功 的 然 後 看 看 在 152 上 會 發 生 什 麼 事 所 以 其 實 今 天 在 這 個 圖 啊 這 個 下 面 這 個 表 格 跟 上 面 這 個 表 格 的 看 法 是 不 一 樣 的 啦 如 果 是 下 面 這 個 表 格 的 話 非 對 角 線 的 地 方 是 白 箱 攻 擊 非 對 角 線 的 地 方 有 沒 有 發 現 模 型 正 確 率 都 變 成 0 % 就 像 我 剛 才 說 的 白 箱 攻 擊 非 常 容 易 成 功 對 角 線 的 地 方 才 是 黑 箱 攻 擊 所 以 這 個 地 方 是 我 們 要 攻 擊 resnet-152 但 我 們 沒 有 用 resnet-152 這 邊 是 要 攻 擊 resnet-101 但 沒 有 用 resnet-101 但 是 用 了 另 外 4 個 network 以 此 類 推 所 以 對 角 線 的 地 方 才 是 黑 箱 攻 擊 那 你 發 現 說 當 你 有 做 ensemble 的 時 候 當 你 同 時 用 多 個 network 的 時 候 當 你 找 一 個 attack image 可 以 成 功 騙 過 多 個 network 的 時 候 騙 過 一 個 你 不 知 道 參 數 的 黑 箱 的 network 也 非 常 容 易 成 功 你 看 對 角 線 上 的 正 確 率 基 本 上 都 是 10 % 以 下 好 那 這 個 是 黑 箱 攻 擊 好 你 會 發 現 說 這 個 攻 擊 這 件 事 啊 非 常 容 易 成 功 到 底 是 怎 麼 回 事 呢 為 什 麼 連 黑 箱 攻 擊 你 在 a network 上 攻 擊 在 b network 上 都 會 成 功 事 實 上 這 仍 然 是 一 個 可 以 說 是 未 解 之 謎 啦 還 有 很 多 可 以 研 究 的 空 間 那 以 下 就 是 講 一 個 很 多 人 相 信 的 結 論 這 邊 有 一 個 實 驗 是 這 個 樣 子 的 這 個 圖 上 面 的 原 點 代 表 一 張 小 丑 魚 的 圖 片 就 是 這 隻 就 是 尼 莫 就 是 這 個 小 丑 魚 就 是 尼 莫 就 是 尼 莫 的 圖 片 在 這 邊 然 後 這 個 橫 軸 跟 縱 軸 分 別 是 什 麼 呢 分 別 是 把 這 張 圖 片 往 兩 個 不 同 的 方 向 移 動 就 是 一 張 圖 片 是 一 個 非 常 高 維 的 向 量 把 這 個 高 維 的 向 量 往 某 一 個 方 向 移 動 是 橫 軸 往 另 外 一 個 方 向 移 動 是 縱 軸 那 這 邊 的 橫 軸 跟 縱 軸 分 別 是 什 麼 樣 的 方 向 呢 這 邊 橫 軸 啊 是 在 vgg-16 上 面 可 以 攻 擊 成 功 的 方 向 而 縱 軸 就 是 一 個 隨 機 的 方 向 那 你 會 發 現 說 呢 雖 然 這 個 橫 軸 啊 是 讓 vgg-16 可 以 攻 擊 成 功 但 是 在 其 他 的 network 上 面 resnet-50 resnet-101 resnet-152 googlenet 上 面 你 看 這 個 圖 我 後 來 發 現 它 們 有 很 大 的 類 似 之 處 它 們 中 間 這 個 深 藍 色 的 區 域 都 還 蠻 相 近 的 這 個 深 藍 色 的 區 域 是 什 麼 呢 這 個 深 藍 色 的 區 域 啊 這 個 深 藍 色 的 區 域 是 會 被 辨 識 成 小 丑 魚 的 圖 片 的 範 圍 也 就 是 說 如 果 你 把 這 個 小 丑 魚 的 圖 片 加 上 一 個 noise 你 把 這 個 高 維 的 向 量 在 高 維 的 空 間 中 往 這 個 方 向 移 動 基 本 上 network 還 是 會 覺 得 它 是 小 丑 魚 的 圖 片 不 管 對 每 一 個 network 來 說 只 要 往 這 個 方 向 移 動 它 是 一 個 隨 機 的 方 向 基 本 上 都 會 被 認 為 是 小 丑 魚 但 是 如 果 你 是 往 可 以 攻 擊 成 功 vgg-16 的 方 向 來 移 動 的 話 那 基 本 上 其 他 network 好 像 也 是 有 蠻 高 的 機 率 可 以 攻 擊 成 功 的 你 發 現 這 個 小 丑 魚 這 一 個 類 別 它 在 這 個 攻 擊 的 方 向 上 它 就 是 特 別 窄 只 要 你 把 這 個 高 維 的 向 量 這 張 圖 片 稍 微 移 動 一 下 它 就 掉 出 會 被 辨 識 成 小 丑 魚 的 區 域 範 圍 之 外 了 它 就 會 掉 出 會 被 辨 識 成 小 丑 魚 的 區 域 範 圍 之 外 會 被 辨 識 成 其 他 的 類 別 對 每 一 個 network 來 說 看 起 來 這 個 攻 擊 的 方 向 對 不 同 的 network 影 響 都 是 蠻 類 似 的 那 所 以 啊 有 不 止 一 篇 論 文 它 們 對 於 攻 擊 這 件 事 它 們 的 認 知 是 這 個 樣 子 的 你 從 這 篇 文 章 的 開 頭 就 可 以 看 出 來 它 說 這 個 adversarial example are not bugs, they are features. 所 以 一 個 有 一 群 人 是 主 張 說 呢 這 個 攻 擊 這 件 事 情 會 成 功 它 最 主 要 的 問 題 來 自 於 你 的 data 而 不 是 來 自 於 模 型 不 同 的 模 型 訓 練 出 來 的 結 果 看 起 來 是 還 蠻 相 近 的 而 攻 擊 會 成 功 這 件 事 情 不 是 只 有 對 deep learning 有 一 樣 的 問 題 對 linear 的 network 對 svm 也 都 有 類 似 的 問 題 所 以 也 許 攻 擊 會 這 麼 容 易 成 功 這 件 事 情 變 成 這 個 主 因 未 必 出 現 在 模 型 上 面 可 能 是 出 現 在 資 料 上 為 什 麼 machine 會 把 這 些 非 常 小 的 雜 訊 誤 判 為 另 外 一 個 物 件 那 可 能 是 因 為 在 資 料 上 面 本 身 它 的 特 徵 就 是 這 樣 在 有 限 的 資 料 上 機 器 學 到 的 就 是 這 樣 子 的 結 論 所 以 也 許 adversarial attack 會 成 功 的 原 因 是 來 自 於 資 料 上 的 問 題 當 我 們 有 足 夠 的 資 料 也 許 就 有 機 會 避 免 adversarial attack 不 過 這 個 其 實 只 是 這 個 某 一 個 就 是 它 並 不 是 所 有 人 都 同 意 這 樣 啊 同 意 這 個 觀 點 啊 這 只 是 某 一 群 人 的 想 法 而 已 也 許 過 幾 年 以 後 你 再 來 修 同 一 堂 課 我 講 的 結 論 又 會 不 太 一 樣 那 這 邊 只 是 告 訴 你 說 有 一 群 人 他 們 的 認 知 的 觀 點 是 認 為 data 是 造 成 attack 會 成 功 的 元 凶 好 那 attack 的 signal 我 們 希 望 它 越 小 越 好 到 底 可 以 小 到 什 麼 樣 的 程 度 呢 那 在 文 獻 上 有 人 成 功 地 做 出 one pixel attack 所 謂 one pixel attack 的 意 思 就 是 說 你 只 能 動 圖 片 裡 面 的 一 個 pixel 而 已 舉 例 來 說 在 這 張 圖 片 裡 面 他 們 動 了 一 個 pixel 他 會 特 別 把 pixel 有 改 變 的 地 方 把 它 框 起 來 把 它 框 起 來 把 它 框 起 來 把 它 框 起 來 希 望 說 動 了 圖 片 中 的 一 個 pixel 影 像 辨 識 系 統 的 判 斷 就 必 須 要 有 錯 誤 不 過 你 其 實 如 果 從 這 個 圖 片 的 這 個 在 這 個 圖 片 上 這 個 黑 色 的 部 分 啊 代 表 的 是 正 確 的 攻 擊 前 的 這 個 影 像 辨 識 的 結 果 藍 色 代 表 是 攻 擊 後 的 影 像 辨 識 結 果 那 你 會 發 現 說 one pixel attack 看 起 來 還 是 有 一 些 侷 限 的 啦 它 的 攻 擊 並 沒 有 說 真 的 非 常 非 常 成 功 怎 麼 說 呢 舉 例 來 說 這 是 一 個 teapot 它 是 一 個 茶 壺 做 one pixel attack 在 這 個 地 方 某 一 個 pixel 的 顏 色 被 改 變 了 機 器 呢 把 teapot 變 成 joystick joystick 是 什 麼 呢 joystick 是 搖 桿 那 你 會 發 現 說 欸 這 個 錯 其 實 還 錯 的 是 有 點 道 理 不 像 我 們 一 開 始 舉 的 什 麼 貓 變 成 海 星 貓 變 成 鍵 盤 那 麼 荒 謬 這 個 錯 還 有 點 道 理 所 以 感 覺 這 個 攻 擊 呢 並 沒 有 非 常 地 powerful 這 個 是 one pixel attack 那 其 實 還 有 更 狂 的 攻 擊 方 式 叫 universal adversarial attack universal 的 attack 是 什 麼 意 思 呢 我 們 在 到 目 前 為 止 每 一 張 圖 片 你 的 這 個 都 是 客 製 化 的 你 有 200 作 業 裡 面 有 200 張 圖 片 200 張 圖 片 你 會 分 別 找 出 不 同 的 attack signal 那 有 人 就 問 說 有 沒 有 可 能 用 一 個 signal 就 成 功 攻 擊 所 有 的 圖 片 呢 因 為 如 果 你 說 每 一 張 圖 片 都 要 有 不 同 的 signal 那 如 果 你 今 天 要 hack 某 一 個 監 視 系 統 你 要 讓 某 一 個 監 視 系 統 它 的 辨 識 是 錯 的 那 你 可 能 需 要 真 的 hack 進 去 那 個 監 視 系 統 然 後 每 次 進 來 不 同 的 影 像 的 時 候 你 都 要 客 製 化 找 出 一 個 attack signal 那 這 個 運 算 量 可 能 會 非 常 地 大 如 果 universal attack 可 以 成 功 的 話 你 其 實 只 要 把 這 個 訊 號 貼 在 這 個 監 視 器 的 攝 像 頭 上 那 如 果 這 個 訊 號 這 個 attacked signal 非 常 強 只 要 加 上 這 個 attacked signal 不 管 什 麼 樣 的 影 像 都 可 以 攻 擊 成 功 的 話 你 只 要 把 這 個 signal 直 接 放 在 攝 像 頭 上 貼 在 攝 像 頭 上 那 這 個 攝 像 頭 它 就 直 接 壞 掉 了 不 管 看 到 什 麼 東 西 它 都 會 辨 識 錯 誤 那 universal attack 有 可 能 成 功 嗎 你 可 以 看 看 這 篇 論 文 universal attack 是 有 可 能 成 功 的 在 這 篇 論 文 裡 面 他 們 找 了 一 個 noise 找 了 一 個 attacked signal 這 個 attacked signal 加 在 非 常 多 不 同 的 圖 片 上 都 可 以 讓 影 像 辨 識 系 統 辨 識 錯 誤 好 到 目 前 為 止 啊 我 們 舉 的 例 子 通 通 都 是 影 像 的 例 子 那 有 人 可 能 會 覺 得 說 會 不 會 是 影 像 才 有 這 種 會 被 攻 擊 的 問 題 會 不 會 其 他 的 類 型 的 資 料 就 比 較 不 會 有 這 種 問 題 呢 其 實 不 是 其 他 類 型 的 資 料 也 有 類 似 的 問 題 以 語 音 為 例 大 家 都 知 道 說 現 在 會 做 defect 有 人 會 模 擬 出 這 個 用 語 音 合 成 的 技 術 或 用 語 音 轉 換 的 技 術 去 模 擬 出 某 些 人 的 聲 音 藉 以 達 到 詐 騙 的 效 果 那 為 了 偵 測 這 種 defect 的 狀 況 於 是 有 另 外 一 系 列 的 研 究 在 研 究 說 怎 麼 偵 測 一 段 聲 音 是 不 是 被 合 成 出 來 的 今 天 雖 然 語 音 合 成 的 系 統 往 往 都 可 以 合 出 以 假 亂 真 的 聲 音 但 是 這 些 以 假 亂 真 的 聲 音 還 是 有 非 常 大 的 可 能 性 可 以 用 機 器 抓 出 來 的 這 些 合 成 出 來 的 訊 號 它 還 是 有 固 定 的 pattern 跟 真 正 的 聲 音 訊 號 還 是 有 一 定 程 度 的 差 異 人 耳 聽 不 出 來 但 機 器 可 以 抓 出 來 但 是 這 些 可 以 偵 測 語 音 合 成 的 系 統 可 以 偵 測 一 段 聲 音 訊 號 是 不 是 合 成 的 系 統 也 會 被 輕 易 的 攻 擊 那 以 下 是 真 實 的 例 子 然 後 先 放 一 段 合 成 的 聲 音 這 是 一 段 合 成 的 聲 音 任 何 人 都 聽 得 出 這 是 一 段 合 成 的 聲 音 這 段 聲 音 是 故 意 合 壞 的 如 果 今 天 語 音 合 成 的 系 統 都 可 以 合 出 人 聽 不 出 來 是 真 是 假 以 假 亂 真 的 聲 音 所 以 剛 才 那 一 段 顯 然 合 得 很 差 所 以 你 用 這 個 偵 測 是 否 是 語 音 合 成 的 系 統 它 可 以 正 確 地 告 訴 你 說 這 段 聲 音 訊 號 顯 然 是 合 成 的 好 但 是 如 果 我 們 在 剛 才 那 段 聲 音 訊 號 裡 面 加 入 一 點 點 雜 訊 它 聽 起 來 是 這 樣 你 可 能 問 說 這 個 新 的 聲 音 加 入 雜 訊 的 聲 音 跟 原 來 有 什 麼 不 同 呢 人 耳 完 全 聽 不 出 它 之 間 的 差 異 那 個 雜 訊 非 常 非 常 地 小 沒 有 任 何 人 可 以 聽 出 這 兩 段 聲 音 訊 號 有 什 麼 樣 的 差 異 而 這 段 聲 音 訊 號 加 上 這 個 微 小 的 雜 訊 以 後 它 聽 起 來 也 沒 有 合 成 得 更 好 但 是 同 一 個 偵 測 合 成 的 系 統 會 覺 得 剛 才 那 段 聲 音 是 真 實 的 聲 音 而 不 是 合 成 的 聲 音 好 剛 才 舉 的 是 語 音 的 例 子 那 文 字 上 也 會 被 attack 嗎 文 字 也 會 被 attack 那 我 們 在 作 業 裡 面 有 一 個 作 業 是 做 question answering 就 是 給 機 器 讀 一 篇 文 章 問 它 一 個 問 題 看 看 它 可 不 可 以 給 你 正 確 的 答 案 那 有 一 篇 論 文 就 發 現 說 它 發 現 在 所 有 文 章 末 尾 貼 上 why how because to kill american people 接 下 來 不 管 你 問 它 什 麼 問 題 它 的 答 案 都 是 to kill american people 所 以 你 可 以 在 文 字 上 進 行 adversarial attack 直 接 讓 這 個 qa 的 系 統 怎 麼 回 答 都 是 to kill american people 所 以 不 管 是 什 麼 樣 的 modality 今 天 都 有 可 能 被 攻 擊 成 功 好 那 到 目 前 為 止 啊 我 們 的 攻 擊 都 發 生 在 虛 擬 的 世 界 中 都 發 生 在 數 位 的 世 界 中 你 是 把 一 張 影 像 讀 到 電 腦 裡 面 以 後 你 才 把 雜 訊 加 上 去 而 攻 擊 這 件 事 情 有 沒 有 可 能 發 生 在 真 實 的 世 界 中 呢 有 沒 有 可 能 發 生 在 三 次 元 的 世 界 中 呢 舉 例 來 說 現 在 有 很 多 人 臉 辨 識 系 統 那 如 果 你 是 要 在 數 位 的 世 界 發 動 攻 擊 那 你 得 hack 進 那 個 人 臉 辨 識 的 系 統 說 有 一 個 人 臉 進 來 你 自 己 再 去 加 一 個 雜 訊 你 才 能 夠 騙 過 那 個 人 臉 辨 識 的 系 統 但 是 這 個 攻 擊 這 個 雜 訊 有 沒 有 可 能 加 在 三 維 的 世 界 中 呢 有 沒 有 可 能 加 在 三 次 元 的 世 界 中 呢 有 沒 有 可 能 有 人 在 臉 上 畫 某 一 個 妝 就 把 人 臉 辨 識 的 系 統 騙 過 去 呢 這 件 事 情 是 有 可 能 的 不 過 化 妝 比 較 困 難 因 為 你 知 道 化 妝 你 一 流 汗 可 能 就 花 掉 了 所 以 化 妝 也 許 不 是 一 個 特 別 好 的 方 法 有 一 人 發 現 說 可 以 製 造 神 奇 的 眼 鏡 戴 上 神 奇 的 眼 鏡 以 後 你 就 可 以 去 欺 騙 人 臉 辨 識 的 系 統 那 這 個 眼 鏡 看 起 來 沒 有 什 麼 特 別 的 它 就 是 花 花 綠 綠 的 看 起 來 特 別 潮 但 是 左 邊 這 個 男 的 他 戴 上 這 副 眼 鏡 以 後 人 臉 辨 識 系 統 就 會 覺 得 他 是 右 邊 這 一 個 知 名 藝 人 那 我 其 實 不 知 道 忘 記 這 個 知 名 藝 人 是 誰 了 沒 有 關 係 這 不 重 要 我 對 三 次 元 世 界 其 實 也 沒 有 太 熟 悉 我 也 不 知 道 他 是 誰 好 但 是 如 果 你 仔 細 去 讀 這 篇 文 獻 的 話 你 會 發 現 說 它 們 考 慮 了 很 多 物 理 世 界 才 會 有 的 問 題 第 一 個 是 在 物 理 的 世 界 我 們 在 觀 看 一 個 東 西 的 時 候 可 以 從 多 個 角 度 去 看 過 去 有 人 會 覺 得 說 adversarial attack 也 許 不 是 那 麼 危 險 為 什 麼 因 為 影 像 就 是 一 張 然 後 你 加 入 某 一 個 特 定 的 雜 訊 才 能 夠 讓 這 張 影 像 被 辨 識 錯 誤 但 在 真 實 的 世 界 中 你 可 以 從 多 個 角 度 去 看 同 一 個 物 體 也 許 你 的 雜 訊 騙 過 了 某 一 個 角 度 但 沒 有 辦 法 在 所 有 的 角 度 都 騙 過 影 像 辨 識 的 系 統 但 這 篇 論 文 它 其 實 是 有 考 慮 這 個 觀 點 的 所 以 並 不 是 從 某 一 個 角 度 看 這 個 人 他 才 會 被 辨 識 成 右 邊 這 個 知 名 藝 人 從 所 有 的 角 度 從 各 式 各 樣 的 角 度 去 看 這 個 有 戴 眼 鏡 的 人 他 都 會 被 辨 識 成 右 邊 這 個 人 不 過 這 件 事 其 實 你 現 在 也 不 會 太 驚 訝 因 為 我 剛 才 有 告 訴 你 說 universal attack 是 有 可 能 成 功 的 所 以 你 有 可 能 找 得 到 某 一 種 雜 訊 是 這 個 人 戴 上 這 個 眼 鏡 以 後 不 管 從 什 麼 角 度 看 這 個 人 這 個 攻 擊 都 是 成 功 的 好 所 以 這 是 第 一 個 考 慮 物 理 世 界 的 部 分 那 第 二 個 考 慮 物 理 世 界 特 性 在 這 篇 論 文 裡 面 有 做 的 事 情 是 它 有 考 慮 到 說 今 天 你 的 攝 像 頭 它 的 解 析 度 還 是 有 限 的 所 以 如 果 你 今 天 在 這 個 眼 鏡 上 面 加 的 那 個 訊 號 非 常 地 小 比 如 說 你 只 加 一 個 非 常 小 的 斑 點 那 有 可 能 你 的 攝 像 頭 根 本 沒 有 辦 法 看 到 或 者 是 如 果 你 的 相 鄰 的 pixel 有 非 常 大 的 顏 色 的 變 化 那 也 許 像 這 樣 子 的 狀 況 攝 像 頭 根 本 沒 有 辦 法 抓 到 所 以 它 有 把 今 天 攝 像 頭 的 解 析 度 攝 像 頭 本 身 解 析 度 的 能 力 的 極 限 也 把 它 考 慮 進 來 好 第 三 個 有 考 慮 的 事 情 是 到 底 這 個 眼 鏡 能 不 能 夠 真 的 被 做 出 來 的 問 題 他 們 有 考 慮 到 說 有 某 一 些 顏 色 你 可 能 在 電 腦 裡 面 跟 在 真 實 的 世 界 看 起 來 是 會 有 差 異 的 某 一 些 顏 色 也 許 你 要 真 的 把 它 實 現 在 物 理 的 世 界 真 的 把 它 印 出 來 它 的 顏 色 會 偏 掉 所 以 他 們 有 考 慮 到 說 今 天 在 印 製 這 個 眼 鏡 的 時 候 不 要 使 用 那 些 印 製 出 來 以 後 顏 色 會 偏 掉 的 顏 色 會 挑 選 一 些 印 出 來 以 後 不 會 偏 掉 的 顏 色 所 以 你 可 以 仔 細 去 看 一 下 這 篇 論 文 它 其 實 考 慮 了 很 多 真 實 世 界 在 從 這 個 三 維 的 空 間 中 從 三 維 的 世 界 中 攻 擊 數 位 的 世 界 的 時 候 會 需 要 面 對 的 真 實 問 題 好 不 是 只 有 人 臉 辨 識 可 以 攻 擊 成 功 我 們 知 道 說 未 來 會 有 很 多 自 駕 車 自 駕 車 會 需 要 做 車 牌 辨 識 所 以 當 然 也 有 人 對 車 牌 辨 識 系 統 進 行 攻 擊 所 以 有 論 文 告 訴 我 們 說 你 可 以 在 這 個 stop 的 sign 上 面 貼 一 些 貼 紙 貼 完 這 些 貼 紙 以 後 你 的 這 個 標 誌 的 辨 識 系 統 不 管 從 什 麼 角 度 遠 的 近 的 左 邊 右 邊 看 這 個 stop sign 它 都 會 變 成 是 速 限 45 公 里 它 都 變 成 不 是 停 下 來 而 是 另 外 一 個 交 通 號 誌 但 是 有 人 有 人 會 覺 得 說 也 許 貼 這 種 貼 紙 上 去 還 是 太 招 搖 了 你 隨 便 貼 貼 紙 在 路 牌 上 面 大 家 都 知 道 你 要 做 attack 啦 所 以 隔 天 可 能 就 被 清 掉 了 所 以 太 招 搖 了 所 以 有 人 製 造 了 一 種 比 較 不 招 搖 的 非 常 隱 密 的 攻 擊 方 式 他 直 接 把 速 限 35 的 3 拉 長 一 點 如 果 沒 有 告 訴 你 說 這 個 我 特 別 拉 長 你 可 能 覺 得 這 個 字 體 本 來 就 是 這 樣 但 是 當 他 把 這 個 3 這 個 特 別 拉 長 以 後 這 一 個 牌 子 對 於 一 個 這 個 標 誌 的 辨 識 系 統 來 說 它 就 變 成 速 限 85 這 個 是 美 國 一 個 那 個 軟 體 安 全 公 司 做 的 啦 他 們 有 放 一 個 demo 的 影 片 在 這 個 demo 的 影 片 裡 面 呢 就 是 有 人 開 著 那 個 特 斯 拉 的 汽 車 然 後 特 斯 拉 的 汽 車 會 做 那 個 號 誌 的 辨 識 然 後 這 邊 有 一 個 人 呢 舉 著 一 個 速 限 35 的 牌 子 但 這 個 牌 子 是 有 特 別 被 攻 擊 過 的 就 是 它 的 3 呢 稍 微 長 一 點 本 來 特 斯 拉 的 車 子 看 到 速 限 35 它 的 速 限 就 沒 有 辦 法 超 過 35 但 是 因 為 它 實 際 上 看 到 的 對 於 這 個 自 駕 車 來 說 它 看 到 的 牌 子 是 速 限 85 所 以 它 就 會 加 速 所 以 這 個 demo 是 這 樣 子 as we can see shivangi is holding up our adversarial 35 mile per hour speed limit sign with a small piece of black tape is the only modification we start the car moving forwards and the mobileye camera immediately incorrectly identifies as an 85 mile an hour speed limit sign now we engage traffic-aware cruise control and with our feet entirely off the gas and brake pedals the tesla begins to accelerate to 85 miles per hour we cut it short at approximately 50 miles per hour for safety reasons. 對 好 所 以 像 這 樣 的 攻 擊 在 物 理 世 界 也 是 有 可 能 成 功 的 那 攻 擊 其 實 還 有 很 多 多 樣 的 類 型 就 讓 你 見 識 一 下 人 類 的 惡 意 啊 還 有 一 種 攻 擊 呢 叫 做 adversarial reprogramming 什 麼 意 思 呢 它 把 原 來 的 影 像 辨 識 系 統 等 於 是 放 一 個 像 殭 屍 一 樣 的 東 西 去 寄 生 它 讓 它 做 它 本 來 不 想 做 的 事 情 大 家 知 道 說 舉 例 來 說 在 那 個 最 後 生 還 者 裡 面 啊 人 被 蟲 草 菌 寄 生 以 後 你 還 是 有 行 動 的 能 力 但 是 你 會 去 攻 擊 其 他 人 做 你 本 來 不 想 做 的 事 情 這 個 就 是 adversarial reprogramming 好 那 adversarial reprogramming 裡 面 在 右 下 角 這 篇 論 文 裡 面 他 是 怎 麼 做 的 呢 他 想 要 做 的 事 情 是 他 想 做 一 個 方 塊 的 辨 識 系 統 去 數 說 圖 片 裡 面 有 幾 個 方 塊 1 個 到 10 個 但 他 不 想 train 自 己 的 模 型 他 想 要 寄 生 在 某 一 個 已 有 的 又 train 在 imagenet 的 模 型 上 面 那 imagenet 的 模 型 就 它 圖 片 然 後 辨 識 說 裡 面 有 什 麼 樣 的 東 西 什 麼 樣 的 動 物 什 麼 樣 的 物 品 等 等 然 後 呢 他 希 望 說 呢 他 輸 入 一 張 圖 片 這 個 圖 片 裡 面 如 果 有 兩 個 方 塊 的 時 候 imagenet 那 個 模 型 就 要 說 它 看 到 goldfish 如 果 3 個 方 塊 就 看 到 white shark 如 果 4 個 方 塊 就 看 到 tiger shark 以 此 類 推 這 樣 他 就 可 以 操 控 這 個 imagenet train 出 來 的 模 型 做 他 本 來 不 是 訓 練 要 做 的 事 情 那 怎 麼 做 呢 你 就 把 你 要 數 方 塊 的 圖 片 呢 嵌 在 這 個 雜 訊 的 中 間 所 以 這 個 是 4 個 方 塊 的 圖 片 你 希 望 丟 到 imagenet 裡 面 它 就 輸 出 tiger shark 這 個 是 10 個 方 塊 的 圖 片 你 希 望 丟 到 imagenet 的 classifier 裡 面 它 就 輸 出 ostrich 那 你 就 把 這 個 圖 片 外 面 呢 加 一 些 雜 訊 然 後 再 把 這 個 圖 片 呢 丟 進 image classifier 裡 面 它 就 會 照 你 的 操 控 做 一 些 它 本 來 不 是 訓 練 來 要 做 的 事 情 這 個 是 adversarial reprogramming 好 那 還 有 一 個 還 有 一 種 攻 擊 的 方 式 啊 這 個 也 是 讓 人 驚 嘆 人 類 的 惡 意 啊 就 是 在 模 型 裡 面 開 一 個 後 門 到 目 前 為 止 我 們 的 攻 擊 都 是 在 測 試 的 階 段 才 展 開 但 是 有 沒 有 可 能 在 訓 練 的 階 段 就 展 開 攻 擊 呢 舉 例 來 說 假 設 我 們 要 讓 這 一 張 圖 片 它 被 辨 識 錯 誤 它 是 一 個 魚 但 是 你 的 image classifier 要 把 它 誤 判 為 狗 到 目 前 為 止 我 們 都 是 在 測 試 的 階 段 模 型 已 經 訓 練 好 以 後 才 在 圖 片 上 面 加 入 雜 訊 去 騙 過 這 個 模 型 但 是 有 沒 有 可 能 攻 擊 是 從 訓 練 的 時 候 就 已 經 展 開 了 呢 有 沒 有 可 能 有 人 在 你 的 訓 練 資 料 裡 面 加 入 一 張 圖 片 這 張 圖 片 看 起 來 沒 有 什 麼 問 題 它 的 標 註 也 沒 有 什 麼 問 題 它 並 不 是 說 它 加 了 很 多 魚 的 圖 片 然 後 把 魚 的 圖 片 都 標 註 成 狗 那 這 種 攻 擊 是 行 不 通 的 因 為 有 人 去 檢 查 你 的 訓 練 資 料 就 知 道 這 個 訓 練 資 料 有 問 題 了 嘛 所 以 你 要 在 訓 練 階 段 就 發 起 攻 擊 的 時 候 你 要 加 的 圖 片 是 正 常 的 圖 片 而 它 的 標 註 也 都 是 正 常 的 一 切 看 起 來 都 沒 有 問 題 但 是 拿 這 個 樣 子 的 資 料 去 進 行 訓 練 的 時 候 訓 練 完 的 模 型 只 要 看 到 這 張 圖 片 它 就 會 誤 判 為 狗 有 沒 有 可 能 做 到 這 樣 的 事 情 有 沒 有 可 能 攻 擊 從 訓 練 的 階 段 就 開 始 了 呢 你 可 以 看 一 下 右 上 角 放 的 這 個 reference 看 起 來 是 有 可 能 的 有 可 能 在 訓 練 資 料 裡 面 加 一 些 特 別 的 人 看 起 來 沒 有 問 題 但 實 際 上 有 問 題 的 資 料 讓 模 型 訓 練 完 以 後 模 型 就 開 了 一 個 後 門 在 測 試 的 階 段 它 就 會 辨 識 錯 誤 而 且 只 會 對 某 一 張 圖 片 辨 識 錯 誤 對 其 他 的 圖 片 還 是 沒 有 問 題 的 所 以 你 也 不 會 覺 得 你 的 模 型 訓 練 完 以 後 有 什 麼 不 對 的 地 方 而 直 到 有 人 拿 這 張 圖 片 來 攻 擊 你 的 模 型 的 時 候 你 才 會 發 現 這 個 模 型 它 是 有 被 下 毒 的 它 在 訓 練 的 時 候 就 已 經 被 開 了 後 門 所 以 這 個 不 得 不 讓 人 驚 嘆 人 類 的 惡 意 啊 你 想 想 看 假 設 這 一 種 攻 擊 是 有 可 能 成 功 的 話 未 來 你 從 網 路 上 載 什 麼 公 開 的 資 料 集 你 都 要 非 常 地 小 心 啊 因 為 舉 例 來 說 現 在 大 家 都 可 能 會 訓 練 人 臉 辨 識 的 系 統 人 臉 辨 識 的 系 統 呢 在 很 多 地 方 是 真 的 有 被 使 用 的 那 如 果 你 今 天 的 人 臉 辨 識 系 統 是 用 一 個 公 開 的 資 料 集 來 訓 練 就 某 一 天 有 某 個 人 說 欸 我 公 開 了 一 個 到 世 界 到 目 前 為 止 最 大 的 人 臉 辨 識 的 資 料 集 是 免 費 的 然 後 呢 大 家 就 開 心 地 下 載 來 用 那 它 裡 面 呢 就 是 有 加 某 一 張 下 過 毒 的 有 問 題 的 圖 片 但 那 個 圖 片 也 沒 有 人 檢 查 了 出 來 然 後 你 訓 練 完 以 後 大 家 也 覺 得 說 嗯 這 個 資 料 集 很 好 用 訓 練 出 來 的 影 像 辨 識 系 統 人 臉 辨 識 系 統 正 確 率 也 很 高 但 是 它 是 有 被 開 了 後 門 的 這 個 影 像 辨 識 系 統 只 要 看 到 某 個 人 的 圖 片 就 是 釋 出 資 料 的 那 個 人 的 照 片 它 就 會 把 門 打 開 這 樣 子 所 以 你 要 小 心 在 網 路 上 公 開 的 資 料 集 搞 不 好 裡 面 就 有 藏 什 麼 怪 東 西 也 說 不 定 如 果 這 種 開 後 門 的 方 法 未 來 是 可 以 真 的 可 以 成 功 的 話 那 這 是 一 個 非 常 大 的 問 題 不 過 你 可 以 看 一 下 這 篇 文 章 啦 看 起 來 開 後 門 要 真 的 攻 擊 成 功 還 是 有 某 一 些 限 制 的 並 不 是 說 隨 便 什 麼 模 型 隨 便 什 麼 訓 練 方 式 這 種 開 後 門 的 方 法 都 可 以 攻 擊 成 功 好 到 目 前 為 止 我 們 已 經 講 了 各 式 各 樣 的 攻 擊 的 方 式 那 接 下 來 我 們 想 要 講 一 下 防 禦 的 方 式 而 那 防 禦 呢 大 致 可 以 分 為 兩 類 一 種 是 被 動 防 禦 一 種 是 主 動 防 禦 被 動 防 禦 是 怎 麼 做 的 呢 被 動 防 禦 就 是 你 的 模 型 是 不 動 訓 練 好 模 型 訓 練 好 就 訓 練 好 了 就 放 在 那 邊 不 要 再 去 動 它 但 我 們 在 模 型 前 面 加 一 個 盾 牌 加 一 個 filter 我 們 期 待 說 本 來 我 們 的 圖 片 加 上 attack 的 signal 可 以 騙 過 來 network 但 是 這 個 盾 牌 這 個 filter 可 以 削 減 attack signal 的 威 力 就 是 當 圖 片 通 過 這 個 filter 的 時 候 一 般 的 圖 片 不 太 會 受 到 影 響 但 是 attack 的 signal 通 過 這 個 filter 以 後 它 就 會 失 去 它 的 威 力 讓 你 的 network 不 會 辨 識 錯 誤 那 有 人 就 會 想 說 要 製 造 什 麼 樣 的 filter 才 可 以 達 到 這 種 效 果 呢 要 製 造 什 麼 樣 的 filter 才 能 夠 擋 住 你 的 訊 號 呢 其 實 你 不 需 要 把 這 個 問 題 想 得 太 複 雜 非 常 簡 單 的 做 法 光 是 把 圖 片 稍 微 做 一 點 模 糊 化 可 能 就 可 以 達 到 非 常 好 的 防 禦 效 果 了 舉 例 來 說 我 們 剛 才 已 經 我 們 之 前 已 經 看 到 說 上 次 看 到 過 說 這 張 圖 片 加 上 了 非 常 小 的 雜 訊 以 後 影 像 辨 識 系 統 就 覺 得 它 是 一 個 鍵 盤 現 在 我 們 把 這 張 圖 片 做 一 個 非 常 輕 微 的 模 糊 化 你 可 以 明 顯 感 覺 說 右 邊 這 張 圖 片 有 一 點 點 模 糊 但 不 是 很 嚴 重 你 還 是 可 以 看 得 出 來 這 張 圖 片 裡 面 有 一 隻 貓 當 我 們 做 了 這 麼 一 點 模 糊 化 以 後 再 丟 到 同 一 個 影 像 辨 識 系 統 你 就 發 現 辨 識 結 果 變 成 是 正 確 了 本 來 是 keyboard 現 在 變 成 tiger cat 所 以 光 是 做 模 糊 化 這 件 事 情 就 可 以 非 常 有 效 地 擋 住 adversarial attack 那 為 什 麼 呢 因 為 你 可 以 想 說 這 個 adversarial attack 這 個 attack 的 signal 其 實 只 有 某 一 個 方 向 上 的 某 一 種 攻 擊 的 訊 號 才 能 夠 成 功 並 不 是 隨 便 sample 一 個 noise 都 可 以 攻 擊 成 功 我 們 之 前 已 經 看 過 說 你 隨 便 sample 一 個 noise 並 不 會 達 成 攻 擊 的 效 果 所 以 攻 擊 成 功 會 讓 攻 擊 成 功 的 訊 號 它 是 非 常 特 殊 的 當 你 加 上 那 個 模 糊 化 以 後 那 個 攻 擊 成 功 的 訊 號 就 改 變 了 那 它 就 失 去 攻 擊 的 威 力 但 是 它 對 原 來 的 圖 片 影 響 甚 小 你 把 原 來 的 圖 片 做 一 點 模 糊 化 其 實 不 太 會 影 響 影 像 辨 識 的 結 果 當 然 這 種 模 糊 化 的 方 法 它 也 是 有 一 些 副 作 用 的 比 如 說 本 來 完 全 沒 有 被 攻 擊 的 圖 片 那 machine 知 道 它 是 tiger cat 但 是 我 們 把 它 稍 微 模 糊 化 以 後 機 器 現 在 辨 識 還 是 正 確 的 但 是 它 的 confidence 的 分 數 就 下 降 了 圖 片 變 模 糊 以 後 機 器 比 較 不 確 定 它 看 到 的 東 西 是 什 麼 了 所 以 像 這 種 模 糊 化 的 方 法 你 也 不 能 夠 把 模 糊 這 件 事 情 做 得 太 過 頭 做 得 太 過 頭 的 話 它 就 會 造 成 一 些 副 作 用 導 致 你 原 來 正 常 的 影 像 也 會 辨 識 錯 誤 其 實 像 這 樣 子 的 被 動 防 禦 的 方 法 還 有 很 多 類 似 的 做 法 除 了 做 模 糊 化 以 外 還 有 其 他 更 精 細 的 做 法 舉 例 來 說 有 一 系 列 的 做 法 是 直 接 對 影 像 做 壓 縮 再 解 壓 縮 你 知 道 你 把 一 張 圖 片 啊 存 成 jpeg 檔 以 後 那 個 它 就 會 失 真 嘛 那 也 許 失 真 這 一 件 事 情 就 可 以 讓 被 攻 擊 的 圖 片 失 去 它 的 失 去 它 的 攻 擊 的 威 力 就 可 以 讓 攻 擊 的 訊 號 沒 有 那 麼 具 有 傷 害 性 所 以 有 一 系 列 的 做 法 是 把 影 像 做 某 種 壓 縮 那 這 種 壓 縮 如 果 會 失 真 的 話 那 可 能 攻 擊 的 訊 號 受 到 的 影 響 是 比 較 大 的 你 就 可 以 保 護 你 的 模 型 還 有 另 外 一 種 方 法 是 基 於 generator 的 方 法 好 我 們 在 作 業 裡 面 大 家 都 已 經 訓 練 過 generator 那 有 一 系 列 的 做 法 是 給 一 張 圖 片 這 張 圖 片 它 可 能 有 被 攻 擊 過 可 能 沒 有 被 攻 擊 過 那 我 們 讓 我 們 的 generator 產 生 一 張 跟 輸 入 一 模 一 樣 的 圖 片 也 就 是 把 輸 入 的 圖 片 用 generator 重 新 畫 過 重 新 產 生 過 那 你 可 能 會 問 說 欸 這 個 在 作 業 裡 面 我 們 的 generator 只 會 亂 生 一 些 圖 片 啊 你 根 本 沒 辦 法 控 制 它 生 成 出 來 的 東 西 啊 有 辦 法 控 制 generator 生 成 出 來 的 東 西 那 這 個 不 是 今 天 的 重 點 我 就 把 文 獻 留 在 這 邊 給 大 家 參 考 總 之 generator 我 們 有 辦 法 控 制 它 的 輸 出 我 們 要 求 generator 輸 出 一 張 圖 片 這 張 圖 片 跟 輸 入 給 image classifier 的 圖 片 越 接 近 越 好 那 你 可 以 想 見 說 假 設 有 人 攻 擊 了 這 張 圖 片 上 面 加 了 一 個 微 小 的 雜 訊 是 人 看 不 到 的 對 generator 而 言 它 在 訓 練 的 時 候 它 從 來 沒 有 看 過 這 些 雜 訊 它 可 能 也 無 法 產 生 復 現 出 這 些 非 常 小 的 雜 訊 那 這 樣 這 些 微 小 的 雜 訊 就 不 見 了 generator 產 生 出 來 的 圖 片 是 沒 有 雜 訊 的 你 就 可 以 達 到 防 禦 的 效 果 好 但 是 這 種 passive 的 defense 啊 這 種 被 動 的 防 禦 啊 有 一 個 非 常 大 的 弱 點 雖 然 我 們 剛 才 在 講 的 時 候 雖 然 我 們 剛 才 在 講 這 個 模 糊 化 的 時 候 說 模 糊 化 非 常 有 效 但 是 模 糊 化 這 一 種 方 法 只 要 一 旦 被 別 人 知 道 你 會 做 這 件 事 情 它 馬 上 就 失 去 效 用 為 什 麼 你 可 以 完 全 把 模 糊 化 這 件 事 情 想 成 是 network 的 第 一 層 所 以 模 糊 化 這 件 事 等 於 就 是 在 network 前 面 多 加 了 一 層 啊 所 以 假 設 別 人 知 道 你 的 network 前 面 多 加 這 一 層 把 多 加 這 一 層 放 到 攻 擊 的 過 程 中 它 就 可 以 產 生 一 個 signal 是 可 以 躲 過 模 糊 化 這 種 防 禦 方 式 的 所 以 像 這 種 被 動 的 防 禦 它 既 強 大 也 不 強 大 它 強 大 就 是 假 設 人 家 不 知 道 你 有 用 這 一 招 它 就 非 常 有 效 一 旦 人 家 知 道 你 用 什 麼 招 數 那 這 種 被 動 防 禦 的 方 法 就 會 瞬 間 失 去 效 用 所 以 怎 麼 辦 呢 還 有 一 種 再 更 強 化 被 動 防 禦 的 方 法 就 是 加 上 隨 機 性 怎 麼 做 呢 就 是 你 知 道 就 是 不 要 怎 麼 樣 才 不 會 被 別 人 猜 中 你 的 下 一 招 就 是 你 自 己 都 不 知 道 自 己 的 下 一 招 是 什 麼 這 個 就 是 欲 欺 敵 先 瞞 內 的 概 念 你 就 在 做 這 個 defense 的 時 候 啊 加 上 各 種 不 同 的 defense 的 方 式 比 如 說 在 這 篇 文 獻 裡 面 他 們 就 說 哦 我 們 輸 入 的 圖 片 我 們 只 要 做 一 些 小 小 的 改 變 就 可 以 擋 住 attack 的 訊 號 但 是 我 們 改 變 的 方 式 不 能 被 別 人 知 道 別 人 一 知 道 他 就 可 以 攻 破 你 的 防 禦 所 以 怎 麼 辦 呢 我 們 自 己 都 不 知 道 圖 片 會 怎 麼 樣 被 改 變 一 張 圖 片 進 來 以 後 你 可 能 把 它 放 大 也 可 能 把 它 縮 小 任 意 改 變 它 的 大 小 然 後 接 下 來 呢 你 把 這 個 圖 片 呢 貼 到 某 一 個 灰 色 的 背 景 上 但 貼 的 位 置 也 是 隨 機 的 你 也 事 先 也 不 知 道 你 會 把 這 個 圖 片 放 在 灰 色 背 景 哪 個 地 方 再 丟 給 你 的 影 像 辨 識 系 統 也 許 透 過 這 種 隨 機 的 防 禦 就 有 辦 法 在 就 有 辦 法 擋 住 別 人 的 攻 擊 但 這 種 隨 機 防 禦 也 是 有 問 題 你 想 想 看 假 設 別 人 知 道 你 的 隨 機 的 distribution 的 話 他 還 是 有 可 能 攻 破 這 種 防 禦 的 方 式 的 而 且 我 們 剛 才 有 說 過 universal 的 attacks 是 有 可 能 的 假 設 你 各 種 隨 機 的 可 能 性 都 已 經 被 知 道 的 話 那 別 人 只 要 用 universal attacks 它 找 一 個 attack 的 signal 可 以 攻 破 所 有 所 有 圖 片 的 變 化 方 式 的 話 這 樣 子 randomization 的 方 式 還 是 有 可 能 被 突 破 好 那 剛 才 講 的 是 被 動 的 防 禦 那 還 有 主 動 的 防 禦 主 動 的 防 禦 是 說 我 們 在 訓 練 模 型 的 時 候 一 開 始 啊 就 要 訓 練 一 個 比 較 不 會 被 攻 破 的 模 型 一 開 始 就 要 訓 練 一 個 比 較 robust 比 較 不 會 被 攻 破 的 模 型 那 這 種 訓 練 的 方 式 叫 做 adversarial training 那 這 個 adversarial training 是 怎 麼 操 作 的 呢 就 是 你 有 一 些 訓 練 資 料 這 個 跟 一 般 的 training 是 一 樣 的 你 有 image 這 邊 用 x 來 表 示 image 都 有 label 用 ŷ 來 表 示 然 後 呢 我 們 就 拿 我 們 的 訓 練 資 料 來 訓 練 一 個 模 型 訓 練 完 以 後 接 下 來 你 在 訓 練 的 階 段 就 對 這 個 模 型 進 行 攻 擊 你 把 這 邊 訓 練 的 資 料 x1 到 xn 都 拿 出 來 製 造 一 些 signal 讓 這 些 圖 片 變 得 具 有 攻 擊 性 那 被 攻 擊 後 的 image 叫 做 x tilde 你 把 這 邊 x1 到 xn 訓 練 資 料 裡 面 的 每 一 張 圖 片 都 拿 出 來 進 行 攻 擊 攻 擊 完 以 後 你 再 把 這 些 被 攻 擊 過 後 的 圖 片 標 上 正 確 的 label 就 你 把 x1 變 成 x1 tilde 以 後 你 的 machine 就 會 辨 識 錯 誤 本 來 是 個 貓 的 圖 片 它 可 能 就 辨 識 錯 成 鍵 盤 但 是 你 現 在 把 那 個 辨 識 錯 成 鍵 盤 的 圖 片 拿 來 重 新 把 它 標 成 貓 因 為 你 已 經 知 道 說 x1 它 的 label 就 是 貓 嘛 所 以 就 算 它 變 成 x tilde 它 現 在 輸 入 影 像 辨 識 系 統 以 後 輸 入 這 個 你 訓 練 好 的 模 型 以 後 輸 出 的 label 變 了 你 也 知 道 原 來 正 確 的 label 是 什 麼 你 就 把 原 來 正 確 的 label 拿 回 來 所 以 現 在 就 製 造 了 一 個 新 的 訓 練 資 料 叫 x′ 在 新 的 訓 練 資 料 裡 面 每 一 筆 資 料 都 是 有 被 攻 擊 過 的 原 來 x1 到 xn 變 成 x1 tilde 到 xn tilde 但 是 你 的 label ŷ1 到 這 邊 我 發 現 這 邊 有 寫 錯 了 這 個 不 是 ŷy 這 應 該 是 ŷn 這 個 應 該 是 n 才 對 這 應 該 是 n 才 對 好 這 個 ŷ1 到 ŷn 這 個 ŷ1 到 ŷn 是 一 樣 的 那 你 再 把 x 跟 x′ 倒 在 一 起 得 到 更 多 的 訓 練 資 料 再 重 新 去 訓 練 你 的 模 型 所 以 這 整 個 adversarial training 的 概 念 就 是 我 們 先 訓 練 好 一 個 模 型 然 後 看 看 這 個 模 型 呢 有 沒 有 什 麼 漏 洞 把 漏 洞 找 出 來 然 後 接 下 來 呢 再 把 漏 洞 填 起 來 就 不 斷 地 找 漏 洞 找 到 就 把 它 填 起 來 這 個 就 是 adversarial training 的 精 神 好 那 這 個 方 法 啊 其 實 也 可 以 看 作 是 一 種 data augmentation 的 方 法 因 為 我 們 產 生 了 更 多 的 圖 片 x tilde 那 再 把 這 些 圖 片 加 到 訓 練 資 料 裡 面 這 個 等 於 就 是 做 了 資 料 增 強 做 了 data augmentation 這 件 事 所 以 有 人 也 會 把 adversarial training 當 做 一 個 單 純 的 資 料 增 強 的 方 式 就 是 像 這 樣 子 的 方 式 不 是 只 在 你 的 model 可 能 被 攻 擊 的 時 候 有 用 有 時 候 就 算 沒 有 人 要 攻 擊 你 的 模 型 你 也 可 以 用 這 樣 的 方 法 產 生 更 多 的 資 料 然 後 再 把 更 多 的 資 料 拿 去 做 訓 練 也 可 以 讓 你 的 模 型 它 的 robotics 的 能 力 更 好 更 不 容 易 overfitting 所 以 就 算 是 沒 有 人 要 攻 擊 你 的 模 型 你 也 可 以 用 adversarial training 來 強 化 你 的 模 型 避 免 overfitting 的 狀 況 那 這 個 process 啊 產 生 有 問 題 的 圖 片 再 重 新 訓 練 這 個 process 啊 是 可 以 反 覆 做 的 你 可 以 產 生 圖 片 重 新 訓 練 再 產 生 圖 片 再 產 生 訓 練 就 不 斷 找 出 問 題 補 起 來 找 出 問 題 補 起 來 這 個 process 是 可 以 反 覆 做 多 次 直 到 你 開 心 為 止 那 像 這 樣 adversarial training 它 其 實 有 個 非 常 大 的 問 題 就 是 它 不 見 得 擋 得 住 新 的 攻 擊 的 方 式 就 假 設 我 們 今 天 在 找 x tilde 的 時 候 你 用 的 是 algorithm abcd 然 後 接 下 來 有 人 在 實 際 攻 擊 的 時 候 他 發 明 了 一 個 algorithm f 去 攻 擊 你 的 模 型 往 往 就 能 成 功 如 果 今 天 實 際 上 攻 擊 你 model 的 方 法 並 沒 有 在 adversarial training 的 時 候 被 考 慮 過 那 adversarial training 也 不 見 得 能 夠 擋 住 新 的 attack 的 algorithm 所 以 adversarial training 還 是 有 還 是 有 可 能 被 攻 破 的 另 外 adversarial training 還 有 一 個 比 較 大 的 問 題 就 是 它 需 要 非 常 大 比 較 多 的 運 算 資 源 你 想 想 看 本 來 一 般 在 訓 練 模 型 的 時 候 走 到 這 邊 就 結 束 了 你 有 訓 練 資 料 訓 練 完 模 型 就 結 束 了 但 是 adversarial training 它 的 問 題 是 首 先 你 要 花 時 間 找 出 這 些 x tilde 你 的 圖 片 有 幾 張 你 可 能 就 要 找 出 多 少 張 的 x tilde 100 萬 張 圖 片 你 要 找 100 萬 個 x tilde 光 做 這 件 事 可 能 就 已 經 很 花 時 間 了 所 以 你 會 發 現 說 如 果 你 的 dataset 很 大 的 時 候 大 家 通 常 就 不 會 想 要 做 adversarial training （00：45：18） 所 以 adversarial training 是 一 個 比 較 吃 運 算 資 源 的 方 法 那 為 了 解 決 這 個 問 題 有 人 發 明 了 一 個 方 法 叫 做 adversarial training for free 這 邊 我 們 就 不 細 講 有 一 些 方 法 是 做 到 adversarial training 的 效 果 卻 沒 有 adversarial training 那 麼 大 的 computing 的 intensity 那 至 於 怎 麼 做 到 adversarial training for free 怎 麼 不 在 使 用 額 外 的 計 算 的 情 況 下 就 達 到 adversarial training 的 效 果 那 這 個 把 文 獻 放 在 這 邊 留 給 大 家 參 考 好 那 到 目 前 為 止 呢 我 們 就 是 告 訴 大 家 有 攻 擊 這 件 事 情 攻 擊 非 常 容 易 成 功 黑 箱 攻 擊 也 是 有 可 能 成 功 的 然 後 跟 大 家 介 紹 了 幾 種 經 典 的 defense 的 方 式 那 目 前 攻 擊 跟 防 禦 啊 它 們 都 這 些 方 法 仍 然 不 斷 地 在 演 化 所 以 在 國 際 會 議 會 不 斷 看 到 有 新 的 攻 擊 方 法 被 提 出 有 新 的 防 禦 方 法 被 提 出 它 們 仍 然 都 在 進 化 中 那 不 知 道 最 後 會 是 誰 勝 誰 負 好 那 這 個 是 今 天 的 現 況 
Alright, so last week, we left off here Okay, so far The content we discussed in class is actually all about White Box attacks What does this mean That is, we need to calculate this Gradient We have to calculate this Gradient when we do FGSM When calculating the Gradient We need to know the parameters of the model Knowing the parameters of the model Only then can we calculate this Gradient Only then can we add Noise to the Image Attacks that involve knowing the model parameters are like this one, They're called White Box Attacks. Sometimes in Chinese, it is translated as a 'white box attack'. A 'white box' is like an animation, you know, This is a 'whitebox', it's not very important. It's not very important, so don't mind me. But you might think that Wow, this attack requires knowledge of network parameters It seems that this attack is not very dangerous Why? Because in general online services Of course, if you want to attack, you have to attack someone else's model Or some online service The model of the online service You don't know what the parameters are So maybe attacking an online service Isn't that easy So actually if we want to protect Our model from being attacked by others Perhaps all we need to do is remember not to casually put our models on the Internet for the public to use freely Perhaps our models will be safe But is that really the case? Unaware of the attacks under the model parameters Called Black Box Attack, also known as black box attack Is it possible to launch a black box attack? A black box attack is feasible How do you execute a black box attack? So far we've been discussing When we are launching the attack We need to calculate the Gradient To calculate the Gradient, we need to know the parameters of the Model So how is a black box attack carried out? This is how a black box attack is performed As for our assignment, as the assistant just mentioned It's about the black box attack So, there's a model on the internet You cannot get this model You don't even know what its parameters are This is actually the model on Judgeboi You don't know which model the teaching assistant used You don't know what its parameters are So, what can we do then? Let's assume that you know about this Network And what kind of training data it was trained with Then, you can train a Proxy Network That is, you can train a Network To have this Network mimic the object we want to attack The target we are going to attack and the Proxy's Network If they are trained with the same training data Perhaps there will be a certain degree of similarity between them If the Proxy Network and the target to be attacked Have the same degree of similarity Then all we have to do is attack the Proxy's Network Perhaps this Image has been attacked before And is thrown on our Network with unknown parameters The attack could still succeed This is actually what we are doing in our tasks So, what we're doing in our tasks is You find something from somewhere The image recognition model has been trained This is your Proxy Network You on your own machine You attack this network of yours on Colab Then throw it on JudgeBoi See if this attack can succeed Someone might ask, What if I don't have any training data at all? I have no idea about the object I need to attack right now, What if I don't know what kind of training data it uses? In the operation, we know that it's CIFAR-10, The object we are going to attack. It was trained using CIFAR-10 So all you need is one A model trained with CIFAR-10 You might successfully launch an attack But what if we have absolutely no training data This is not completely unsolvable How to explain it? Suppose this is the image recognition model you want to attack. You throw in a bunch of pictures. And then see what it will output. Even if the online service won't tell you, The parameters of the network. You always can throw something in And observe what it outputs Then take the input-output paired data To train a model You might be able to train a similar model And use it as a Proxy Network to attack Okay, is it easy to succeed in this kind of black box attack? It's quite easy to succeed. You can experience it in the assignment. This black box attack is actually very easy to succeed in. This is the result in the literature. There are 5 different Networks here. ResNet 152 layer, ResNet 101 layer ResNet-50, VGG-16, and GoogLeNet There are a total of 5 Networks Okay, this column Represents the Network to be attacked There are a total of 5 Networks to be attacked So this Row here, it represents that we have 5 Proxy Networks, and if it's on the diagonal, it means that the Proxy Network, and the Network that is being attacked, are exactly the same. So this situation is not a black-box attack The diagonal place, in fact, is a white-box attack So if you use ResNet-152 as a Proxy Network When attacking, you are actually attacking A network that's exactly the same It's too easy to succeed This number here represents accuracy It's the accuracy of the model being attacked So, the lower this value the better A lower accuracy It means your attack is more successful You are now from the attacker's perspective So you're not in charge, you're not on the model training side You are on the attack side So the lower the accuracy It means your attack is more successful You found the diagonal, which is part of the white box attack The part of the White Box Attack The success rate of this attack is 100% That is, the accuracy of the model is 0% Your attacks will always succeed But if it's in a non-diagonal place Which is called a black-box attack For example, you use ResNet-101 as a Proxy Network Attack ResNet-152 The accuracy achieved is 19% Or if you use ResNet-152 as Proxy Network To attack ResNet-50 The accuracy you get is 18% These non-diagonal places indicate black box attacks You will find that the accuracy of black box attack models is higher than white box attacks But actually, these accuracy rates are very low all are below 50% So, obviously, black box attacks also have a certain chance of success However, in reality, black box attacks are ongoing Non-targeted attacks are more likely to succeed Targeted attacks are less likely to succeed That's if you use a Proxy Network Say you want to transform a dog into a rabbit If you take the attacked image And place it on the target you want to attack You might be able to cause it to misidentify. You might make the machine identify something as not a dog. But it's harder to specify it must identify it as a rabbit. So, during a black box attack, the targeted attack is more difficult to succeed. But a non-targeted attack is still very likely to succeed. So, if you want to increase the success rate of this How would you do it for the Black Box Attack? The assistant has just mentioned one A tip that can surpass the Strong Baseline That is the Network of Ensemble So how do you implement this Network of Ensemble? The viewpoint of this table here is like this This column represents the network that is to be attacked So what does each row mean? You will find the name of each model A minus sign was placed in front What does it mean? That means to say We are now gathering all these 5 models But excluding ResNet-152 We are looking for an image to attack All models outside of ResNet-152 are successful We are assuming we do not have ResNet-152 at hand But there are ResNet-101, ResNet-50 and VGG-16 along with GoogLeNet Find an Image to attack these 4 Networks All were successful Let's see what happens on 152 So actually today in this picture This table below The opinion is different from the one above If it's the table below The off-diagonal places are white-box attacks Did you notice anything off-diagonal? The model accuracy has dropped to 0% Just like what I said earlier White box attacks are very prone to success The diagonal area is where the black box attacks take place So this place is where we plan to attack ResNet-152 But we didn't use ResNet-152 We are targeting ResNet-101 here But without using ResNet-101 But used another 4 Networks and so on So the diagonal area is the black box attack And you'll notice, when you are doing an Ensemble When you're using multiple Networks simultaneously When you're searching for an Attack Image When you can successfully deceive multiple networks Deceiving a network that is a black box, which you do not know the parameters of It is also very easy to succeed You see, the accuracy on the diagonal line Basically, it is less than 10% Okay, this is a black box attack Okay, you'll find this attack is very easy to succeed. It's surprisingly easy to succeed. What exactly is going on? Why even the black-box attack, The attack you made on A Network, It is also successful on B Network. In fact, this is still You could say it's a mystery There is still a lot of room for research What follows is a conclusion that many people believe in There is an experiment like this The origin on this graph This represents an image of a clownfish This one right here, it's Nemo This, the clownfish, is Nemo This is a picture of Nemo, right here Then what exactly are the x-axis and the y-axis? They represent moving this image in two different directions A single image is a very high-dimensional vector. This high-dimensional vector Can be moved in a certain direction, which is the x-axis. Or another direction, which is the y-axis. So what are the x-axis and y-axis here? What kind of directions are they? The x-axis here is on top of VGG-16 It represents the direction that can successfully attack The y-axis, on the other hand, is a random direction You will notice that although the x-axis Allows for successful attacks on VGG-16 However, on other networks ResNet-50 ResNet-101 Above ResNet-152 GoogLeNet Look at this picture I later found that they have a lot in common The deep blue area in the middle of them is quite similar What is this deep blue area This deep blue area This deep blue area is The range which can be recognized as a picture of a clownfish In other words, if you add a noise to this picture of a clownfish Add a noise This high-dimensional vector Moving in this direction in high-dimensional space Basically, the Network still thinks It's a picture of a clownfish No matter for every Network As long as you move in this direction It's a random direction Generally, it would be considered as a clownfish But if your goal is to successfully attack Towards the direction of VGG-16 Then generally other networks Seem to have a quite high probability of success as well You found this category of clownfish It is in the direction of this attack It is particularly narrow As long as you move this high-dimensional vector Move this picture a little bit It will fall out of the area that can be recognized as a clownfish It's outside the range It will fall out of the range recognized as a clownfish Outside the area range It will be recognized as other categories For each Network The direction of this attack seems The impact on different Networks is quite similar So there's more than one paper on this They view attacks in this way Their understanding is like this You can see from the beginning of this article It says this "Adversarial Examples Are Not Bugs," They are features. So, there is a group of people who advocate that This attack will succeed The main problem comes from your data Rather than from the model Different models train different results It seems to be quite similar And the fact that attack will be successful Not only has the same problem with Deep Learning For Linear Networks For SVMs, there are similar problems So maybe the reason attacks are so easily successful The main reason for this situation may not be due to the model itself It might be due to the data Why would the Machine misinterpret these extremely minor noises as being another object That might be because in the data itself its own characteristics are just like this On limited data That's what machines learn So, perhaps the reason why Adversarial Attacks are successful Is due to problems with the data When we have enough data We might have a chance to prevent Adversarial Attacks However, this is actually just one perspective Not everyone agrees with it Or rather, not everyone shares this view It's merely the thoughts of a specific group of people Perhaps in a few years when you take this class again The conclusions I talk about might be different So this is just to inform you that There's a group of people who perceive that They believe that data is the culprit causing the success of attacks Well, for the signal of the attacks We hope it can be as small as possible To what extent can it really be minimized? There are documented cases of successful One Pixel Attacks The meaning of One Pixel Attack is You can only alter one pixel in the image For example, in this picture They altered one pixel They will specifically outline the area where the pixel was changed Frame it, frame it, frame it Attempting to move a pixel in the picture. The image recognition system must make mistakes. But in fact, if you look at this picture, This black part on this picture, Represents the correct, before the attack. This is the image recognition result Blue represents the result of image recognition after the attack And you'll notice that One Pixel Attack seems to still have some limitations Its attack wasn't exactly Very, very successful. How should I put it? For example, this is a Teapot It's a teapot Perform a One Pixel Attack in this location The color of a certain pixel has been changed The machine changed the Teapot into a Joystick What is a Joystick? A Joystick is a game controller Then you will find that Hey, this mistake actually makes a bit of sense Not like the examples we initially gave A cat turning into a starfish, a cat turning into a keyboard, it's so absurd This mistake actually makes sense So, this attack feels like It's not extremely powerful This is the One Pixel Attack Actually, there is even crazier attack method Called Universal Adversarial Attack What does Universal Attack mean Until now, we have Every picture, your's are all custom-made You have 200 There are 200 pictures in the assignment 200 pictures You will each find different Attack Signals Then someone asked Is it possible to use a signal Successfully attacked all images Because if you say Every image must have a different Signal If you want to hack a surveillance system today You want to make a surveillance system mistakenly identify something Then you might really need to Hack into that surveillance system And every time different images come in You have to customize to find an Attack Signal The amount of computation could be very large If a Universal Attack can succeed Actually, you just need to attach this signal on the camera of this monitor Then, if this signal this Attacked Signal is very strong As long as you add this Attacked Signal it can successfully attack any type of image All you need to do is place this Signal directly on the camera Stick it on the camera Then this camera will break down immediately No matter what it sees, it will identify it incorrectly Is a Universal Attack possible? You can take a look at this paper It is possible for the Universal Attack to succeed. In this paper, they found a Noise. They found an Attacked Signal. This Attacked Signal, when added to many different images, can cause image recognition systems to misidentify. Okay, up to this point, All the examples we gave are image-based examples Some people might think Could it be that images are particularly susceptible to these attacks? Could it be that other types of data Then we can minimize these issues Actually, it's not just other types of data have similar issues Taking voice as an example Everyone knows that we will do Defect now Someone will simulate this with speech synthesis technology Or using voice conversion technology Simulating certain people's voices In order to achieve the effect of deceit In order to detect this kind of defect situation As a result, there is a series of other research looking into How to detect if a sound has been synthesized Although the voice synthesis system today Often they can combine to create realistic sounds But these counterfeit voices there's still a very high probability. Can be captured by machines These synthesized signals There is still a fixed pattern Compared to the real sound signal There is still a certain degree of difference The human ear can't discern it, but machines can But these systems can detect voice synthesis A segment of voice signal can be detected Asking if it's a synthetic system. It can easily be attacked too Here are some real examples below Then, initially play a synthesized sound This is a synthesized voice Anyone can tell this is a synthesized voice. This audio was deliberately corrupted. If all the synthesized voice systems can combine The sounds are indistinguishable from real ones, creating deceptive noises So the earlier section was evidently not well organised So you use this to detect whether it is a voice synthesis system It can tell you accurately This sound signal is obviously synthesized Okay, but what if we are in that sound signal just now Add a little bit of noise It sounds like this You might ask This new sound plus the sound of noise What is different from before? The human ear can't tell the difference between them The noise is very, very minimal Nobody could discern any change What kind of differences are there between these two audio signals After this audio signal is mixed with this slight noise It doesn't sound like it improved the synthesis However, the same detection synthesizing system It will perceive the sound we just heard as a real sound Not a synthesized voice Good, the example I just gave was about voice Will the text also be attacked The text will also be attacked In our operation There is an assignment on Question Answering It's about having a machine read an article Ask it a question See if it can give you the correct answer A paper found that It's detected pasted at the end of all the articles Why How Because To Kill American People No matter what you ask it next Its answer is To Kill American People So, you could carry out an Adversarial Attack with text To make this QA system No matter how you respond, it's 'To Kill American People' So no matter what kind of modality Today, there's a possibility of successful attacks Ok, so far Our attacks are happening in a virtual world It all happens in the digital world You are reading an image into the computer You only add the noise And the act of attacking Is it possible to occur in the real world Is it possible in a three-dimensional world? For instance, there are many facial recognition systems nowadays If you were to launch an attack in the digital world Then you'll have to hack into the facial recognition system Say, a face appears You add some noise yourself You can only deceive the facial recognition system But this attack, this noise Is it possible to add it to a three-dimensional world? Is it possible to add it to the three-dimensional world? Is it possible that someone could apply a certain makeup on their face Could it deceive the facial recognition system? This can be possible However, makeup is more challenging Because you know, your makeup may be wiped off by sweat So makeup may not be a particularly good method Someone has discovered that magic glasses can be created After putting on the magical glasses You can deceive the facial recognition system This glasses don't seem to have anything special It's just colorful It looks very trendy. But when the man on the left put on these glasses The facial recognition system will think He is the famous artist on the right I don't actually know, forget who this famous artist is It doesn't matter, this is not important I'm actually not very familiar with the three-dimensional world I also don’t know who he is Okay, but if you read this literature carefully You'll find that they've taken a lot into account This would be a problem in the physical world The first one is in the physical world When we are looking at something We can look at it from multiple angles In the past, some people would think Adversarial Attack may not be that dangerous, Why? Because an image is just a piece of paper And then you introduce a certain specific noise This is the only way for this image to be misidentified But in the real world, You could view the same object from multiple angles Maybe your noise has fooled a certain angle But it's impossible from every angle It has fooled the image recognition system. But this paper does take this perspective into consideration. So it's not about looking at a person from a certain angle He is recognized as this famous artist on the right From all angles Look at this person with glasses from various angles It will always be identified as the person on the right But you wouldn't be too surprised about this now Because I just told you A Universal Attack might succeed So, you might be able to find a type of noise Once this person puts on these glasses No matter from which angle you look at this person The attack would still be successful Okay, so this is the first part considering the physical world The second one involves considering the characteristics of the physical world Inside this paper, there are things that have been done It is considering that The resolution of your camera is still limited today So if you are on this pair of glasses today The added signal is very small For example, you only add a very small spot It's possible that your camera can't see at all Or if it's your adjacent pixel There's a huge color change Perhaps in situations like this the camera can't catch it at all, So it can enhance the resolution of the camera today The limit of the camera's resolution We also take it into account Okay, the third thing to consider is Whether this pair of glasses can really The problem that really comes to fruition They've considered that there are certain colors You may be in the computer or in the real world It seems there will be differences Certain colors Perhaps you need to physically implement it Really print it out Its color will be skewed So they have taken into consideration When printing this pair of glasses today Do not use those The printed color will be off It selects some colors that won't deviate when printed. So you can take a closer look at this paper It actually takes into account a lot of the real world From this three-dimensional space From the three-dimensional world When attacking the digital world The real issues that we have to face Well, not only face recognition can be successfully attacked We know that there will be many self-driving cars in the future Self-driving cars will need to do license plate recognition So of course, some people attack the license plate recognition system So there are papers telling us You can do this on the STOP sign Stick some stickers After applying these stickers Your system for recognizing symbols Regardless of the viewpoint Look at this STOP Sign from far, close, left, and right It always turns into a 45 km per hour speed limit It turned into not stopping But it's another traffic signal But someone Some people would think that Maybe applying these stickers is still too conspicuous You randomly stick labels on the road signs Everyone knows that you are preparing for an attack So, it might be removed the next day So it's too conspicuous So someone created a kind of It's less conspicuous A very clandestine method of attack He directly turns the number 3 in speed limit 35 Extend it a bit longer If no one tells you I purposefully elongated this one You might think this font has always been like this But when he takes this 3 After this particular stretching This brand For a system of this emblem recognition It becomes a speed limit of 85. This was carried out by an American software security company They have released a demo video In this demo video It's like someone driving a Tesla car And then Tesla's cars will do the signal recognition And then there is a person here Holding up a sign with a 35 mph speed limit But this brand has been specifically targeted It's its 3, right a bit longer, Originally, Tesla's car recognized a speed limit of 35. Its speed limit can't exceed 35 But because what it actually sees For this self-driving car, The sign it saw was a speed limit of 85 Therefore, it will speed up So this is how the demo goes As we can see Shivangi is delaying our opponent 35 Mile Per Hour Speed Limit Sign With a small piece of black tape It's The Only Modification We start the car moving forwards And the Mobileye Camera Immediately Incorrectly Identifies As an 85-mile an hour speed limit sign Now We Engage Traffic-Aware Cruise Control And With Our Feet Entirely Off The Gas And Brake Pedals The Tesla begins to accelerate to 85 miles per hour We cut it short at approximately 50 miles Per hour for safety reasons. Yes, okay, so attacks like this In the physical world It's also possible to succeed There are actually many forms of the attack Various types Let's show you the malice of humanity There's another kind of attack It's called Adversarial Reprogramming What does it mean? It transformed the original image recognition system In essence, it's like putting a parasitic entity as lifeless as a zombie. To make it do something it didn't originally want to do Everyone knows that For example, in 'The Last Survivor' After a person is parasitized by cordyceps fungus Still, you have the ability to act But you would attack others Do something you originally didn't want to do This is called 'Adversarial Reprogramming' Okay, then inside Adversarial Reprogramming, In the paper in the lower right corner How does he do it What he wants to do is He wants to create a square recognition system To count the number of squares in the picture From one to ten But he doesn't want to train his own model He wants to parasitize on one that already exists And trained on the ImageNet model Then the ImageNet model has its pictures And recognize what is inside them What kind of animals or objects, and so on And then He said he hopes He inputs an image When there are two squares in this picture That model of ImageNet has to say It sees a Goldfish If there are 3 blocks And then they see White Shark If there are 4 blocks Then he saw the Tiger Shark And so on He can then control this ImageNet The model trained Do what he was not originally trained to do how to do that, You take the picture that you want to count blocks Embedded in this noise So, this is a picture of 4 blocks You want to throw it into ImageNet It outputs 'Tiger Shark'. This is an image with 10 squares You hope to throw it into ImageNet's Classifier It outputs Ostrich Then you just focus on the exterior of this picture add some noise, Then this image Throw it into an Image Classifier It will operate according to your control Doing things it wasn't originally trained to do This is Adversarial Reprogramming Okay, there's another one There's another way to attack This also showcases the astonishing malevolence of humanity. Is like opening a backdoor in the model So far Our attacks are only launched during the testing phase But is it possible to launch an attack during the training stage? For example Assume we want this image to be misidentified It is a fish But your image classifier Misinterpret it as a dog So far We are all in the testing phase After the model has been trained Just by adding noise to the image can fool this model But is it possible to launch an attack The process started during the training phase. Is it a possibility? Someone added a photo into your training data This picture seems to have no problems Its annotation has no problem it's not to say, It added a lot of fish pictures And then label all the fish pictures as dogs This type of attack may not work Because someone is checking your training data I knew there was a problem with this training data So, you have to launch an attack during the training phase The picture you want to add is a normal picture And its labels are all normal Everything seems to be without issues But when using this kind of data for training The model that has been trained As long as you see this picture It would misidentify it as a dog. Is it possible to do such a thing Is there a possibility of attack It started from the training phase You can look at the Reference placed in the top right corner It seems possible It might be in the training data Add something special People do not see a problem But the data that actually has problems After the model is trained The model opens a backdoor During the testing phase It would identify incorrectly And it'll only misidentify a specific image There is no problem with other pictures So you won't feel about your model What could be wrong after training? Until someone uses this picture to attack your model Then you will discover this model It has been poisoned It has been breached during training So, one can't help but marvel at the human malignancy Think about it Assuming that such an attack could potentially be successful In the future, whatever public datasets you download from the internet You have to be very careful For instance Now everyone might train a facial recognition system The facial recognition system It's actually used in many places If you were dealing with today's facial recognition system It's trained with a public dataset One day, someone said Hey, I've made a public disclosure to the world So far, the largest dataset for face recognition It's free Then, everyone happily downloads and uses it What about the inside of it He added a problematic picture that has been poisoned But no one checked that picture And then after you've finished training Everyone seems to agree Hmm, this dataset is very useful The image recognition system trained The accuracy of facial recognition systems is also high. But it has been backdoored This image recognition system Just by seeing a picture of someone It's a photo of the person who released the data It will open the door just like that So be careful with the data sets you disclose on the internet Who knows? Something strange might be hidden inside Or maybe If this backdoor method is used, In the future, if it can really succeed This poses a very big problem However, you can read this article It seems to open a backdoor to really succeed in attack There are still some limitations Not any model will do Any training method will do Such back door methods can indeed succeed in attacking Well, so far We've already discussed various types of attacks Next, we want to discuss how to defend And how about defense Can be roughly divided into two types One is a passive defense One is proactive defense How is passive defense conducted? Passive defense is Your model remains unchanged Train the model well Once trained, it's all set Just leave it there, don't touch it anymore But we add a shield in front of the model Add a filter We hope that Our original image plus the Attack Signal It can trick the Network But this shield, this Filter It can reduce the power of the Attack Signal When the image passes through this filter General images won't be affected much But when the Attack signal is introduced, After passing through this filter It would lose its power. Prevent your network from making errors in recognition Then someone might wonder Creating what kind of Filter This effect can be achieved What kind of Filter should be created Only to block your signals Actually, you don't need to overcomplicate this issue It's a very simple process Simply blurring the image slightly This could probably achieve very good defensive effects For example We just did We have seen before Last time, we saw this picture After adding very small noise The image recognition system thinks it's a keyboard, Now, we apply a very slight blur to this picture You can clearly feel that this picture on the right It's a little blurry But it's not very serious You can still tell that there is a cat in this picture After we've done a little bit of blurring Then throw it into the same image recognition system Then you realize The recognition result becomes correct Originally, it's a Keyboard It has now turned into Tiger Cat So, just doing this blur effect It can be very effective Blocking Adversarial Attacks Why is that Because you might think This adversarial attack This Attack Signal In fact, there is only a signal of a certain type of attack in a certain direction To be successful It's not about randomly Sampling a Noise All can attack successfully We have seen it said before You randomly sample a noise It won't necessarily achieve the desired effect of the attack So the attack was successful The signal that would make the attack successful It is extraordinarily unique. Once you add that blur The signal of successful attack has changed Well, then it loses its attacking power But it has little effect on the original image You blur the original image a bit Actually, it does not really affect the result of image recognition Of course, this kind of blurring method It also has some side effects For instance, the image was not attacked at all originally. Then the Machine knows it's a Tiger Cat But if we slightly blur it The machine still recognises it correctly now But its confidence score has decreased After the picture becomes blurry The machine is more uncertain What it sees Therefore, with this kind of fuzzing method You can't overdo the blurring If you go too far It will cause some side effects The normal image you had has been altered Errors will also be recognized Such passive defense methods are actually like this There are many similar approaches Apart from blurring images There are other more sophisticated methods For example There's a series of practices Directly compress the image Then decompress You know when you have a picture After saving it as a JPEG file It will be distorted Maybe this matter of distortion to make the attacked image lose its It loses its attack power It allows the signal of the attack It's not that harmful So there are a series of methods Compacts the image in some way Well, if this kind of compression will distort The impact of the possible attack signal might be quite significant You can protect your model There is another method It's a method based on Generator Okay, we are in the assignment Everyone has already been trained on the Generator There is a series of methods that involve using an image This image may have been attacked May not have been attacked then we let our generator, It generates a picture identical to the input That is, input the picture Redrawn using a Generator Recreated once You might ask Eh, this is in the homework Our Generator will only generate some random pictures You have absolutely no control over what it generates We can control what the Generator produces This is not the focus of today I'll leave the references here for everyone to refer to Anyway, the Generator We can control its output We ask the Generator to output a picture This picture and the picture input into the Image Classifier The closer, the better Just imagine Assume someone attacked this image Adding a subtle noise that people can't see For the Generator At the time it was in training It has never seen this noise before It might not be able to generate either Reproduce these very small noises Then these tiny noises would disappear The image generated by Generator is noise-free You can achieve a defensive effect Okay, but this kind of passive defense, This kind of passive defense Have a very big weakness Although we were just talking about it Even though we just talked about the blurred effect Blurring has proven to be very effective But the method of blurring Once others know you're doing this It will lose its effectiveness immediately Why You can completely blur the subject Think of it as the first layer of the network So about the blurring issue It's like adding an extra layer in front of the Network So, assuming others know the front of your network By adding this layer Add this additional layer to the attack process It can generate a signal It can avoid this kind of defense method of obfuscation So, in this kind of passive defense It's both powerful and not powerful Its power is immense Assuming they don't know you used this trick It is very effective Once people know what moves you are using This kind of passive defense method It would instantly become ineffective So, what to do? There's another way to further enhance passive defense That is, adding randomness How do you do it That is, you know It's about how to not let others predict your next move You don't even know what your next move is This is the concept of 'deceive the enemy by first deceive oneself' When you are doing this Defense Combined with various defense mechanisms For example, in this piece of literature, they say Oh, the image we input We just need to make some small changes Can block the signal of the attack But the way we change it can't be known to others Once others know He can break through your defense So what should we do We do not even know how the picture might be modified After a picture comes in You might magnify it It might have been minimized Change its size at will Then next If you take this picture Pasted onto a certain gray background But the position of the paste is also random You also wouldn't know beforehand You would place this picture somewhere on a gray background And give it to your image recognition system Perhaps this kind of random defense Can be done at it can block attacks from others But this kind of random defense also has problems Think about it Assume others know your random distribution It may still be able to break this kind of defence And we've mentioned before Universal Attacks are possible Assuming all kinds of possibilities are known to you Then others just need to use Universal Attacks It finds an Attack Signal that can break all Regarding the variability of all pictures This kind of randomization method Can still potentially be breached Okay, what we talked about was passive defense There is also active defense Proactive defense means When we are training the model At the beginning We need to train a harder-to-breach model You need to start training something more robust Models that are less likely to be broken This type of training is called Adversarial Training So how does this Adversarial Training work? Meaning you have some training data This is the same as regular training You have an image Here we use x to represent Every image has a label, represented by ŷ And then We're using our training data to train a model After the training is complete Next, when you are in the training phase Attacks this model You train the data here Bring out everything from x1 to xN Producing some Signals Make these images become aggressive The image after the attack Called x Tilde You have X1 to XN here Every single image in the training data You bring everything out for the attack After the attack You can even consider the images post-attack as Label it correctly If you change x1 into x1 tilde Your Machine might identify mistakes Originally, it's a picture of a cat It might be incorrectly recognized as a keyboard But now you take the image wrongly identified as the keyboard Relabel it as a cat Because you already know that x1 Its label is cat So even if it becomes x Tilde It is now entered into the image recognition system After inputting this trained model The output Label has changed You also know what the correct label originally was You can retrieve the original correct label So now a new training data has been created Called x' In the new training data, Every piece of data has been attacked Originally, from x1 to XN Becomes x1 Tilde to XN Tilde But your label This should be ŷ1 I've noticed there's a mistake here This is not ŷy This should be ŷN This should be N, actually It should be N Okay, this y1 to yN This y1 to yN It's the same Then you mix up x and x′ Get more training data Then, retrain your model So the whole concept of Adversarial Training is We first train a model And then look at this model Are there any vulnerabilities? Identify the vulnerabilities And what comes next Then fill up the loopholes Continuously searching for vulnerabilities Fill it up when you find it This is the spirit of Adversarial Training Okay, about this method Actually, it can be seen as a kind of method of Data Augmentation Because we have produced more pictures X Tilde Then add these images to the training data This is equivalent to data augmentation. The process of Data Augmentation was used So some people will also consider Adversarial Training Consider it as a simple method of data enhancement It's done in this manner It's not only useful when your model might be attacked Sometimes even if no one is attacking your model You can also use this method to generate more data Then take more data for training It can also affect your model Its Robotics capabilities are superior. Is less likely to cause overfitting So even if no one is attacking your model You can also use Adversarial Training To strengthen your model Avoid the situation of overfitting This process, well Producing problematic pictures Then retrain This process, ah, can be done repeatedly You can generate images and retrain Regenerate the image, then train again You keep identifying problems and fixing them Find the problem and fix it This process can be repeated multiple times Until you're satisfied Like this, Adversarial Training It actually has a very large problem It might not be able to block the new methods of attack Let's assume today we are looking for x Tilde You are using Algorithm ABCD Then, when someone is actually attacking He invented an Algorithm F to attack your model Often succeed If there are actual attacks on your model today It hasn't been considered during Adversarial Training Then, Adversarial Training It may not be able to resist the new attack algorithm So there is still some Adversarial Training It's still possible to be breached Also, Adversarial Training And there's a bigger problem It requires a lot of resources More computational resources. Think about it Normally, when training a model It ends when you get here You have training data, and once the model is trained, it's over But the problem with Adversarial Training is First, you have to spend time Find these x Tilde How many pictures do you have You may need to find out how many X Tilde One million images You need to find a million x Tildes Only by doing this May take a lot of time So you will find that If your Dataset is large People usually don't want to do Adversarial Training (00:45:18) So Adversarial Training It is a more resource-intensive method To solve this problem Someone has invented a method called Adversarial Training For Free We won't go into detail here Some methods can achieve the effect of Adversarial Training But not as impactful as Adversarial Training The intensity of computing As to how to achieve Adversarial Training For Free How can we do it without using additional computation To achieve the effect of Adversarial Training Then, I will put the literature here Leaving it up to everyone's consideration. Okay, so far We are just informing everyone. There is this matter of attack The attack is likely to succeed A black box attack can also be successful Then, I introduced several classic defense methods So current attacks and defenses They all These methods are still continuously evolving So you will constantly see this at international conferences New attack methods have been proposed New defense methods have been proposed They are still evolving Who knows who will win in the end Okay, this is the current situation today 