走向TensorFlow 2.0:深度學習應用編程快速入門
  • 推薦0
  • 收藏0
  • 瀏覽927

走向TensorFlow 2.0:深度學習應用編程快速入門

趙英俊 (作者)  葛娜 (責任編輯)

  • 書  號:978-7-121-37646-7
  • 出版日期:2019-11-08
  • 頁  數:180
  • 開  本:16(185*235)
  • 出版狀態:上市銷售
  • 維護人:張春雨
本書是TensorFlow 2.0編程實踐的入門類書籍,目的是在TensorFlow 2.0正式版發布之際能夠幫助大家快速了解其核心特性及基本編程技巧。本書通過5個常用的人工智能編程案例,幫助大家掌握如何在工作中使用TensorFlow 2.0進行應用開發。本書內容覆蓋了Python和TensorFlow基礎入門、自然語言處理和CV領域的實踐案例、模型的服務化部署,希望在基于TensorFlow 2.0的人工智能編程上能夠助你一臂之力。
V2首著問世 帶你跨越顛覆性新版 從1到2快人一步 從0到2一步到位
趙英?。喊⒗镌迫斯ぶ悄茴I域MVP,目前在阿里云從事產業、工業智能方向的解決方案架構師工作,基于數據智能、人工智能等技術和產品解決傳統產業、工業的痛點和難點問題?,F個人維護一個優秀的開源NLP項目——基于Seq2Seq的中文智能聊天機器人,目前GitHub stars超過1100。
前  言


坦白地說,在我的技術生涯規劃中還未想過要在30歲生日之前出一本技術書。在30歲這一年里,我感覺有280天以上是每天工作超過12小時的,每天我積極處理工作上的事情以求在事業上取得成就、學習自己欠缺的技術以求提升能力、輸出自己學到的知識以期幫助更多的人;在30歲這一年里,我第一次體會到頸椎病帶來的痛苦,也將一直引以為傲的視力熬成了近視。之所以如此逼自己,大概是因為自己的不自信和癡癡的責任心在作祟。
創作初衷
最開始籌劃這本書的時候,也只是想將自己在小象學院的課程內容整理成書(課程內容是關于TensorFlow 1.x的),但是當看到TensorFlow 2.0發布計劃公布之后,我又覺得寫一本關于TensorFlow 1.x的書是沒有意義的,并且會浪費讀者的時間和精力。因此,我徹底推翻書稿原來規劃的內容,重新調整所有的知識點,所有的實踐案例都用TensorFlow 2.0進行重新編程,從而導致交稿日期一拖再拖。說到這里,我要特別感謝電子工業出版社的張春雨老師,他一直在推動、鼓勵甚至督促我,使我跌跌撞撞、寫寫停停完成了初稿、提升稿、提交稿。在本書寫作過程中,江郎才盡和被掏空的感覺對我來說是最大的煎熬。我一直是一個喜歡分享知識和觀點的人,但是這種成體系的、持續的、面向大眾的分享和輸出讓我對自己的要求不斷提高,總是擔心如果寫錯了會誤人子弟。這不是一個輕松的過程,尤其是在創業的初期,我首先要做的是全力以赴、出色地完成產品和技術工作,然后用本來就不多的休息時間來完成技術的提升和本書的編寫。從一個追求技術深度的技術人員的視角來看,本書不能令我百分百滿意,但是萬事總要邁出第一步,希望這本書能夠為讀者帶來一定的參考和學習價值。
內容結構
本書在內容規劃上分3個部分,共7章,具體如下。
第1部分:編程基礎入門,包括Python基礎編程入門和TensorFlow 2.0快速入門知識。

? 第1章 Python基礎編程入門:本章闡述了Python的歷史、基本數據類型、數據處理工具Pandas、圖像處理工具PIL等,基本覆蓋了在后續章節中要用到的Python編程知識和工具。
? 第2章 TensorFlow 2.0快速入門:本章從快速上手的角度,通過TensorFlow 2.0的簡介、環境搭建、基礎知識、高級API編程等內容詳細講解了TensorFlow 2.0編程所需的知識和技巧。

