Python人工智慧項目實戰

《Python人工智慧項目實戰》是由2019年10月出版的圖書。

基本介紹

  • 書名:Python人工智慧項目實戰
  • 作者:(印)桑塔努•帕塔納亞克(Santanu Pattanayak) 
  • 出版社機械工業出版社 
  • 出版時間:2019年10月 
  • 定價:89 元 
  • ISBN:9787111637905 
內容簡介,作者簡介,圖書目錄,

內容簡介

本書介紹涉及AI所有核心套用方向的若干項目的詳細再檔拜說實施過程。首先介紹使用機器學習和深度學習技術創建智慧型系統所需的基礎知識,包括如何使用CNN、RNN、LSTM等各種神經網路架構,然後介紹如何在醫療領域使用遷移學習技術訓練一個模型來檢測人眼中的糖尿病視網膜病變,之後介紹如何創建一個神經機器翻譯系統以及如何使用GAN實現時尚風格的遷移,然後介紹如何構建一個能夠為視頻產生字幕的模型,以及如何構建基於AI的推薦系統、用於情感分析的移動應用程式和用於提供客戶服務的聊天機器人,最後介紹兵戀婆使用強化學習培訓和構造自動駕駛車輛,以及在網路安全領域實施AI技術來生成CAPTCHA.你將學習如何使用TensorFlow、Keras等Python庫為機器朵慨乃拔學習、深度學習和AI提供核心支持,以解決任何類型的AI問題。

作者簡介

桑塔努·帕塔納亞克(Santanu Pattanayak)是高通公司研發部門的一名資深機器學習專家,著有《Pro Deep Learning with TensorFlow - A Mathematical Approach to Advanced Artificial Intelligence in Python》。他擁有12年的工作經驗,在加入高通之前,曾在GE、Capgemini和IBM任職。

圖書目錄

