商品簡介
從2014年至今,與GAN有關的論文數量急劇增加,從穀歌學術的資料來看,數量仍在不斷增加中。究其原因,除了科學研究本身的魅力之外,諸如文本到圖像的生成、圖像到圖像的生成等應用研究也讓業界非常興奮,給人工智能領域帶來諸多可能性。
本書是GAN的入門書籍,結合基礎理論、工程實踐進行講解,深入淺出地介紹GAN的技術發展以及各類衍生模型。本書面向機器學習從業人員、高校相關專業學生以及具備一定基礎的人工智能技術愛好者。書中包含GAN的理論知識與代碼實踐(示例代碼可以從華章官網搜索下載),可幫助讀者理解GAN的技術原理與實現細節。
本書主要內容
人工智能入門知識與開發工具
GAN的理論與實踐
DCGAN、WGAN、cGAN等主流GAN衍生模型
文本到圖像、圖像到圖像以及離散資料的生成方法
GAN與強化學習的關聯
BigGAN、StyleGAN等前沿GAN模型
多媒體與藝術設計領域中的GAN應用
作者簡介
史丹青
同濟大學博士研究生,專業方向為人工智能與資料設計,在計算機頂級會議上發表多篇智能生成相關論文。曾擔任語憶科技聯合創始人兼技術負責人,擁有多年人工智能領域創業與實戰經驗,具備深度學習、自然語言處理以及資料可視化等相關知識與技能。他是人工智能技術的愛好者,喜歡擁抱一切新興科技,並始終堅信技術分享和開源精神的力量。
名人/編輯推薦
1、本書第2版跟蹤近兩年生成對抗網絡(GAN)技術的發展和變化,包括離散資料生成、GAN與強化學習的關聯、海量級高質量圖像生成技術等內容,新增了BigGAN、StyleGAN等圖像生成模型的介紹與技術解析。這些內容更新與第1版內容有機地結合,深入淺出地闡述了生成對抗網絡技術原理和演進,通過代碼實例揭示了生成對抗網絡技術實際應用的方法,方便讀者學習入門。
2、書中所有示例代碼基於Tensorflow2.0進行了更新,全部支援在Tensorflow2.0環境下運行,方便讀者上手實踐,深入瞭解技術實現細節。
3、讀者可在華章圖書網站該書網頁下載書中全部示例代碼。
序
生成對抗網絡(GAN)毫無疑問是 2018 年最熱門的人工智能技術,被美國《麻省理工科技評論》評選為 2018 年“全球十大突破性技術”。從 2014 年至今,與 GAN 有關的論文數量急速上升。網絡上有人整理了近年來的 GAN 模型,截至 2018 年 2 月已經有超過 350 個不同形態的變種,並且數量仍然在持續增加中。在圖像生成模型的質量上,生成對抗網絡技術可以說實現了飛躍,很多衍生模型已經在一定程度上解決了特定場景中的圖像生成問題。此外,諸如文本到圖像的生成、圖像到圖像的生成等應用研究也讓工業界與學術界非常興奮,為人工智能行業帶來了非常多的可能性。
讓 GAN 走入大眾視野的是 2018 年 10 月舉辦的一場拍賣會,由法國藝術創作團隊 Obvious 使用 GAN 算法生成的畫作以 43 萬美元的高價被拍走,價格甚至遠超同場拍賣的畢卡索作品。AI 技術越來越接近人們的生活,如果說 AlphaGo 只是陪你玩遊戲的大師,那這次讓大家轟動的作品拍賣似乎在挑戰人類對於藝術的創作與審美。
在之後的兩年中,GAN 從一個尚待完善的新興技術逐步發展成熟。而在幾年前,大部分相關文章關注的還是針對手寫資料集進行生成,最近隨著谷歌、英偉達等大廠的入局,我們看到了諸如 BigGAN 和 StyleGAN 這樣幾乎逼真的人臉生成效果,甚至StyleGAN 可以準確地控制生成人臉的狀態。這些振奮人心的結果也讓相關從業者和技術愛好者渴望瞭解這些技術背後的原理。
目前網絡上關於生成對抗網絡的介紹林林總總,越來越多的人對它的出現感到好奇,想知道計算機是如何通過博弈的方法來進行自我優化的。我也曾在知乎上寫過一篇介紹性文章,但寫完之後總覺得不夠盡興,希望有機會把這個領域相對完整的知識體系呈現在初學者面前,並幫助那些對人工智能技術感興趣的朋友,讓他們儘量少繞彎路,從而瞭解這個前沿的新興領域。
本書面向機器學習從業人員、高校相關專業學生以及具備一定基礎的人工智能領域愛好者,包含了生成對抗網絡的理論知識與項目實踐。通過本書的學習,讀者能夠理解生成對抗網絡的技術原理,並通過書中的代碼實例瞭解技術細節。本書儘量避免出現需要高性能計算設備才可以運行的項目,以便讀者可以在感受到生成對抗網絡的魅力之後,有機會在自己的設備上嘗試運行一些項目。只有通過不斷實踐,才能真正理解生成對抗網絡,並將其應用到自己的學習與工作中。
本書主要內容
本書共 12 章。第 1 章為入門章節,為讀者介紹人工智能領域目前的發展狀況,以及生成對抗網絡的基本概念和它在整個研究領域中的狀況。第 1 章不會涉及機器學習與深度學習的理論與實踐細節,但在之後的生成對抗網絡學習中會用到相關概念,因此希望讀者可以自己去補全這些基礎知識。
第 2 章是程序設計基礎章節,是對機器學習與深度學習程序設計語言、框架以及工具應用的介紹,涉及的內容包括 Python 語言及協力廠商工具、TensorFlow 框架以及 Keras 框架。如果你已經具備了深度學習領域的程序設計基礎,可以選擇性地跳過本章部分內容。
第 3 章討論生成對抗網絡的整體框架,將按照基礎概念、理論推導、可視化理解以及具體工程實踐的順序來帶領大家認識 GAN。最後的代碼部分使用 TensorFlow 實現,由於不會涉及大量的運算,讀者可以按照書中的示例直接在筆記型計算機上運行代碼,以加深對知識的理解。
第 4~6 章會在原始 GAN 的基礎上介紹各種不同結構,但都是具有標誌性特點的GAN。正因為有這樣的多樣性,才使得該領域一直充滿活力。
第 4 章介紹基於深度卷積神經網絡的生成對抗網絡(DCGAN),這是一種在圖像生成領域非常流行的框架結構,由於對於卷積層的使用以及一些其他的優化,該模型在圖像生成的時候具有更高的質量。本書會使用 Keras 框架的代碼來搭建面向手寫資料集的 DCGAN 整體框架以及訓練代碼。在 Keras 的幫助下,我們可以比較簡便地完成整個模型,這也是深度學習框架給大家帶來的便利。由於使用了卷積層,所以在筆記型計算機上運行需要花費一些時間,如果讀者希望快速得出結果,可以使用第 2 章介紹的雲平臺進行 GPU 運算。最終,這一章還會給出 DCGAN 的一些創新性應用,這也為之後GAN 在多媒體領域的應用打下了基礎。
第 5 章首先介紹目前 GAN 結構存在的問題,並由這個問題出發引出業界著名的模型 WGAN。WGAN 的理論推導看起來有些複雜,但是最終得出的優化方法卻簡單得令人吃驚。本章的實踐部分是在 DCGAN 的 Keras 代碼基礎上修改完成的,最終讀者會發現只需要幾處代碼調整就可以完成一個理論上更優的模型設計。這也從另一個側面反映了理論研究的重要性,只有真正懂得事物背後的道理,才能給出最優秀的方案。本章最後會給出對 WGAN 本身算法的改進——WGAN-GP。WGAN-GP 在業界屬於比較優秀的方案,官方也給出了開原始程式碼,而且大量的論文會用它作為比較物件。
第 6 章涉及一些不同結構的 GAN,包括監督式學習、半監督式學習與無監督式學習。在這一章中我們也可以看到 GAN 的各種可能性,比如在有標籤的條件式生成對抗網絡(cGAN)的説明下,我們可以根據設定好的標籤來進行具體分類圖片的生成,而通過無標籤生成的 InfoGAN 可以讓隱含編碼(latent code)中的每一項都具有實際意義,並通過調節輸入的參數對生成內容進行定制。
第 7 章與第 8 章的核心思想建立在前文 cGAN 研究的基礎上,但是方法和網絡都進一步做了改進。第 7 章為文本到圖像的生成,使用者只需輸入一句話就可以得到想要的圖像。而第 8 章則是使用者根據自己提供的圖像最終呈現出一幅理想的畫面,其中涉及知名的算法 Pix2Pix 以及 CycleGAN 等。這些項目的源碼大多是開源的,感興趣的讀者可以根據官網或書中提供的方法對這些模型應用進行試驗。
第 9 章主要介紹 GAN 在離散資料上的生成,通過引入策略梯度下降的方法解決了GAN 在離散資料上不可導的問題,其中介紹了著名的方法 SeqGAN。同時,也會介紹在自然語言生成的場景下如何應用與優化基於 GAN 的離散資料生成技術。
第 10 章在離散資料生成的基礎上進一步深入,首先會介紹離散決策常用的算法——強化學習,並闡明 GAN 與強化學習之間存在的相互關係。除此之外,也涉及強化學習的衍生方法,包括模仿學習與逆向強化學習,並探討了它們與 GAN 的結合。
第 11 章首先介紹評估生成模型的一系列標準以及現有的一些難點問題,隨後展示了近年來 GAN 的一系列突破性研究,尤其是圖像生成質量和多樣性方面的提升,重點介紹了目前最強大的兩個 GAN 模型——BigGAN 與 StyleGAN。
第 12 章為讀者更具體地介紹 GAN 的應用,從多媒體領域講到藝術與設計領域,展示 GAN 在這些行業的發展中提供了怎樣的幫助。由於 GAN 還是一項非常“年輕”的技術,因此也希望通過這一章來啟發讀者,在實際工作與科研過程中進一步思考還有哪些更好的應用場景,也許它就會成為你使用人工智能技術改變的下一個行業。
相較於第 1 版,本書新增的章節為第 9~11 章,重點介紹了最近 GAN 技術發展的新技術與應用。而且,本書修訂了第 2 章的基礎知識介紹部分,從 TensorFlow 1.0 全面升級到了 TensowFlow 2.4。在此基礎上,其他章節中的所有代碼也都支持 TensorFlow2.4 版本。除此之外,部分內容也已根據技術發展進行了微調。
致謝
首先要感謝學術界數不清的優秀科研人員耕耘在科學技術的前沿,正是他們產出的高質量研究成果以及論文推動著時代的發展,帶來了這個全新的人工智能時代。本書也是站在巨人的肩膀上,大量參考了相關的文獻材料,沒有這些研究者就沒有這本書的誕生。也要感謝互聯網上願意分享的優秀技術博主和開發者,我從他們的分享中學到了太多太多。感謝開源平臺 GitHub 聚集了數不清的開發者,開源精神讓開發變得更加便捷,
也讓知識傳播更加高效。
感謝機械工業出版社的朱捷先生對我的支援,他在我寫作的過程中提供了非常多的思路與幫助,也正是由於他對我的認可和鼓勵,才促成了我完成本書。此外也感謝所有為本書的出版付出過努力的工作者。
最後感謝我的父母以及教導我的老師,是他們的栽培成就了現在的我,在這裡再一次感恩他們對我的付出。
與我聯繫
讀者可以通過知乎與我取得聯繫,我很樂意收到您的私信,並與您進行相關技術的交流。敬請各位讀者與行業專家對本書不足的地方予以批評和指正。
目次
第 1 章 人工智能入門 1
11 人工智能的歷史以及發展 1
111 人工智能的誕生 3
112 人工智能的兩起兩落 6
113 新時代的人工智能 8
12 機器學習與深度學習 10
121 機器學習分類 11
122 神經網絡與深度學習 12
123 深度學習的應用 13
13 瞭解生成對抗網絡 15
131 從機器感知到機器創造 15
132 什麼是生成對抗網絡 18
14 本章小結 20
第 2 章 預備知識與開發工具 21
21 Python 語言與開發框架 21
211 Python 語言 21
212 常用工具簡介 23
213 協力廠商框架簡介 26
22 TensorFlow 基礎入門 27
221 TensorFlow 簡介與安裝 27
222 TensorFlow 實例:圖像分類 30
23 Keras 基礎入門 32
231 Keras 簡介與安裝 32
232 Keras 使用入門 34
233 Keras 實例:文本情感分析 37
24 本章小結 39
第 3 章 理解生成對抗網絡 40
31 生成模型 40
311 生成模型簡介 40
312 自動編碼器 42
313 變分自動編碼器 44
32 GAN 的數學原理 47
321 最大似然估計 47
322 GAN 的數學推導 50
33 GAN 的可視化理解 54
34 GAN 的工程實踐 55
35 本章小結 63
第 4 章 深度卷積生成對抗網絡 64
41 DCGAN 的框架 64
411 DCGAN 設計規則 64
412 DCGAN 框架結構 68
42 DCGAN 的工程實踐 69
43 DCGAN 的實驗性應用 77
431 生成圖像的變換 77
432 生成圖像的算數運算 79
433 殘缺圖像的補全 81
44 本章小結 83
第 5 章 Wasserstein GAN 84
51 GAN 的優化問題 84
52 WGAN 的理論研究 88
53 WGAN 的工程實踐 91
54 WGAN 的實驗效果分析 95
541 代價函數與生成質量的相關性 95
542 生成網絡的穩定性 96
543 模式崩潰問題 99
55 WGAN 的改進方案:WGAN-GP 99
56 本章小結 103
第 6 章 不同結構的 GAN 104
61 GAN 與監督式學習 104
611 條件式生成:cGAN 104
612 cGAN 在圖像上的應用 106
62 GAN 與半監督式學習 109
621 半監督式生成:SGAN 109
622 輔助分類生成:ACGAN 111
63 GAN 與無監督式學習 112
631 無監督式學習與可解釋型特徵 112
632 理解 InfoGAN 114
64 本章小結 119
第 7 章 文本到圖像的生成 120
71 文本條件式生成對抗網絡 120
72 文本生成圖像進階:GAWWN 124
73 文本到高質量圖像的生成 127
731 層級式圖像生成:StackGAN 128
732 層級式圖像生成的優化:StackGAN-v2 133
74 本章小結 135
第 8 章 圖像到圖像的生成 136
81 可交互圖像轉換:iGAN 136
811 可交互圖像轉換的用途 136
812 iGAN 的實現方法 138
813 iGAN 軟件簡介與使用方法 141
82 匹配資料圖像轉換:Pix2Pix 144
821 理解匹配資料的圖像轉換 144
822 Pix2Pix 的理論基礎 146
823 Pix2Pix 的應用實踐 150
83 非匹配資料圖像轉換:CycleGAN 157
831 理解非匹配資料的圖像轉換 157
832 CycleGAN 的理論基礎 162
833 CycleGAN 的應用實踐 165
84 多領域圖像轉換:StarGAN 171
841 多領域的圖像轉換問題 171
842 StarGAN 的理論基礎 174
843 StarGAN 的應用實踐 177
85 本章小結 182
第 9 章 序列資料的生成 183
91 序列生成的問題 183
92 GAN 的序列生成方法 184
93 自然語言生成 187
94 本章小結 191
第 10 章 GAN 與強化學習及逆向強化學習 192
101 GAN 與強化學習 192
1011 強化學習基礎 192
1012 Actor-Critic 195
1013 GAN 與強化學習的關聯 196
102 GAN 與逆向強化學習 197
1021 逆向強化學習基礎 197
1022 經典 IRL 算法 198
1023 GAN 的模仿學習:GAIL 200
103 本章小結 201
第 11 章 新一代 GAN 202
111 GAN 的評估方法 202
112 GAN 的進化 205
1121 SNGAN 與 SAGAN 205
1122 BigGAN 206
1123 StyleGAN 208
113 本章小結 210
第 12 章 GAN 的應用與發展 211
121 多媒體領域的應用 211
1211 影像處理 211
1212 音訊合成 218
122 藝術領域的應用 221
1221 AI 能否創造藝術 221
1222 AI 與計算機藝術的發展 223
1223 藝術生成網絡:從藝術模仿到創意生成 231
123 設計領域的應用 238
1231 AI 時代的設計 238
1232 AI 輔助式設計的研究 240
124 安全領域的應用 249
125 本章小結 252
參考文獻 253
主題書展
更多書展購物須知
大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。
特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。
無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。
為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。
若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。





