聯繫我們

課程簡介

第一部分 – 深度學習與 DNN 概念

人工智能、機器學習與深度學習簡介

  • 人工智能的歷史、基礎概念、常見應用,以及該領域所承載的各種想像與願景
  • 集體智慧:聚合多個虛擬代理所共享的知識
  • 遺傳演算法:透過選擇機制演化虛擬代理群體
  • 常規機器學習:定義與概述
  • 任務類型:監督式學習、非監督式學習、增強式學習
  • 動作類型:分類、回歸、叢集分析、密度估計、降維
  • 機器學習演算法範例:線性回歸、朴素貝葉斯、隨機森林
  • 機器學習對比深度學習:探討目前機器學習仍屬尖端技術的領域(如隨機森林 & XGBoost)

神經網路基礎概念(應用:多層感知器)

  • 數學基礎回顧
  • 神經網路的定義:經典架構、激活函數
  • 前層激活值的加權處理、網路深度
  • 神經網路學習的定義:成本函數、反向傳播、隨機梯度下降、最大似然估計
  • 神經網路建模:根據問題類型(回歸、分類等)對輸入與輸出數據進行建模。維度災難(Curse of dimensionality)。
  • 多特徵數據與信號的區別。根據數據類型選擇成本函數。
  • 利用神經網路逼近函數:介紹與範例
  • 利用神經網路逼近分佈:介紹與範例
  • 數據增強:如何平衡數據集
  • 神經網路結果的泛化能力
  • 神經網路的初始化與正則化:L1 / L2 正則化、批次正規化(Batch Normalization)
  • 優化與收斂演算法

標準 ML / DL 工具

將簡要介紹各工具的優缺點、在生態系統中的位置及用途。

  • 數據管理工具:Apache Spark、Apache Hadoop 工具集
  • 機器學習:Numpy、Scipy、Sci-kit
  • 高階深度學習框架:PyTorch、Keras、Lasagne
  • 底層深度學習框架:Theano、Torch、Caffe、TensorFlow

卷積神經網路(CNN)。

  • CNN 簡介:核心原理與應用
  • CNN 的基本操作:卷積層、核(Kernel)的使用
  • 填充(Padding)與步長(Stride)、特徵圖生成、池化層。1D、2D 及 3D 擴展。
  • 介紹在分類領域達成尖端技術(State of the art)的不同 CNN 架構
  • 影像領域:LeNet、VGG 網路、Network in Network、Inception、ResNet。介紹各架構帶來的創新及其更廣泛的應用(如 1x1 卷積或殘差連接)
  • 注意力模型(Attention model)的使用
  • 應用於常見的分類案例(文本或影像)
  • 用於生成的 CNN:超解析度、像素到像素的分段。介紹
  • 影像生成中增加特徵圖的主要策略。

遞迴神經網路(RNN)。

  • RNN 簡介:核心原理與應用。
  • RNN 的基本操作:隱藏狀態激活、時間反向傳播、展開版本(Unfolded version)。
  • 向門控循環單元(GRU)和長短期記憶(LSTM)的演進。
  • 介紹不同狀態及這些架構帶來的演進
  • 收斂問題與梯度消失問題
  • 經典架構:時間序列預測、分類等 ...
  • RNN 編譯器-解譯器(Encoder-Decoder)架構。注意力模型的應用。
  • NLP 應用:詞彙 / 字符編碼、機器翻譯。
  • 影片應用:預測影片序列中下一張生成的影像。

生成式模型:變分自編解碼器(VAE)與生成對抗網路(GAN)。

  • 生成式模型簡介,及其與 CNN 的關聯
  • 自編解碼器:降維與有限制的生成
  • 變分自編解碼器:生成式模型與特定分佈的近似。潛空間(Latent space)的定義與使用。重參數化技巧(Reparameterization trick)。觀察到的應用與局限
  • 生成對抗網路:基礎知識。
  • 雙網路架構(生成器與判別器)的交替學習、可用的成本函數。
  • GAN 的收斂性及遇到的困難。
  • 收斂性改進:Wasserstein GAN、BEGAN。土運距離(Earth Moving Distance)。
  • 應用於影像或照片生成、文本生成、超解析度。

深度增強式學習。

  • 增強式學習簡介:在定義環境中控制代理(Agent)
  • 依據狀態與可能動作進行決策
  • 使用神經網路近似狀態函數
  • 深度 Q 學習:經驗重放(Experience replay),及其在電子遊戲控制中的應用。
  • 學習策略的優化。On-policy 與 Off-policy。Actor-Critic 架構。A3C。
  • 應用:控制單個電子遊戲或數位系統。

第二部分 – 使用 Theano 進行深度學習

Theano 基礎

  • 介紹
  • 安裝與設定

Theano 函數

  • 輸入、輸出、更新、給定條件(givens)

使用 Theano 訓練與優化神經網路

  • 神經網路建模
  • 邏輯回歸
  • 隱藏層
  • 網路訓練
  • 計算與分類
  • 優化
  • 對數損失(Log Loss)

模型測試

第三部分 – 使用 TensorFlow 建構 DNN

TensorFlow 基礎

  • TensorFlow 變數的創建、初始化、儲存與恢復
  • TensorFlow 數據的饋送、讀取與預載入
  • 如何利用 TensorFlow 基礎設施訓練大規模模型
  • 使用 TensorBoard 視覺化與評估模型

TensorFlow 機制

  • 數據準備
  • 下載
  • 輸入與佔位符(Placeholders)
  • 構建圖(Graph)
    • 推論(Inference)
    • 損失(Loss)
    • 訓練(Training)
  • 訓練模型
    • 圖結構(The Graph)
    • 會話(The Session)
    • 訓練迴圈(Train Loop)
  • 評估模型
    • 構建評估圖
    • 評估輸出

感知器(Perceptron)

  • 激活函數
  • 感知器學習演算法
  • 使用感知器進行二分類
  • 使用感知器進行文檔分類
  • 感知器的局限性

從感知器到支援向量機(SVM)

  • 核函數與核技巧(Kernel trick)
  • 最大間隔分類與支援向量

人工神經網路

  • 非線性決策邊界
  • 前饋式與反饋式人工神經網路
  • 多層感知器
  • 最小化成本函數
  • 前向傳播
  • 反向傳播
  • 改進神經網路學習方式

卷積神經網路

  • 目標
  • 模型架構
  • 原理
  • 程式碼組織
  • 啟動與訓練模型
  • 模型評估

將針對以下模組提供基本介紹(根據時間允許提供簡要介紹):

TensorFlow - 進階應用

  • 線程與佇列
  • 分散式 TensorFlow
  • 撰寫文檔與共享模型
  • 自訂數據讀取器
  • 操作 TensorFlow 模型檔案

TensorFlow Serving

  • 介紹
  • 基本服務教學
  • 進階服務教學
  • Inception 模型服務教學

最低要求

具備物理、數學及程式設計背景。有參與影像處理相關活動的經驗。

學員應事先理解機器學習的核心概念,並具備 Python 程式設計及相關函式庫的使用經驗。

 35 小時

客戶評論 (2)

課程分類