第2部分:TensorFlow 2.0編程實踐,講解了4個編程案例,分別為基于CNN的圖像識別應用、基于Seq2Seq的中文聊天機器人、基于CycleGAN的圖片風格遷移應用、基于Transformer的文本情感分析。

? 第3章 基于CNN的圖像識別應用編程實踐:本章介紹了基于CNN實現對CFAIR-10圖像數據的訓練以及在線圖像分類預測,包括CNN基礎理論知識、編程中用到的TensorFlow 2.0 API詳解、項目工程結構設計、項目實現代碼詳解等。
? 第4章 基于Seq2Seq的中文聊天機器人編程實踐:本章介紹了基于Seq2Seq實現對“小黃雞”對話數據集的訓練以及在線中文聊天,包括自然語言模型、RNN(循環神經網絡)、Seq2Seq模型、編程中用到的TensorFlow 2.0 API詳解、項目工程結構設計、項目實現代碼詳解等。
? 第5章 基于CycleGAN的圖片風格遷移應用編程實踐:本章介紹了基于CycleGAN實現對Apple2Orange數據集的訓練以及圖像在線風格遷移,包括GAN基礎理論知識、CycleGAN算法原理、編程中用到的TensorFlow 2.0 API詳解、項目工程結構設計、項目實現代碼詳解等。
? 第6章 基于Transformer的文本情感分析編程實踐:本章介紹了基于Transformer的變形結構實現對IMDB評價數據集的訓練以及在線對文本的情感分析和預測,包括Transformer基本結構、注意力機制、位置編碼、編程中用到的TensorFlow 2.0 API詳解、項目工程結構設計、項目實現代碼詳解等。

第3部分:TensorFlow 2.0模型服務化部署,采用TensorFlow Serving實現對完成訓練的模型進行生產環境的服務化部署。

? 第7章 基于TensorFlow Serving的模型部署實踐:本章介紹了基于TensorFlow Serving框架實現對基于CNN的圖像分類模型的服務化部署,包括TensorFlow Serving框架簡介、TensorFlow Serving環境搭建、編程中用到的TensorFlow 2.0 API詳解、項目工程結構設計、項目實現代碼詳解等。
致謝
最后,衷心感謝我的妻子包佳楠,感謝她一直以來的鼓勵,以及一絲不茍地校正書稿中的語法錯誤和錯別字,每次當我想要放棄的時候,她總是用幾句不輕不重的話語讓我重新回到本書的編寫中來。

目錄

