本書以深度學習框架TensorFlow為基礎,介紹機器學習的基礎知識與常用方法,全面細致地提供了機器學習操作的原理及其在深度學習框架下的實踐步驟。 全書共16章,分別介紹了深度學習基礎知識、深度學習框架及其對比、機器學習基礎知識、深度學習框架TensorFlow的基礎知識、Logistic回歸、多層感知器、卷積神經網絡與計算機視覺、神經網絡與自然語言處理以及8個實戰(zhàn)案例。本書將理論與實踐緊密結合,相信能為讀者提供有益的學習指導。 本書適合Python深度學習初學者、機器學習算法分析從業(yè)人員以及高等院校計算機科學、軟件工程等相關專業(yè)的師生閱讀。
(1) 內容涵蓋深度學習數(shù)學基礎講解,便于沒有大學本科數(shù)學基礎的讀者閱讀。
(2) 提供實際可運行的代碼和讓讀者可以親自試驗的學習環(huán)境。
(3) 對于誤差反向傳播法、卷積運算等看起來很復雜的技術,幫助讀者在實現(xiàn)層面上
理解。
(4) 介紹流行的技術(如Batch Normalization)并進行實現(xiàn)。
(5) 提供真實的案例、完整的構建過程以及相應源代碼,使讀者能完整感受完成深度
學習項目的過程。
深度學習領域技術的飛速發(fā)展,給人們的生活帶來了很大改變。例如,智能語音助手能夠與人類無障礙地溝通,甚至在視頻通話時可以提供實時翻譯;將手機攝像頭聚焦在某個物體上,該物體的相關信息就會迅速地反饋給使用者;在購物網站上瀏覽商品時,計算機也在同時分析著用戶的偏好,并及時個性化地推薦用戶可能感興趣的商品。原先以為只有人類才能做到的事,現(xiàn)在機器也能毫無差錯地完成,甚至超越人類,這顯然與深度學習的發(fā)展密不可分,技術正引領人類社會走向嶄新的世界。
本書以深度學習為主題,將理論與簡明實戰(zhàn)案例相結合,以加深讀者對于理論知識的理解。本書首先介紹深度學習領域的現(xiàn)狀,深度學習領域和其他領域技術之間的關系,以及它們的主要特點和適用范圍;接下來,詳細講解TensorFlow框架中的基本操作,并在講解深度學習理論知識的同時,提供完整、詳盡的實現(xiàn)過程,供讀者參考。相信讀者在閱讀完本書后,會對深度學習有全面而深刻的了解,同時具備相當強的實踐能力。
全書共分為兩部分,包括17章內容。
第1部分基礎篇涵蓋第1~8章。第1章深度學習簡介,包括計算機視覺、自然語言處理、強化學習; 第2章深度學習框架,包括Caffe、TensorFlow、PyTorch; 第3章機器學習基礎知識,包括模型評估與模型參數(shù)選擇、監(jiān)督學習與非監(jiān)督學習; 第4章TensorFlow深度學習基礎,包括Tensor對象及其運算,Tensor的索引和切片,Tensor的變換、拼接和拆分,TensorFlow的Reduction操作,三種計算圖,TensorFlow的自動微分; 第5章回歸模型,包括線性回歸、Logistic回歸、用TensorFlow實現(xiàn)Logistic回歸; 第6章神經網絡基礎,包括基礎概念、感知器、BP神經網絡、Dropout正則化、批標準化; 第7章卷積神經網絡與計算機視覺,包括卷積神經網絡的基本思想、卷積操作、池化層、卷積神經網絡、經典網絡結構、用TensorFlow進行手寫數(shù)字識別; 第8章神經網絡與自然語言處理,包括語言建模、基于多層感知器的架構、基于循環(huán)神經網絡的架構、基于卷積神經網絡的架構、基于Transformer的架構、表示學習與預訓練技術。
第2部分實戰(zhàn)篇涵蓋第9~17章。第9章基于YOLO V3的安全帽佩戴檢測,包括數(shù)據準備,模型構建、訓練和測試; 第10章基于ResNet的人臉關鍵點檢測,包括數(shù)據準備、模型搭建與訓練、模型評價; 第11章基于ResNet的花卉圖片分類,包括環(huán)境與數(shù)據準備,模型構建、訓練和測試; 第12章基于UNet的細胞分割,包括細胞分割、基于UNet細胞分割的實現(xiàn); 第13章基于DCGAN的MNIST數(shù)據生成,包括生成對抗網絡介紹、準備工作、創(chuàng)建模型、損失函數(shù)和優(yōu)化器、定義訓練循環(huán)、訓練模型和輸出結果。第14章基于遷移學習的電影評論分類,包括遷移學習概述、IMDB數(shù)據集、構建模型解決IMDB數(shù)據集分類問題、模型訓練和結果展示; 第15章基于LSTM的原創(chuàng)音樂生成,包括樣例背景介紹、項目結構設計、實驗步驟、成果檢驗; 第16章基于RNN的文本分類,包括數(shù)據準備、創(chuàng)建模型、訓練模型、堆疊兩個或更多 LSTM 層; 第17章基于TensorFlowTTS 的中文語音合成,包括TTS簡介、基于TensorFlowTTS 的語音合成實現(xiàn)。
附錄部分包括附錄A TensorFlow環(huán)境搭建和附錄B 深度學習的數(shù)學基礎。
本書特色
(1) 內容涵蓋深度學習數(shù)學基礎講解,便于沒有高等數(shù)學基礎的讀者閱讀。
(2) 提供實際可運行的代碼和讓讀者可以親自試驗的學習環(huán)境。
(3) 對于誤差反向傳播法、卷積運算等看起來很復雜的技術,幫助讀者在實現(xiàn)層面上理解。
(4) 介紹流行的技術(如Batch Normalization)并進行實現(xiàn)。
(5) 提供真實的案例、完整的構建過程以及相應源代碼,使讀者能完整感受完成深度學習項目的過程。
配套資源
為便于教與學,本書配有210分鐘微課視頻、源代碼、數(shù)據集、教學課件、教學大綱。
(1) 獲取微課視頻方式: 讀者可以先掃描本書封底的文泉云盤防盜碼,再掃描書中相應的視頻二維碼,觀看教學視頻。
(2) 其他配套資源可以掃描本書封底的書圈二維碼,關注后回復本書的書號,即可下載。
讀者對象
本書適合Python深度學習初學者、機器學習算法分析從業(yè)人員以及全國高等學校計算機科學、軟件工程等相關專業(yè)的師生閱讀。
參與本書編寫的有呂云翔、王志鵬、劉卓然、歐陽植昊、郭志鵬、王淥汀、閆坤、杜宸洋、關捷雄、華昱云、陳妙然,同時曾洪立參與了部分內容的編寫并完成了素材整理及配套資源制作等工作。
由于編者水平和能力有限,書中難免有疏漏之處,懇請各位同行和廣大讀者批評指正。
編者2022年4月
呂云翔 單位:北京航空航天大學 職務:博士研究生 職稱:副教授 性別:男 年齡:50 專業(yè):計算機 學歷:博士研究生 研究領域:數(shù)據庫 研究成果:已出版二十幾本教材(其中計算機導論實踐教程一書獲北航2010年教學成果三等獎;大學計算機英語教程獲北航2012年教學成果二等獎。
第1部分基礎篇
第1章深度學習簡介
1.1計算機視覺
1.1.1定義
1.1.2基本任務
1.1.3傳統(tǒng)方法
1.1.4仿生學與深度學習
1.1.5現(xiàn)代深度學習
1.1.6影響卷積神經網絡發(fā)展的因素
1.2自然語言處理
1.2.1自然語言處理的基本問題
1.2.2傳統(tǒng)方法與神經網絡方法的比較
1.2.3發(fā)展趨勢
1.3強化學習
1.3.1什么是強化學習
1.3.2強化學習算法簡介
1.3.3強化學習的應用
第2章深度學習框架
2.1Caffe
2.1.1Caffe簡介
2.1.2Caffe的特點
2.1.3Caffe概述
2.2TensorFlow
2.2.1TensorFlow簡介
2.2.2數(shù)據流圖
2.2.3TensorFlow的特點
2.2.4TensorFlow概述
2.3PyTorch
2.3.1PyTorch簡介
2.3.2PyTorch的特點
2.3.3PyTorch概述
2.4三者的比較
2.4.1Caffe
2.4.2TensorFlow
2.4.3PyTorch
第3章機器學習基礎知識
3.1模型評估與模型參數(shù)選擇
3.1.1驗證
3.1.2正則化
3.2監(jiān)督學習與非監(jiān)督學習
3.2.1監(jiān)督學習
3.2.2非監(jiān)督學習
第4章TensorFlow深度學習基礎
4.1Tensor對象及其運算
4.2Tensor的索引和切片
4.3Tensor的變換、拼接和拆分
4.4TensorFlow的Reduction操作
4.5三種計算圖
4.6TensorFlow的自動微分
第5章回歸模型
5.1線性回歸
5.2Logistic回歸
5.3用TensorFlow實現(xiàn)Logistic回歸
5.3.1數(shù)據準備
5.3.2模型搭建與訓練
第6章神經網絡基礎
6.1基礎概念
6.2感知器
6.2.1單層感知器
6.2.2多層感知器
6.3BP神經網絡
6.3.1梯度下降
6.3.2后向傳播
6.4Dropout正則化
6.5批標準化
6.5.1批標準化的實現(xiàn)方式
6.5.2批標準化的使用方法
第7章卷積神經網絡與計算機視覺
7.1卷積神經網絡的基本思想
7.2卷積操作
7.3池化層
7.4卷積神經網絡
7.5經典網絡結構
7.5.1VGG網絡
7.5.2InceptionNet
7.5.3ResNet
7.6用TensorFlow進行手寫數(shù)字識別
第8章神經網絡與自然語言處理
8.1語言建模
8.2基于多層感知器的架構
8.3基于循環(huán)神經網絡的架構
8.3.1循環(huán)單元
8.3.2通過時間后向傳播
8.3.3帶有門限的循環(huán)單元
8.3.4循環(huán)神經網絡語言模型
8.3.5神經機器翻譯
8.4基于卷積神經網絡的架構
8.5基于Transformer的架構
8.5.1多頭注意力
8.5.2非參位置編碼
8.5.3編碼器單元與解碼器單元
8.6表示學習與預訓練技術
8.6.1詞向量
8.6.2加入上下文信息的特征表示
8.6.3網絡預訓練
第2部分實戰(zhàn)篇
第9章基于YOLO V3的安全帽佩戴檢測
9.1數(shù)據準備
9.1.1數(shù)據采集與標注
9.1.2模型選擇
9.1.3數(shù)據格式轉換
9.2模型構建、訓練和測試
9.2.1YOLO系列模型
9.2.2模型訓練
9.2.3測試與結果
第10章基于ResNet的人臉關鍵點檢測
10.1數(shù)據準備
10.1.1人臉裁剪與縮放
10.1.2數(shù)據歸一化處理
10.1.3整體代碼
10.2模型搭建與訓練
10.2.1特征圖生成
10.2.2模型搭建
10.2.3模型訓練
10.3模型評價
第11章基于ResNet的花卉圖片分類
11.1環(huán)境與數(shù)據準備
11.1.1環(huán)境安裝
11.1.2數(shù)據集簡介
11.1.3數(shù)據集的下載與處理
11.2模型構建、訓練和測試
11.2.1模型創(chuàng)建與訓練
11.2.2測試與結果
第12章基于UNet的細胞分割
12.1細胞分割
12.1.1細胞分割簡介
12.1.2傳統(tǒng)細胞分割算法
12.2基于UNet細胞分割的實現(xiàn)
12.2.1UNet簡介
12.2.2ISBI簡介
12.2.3數(shù)據加載
12.2.4模型訓練
12.2.5訓練結果
第13章基于DCGAN的MNIST數(shù)據生成
13.1生成對抗網絡介紹
13.2準備工作
13.3創(chuàng)建模型
13.3.1生成器
13.3.2判別器
13.4損失函數(shù)和優(yōu)化器
13.4.1判別器損失
13.4.2生成器損失
13.4.3保存檢查點
13.5定義訓練循環(huán)
13.6訓練模型和輸出結果
第14章基于遷移學習的電影評論分類
14.1遷移學習概述
14.2IMDB數(shù)據集
14.3構建模型解決IMDB數(shù)據集分類問題
14.4模型訓練和結果展示
第15章基于LSTM的原創(chuàng)音樂生成
15.1樣例背景介紹
15.1.1循環(huán)神經網絡
15.1.2Music 21
15.1.3TensorFlow
15.2項目結構設計
15.3實驗步驟
15.3.1搭建實驗環(huán)境
15.3.2觀察并分析數(shù)據
15.3.3數(shù)據預處理
15.3.4生成音樂
15.4成果檢驗
第16章基于RNN的文本分類
16.1數(shù)據準備
16.2創(chuàng)建模型
16.3訓練模型
16.4堆疊兩個或更多 LSTM 層
第17章基于 TensorFlowTTS 的中文語音合成
17.1TTS 簡介
17.1.1語音合成技術
17.1.2TTS技術發(fā)展史和基本原理
17.1.3基于深度學習的TTS
17.2基于TensorFlowTTS 的語音合成實現(xiàn)
17.2.1TensorFlowTTS簡介與環(huán)境準備
17.2.2算法簡介
17.2.3代碼實現(xiàn)與結果展示
附錄ATensorFlow環(huán)境搭建
附錄B深度學習的數(shù)學基礎
B.1線性代數(shù)
B.2概率論
參考文獻