譯者序
前言
作者簡介
審校者簡介
第1章 人工智慧系統基礎知識 1
1.1 神經網路 2
1.2 神經激活單元 5
1.2.1 線性激活單元 5
1.2.2 sigmoid激活單元 6
1.2.3 雙曲正切激活函式 6
1.2.4 修正線性單元 7
1.2.5 softmax激活單元 9
1.3 用反向傳播算法訓練神經網路 9
1.5 循環神經網路 13
1.6 生成對抗網路 16
1.7 強化學習 18
1.7.1 Q學習 19
1.7.2 宙市陵深度Q學習 20
1.8 遷移學習 21
1.9 受限玻爾茲曼機 22
1.10 自編碼器 23
1.11 總結棕灑諒 24
第2章 遷移學戒判籃習 26
2.1 技術要求 26
2.2 遷移學習簡介 27
2.3 遷移學習和糖尿病視網膜病變檢測 28
2.4 糖尿病視網膜病變數據集 29
2.5 定義損失函式 30
2.6 考慮類別不平衡問題 31
2.7 預處理圖像 32
2.8 使用仿射變換生成額外數據 33
2.8.1 旋轉 34
2.8.2 平移 34
2.8.3 縮放 35
2.8.4 反射 35
2.8.5 通過仿射變換生成額外的圖像 36
2.9 網路架構 36
2.9.1 VGG16遷移學習網路 38
2.9.2 InceptionV3遷移學習網路 39
2.9.3 ResNet50遷移學習網路 39
2.10 最佳化器和初始學習率 40
2.11 交叉驗證 40
2.12 基於驗證對數損失的模型檢查點 40
2.13 訓練過全催程的Python實現 41
2.14 類別分類結果 50
2.15 在測試期間進行推斷 50
2.16 使用回歸而非類別分類 52
2.17 使用keras sequential工具類生成器 53
2.18 總結 57
第3章 神經機器翻譯 58
3.1 技術要求 59
3.2 基於規則的機器翻譯 59
3.2.1 分析階段 59
3.2.2 辭彙轉換階段 60
3.2.3 生成階段 60
3.3 統計機器學習系統 60
3.3.1 語言模型 61
3.3.2 翻譯模型 63
3.4 神經機器翻譯 65
3.4.1 編碼器–解碼器模型 65
3.4.2 使用編碼器–解碼器模型進行推斷 66
3.5 實現序列到序列的神經機器翻譯 67
3.5.1 處理輸入數據 67
3.5.2 定義神經翻譯機器的模型 71
3.5.3 神經翻譯機器的損失函式 73
3.5.4 訓練模型 73
3.5.5 構建推斷模型 74
3.5.6 單詞向量嵌入 78
3.5.7 嵌入層 79
3.5.8 實現基於嵌入的NMT 79
3.6 總結 84
第4章 基於GAN的時尚風格遷移 85
4.1 技術要求 85
4.2 DiscoGAN 86
4.3 CycleGAN 88
4.4 學習從手繪輪廓生成自然手提包 89
4.5 預處理圖像 89
4.6 DiscoGAN的生成器 91
4.7 DiscoGAN的判別器 93
4.8 構建網路和定義損失函式 94
4.9 構建訓練過程 97
4.10 GAN訓練中的重要參數值 99
4.11 啟動訓練 100
4.12 監督生成器和判別器的損失 101
4.13 DiscoGAN生成的樣例圖像 103
4.14 總結 104
第5章 視頻字幕套用 105
5.1 技術要求 105
5.2 視頻字幕中的CNN和LSTM 106
5.3 基於序列到序列的視頻字幕系統 107
5.4 視頻字幕系統數據集 109
5.5 處理視頻圖像以創建CNN特徵 110
5.6 處理視頻的帶標籤字幕 113
5.7 構建訓練集和測試集 114
5.8 構建模型 115
5.8.1 定義模型的變數 116
5.8.2 編碼階段 117
5.8.3 解碼階段 117
5.8.4 計算小批量損失 118
5.9 為字幕創建單詞辭彙表 118
5.10 訓練模型 119
5.11 訓練結果 123
5.12 對未見過的視頻進行推斷 124
5.12.1 推斷函式 126
5.12.2 評估結果 127
5.13 總結 128
第6章 智慧型推薦系統 129
6.1 技術要求 129
6.2 什麼是推薦系統 129
6.3 基於潛在因子分解的推薦系統 131
6.4 深度學習與潛在因子協同過濾 132
6.5 SVD++ 136
6.6 基於受限玻爾茲曼機的推薦系統 138
6.7 對比分歧 139
6.8 使用RBM進行協同過濾 140
6.9 使用RBM實現協同過濾 142
6.9.1 預處理輸入 143
6.9.2 構建RBM網路進行協作過濾 144
6.9.3 訓練RBM 147
6.10 使用訓練好的RBM進行推斷 149
6.11 總結 150
第7章 用於電影評論情感分析的移動應用程式 151
7.1 技術要求 152
7.2 使用TensorFlow mobile構建Android移動應用程式 152
7.3 Android套用中的電影評論評分 153
7.4 預處理電影評論文本 154
7.5 構建模型 156
7.6 訓練模型 157
7.7 將模型凍結為protobuf格式 159
7.8 為推斷創建單詞到表征的字典 161
7.9 應用程式互動界面設計 162
7.10 Android應用程式的核心邏輯 164
7.11 測試移動套用 168
7.12 總結 170
第8章 提供客戶服務的AI聊天機器人 171
8.1 技術要求 172
8.2 聊天機器人的架構 172
8.3 基於LSTM的序列到序列模型 173
8.4 建立序列到序列模型 174
8.5 Twitter平台上的聊天機器人 174
8.5.1 構造聊天機器人的訓練數據 175
8.5.2 將文本數據轉換為單詞索引 175
8.5.3 替換匿名用戶名 176
8.5.4 定義模型 176
8.5.5 用於訓練模型的損失函式 178
8.5.6 訓練模型 179
8.5.7 從模型生成輸出回響 180
8.5.8 所有代碼連起來 180
8.5.9 開始訓練 181
8.5.10 對一些輸入推特的推斷結果 181
8.6 總結 182
第9章 基於增強學習的無人駕駛 183
9.1 技術要求 183
9.2 馬爾科夫決策過程 184
9.3 學習Q值函式 185
9.4 深度Q學習 186
9.5 形式化損失函式 186
9.6 深度雙Q學習 187
9.7 實現一個無人駕駛車的代碼 189
9.8 深度Q學習中的動作離散化 189
9.9 實現深度雙Q值網路 190
9.10 設計智慧型體 191
9.11 自動駕駛車的環境 194
9.12 將所有代碼連起來 197
9.13 訓練結果 202
9.14 總結 203
第10章 從深度學習的角度看CAPTCHA 204
10.1 技術要求 205
10.2 通過深度學習破解CAPTCHA 205
10.2.1 生成基本的CAPTCHA 205
10.2.2 生成用於訓練CAPTCHA破解器的數據 206
10.2.3 CAPTCHA破解器的CNN架構 208
10.2.4 預處理CAPTCHA圖像 208
10.2.5 將CAPTCHA字元轉換為類別 209
10.2.6 數據生成器 210
10.2.7 訓練CAPTCHA破解器 211
10.2.8 測試數據集的準確性 212
10.3 通過對抗學習生成CAPTCHA 214
10.3.1 最佳化GAN損失 215
10.3.2 生成器網路 215
10.3.3 判別器網路 216
10.3.4 訓練GAN 219
10.3.5 噪聲分布 220
10.3.6 數據預處理 220
10.3.7 調用訓練 221
10.3.8 訓練期間CAPTCHA的質量 222
10.3.9 使用訓練後的生成器創建CAPTCHA 224
10.4 總結 225
2.9 網路架構 36
2.9.1 VGG16遷移學習網路 38
2.9.2 InceptionV3遷移學習網路 39
2.9.3 ResNet50遷移學習網路 39
2.10 最佳化器和初始學習率 40
2.11 交叉驗證 40
2.12 基於驗證對數損失的模型檢查點 40
2.13 訓練過程的Python實現 41
2.14 類別分類結果 50
2.15 在測試期間進行推斷 50
2.16 使用回歸而非類別分類 52
2.17 使用keras sequential工具類生成器 53
2.18 總結 57
第3章 神經機器翻譯 58
3.1 技術要求 59
3.2 基於規則的機器翻譯 59
3.2.1 分析階段 59
3.2.2 辭彙轉換階段 60
3.2.3 生成階段 60
3.3 統計機器學習系統 60
3.3.1 語言模型 61
3.3.2 翻譯模型 63
3.4 神經機器翻譯 65
3.4.1 編碼器–解碼器模型 65
3.4.2 使用編碼器–解碼器模型進行推斷 66
3.5 實現序列到序列的神經機器翻譯 67
3.5.1 處理輸入數據 67
3.5.2 定義神經翻譯機器的模型 71
3.5.3 神經翻譯機器的損失函式 73
3.5.4 訓練模型 73
3.5.5 構建推斷模型 74
3.5.6 單詞向量嵌入 78
3.5.7 嵌入層 79
3.5.8 實現基於嵌入的NMT 79
3.6 總結 84
第4章 基於GAN的時尚風格遷移 85
4.1 技術要求 85
4.2 DiscoGAN 86
4.3 CycleGAN 88
4.4 學習從手繪輪廓生成自然手提包 89
4.5 預處理圖像 89
4.6 DiscoGAN的生成器 91
4.7 DiscoGAN的判別器 93
4.8 構建網路和定義損失函式 94
4.9 構建訓練過程 97
4.10 GAN訓練中的重要參數值 99
4.11 啟動訓練 100
4.12 監督生成器和判別器的損失 101
4.13 DiscoGAN生成的樣例圖像 103
4.14 總結 104
第5章 視頻字幕套用 105
5.1 技術要求 105
5.2 視頻字幕中的CNN和LSTM 106
5.3 基於序列到序列的視頻字幕系統 107
5.4 視頻字幕系統數據集 109
5.5 處理視頻圖像以創建CNN特徵 110
5.6 處理視頻的帶標籤字幕 113
5.7 構建訓練集和測試集 114
5.8 構建模型 115
5.8.1 定義模型的變數 116
5.8.2 編碼階段 117
5.8.3 解碼階段 117
5.8.4 計算小批量損失 118
5.9 為字幕創建單詞辭彙表 118
5.10 訓練模型 119
5.11 訓練結果 123
5.12 對未見過的視頻進行推斷 124
5.12.1 推斷函式 126
5.12.2 評估結果 127
5.13 總結 128
第6章 智慧型推薦系統 129
6.1 技術要求 129
6.2 什麼是推薦系統 129
6.3 基於潛在因子分解的推薦系統 131
6.4 深度學習與潛在因子協同過濾 132
6.5 SVD++ 136
6.6 基於受限玻爾茲曼機的推薦系統 138
6.7 對比分歧 139
6.8 使用RBM進行協同過濾 140
6.9 使用RBM實現協同過濾 142
6.9.1 預處理輸入 143
6.9.2 構建RBM網路進行協作過濾 144
6.9.3 訓練RBM 147
6.10 使用訓練好的RBM進行推斷 149
6.11 總結 150
第7章 用於電影評論情感分析的移動應用程式 151
7.1 技術要求 152
7.2 使用TensorFlow mobile構建Android移動應用程式 152
7.3 Android套用中的電影評論評分 153
7.4 預處理電影評論文本 154
7.5 構建模型 156
7.6 訓練模型 157
7.7 將模型凍結為protobuf格式 159
7.8 為推斷創建單詞到表征的字典 161
7.9 應用程式互動界面設計 162
7.10 Android應用程式的核心邏輯 164
7.11 測試移動套用 168
7.12 總結 170
第8章 提供客戶服務的AI聊天機器人 171
8.1 技術要求 172
8.2 聊天機器人的架構 172
8.3 基於LSTM的序列到序列模型 173
8.4 建立序列到序列模型 174
8.5 Twitter平台上的聊天機器人 174
8.5.1 構造聊天機器人的訓練數據 175
8.5.2 將文本數據轉換為單詞索引 175
8.5.3 替換匿名用戶名 176
8.5.4 定義模型 176
8.5.5 用於訓練模型的損失函式 178
8.5.6 訓練模型 179
8.5.7 從模型生成輸出回響 180
8.5.8 所有代碼連起來 180
8.5.9 開始訓練 181
8.5.10 對一些輸入推特的推斷結果 181
8.6 總結 182
第9章 基於增強學習的無人駕駛 183
9.1 技術要求 183
9.2 馬爾科夫決策過程 184
9.3 學習Q值函式 185
9.4 深度Q學習 186
9.5 形式化損失函式 186
9.6 深度雙Q學習 187
9.7 實現一個無人駕駛車的代碼 189
9.8 深度Q學習中的動作離散化 189
9.9 實現深度雙Q值網路 190
9.10 設計智慧型體 191
9.11 自動駕駛車的環境 194
9.12 將所有代碼連起來 197
9.13 訓練結果 202
9.14 總結 203
第10章 從深度學習的角度看CAPTCHA 204
10.1 技術要求 205
10.2 通過深度學習破解CAPTCHA 205
10.2.1 生成基本的CAPTCHA 205
10.2.2 生成用於訓練CAPTCHA破解器的數據 206
10.2.3 CAPTCHA破解器的CNN架構 208
10.2.4 預處理CAPTCHA圖像 208
10.2.5 將CAPTCHA字元轉換為類別 209
10.2.6 數據生成器 210
10.2.7 訓練CAPTCHA破解器 211
10.2.8 測試數據集的準確性 212
10.3 通過對抗學習生成CAPTCHA 214
10.3.1 最佳化GAN損失 215
10.3.2 生成器網路 215
10.3.3 判別器網路 216
10.3.4 訓練GAN 219
10.3.5 噪聲分布 220
10.3.6 數據預處理 220
10.3.7 調用訓練 221
10.3.8 訓練期間CAPTCHA的質量 222
10.3.9 使用訓練後的生成器創建CAPTCHA 224
10.4 總結 225

相關詞條

熱門詞條

聯絡我們