第1章 Python基礎編程入門 1
1.1 Python的歷史 1
1.1.1 Python版本的演進 1
1.1.2 Python的工程應用情況 2
1.2 Python的基本數據類型 2
1.3 Python數據處理工具之Pandas 6
1.3.1 數據讀取和存儲 7
1.3.2 數據查看和選取 8
1.3.3 數據處理 11
1.4 Python圖像處理工具之PIL 14
1.4.1 PIL簡介 14
1.4.2 PIL接口詳解 14
1.4.3 PIL圖像處理實踐 18
第2章 TensorFlow 2.0快速入門 21
2.1 TensorFlow 2.0簡介 21
2.2 TensorFlow 2.0環境搭建 22
2.2.1 CPU環境搭建 22
2.2.2 基于Docker的GPU環境搭建 23
2.3 TensorFlow 2.0基礎知識 25
2.3.1 TensorFlow 2.0 Eager模式簡介 25
2.3.2 TensorFlow 2.0 AutoGraph簡介 26
2.3.3 TensorFlow 2.0低階API基礎編程 26
2.4 TensorFlow 2.0高階API(tf.keras) 32
2.4.1 tf.keras高階API概覽 32
2.4.2 tf.keras高階API編程 34
第3章 基于CNN的圖像識別應用編程實踐 36
3.1 CNN相關基礎理論 36
3.1.1 卷積神經網絡概述 36
3.1.2 卷積神經網絡結構 36
3.1.3 卷積神經網絡三大核心概念 38
3.2 TensorFlow 2.0 API詳解 38
3.2.1 tf.keras.Sequential 39
3.2.2 tf.keras.layers.Conv2D 41
3.2.3 tf.keras.layers.MaxPool2D 42
3.2.4 tf.keras.layers.Flatten與tf.keras.layer.Dense 42
3.2.5 tf.keras.layers.Dropout 43
3.2.6 tf.keras.optimizers.Adam 43
3.3 項目工程結構設計 44
3.4 項目實現代碼詳解 44
3.4.1 工具類實現 45
3.4.2 cnnModel實現 46
3.4.3 執行器實現 48
3.4.4 Web應用實現 52
第4章 基于Seq2Seq的中文聊天機器人編程實踐 55
4.1 NLP基礎理論知識 55
4.1.1 語言模型 55
4.1.2 循環神經網絡 57
4.1.3 Seq2Seq模型 59
4.2 TensorFlow 2.0 API詳解 61
4.2.1 tf.keras.preprocessing.text.Tokenizer 61
4.2.2 tf.keras.preprocessing.sequence.pad_sequences 62
4.2.3 tf.data.Dataset.from_tensor_slices 63
4.2.4 tf.keras.layers.Embedding 63
4.2.5 tf.keras.layers.GRU 63
4.2.6 tf.keras.layers.Dense 65
4.2.7 tf.expand_dims 65
4.2.8 tf.keras.optimizers.Adam 65
4.2.9 tf.keras.losses.SparseCategoricalCrossentropy 66
4.2.10 tf.math.logical_not 66
4.2.11 tf.concat 66
4.2.12 tf.bitcast 67
4.3 項目工程結構設計 67
4.4 項目實現代碼詳解 68
4.4.1 工具類實現 68
4.4.2 data_util實現 69
4.4.3 seq2seqModel實現 71
4.4.4 執行器實現 77
4.4.5 Web應用實現 83
第5章 基于CycleGAN的圖像風格遷移應用編程實踐 85
5.1 GAN基礎理論 85
5.1.1 GAN的基本思想 85
5.1.2 GAN的基本工作機制 86
5.1.3 GAN的常見變種及應用場景 86
5.2 CycleGAN的算法原理 88
5.3 TensorFlow 2.0 API詳解 88
5.3.1 tf.keras.Sequential 88
5.3.2 tf.keras.Input 91
5.3.3 tf.keras.layers.BatchNormalization 91
5.3.4 tf.keras.layers.Dropout 92
5.3.5 tf.keras.layers.Concatenate 93
5.3.6 tf.keras.layers.LeakyReLU 93
5.3.7 tf.keras.layers.UpSampling2D 93
5.3.8 tf.keras.layers.Conv2D 93
5.3.9 tf.optimizers.Adam 94
5.4 項目工程結構設計 95
5.5 項目實現代碼詳解 96
5.5.1 工具類實現 96
5.5.2 CycleganModel實現 100
5.5.3 執行器實現 105
5.5.4 Web應用實現 109
第6章 基于Transformer的文本情感分析編程實踐 111
6.1 Transformer相關理論知識 111
6.1.1 Transformer基本結構 111
6.1.2 注意力機制 112
6.1.3 位置編碼 116
6.2 TensorFlow 2.0 API詳解 117
6.2.1 tf.keras.preprocessing.text.Tokenizer 117
6.2.2 tf.keras.preprocessing.sequence.pad_sequences 118
6.2.3 tf.data.Dataset.from_tensor_slices 118
6.2.4 tf.keras.layers.Embedding 118
6.2.5 tf.keras.layers.Dense 119
6.2.6 tf.keras.optimizers.Adam 119
6.2.7 tf.optimizers.schedules.LearningRateSchedule 120
6.2.8 tf.keras.layers.Conv1D 120
6.2.9 tf.nn.moments 121
6.3 項目工程結構設計 121
6.4 項目實現代碼詳解 122
6.4.1 工具類實現 122
6.4.2 data_util實現 124
6.4.3 textClassiferMode實現 128
6.4.4 執行器實現 138
6.4.5 Web應用實現 142
第7章 基于TensorFlow Serving的模型部署實踐 144
7.1 TensorFlow Serving框架簡介 144
7.1.1 Servable 145
7.1.2 Source 145
7.1.3 Loader 145
7.1.4 Manager 145
7.2 TensorFlow Serving環境搭建 146
7.2.1 基于Docker搭建TensorFlow Serving環境 146
7.2.2 基于Ubuntu 16.04搭建TensorFlow Serving環境 146
7.3 API詳解 147
7.3.1 tf.keras.models.load_model 147
7.3.2 tf.keras.experimental.export_saved_model 147
7.3.3 tf.keras.backend.set_learning_phase 148
7.4 項目工程結構設計 148
7.5 項目實現代碼詳解 149
7.5.1 工具類實現 149
7.5.2 模型文件導出模塊實現 150
7.5.3 模型文件部署模塊實現 150
7.5.4 Web應用模塊實現 152

