【缺書】NT售價: 345 元
推 薦 序——梁忠近日AlphaGo和柯潔的黑白大戰,因為對陣的一方是中國頂級圍棋高手柯潔,所以引起國人的高度關注。如果利用百度搜索引擎,輸入AlphaGo,可以得出7000多萬條搜索結果,遠遠高于其他熱門詞條。事實上,AlphaGo只是Google擁有的兩套人工智能系統中的一套,是Google 2014年收購DeepMind的人工智能系統,專注于棋賽開發。Google另外一套人工智能系統就是本書介紹的TensorFlow系統。在TensorFlow等人工智能系統出現之前,計算機所做的事情最多就是按照人類編好的既定程序,簡單重復地、按部就班地運行,沒有超越人類事先為計算機設定的思維邊界。計算機與人類大腦相比,根本的區別在于不具備學習和創新能力。計算機最多是記憶的信息多,重復計算的速度快,不受情緒的影響等。但是,在TensorFlow等人工智能系統出現之后,計算機所做的事情除了簡單重復運行之外,更重要的是其具備了一定的自我學習和創新能力。TensorFlow等人工智能系統使得計算機在一定程度上能夠自主學習,自我提高,總結過去的經驗,汲取以往的教訓,具備一定的創新性。這一點從AlphaGo與柯潔對壘的3場棋局的結果中不難看出。這正是以AlphaGo和TensorFlow為代表的人工智能系統區別于以往任何計算機技術的關鍵所在,也是為什么TensorFlow被稱為互聯網以來唯一的“黑科技”項目的原因。具備了一定的自我學習和創造能力的人工智能系統的出現,將對經濟系統的各個領域產生重大影響。筆者有著超過20年境內外金融行業從業經歷,將從一個側面分享人工智能對金融領域的影響。從整個金融業的歷史沿革來看,大致經歷了四個階段:純人工階段、單機電腦階段、互聯網(含移動互聯網)階段和人工智能階段。隨著每個階段的漸次演進,提供金融服務一方的人力成本投入在逐漸減少,提供金融服務的效率在提高;對于接受金融服務的一方來說,金融服務的可獲得性以及便捷程度在逐漸增加,金融服務越來越圍繞著人進行,以人為中心的全方位的社會經濟服務體系正在形成。金融服務體系中銀行服務、證券服務、保險服務等的內部界限開始變得模糊,金融服務與其他非金融的社會經濟服務之間的界限開始變得不清。特別是金融業進入人工智能階段之后,人工智能系統將接受金融服務一方的身份特征數據、交易數據和行為數據等大數據,進行實時分析和動態跟蹤,以遠低于人工成本的成本,為每個人建立一個基于生命周期的綜合金融模型,對每個人未來的金融行為進行預測,自動為他們提供賬戶資金管理、貨幣兌換、證券買賣、保險購買、購房購車計劃、旅行休閑、子女教育、養老規劃等方面的金融建議和授權代理操作,并根據模型預測結果與實際情況相比對,自主學習和修正模型,以便更加貼合接受金融服務一方的真實金融意圖,使得人工智能模型的預測建議和人的實際金融行為無限接近。由此人類將從日常繁雜的各種金融交易中解放出來,投身到更需要自己或自己更感興趣的方面去。展望未來,人工智能的應用前景無限美好。探尋當下,人工智能在世界各地的各行各業方興未艾。千里之行,始于足下,何海群先生的《零起點TensorFlow快速入門》是有志于人工智能領域的IT人士的一塊敲門磚和鋪路石。祝愿人工智能在華夏大地生根發芽,開花結果。梁忠:中國人民大學財政金融系博士,曾任里昂證券CLSA分析員;瑞銀證券UBSS董事,財富管理中國研究部主管;瑞士信貸(香港)有限公司中國研究部董事;瑞信方正證券執行董事,研究部主管,具有20年國際頂級金融機構從業經歷。前 言感謝梁忠先生在百忙之中為本書撰寫序言,TensorFlow神經網絡作為互聯網以來唯一的“黑科技”項目,無遠弗屆,無分行業領域,對社會各界都會從上至下帶來徹底的顛覆與革命。梁忠先生作為非IT領域的學者、專家,從第三方角度,冷靜地觀察這場數字革命,同時可以向更多的大眾介紹這場革命的火花,推動行業變革,功莫大焉。TensorFlow黑科技與泰坦尼克經典大片《泰坦尼克》(Titanic),以1912年泰坦尼克號郵輪在其處女航行時撞擊冰山而沉沒的事件為背景,描述了處于不同階層的兩個人——窮畫家杰克和貴族女露絲拋棄世俗的偏見墜入愛河,最終杰克把生存的機會讓給了露絲的感人故事。在機器學習領域,《Titanic數據集》是與《IRIS數據集》并列的經典數據集。Titanic數據集是根據泰坦尼克號上的人員是否存活而生成的數據集,是國際著名的機器學習大賽Kaggle的入門練手題。Titanic數據集共有1237個數據,其中包括819個訓練集和418個測試集。數據集中共有12個字段,包括年齡、性別、船廠等級等12個屬性。《泰坦尼克》案例就是通過使用神經網絡算法,根據Titanic數據集,計算經典大片《泰坦尼克》(Titanic)的男女兩位主人公:窮畫家杰克和貴族女露絲,每個人的生存概率。初看這個問題,似乎是“不可能完成的任務”,不過,TensorFlow既然被譽為自Internet以來唯一的黑科技,自然有其解決的辦法。其中的一個案例,計算結果表明:杰克獲救的機會是16.7%,露絲是95.8%。曾經有歷史學者,通過研究歷史數據中的食鹽、布匹消費量,而推斷當時相關國家的人口、經濟、軍事等實力,并衍生出計量歷史學這樣一個學科。馬云曾經說過:“要么電子商務,要么無商可務。”也許,未來的學術領域,也會“要么AI,要么NO-A。”這里的A,代表Anything。相信隨著類似Titanic數據集案例、梵高畫風等一系列基于TensorFlow等神經網絡、深度學習項目的不斷涌現,未來的各個學科會基于AI人工智能進行新的學術重組。更好的TensorFlow入門教程本書是目前較好的TensorFlow機器學習入門教程:? 無需任何理論基礎,全程采用MBA案例模式,懂Excel就可看懂。? 獨創的逆向式課件模式,結合TensorBoard可視化系統,案例、圖表優先,層層剖析。? 率先系統介紹TensorFlow經典入門案例合集,Pkmital帕拉格?庫馬爾案例合集。? 率先系統介紹TensorFlow三大簡化接口Keras、TFLearn和TensorLayer,并提供多組配套案例。? 三位一體的課件模式:圖書+開發平臺+成套的教學案例,系統講解,逐步深入。? 業內率先發布系統化的TensorFlow函數和API中文文檔、神經網絡算法模型匯編,可作為案頭工具書隨時查閱。本書采用獨創的黑箱模式,MBA案例教學機制,結合大量經典案例,介紹TensorFlow系統和常用的深度學習算法。“Python量化三部曲”“Python量化三部曲”包括:? 《零起點Python大數據與量化交易》(入門課程);? 《零起點Python機器學習與量代交易》(重點分析sklean);? 《零起點TensorFlow與量化交易》(重點分析TensorFlow)。此外還有幾部補充作品:? 《零起點Python足彩大數據與機器學習實盤分析》;? 《零起點Python機器學習快速入門》;? 《零起點TensorFlow快速入門》。本書是《零起點Python機器學習快速入門》的后續之作,為了省略篇幅,省略了Python基礎教程,以及sklearn等機器學習方面的入門內容,沒有經驗的讀者,建議先閱讀《零起點Python機器學習快速入門》,再開始本書的學習,這樣會收到事半功倍的效果。本書原本是極寬量化培訓課程高級班的教學課件,建議“Python量化三部曲”的讀者,在讀完入門課程后,先閱讀本書和《零起點Python機器學習快速入門》,再閱讀后面兩部作品。網絡資源本書的案例程序已經做過優化處理,無需GPU顯卡,全部支持單CPU平臺,不過為避免版本沖突,請盡量使用zwPython 2017m6版本運行本書的案例程序。使用其他Python運行環境的讀者,如Linux、Mac平臺的用戶,請盡量使用Python 3.5和TensorFlow 1.1版本,請自行安裝其他所需的模塊庫,如NumPy、Pandas、TuShare等第三方模塊庫。此外需要注意的是,大家運行本書案例得到的結果可能與書中略有差別,甚至大家多次運行同一案例,每次運行的結果可能都有所差異,這屬于正常情況。這是因為TensorFlow等深度學習系統內部都使用了隨機數作為種子數,用于系統變量初始化等操作,致使每次分析的起點或者中間參數有所不同造成的。本書的讀者QQ群是:124134140(zwPython量化交易&大數據)。 本書有關的程序和數據下載,請瀏覽網站:TopQuant.vip極寬量化社區,網站【下載中心】有最新的程序和數據下載地址。本書在TopQuant.vip極寬量化社區設有專欄,對本書、人工智能和機器學習有任何建議的,請在社區相關專欄發布信息,我們會在第一時間進行反饋和答復。目錄設置為運行本書課件程序,用戶需要下載以下3個軟件,并設置好目錄。? zwPython,必須是根目錄、Python開發平臺,為避免版本沖突,請盡量使用zwPython 2017m6版本。? ailib,也必須是根目錄、AI智能模型和TnensorBoard可視化日志數據目錄。? TensorFlow深度學習課件,本書配套教學課件Python程序源碼,請盡量下載最新版本,目錄不必是根目錄,但必須與Ailib在同一個硬盤,可以直接復制到Ailib目錄之下。以上軟件、程序最好保存在SSD固態硬盤,此做法可以讓速度快很多;目錄名稱不要使用中文名稱,壓縮文件中的中文名稱只是為了便于用戶下載。致謝本書的出版要特別感謝電子工業出版社的黃愛萍編輯,感謝她在選題策劃和稿件整理方面做出的大量工作。同時,在本書創作過程中,極寬開源量化團隊和培訓班的全體成員,提出很多寶貴的意見,并對部分課件程序做了中文注解。特別是吳娜、余勤、孫洋、王碩幾位成員,為極寬開源量化文庫和 TopQuant極寬量化開源軟件編寫文檔,并且在團隊成員管理方面做了大量工作,為他們的付出表示感謝!本書完稿時,恰逢小女星語20歲生日。謹以本書,獻給我聰明美麗的女兒,作為她的成年禮。愿她的一生,幸福安康。何海群(字王)北京極寬科技有限公司CTO2017年6月18日
TensorFlow是近年來影響最大的神經網絡和深度學習平臺,本書以生動活潑的語言,從入門者的角度,對TensorFlow進行介紹,書中包含大量簡單風趣的實際案例,如孤獨的神經元、梵高畫風等,讓廣大初學者快速掌握神經網絡的基本編程,為進一步學習人工智能奠定扎實的基礎。
第1章 不朽的梵高 11.1 星夜傳奇 11.2 TensorFlow簡介 3案例1-1:星夜傳奇實戰編程 5案例1-2:星夜傳奇批量編程 111.3 十萬次迭代 141.4 黑箱大法 161.5 超級KISS法則與大智若愚 17第2章 TensorFlow安裝 222.1 目錄結構 222.2 化繁為簡 232.3 CPU版本安裝 252.4 GPU版本安裝 25案例2-1:GPU開發環境測試 28第3章 可視化AI圖表 333.1 TensorBoard可視化工具 33案例3-1:hello,愛麗絲 343.1.1 TensorBoard主界面 363.1.2 快速啟動腳本 383.2 加法器 41案例3-2:加法器的算法結構圖 41案例3-3:加法器的變化版本 43案例3-4:乘法器的算法結構圖 44第4章 快速入門 474.1 你好,神經網絡 47案例4-1:字符串表達式 47案例4-2:hello,TensorFlow 484.2 圖運算與Session 49案例4-3:缺省圖運算 49案例4-4:可視化Session 524.3 常量、變量與占位符 56案例4-5:常量加法 57案例4-6:加法與占位符 58案例4-7:加法與變量 594.4 TensorFlow常用數值運算 62第5章 TensorFlow總覽 635.1 TensorFlow產業鏈關系圖 655.2 TensorFlow模塊列表 665.2.1 源碼目錄結構 66案例5-1:內置模塊列表 685.2.2 模塊結構圖 705.2.3 API抽象接口示意圖 715.2.4 神經網絡三大模塊 715.3 數據類型 725.4 TensorFlow常用術語 735.5 TensorFlow簡化接口 77第6章 基礎知識 796.1 數據流圖 796.2 設備切換Device 816.3 三大數據類型 82案例6-1:變量操作 866.4 Feed數據提交 89案例6-2:Feed提交數據 90案例6-3:批量Feed提交數據 92案例6-4:批量Feed提交多維數據 926.5 Fetch獲取數據 93案例6-5:Fetch獲取數據 93案例6-6:Fetch獲取多維數組 95案例6-7:會話Session 976.6 批尺寸Batch_Size 99第7章 孤獨的神經元 1017.1 神經元模型 101案例7-1:單細胞算法 1027.2 可視化分析 107案例7-2:單細胞算法優化版 108第8章 歸來吧,數據 1128.1 分類——機器學習的核心 1128.2 萬物皆回歸 112案例8-1:傳統機器學習 114案例8-2:TensorFlow線性回歸模型 1178.3 模型簡理 124案例8-3:TensorFlow模型保存 125案例8-4:TensorFlow模型讀取 126第9章 Pkmital入門案例套餐(上) 1289.1 Halcon簡介 1289.2 帕拉格?庫馬爾案例合集簡介 1299.3 Pkmital案例集合詳解 1319.4 TensorFlow基礎 132案例9-1:TensorFlow基礎權重設置和圖形計算 132案例9-2:圖像的卷積計算 1409.5 回歸算法 145案例9-3:線性回歸 145案例9-4:線性回歸修正版 1509.6 多項式回歸 151案例9-5:多項式回歸 151案例9-6:多項式回歸修正版 1539.7 邏輯回歸模型 154案例9-7:邏輯回歸模型 1549.8 CNN卷積神經網絡算法 159案例9-8:CNN卷積神經網絡 159第10章 Pkmital入門案例套餐(下) 16510.1 自編碼算法 165案例10-1:自編碼算法 16510.2 dAE降噪自編碼算法 170案例10-2:dAE降噪自編碼算法 17010.3 CAE卷積編碼算法 177案例10-3:CAE卷積編碼算法 17710.4 DRN深度殘差網絡 183案例10-4:DRN深度殘差網絡 18310.5 VAE變分自編碼算法 189案例10-5:VAE變分自編碼算法 18910.6 TDV聯合矩陣模型 199第11章 TensorFlow內置案例分析 20111.1 預備知識 20211.2 Mnist手寫數字識別 211案例11-1:Mnist初級案例 211案例11-2:Mnist專業版本 21511.3 FFNNs前饋神經網絡模型 224案例11-3:FFNNs前饋神經網絡模型 224第12章 TensorLayer案例分析 23412.1 手寫識別算法 234案例12-1:Mnist手寫識別 23412.2 Mnist神經網絡模型合集 242案例12-2:Dropout網絡模型 243案例12-3:DropConnect網絡模型 253可視化數據 256案例12-4:dAE降噪自編碼算法1 257可視化數據 260案例12-5:dAE降噪自編碼算法2 260可視化數據 262案例12-6:CNN卷積神經網絡算法 263可視化數據 266第13章 TFLearn案例分析 26713.1 生存游戲 26813.1.1 泰坦尼克數據集 26813.1.2 Kaggle機器學習公開賽 269案例13-1:泰坦尼克號生存與死亡 27013.2 線性回歸 274案例13-2:線性回歸模型 27513.3 模型管理 278案例13-3:保存讀取模型數據 27813.4 超智能體 283案例13-4:超智能體:NOT取反運算 284案例13-5:超智能體:OR或運算 286案例13-6:超智能體:AND(與)運算 288案例13-7:超智能體:XOR(異或)運算 28913.5 CNN卷積神經網絡算法 292案例13-8:CNN卷積神經網絡算法 292第14章 Keras案例分析 29714.1 Keras模型 29814.2 Keras使用流程 29914.3 Keras常用模塊 30014.4 Keras模型可視化 301案例14-1:MLP多層神經網絡 303案例14-2:CNN卷積神經網絡 309案例14-3:IRNN修正循環神經網絡 316案例14-4:HRNN分層循環神經網絡 322第15章 TensorFlow常用運行模式 32715.1 深度學習三大要素 32715.2 神經網絡基本結構 32815.3 基本神經元層 32915.4 神經網絡通用流程 33515.5 Loss損失函數 33815.6 TensorFlow常用優化算法 340