【原創 深度學習與TensorFlow 動手實踐系列 - 1】第一課:深度學習整體介紹

最近一直在研究機器學習,看過兩本機器學習的書,而後又看到深度學習,對深度學習產生了濃厚的興趣,但願短期內能夠作到深度學習的入門和實踐,所以寫一個深度學習系列吧,經過實踐來掌握《深度學習》和 TensorFlow,但願作成一個系列出來,加油!git

 

學習內容包括了:github

1. 小象學院的《深度學習》課程算法

2. TensorFlow的官方教程設計模式

3. 互聯網上跟深度學習相關的教程網絡

 

 

整個深度學習,學習的過程是經過一條主線串聯起來的,這個知識結構總結的仍是蠻好的。框架

1. 線性迴歸 - 線性迴歸是基礎。機器學習

2. 神經網絡 - 線性迴歸引入非線性激勵(保留線性函數的信息,可是又要轉化成爲非線性,爲啥呢?線性的描述能力太有限了,大部分複雜問題都是非線性的)就造成了神經元,神經元組合在一塊兒就構成了最基礎的神經網絡,神經元和神經網絡都是深度學習的基礎。函數

3. 卷積神經網絡(CNN)- 神經網絡,經過卷積核構建成爲CNN(卷積神經網絡),爲何引入卷積核?如何引入卷積核?須要好好再理解和分析一下。學習

4. 卷積神經網絡(CNN)- 目標分類,圖像識別,人臉識別,物品識別,場景識別,文字識別,把卷積神經網絡研究明白就能夠完成大量的目標分類的功能。大數據

5. 卷積神經網絡(CNN)- 目標監測, 安防,自動駕駛,卷積神經網絡的進一步應用場景。

6. 循環神經網絡(RNN)- CNN時域迭代造成循環神經網絡

7. LSTM - Word2vec - 語句生成,自動翻譯,智能對話

8. 加強學習 - 圍棋,德州撲克,自動遊戲

9. 生成網絡,判別網絡,對抗網絡 - 無限數據

 

 

 計劃與指望效果:

1. 理論講解,模型分析

2. TensorFlow 實例運行,調試(源碼共享)

3. 思想總結,資源分享,論文推薦,方便課後研究

能力進階:

1. 入門:明白概念,練習和原理。

2. 實踐:可以運用模型展開具體應用開發。

3. 提高:根據具體問題設計新的模型。

總結:理論+實踐+總結 => 解決全新的問題

 

 

提綱:

1. 深度學習:傳統到如今

2. 深度學習應用特色

3. 深度學習框架比較

4. TensorFlow 介紹

5. 一些基本深度學習概念

 

 

 期待目標:

1. 瞭解深度學習發展

2. 清楚深度學習能力範圍

3. 知道常見深度學習框架

4. 會 安裝、運行、簡單調試 TensorFlow,瞭解 TF運行方式

5. 瞭解:神經元,卷積核,分類,迴歸等基本概念

 

 

 

深度學習:傳統到如今

1. 傳統機器學習

數據預處理 -> 特徵提取 -> 選擇分類器

數據預處理:歸一化,降維,去噪

特徵提取:人工設計模式圖像:SIFT,LBP,Fisher,Gabor,Hog 語言:MFCC,小波,Word2vec

選擇分類器:SVM,決策樹,隨機森林,貝葉斯網絡,線性迴歸,聚類

2. 深度學習

數據準備:數據,標籤

設計模型:CNN,RNN,CNN+RNN

訓練:調結構,損失函數,訓練函數

 

 

2010年 NEC-UIUC Lin CVPR 2011

2012年 SuperVision

2014年 GoogLeNet VGG

2015年 MSRA

 

推進因素:

1. 理論:CNN,RNN,ReLU

2. 數據:ImageNet,LFW

3. 硬件:Nvidia CUDA + GPU

總結:深度學習 = 硬件(CPU+GPU+FPGA+TPU) + 算法(CNN,RNN,ReLU)+大數據(ImageNet)

 

 

將來可能進展 - 無人駕駛

 

將來可能進展 - 無人超市

 

將來可能進展 - 自動翻譯

 

 

 將來可能進展 - 我的助手

 

 

 

深度學習應用特色:

優勢:

學習能力強

覆蓋範圍廣,適用性好

可移植性好

ImageNet -> ImageNet Model -> 物品分類,目標檢測,人臉計算,場景識別,生成圖片

總結:5種類型的應用:物品分類,目標檢測,人臉計算,場景識別,生成圖像

 

 

缺點:

計算量大,便攜性差

硬件要求高

模型設計複雜

有可能被「Hack」

長於計算,弱於算計

 

 

深度學習框架比較

 

 TensorFlow Python,文檔 +++,CNN兼容 +++,RNN兼容 ++,上手難易 +++,速度 ++,並行支持 ++,Keras兼容+,支持 Google

 

深度學習框架比較:

本課程選擇:TensorFlow

1. 文檔豐富,適合初學者

2. 安裝很是方便

3. 谷歌支持,長期有效

4. 自動求導,只需關注模型設計

5. Keras支持,方便迅速開發

 

 

 

緣由:

1. 統一模型標準,方便交流

2. 維持地位:TPU, Google Cloud,Future Market

3. 影響力 TF2016 

 

 

 

 

 

 

TensorFlow 介紹 - 實例程序運行

1. 簡單程序:直線方程擬合(見Code:course_1_tf_lr.py)

2. 基本迭代:迭代次數,Learning Rate,模型結構,偏差對比

 

 

 

 深度學習基本概念 - 神經元

 

 

 深度學習基本概念 - 卷積核 - 圖像處理基本算子(邊界算子)

卷積核 - CNN卷積核Plot

 

 

 

 

 

 

 

 

 

 本節總結:

1. 瞭解深度學習發展

2. 清楚深度學習能力範圍

3. 知道常見的深度學習框架

4. 會安裝、運行、簡單更改 TensorFlow

5. 瞭解:神經元,卷積核,分類,迴歸等基本概念

總結:

 

 

課程代碼:https://github.com/wiibrew/DeepLearningCourseCodes 

 

 

https://github.com/wiibrew/DeepLearningCourseCodes/blob/master/course_1_tf_basic_operation.py

 

https://github.com/wiibrew/DeepLearningCourseCodes/blob/master/course_1_tf_lr.ipynb

 

https://github.com/wiibrew/DeepLearningCourseCodes/blob/master/course_1_tf_lr.ipynb

 

相關文章
相關標籤/搜索