聯繫我們
 課程時長 21 時間:

課程簡介

引言

  • TensorFlow 與深度學習簡介
  • TensorFlow 的應用場景與用途
  • TensorFlow 生態系統與工具鏈
  • 機器學習與深度學習的工作流程
  • 課程目標與實踐練習概覽

TensorFlow 2.x 與早期版本比較 — 新特性

  • TensorFlow 1.x 與 2.x 的主要差異
  • 即時執行(Eager Execution)
  • 簡化的 API 與改進的易用性
  • 模型構建與訓練的變化
  • 介紹作為高級 API 的 Keras
  • 現有 TensorFlow 應用的遷移注意事項
  • TensorFlow 2.x 最佳實踐

設置 TensorFlow 2.x

  • 安裝 TensorFlow
  • 配置 Python 環境
  • 驗證 TensorFlow 安裝
  • 安裝和管理所需依賴項
  • 配置 CPU 和 GPU 環境
  • 在 Jupyter 筆記本中使用 TensorFlow
  • 基本的 TensorFlow 命令與操作
  • 排查安裝與配置問題

TensorFlow 2.x 功能與架構概覽

  • TensorFlow 架構與核心組件
  • 張量(Tensors)與張量操作
  • 變量與常數
  • 計算圖與即時執行
  • 自動微分
  • TensorFlow API 與模組
  • Keras 整合
  • 使用 tf.data 構建數據管道
  • 模型序列化與 TensorFlow SavedModel
  • TensorFlow 生態系統與開發工作流

神經網絡的運作原理

  • 人工神經網絡基礎
  • 神經元、層與網絡架構
  • 激活函數
  • 前向傳播
  • 損失函數
  • 反向傳播
  • 梯度下降與優化
  • 學習率與優化策略
  • 過擬合與欠擬合
  • 正規化技術
  • 訓練集、驗證集與測試集

使用 TensorFlow 2.x 創建深度學習模型

  • 創建張量與變量
  • 使用 Keras 構建神經網絡
  • 序貫式與函數式模型 API
  • 定義自定義模型與層
  • 配置優化器
  • 選擇適當的損失函數
  • 使用 fit() 訓練模型
  • 自定義訓練循環
  • 回調函數(Callbacks)與訓練監控
  • 管理模型檢查點(Checkpoints)

數據分析

  • 理解機器學習數據集
  • 探索結構化與非結構化數據
  • 數據可視化
  • 識別模式與異常值
  • 處理缺失與不一致數據
  • 將數據劃分為訓練集、驗證集與測試集
  • 選擇相關特徵
  • 為 TensorFlow 模型準備數據集

數據預處理

  • 數據正規化與標準化
  • 編碼類別數據
  • 處理缺失值
  • 特徵縮放
  • 圖像預處理
  • 文本預處理
  • 數據增強
  • 構建高效輸入管道
  • 使用 tf.data
  • 批處理、打亂、緩存與預取
  • 為模型訓練準備數據

構建模型

  • 選擇適當的神經網絡架構
  • 定義模型輸入與輸出
  • 創建稠密神經網絡
  • 選擇激活函數
  • 配置模型以進行訓練
  • 選擇優化器與損失函數
  • 訓練與驗證模型
  • 監控訓練指標
  • 提升模型性能
  • 防止過擬合
  • 實現正規化與 Dropout

實現先進的圖像分類器

  • 圖像分類基礎
  • 準備圖像數據集
  • 圖像正規化與增強
  • 卷積神經網絡
  • 卷積層與池化層
  • 設計圖像分類架構
  • 遷移學習(Transfer Learning)
  • 使用預訓練模型
  • 微調(Fine-tuning)預訓練網絡
  • 構建高級圖像分類器
  • 評估分類性能

模型訓練

  • 配置訓練參數
  • 批量大小(Batch size)與輪次(Epochs)
  • 優化器選擇
  • 學習率調度
  • 訓練回調函數
  • 早期停止(Early stopping)
  • 模型檢查點
  • 監控訓練進度
  • 檢測過擬合
  • 提升訓練性能
  • 分佈式訓練的考量