讀者評論

  • 這本書里在github上開源的項目網址有不

    Stephen發表于 2020/2/4 19:38:28
  • 代碼請到右側《下載資源》欄目處下載

    williamdsy發表于 2020/1/21 9:48:28
  • 代碼哪里看??

    mzc發表于 2019/12/1 19:11:13
  • 書本中配套的代碼呢?

    jinxiaonian發表于 2019/12/1 11:53:24

下載資源

相關博文

  • 一文讀懂TensorFlow 2.0高階API

    一文讀懂TensorFlow 2.0高階API

    管理員賬號 2019-11-13

    在TensorFlow 2.0中對大量的高階API庫進行了刪減與合并,根據官方的解釋,這一切的變化都是為了使TensorFlow2.0更加易用和簡潔。本文以官方推薦的唯一高階API庫tf.keras為主,概括地介紹TensorFlow...

    管理員賬號 2019-11-13
    236 0 0 0
  • 走向TensorFlow2.0,一步到位

    走向TensorFlow2.0,一步到位

    管理員賬號 2019-11-19

    AlphaGo以 Master (大師)作為ID,橫空出世,在中國烏鎮圍棋峰會上,它與世界圍棋冠軍 柯潔 對戰,在圍棋領域,一舉擊敗人類精英。繼而,AlphaGo Zero,從空白狀態起步,在無任何人類輸入的條件下,能夠迅速自學圍棋,...

    管理員賬號 2019-11-19
    180 0 0 0

相關圖書

程序員的AI書:從代碼開始

張力柯 潘暉 (作者)

隨著AI技術的普及,如何快速理解、掌握并應用AI技術,成為絕大多數程序員亟需解決的問題。本書基于Keras框架并以代碼實現為核心,詳細解答程序員學習AI算法時的...

 

知識圖譜:概念與技術

肖仰華 等 (作者)

知識圖譜是一種大規模語義網絡,已經成為大數據時代知識工程的代表性進展。知識圖譜技術是實現機器認知智能和推動各行業智能化發展的關鍵基礎技術。知識圖譜也成為大規模知...

¥118.00

量化投資:交易模型開發與數據挖據

韓燾 (作者)

本書是一本利用Python技術,結合人工智能、神經網絡和機器學習、遺傳算法等互聯網技術進行相應行業模型開發的技術圖書。<br>本書第1~4 章主要講解了利用Py...

¥99.00

TensorFlow移動端機器學習實戰

王眾磊 陳海波 (作者)

本書主要介紹用TensorFlow在Android移動端做機器學習的開發技術,結合大量實際案例,深入淺出地講解了開發難點和開發流程。書中簡要介紹了tensorf...

 

當產品經理遇到人工智能

葉亮亮 (作者)

近年來,人工智能技術已經逐漸從實驗室走向大眾生活?;ヂ摼W企業為了提升行業未來的競爭力,也紛紛在各領域進行布局。人工智能技術的爆發,同樣對產品經理提出了新的要求,...

 

機器學習互聯網業務安全實踐

王帥 吳哲夫 (作者)

互聯網產業正在從IT時代邁入DT時代(數據時代),同時互聯網產業的繁榮也催生了黑灰產這樣的群體。那么,在數據時代應該如何應對互聯網業務安全威脅?機器學習技術在互...

 
澳洲幸运10现场开奖