課程名稱
Keras+Google Colab雲端服務「深度學習與人工智慧」實務入門
為何要學習「深度學習人工智慧」?
國際研究顧問機構Gartner調查,2020年將有180萬個職位被人工智慧取代,然而人工智慧也將創造230萬個工作機會。如果您不想在人工智慧時代工作被取代,學習「深度學習人工智慧」技術,對於您的現有工作,與未來轉職都有很大的幫助。
課程特色
本課程主要是幫助初學者,能輕鬆進入「Keras深度學習人工智慧」領域,解決進入此領域的障礙。
豐富的教學與實務經驗的講師:
本課程講師林大貴。從事IT產業多年,具豐富的實務經驗:於商業智慧、大數據、機器學習、深度學習、人工智慧等領域。具備豐富的教學經驗:擔任公司的企業講師與資策會講師。林大貴是多本暢銷資訊書的作者:
- TensorFlow+Keras深度學習人工智慧實務應用 (天瓏書店2017年排行榜第3名,2018年度排行榜第7名)
- Python+Spark 2.0+Hadoop機器學習與大數據分析實戰
- Hadoop+Spark大數據巨量分析與機器學習
專業的「深度學習人工智慧」教材:
本課程以暢銷書「TensorFlow+Keras深度學習人工智慧實務應用」為基礎(此書受到多家大學與企業的肯定,採用作為「深度學習人工智慧」課程教材),本課程中增加了很多書中未提及的進階內容。
「彩色圖解」與「投影片動畫」幫助您理解「深度學習與人工智慧」:
大家都知道「一張圖勝過千言萬語」,然而一般書本都是平面單色印刷,無法很生動地解說原理與程式架構, 所以本課程製作了很多投影片:包含很多「彩色圖解」,詳細解說深度學習模型的原理與程式運作。 有時圖片還不足以完整表達概念,我們還製作了「投影片動畫」,讓您能更清楚理解。
學會Google Colab免費雲端服務,加快「深度學習模型」訓練速度10倍以上:
「深度學習」的初學者,常遇到的問題,使用CPU訓練速度非常慢。如果要加快訓練速度,必須使用NVDIA顯示卡上的GPU,但價格昂貴且安裝不易。 為了解決此問題,本課程將Step by Step實機操作介紹Google Colaboratory免費雲端服務。您只需要有Google帳號與瀏覽器,就能夠以GPU訓練「深度學習」模型,加快訓練速度10倍以上。
增加「深度學習與人工智慧」直覺式的理解:
「深度學習」的初學者,接觸很多書或課程,看了很多數學公式與理論。雖然理論很重要,可是對於初學者而言,可能覺得很抽象。 本課程教您如何透過玩TensorFlow Playground,理解深度學習的概念。並且介紹Embedding Projector互動式視覺化工具,理解詞向量(Word Embedding)原理。
透過「範例程式」實作「深度學習與人工智慧」功能:
透過「範例程式」實作學習,是最有效率學習方式,本課程準備了很多「範例程式」,配合程式碼的詳細解說。實作各種深度學習模型,您可以透過修改超參數, 實際看到結果的差異,加深對於「深度學習」模型的理解。
課程介紹
第1堂課: 深度學習的原理介紹
透過投影片中豐富的圖解與動畫,解說深度學習的原理。
內容 | 圖解與動畫 介紹深度學習並詳細說明原理 |
---|---|
|
第2堂課: 玩TensorFlow Playground理解深度學習的基本概念
本課程教您如何透過玩TensorFlow Playground,理解深度學習的概念。透過實際示範,讓您眼見為憑(有圖有真相),什麼是「神經元」?什麼是「過度擬合(overfitting)」? 什麼是「梯度消失(gradient vanishing)」? 透過實際操作了解如何設定超參數: Learning rate、Activation...? 為何需要隱藏層? 為何越多層隱藏層功能越強? 神經網路訓練後神經元的改變?
實機操作 | 透過實際示範,瞭解實際上神經元如何運作 |
---|---|
|
第3堂課: Google ?Colaboratory免費雲端服務,加快訓練速度10倍以上
本課程將Step by Step實機操作介紹Google Colaboratory,是一個基於 Jupyter Notebook 的免費雲端服務。您只需要有Google帳號與瀏覽器,就能夠立即實作深度學習或機器學習專案,加快訓練速度10倍以上。
實機操作 | 透過架構圖解說Google ?Colaboratory免費雲端服務 |
---|---|
|
第4堂課: 多元感知器(MLP) 辨識手寫數字
MNIST手寫數字辨識資料集,很適合作為深度學習的初學者,本課程介紹以多元感知器(MLP)建立模型、訓練、預測。
範例程式 | 圖解與動畫 介紹多元感知器(MLP)原理 |
---|---|
使用多元感知器(MLP)辨識Mnist資料集手寫數字
|
第5堂課: 卷積神經網路(CNN) 辨識手寫數字
為了進一步提高準確率,本課程介紹卷積神經網路CNN,辨識Mnist資料集中的手寫數字。
範例程式 | 圖解與動畫 介紹卷積神經網路(CNN)原理 |
---|---|
使用卷積神經網路(CNN),辨識Mnist資料集手寫數字
|
第6堂課: 卷積神經網路(CNN)辨識Cifar-10彩色影像
之前介紹的mnist資料集是單色影像,本課程接介紹卷積神經網路CNN,辨識Cifar-10彩色影像。
範例程式 | 圖解與動畫 介紹卷積神經網路(CNN)原理 |
---|---|
使用卷積神經網路(CNN),辨識CIFAR-10影像,可辨識10個分類:飛機、汽車、鳥、貓、鹿、狗、青蛙、船、卡車。 |
第7堂課: 要如何從原始圖檔,訓練深度學習模型?
「深度學習」的初學者常遇到的問題是,如果老闆給你一堆原始圖檔,要如何從原始圖檔,訓練深度學習模型? 後續課程我們將介紹2種方式:
範例資料集 | 從原始圖檔,訓練深度學習模型2種方式比較 |
---|---|
我們將以Dogs vs. Cats資料集,示範如何從原始圖檔建立深度學習模型 |
第8堂課: 當資料量小於記憶體時:如何從原始圖檔,訓練深度學習模型?
當資料量小於記憶體時,我們可以將所有影像圖檔,轉換為numpy array的特徵與標籤,以numpy array做為資料來源進行訓練,這種方式:
- 優點: 訓練時速度快(因為全部資料都在記憶體中)
- 缺點: 資料量有限制(因為資料全部放在記憶體中,如果資料量太大,造成記憶體不足)
範例程式 | 架構圖與詳細解說,讓您快速了解程式的運作 |
---|---|
以numpy array做為資料來源,訓練深度學習模型 |
第9堂課: 當資料量大於記憶體時:如何從原始圖檔,訓練深度學習模型?
當資料量很大時,超過記憶體容量,就必須建立generator,並設定讀取的資料夾。以generator 做為資料來源,每批次訓練時,才從硬碟資料夾讀取批次資料,進行預處理,批次訓練深度學習模型。
- 優點: 資料量無限制(因為每批次訓練時,只讀取批次資料,所以不會造成記憶體不足)
- 缺點: 訓練時速度比較慢(因為每批次訓練時,必須從硬碟讀取批次資料,進行預處理,所以速度比較慢)
範例程式 | 架構圖與詳細解說,讓您快速了解程式的運作 |
---|---|
以generator做為資料來源,訓練深度學習模型 |
第10堂課: overfitting過度擬合的成因
當我們訓練深度學習模型,實務中常遇到的問題是overfitting過度擬合,雖然訓練準確率很高、但是驗證與測試準確率低,也就是模型泛化(generalization)能力不足。
對抗overfitting最好的方式是提供更多資料,不過在實務上,有時很難取得更多資料。所以接下來的課程我們將介紹,如何在有限資料中,降低overfitting方法。
範例程式 | 詳細圖解overfitting過度擬合的成因 |
---|---|
|
第11堂課: DropOut降低overfitting過度擬合
範例程式 | 詳細圖解Drop Out原理 |
---|---|
深度學習模型設計時加入DropOut降低overfitting |
第12堂課: regularization降低overfitting過度擬合
範例程式 | 詳細圖解regularization原理 |
---|---|
深度學習模型設計時加入regularization降低overfitting |
第13堂課: Early Stopping降低overfitting過度擬合
範例程式 | 詳細圖解Early Stopping原理 |
---|---|
深度學習模型訓練時,加入Early Stopping與ModelCheckUp降低overfitting |
第14堂課: image data augmentation降低overfitting過度擬合
範例程式 | 詳細圖解image data augmentation原理 |
---|---|
深度學習模型訓練時,加入image data augmentation降低overfitting |
第15堂課: 無須辛苦訓練模型,直接使用預訓練深度學習模型,進行預測
如果老闆要求你完成影像辨識功能,可是你沒有大量資料與GPU進行深度學習訓練。該怎麼辦呢? 此時Keras Application模組,就是你的救星。
Keras Application模組包含了很多預訓練深度學習模型,這些模型已經使用了ImageNet大量資料進行預訓練,ImageNet包括100萬張圖片共1000類別,涵蓋了日常事物,例如交通、動物、生活器具...等。你可以直接使用預訓練模型預測,準確率很高。
範例程式 | Keras Application模組中的深度學習模型介紹 |
---|---|
使用預訓練模型VGG16、VGG19、 Xception、ResNet50 、 InceptionV3進行預測 |
後續的課程,我們將使用其中的VGG16模型,提取feature map特徵圖、遷移學習...等功能。
第16堂課: 如何使用卷積神經網路(CNN)提取影像特徵
之前的課程我們學會使用卷積神經網路CNN 模型進行預測,我們也許會好奇,為何CNN可以達到如此高的準確率? 主要是CNN模型具有自動提取影像特徵功能。 本課程介紹如何使用CNN提取影像特徵。
範例程式 | 圖解與動畫 說明如何使用CNN提取影像特徵 |
---|---|
使用VGG16模型,提取feature map特徵圖 |
第17堂課: AI知識傳遞: Transfer Learning遷移學習
AI大師吳恩達曾?「在監督學習之後,遷移學習(Transfer Learning)將引領下一波機器學習技術商業化浪潮。」,究竟什麼是遷移式學習呢? 為何麼這麼重要?
在深度學習領域,遷移學習一種方法,將來源領域的知識,遷移(轉移)到另一個目標領域,使得目標領域能夠取得更好的學習效果。使用遷移學習的好處是:只需要更少的訓練資料,更少的訓練時間,模型泛化能力更好。遷移學習應用廣泛,包括影像辨識、自然語言處理、語音辨識..等領域。
範例程式 | 圖解與動畫 說明Transfer Learning遷移學習原理 |
---|---|
本課程將介紹,來源領域:使用VGG16預訓練模型(使用100萬張圖片/1000種類別訓練),就好像一個見多識廣的師父,我們可以將師父的知識,傳輸給徒弟,徒弟可以運用這些知識在目標領域:辨識狗與貓。 |
第18堂課: IMDB(網路電影資料)影評文字情感分析
情感分析(sentiment analysis)又稱為意見探勘(opinion mining)。使用自然語言處理、文字分析等方法,找出作者在某些話題上的態度、情感、評價或情緒。情緒分析的商業價值,可提早得知顧客對公司或產品觀感,以調整銷售策略方向。首先,我們介紹如何以自然語言處理的方式,預處理影評文字。
範例程式 | 圖解與動畫 說明影評文字情感分析原理 |
---|---|
IMDB(網路電影資料)影評文字情感分析:
|
第19堂課:詞向量(Word Embedding)自然語言處理介紹
以上課程中我們會建立Embedding層,使用詞向量(Word Embedding)技術,是近年在自然語言處理中,被廣泛使用的一種技術。其原理是將文字映射成多維幾何空間的向量。經過訓練後,類似語意的文字向量,在多維幾何空間比較相近。 因為詞向量觀念比較抽象,所以本課程介紹Embedding Projector互動式視覺化工具,理解詞向量原理。
實機操作 | 透過視覺化工具,理解詞向量原理 |
---|---|
介紹如何使用Embedding Projector互動式視覺化網頁工具 |
第20堂課: Keras MLP模型IMDB 情緒分析
接下來,介紹使用深度學習模型進行IMDB 情緒分析。在模型中我們加入了詞向量(Word Embedding)層,可以讓深度學習模型,理解字與字的關係,然後用多層感知器(MLP) 進行IMDB 情緒分析。
範例程式 | 圖解介紹MLP模型進行IMDB 情緒分析 |
---|---|
建立多層感知器(MLP)模型進行IMDB 情緒分析 |
第21堂課: Keras RNN模型IMDB 情緒分析
由於自然語言是有順序性(因為同一時間只能聽到一個字,之前的語言會影響之後語言的意義)。所以接下來我們介紹,遞歸神經網絡RNN (Recurrent Neural Network),進行IMDB 情緒分析。
範例程式 | 圖解與動畫 介紹RNN原理 |
---|---|
建立RNN模型進行IMDB 情緒分析 |
第22堂課: Keras LSTM模型IMDB 情緒分析
本課程介紹LSTM((Long-Short Term Memory)模型進行IMDB 情緒分析。為何需要LSTM呢?
因為RNN在訓練時會有long-term dependencies的問題,所以只能短期記憶,不能長期記憶。所以深度學習專家提出了長短期記憶LSTM模型,可以記住長期與短期記憶。
範例程式 | 圖解與動畫 介紹LSTM原理 |
---|---|
建立LSTM模型進行IMDB 情緒分析 |
第23堂課: Keras GRU模型IMDB 情緒分析
本課程介紹GRU模型進行IMDB 情緒分析。為何需要GRU呢?
因為GRU 相對於LSTM的優點:效果與LSTM類似,結構比較簡單,能加快執行速度, 減少記憶體的耗用。
範例程式 | 圖解與動畫 介紹GRU原理 |
---|---|
建立GRU模型進行IMDB 情緒分析 |
先備知識:
本課程您只需要具備Python基礎程式設計概念:依照本課程的步驟Step by Step學習,就可以了解深度學習基本概念,並且實際運用深度學習技術。
講座預先準備事項:
- 請學員自備筆記型電腦:教室提供電源插座與網路。
- 學員上課必須有Google Gmail帳號
講座時間:
2019/4/13
早上9:00 - 17:00
2019/4/20
早上9:00 - 17:00