在 GPU 與 TPU 上訓練

  • CPU、GPU 與 TPU 架構
  • 硬件加速的優勢
  • 配置 TensorFlow 以進行 GPU 訓練
  • 理解基於 TPU 的訓練
  • 為不同工作負載選擇硬件
  • 在設備之間遷移計算任務
  • 管理內存與計算資源
  • 比較訓練性能
  • 分佈式與加速訓練策略

模型評估

  • 選擇適當的評估指標
  • 準確率、精確度、召回率與 F1 分數
  • 回歸評估指標
  • 混淆矩陣
  • 驗證策略
  • 評估分類模型
  • 評估模型泛化能力
  • 識別模型弱點
  • 比較不同的模型配置

進行預測

  • 使用已訓練模型進行推理
  • 準備新的輸入數據
  • 執行批量與單個預測
  • 解讀模型輸出
  • 分類概率
  • 回歸預測
  • 構建推理工作流
  • 處理未見數據
  • 管理預測管道

評估預測結果

  • 分析預測質量
  • 將預測結果與預期結果進行比較
  • 識別假陽性與假陰性
  • 錯誤分析
  • 評估模型置信度
  • 可視化預測結果
  • 檢測數據與預測偏差
  • 根據預測分析提升模型性能

模型調試

  • 識別常見的訓練問題
  • 診斷錯誤預測
  • 調試數據管道
  • 調查損失與指標行為
  • 檢測梯度爆炸與梯度消失
  • 診斷過擬合與欠擬合
  • 檢查模型層與輸出
  • 使用 TensorFlow 調試與性能分析工具
  • 提升模型穩定性與性能

保存模型

  • 保存已訓練模型
  • TensorFlow SavedModel 格式
  • 保存與恢復模型權重
  • 保存模型架構與配置
  • 加載模型以進行推理
  • 模型版本管理
  • 導出模型以進行部署
  • 管理模型工件
  • 為生產環境準備模型

將模型部署到雲端

  • 基於雲端的模型部署簡介
  • 為生產環境準備 TensorFlow 模型
  • 通過 API 提供模型服務
  • 模型服務概念
  • 將 TensorFlow 應用容器化
  • 基於雲端的推理
  • 擴展模型服務工作負載
  • 監控已部署模型
  • 管理模型版本
  • 生產部署的考量

將模型部署到移動設備

  • 移動機器學習的挑戰
  • TensorFlow Lite
  • 將 TensorFlow 模型轉換以進行移動部署
  • 模型優化與體積減小
  • 量化(Quantization)
  • 在移動設備上運行推理
  • 管理移動設備資源
  • 將模型整合到移動應用中
  • 測試移動推理性能

將模型部署到嵌入式系統(IoT)

  • 嵌入式設備上的機器學習
  • 用於嵌入式應用的 TensorFlow Lite
  • 資源限制與優化
  • 減小模型體積與計算需求
  • 邊緣推理
  • 傳感器與實時數據處理
  • 在本地運行預測
  • 功耗與內存考量
  • 將 TensorFlow 模型整合到 IoT 工作流中
  • 測試與監控邊緣部署

將模型與不同語言整合

  • TensorFlow 模型的互操作性
  • 通過 API 提供模型服務
  • 從不同編程環境使用 TensorFlow 模型
  • 基於 Python 的模型整合
  • 將模型整合到 Web 應用中
  • 通過基於 REST 的服務進行模型推理
  • 將 TensorFlow 整合到現有應用中
  • 數據交換與序列化
  • 生產整合的考量

故障排查

  • 診斷 TensorFlow 安裝問題
  • 排查模型構建錯誤
  • 調試數據預處理問題
  • 解決訓練失敗問題
  • 調查 GPU 和 TPU 配置問題
  • 診斷內存與性能問題
  • 排查模型加載與保存問題
  • 調試部署問題
  • 實戰故障排查練習

總結與結論

  • TensorFlow 2.x 概念回顧
  • 神經網絡與深度學習工作流回顧
  • 數據準備與模型開發回顧
  • 圖像分類回顧
  • 訓練與評估技術回顧
  • 模型調試與優化回顧
  • 雲端、移動及 IoT 部署回顧
  • TensorFlow 開發最佳實踐
  • 最終實踐練習
  • 問答與討論

最低要求

  • 具備 Python 編程經驗。
  • 熟悉 Linux 命令行操作。

受眾對象

  • 開發人員
  • 數據科學家

客戶評論 (4)

課程分類