首頁 / 學習筆記 / 中級科目二 / 大數據與機器學習

iPAS AI中級中級科目二⚙️ 機器學習核心
📖 學習筆記・中級科目二

CH6.1 大數據與機器學習

大數據與機器學習

🧭 本節架構

大數據 5V 特性(Volume/Variety/Veracity品質偏態/Velocity/Value)對機器學習流程的挑戰與對策 → 分散式模型訓練三模式(資料並行/模型並行/混合式)與訓練效能優化(硬體加速、混合精度、梯度累積壓縮、Early Stopping)→ 端對端機器學習流程(MLOps:資料整合 → 訓練驗證 → 部署 → 持續監控)。

1. 大數據 5V 對機器學習流程的挑戰

傳統機器學習假設資料量可控、型態一致、更新頻率有限,可於單機完成清理、特徵工程、訓練與驗證。當資料進入 TB~PB 級「大數據環境」,這些前提不再成立,需依 5V 特性全面重構流程:

特性挑戰對策
Volume(規模大)資料無法一次性載入記憶體,訓練與驗證耗時增加分批載入(Mini-Batch)、資料取樣、分散式儲存(HDFS)+ 列式壓縮格式(Parquet);訓練用 Spark MLlib、Horovod(多 GPU 同步)、TensorFlow MultiWorker Strategy;評估用 Streaming Confusion Matrix、Streaming AUC
Variety(型態多樣)文字、影像、感測器等多模態資料需不同特徵轉換技術文字用詞嵌入(Word2Vec/BERT)、影像用 CNN 提取特徵、音訊用 RNN/Spectrogram;多模態需對齊(Alignment)與融合(Fusion);統一整合平台用資料湖(如 Apache Iceberg、Delta Lake)
資料品質與偏態問題類別不平衡、標註錯誤、資料冗餘影響模型公平性類別加權(Class Weighting)、欠抽樣/過抽樣(SMOTE)、弱標註與主動學習、評估用 F1-score/Balanced Accuracy/公平性指標(Demographic Parity)
Velocity(流動快速)毫秒至秒級即時反應需求,批次處理無法滿足時效性資料流分析(Stream Processing)、增量學習(Online Learning,如 SGDClassifier、Vowpal Wabbit)、模型微調;平台:Apache Kafka、Flink、Spark Streaming
Veracity(來源異質)命名規則、單位、時間戳記不一致;易產生資料漂移與概念漂移Schema Mapping、資料編目(Data Catalog)、資料血緣追蹤(Data Lineage)、統計檢定(KS Test)偵測資料漂移
Value(價值密度低)大量資料中真正有意義的訊息比例極低特徵選擇與降維(Lasso、PCA)、高資訊密度抽樣、自動化 EDA(Sweetviz)、主動學習聚焦標註
🎯 核心觀念

5V 特性中,Volume/Variety/Velocity 描述資料本身的「規模、型態、速度」,而 Veracity(真實性/一致性)與 Value(價值密度)則進一步指出:「資料量大」不代表「資料品質好」或「資訊有用」,這是大數據機器學習與傳統機器學習思維上最大的分水嶺。

2. 分散式模型訓練架構

(1) 三種分散式訓練模式

模式做法適用情境
資料並行(Data Parallelism)訓練資料分批分發至多個工作節點,每台使用相同模型副本,訓練後合併梯度更新全域參數樣本量大但模型中等,如影像分類、NLP
模型並行(Model Parallelism)將大型模型的不同部分分配至不同節點運算單機記憶體無法容納整個模型,如 GPT、BERT 等超大模型
混合式並行(Hybrid Parallelism)資料並行 + 模型並行結合同時需要橫向擴展與模型放大

(2) 訓練效能最佳化策略

策略說明
硬體加速GPU/TPU 加速張量運算,雲端平台(AWS SageMaker、Vertex AI)彈性配置資源
混合精度訓練(Mixed Precision Training)結合 FP32 與 FP16 浮點數計算,加速訓練同時節省記憶體
梯度累積與梯度壓縮Mini-batch 受限時用梯度累積(Gradient Accumulation)先算多個小 batch 梯度再一次更新;分散式訓練用梯度壓縮(Top-k Sparsification、Quantization)減少傳輸量
Early Stopping 與 Checkpointing驗證集表現未提升時自動中止訓練,節省資源;定期儲存模型權重使訓練可中斷續接

進階應用:資料前處理瓶頸可用高效格式(TFRecord、Parquet)+ 快取策略(tf.data API)優化;模型可採預訓練(Pre-training)+ 微調(Fine-tuning)兩階段訓練降低成本;資料隨時間變動時可用持續學習(Continual/Online Learning),關鍵挑戰是避免災難性遺忘(Catastrophic Forgetting)。

🧠 記憶技巧

「資料並行分資料、模型並行分模型、混合式兩者都分」——判斷關鍵在於「是樣本量太大」還是「模型本身太大裝不下」。

3. 端對端機器學習流程與 MLOps

從大數據平台開始,將資料前處理、模型訓練、評估、部署到線上應用整合成可維運、可擴展的系統流程,稱為端對端機器學習流程(End-to-End ML Pipeline),是 MLOps(Machine Learning Operations)實務的核心。

`` 資料整合與處理管線 → 模型訓練與驗證 → 模型部署與上線 → 持續監控與模型維運 ``

階段核心工作
(1) 資料整合與處理管線整合 IoT/Web log/CRM 等異質來源至資料湖或資料倉儲;用 Spark/Airflow/Kubeflow 自動化前處理;用 Delta Lake/MLflow Tracking 做資料版本與追蹤
(2) 模型訓練與驗證用 SageMaker Pipeline/Vertex AI/Kubeflow Pipelines 串接訓練、調參、交叉驗證;用 MLflow/Weights & Biases 追蹤模型版本與實驗
(3) 模型部署與上線Batch Serving(定期批次預測)、Online Serving/API Serving(RESTful API/gRPC 即時查詢)、Streaming Inference(Kafka/Flink 低延遲事件推論);容器化(Docker + Kubernetes)搭配 A/B 測試、藍綠部署
(4) 持續監控與模型維運監控準確率、延遲、錯誤率;偵測資料漂移與概念漂移;設定門檻自動觸發重訓 + CI/CD 部署更新
⚠️ 易錯點

資料漂移(Data Drift)指資料分佈本身隨時間改變(如消費行為改變);概念漂移(Concept Drift)指資料與標籤之間的關聯改變(如詐騙行為模式變異)——兩者概念不同,考題常混用測試是否能區分「資料本身變了」還是「資料與答案的關係變了」。

📝 章節考題自測(先作答,再點開解答)

Q1. 某團隊需要訓練一個參數量極大、單一 GPU 記憶體無法容納完整模型的語言模型,應採用下列哪一種分散式訓練模式?

(A) 資料並行(Data Parallelism) (B) 模型並行(Model Parallelism) (C) 不需要分散式訓練 (D) 僅需增加訓練資料量

解答與解析

參考 Ans: (B) 當單機記憶體無法容納整個模型時,應採用模型並行(Model Parallelism),將模型的不同部分分配至不同節點運算,這正是 GPT、BERT 等超大模型訓練的常見做法;資料並行則是解決樣本量過大、但模型本身裝得下的問題。

Q2. 某電商平台的用戶消費行為隨季節改變,導致原本訓練好的詐欺偵測模型效能逐漸下降,但用戶「消費金額與詐欺與否」的關聯規則本身並未改變,這屬於下列哪一種現象?

(A) 概念漂移(Concept Drift) (B) 資料漂移(Data Drift) (C) 型一錯誤 (D) 梯度消失

解答與解析

參考 Ans: (B) 題目描述「資料分佈本身隨時間改變(消費行為改變)」,但特徵與標籤之間的關聯規則未變,這屬於資料漂移(Data Drift);若是「詐騙行為模式本身變異」(特徵與標籤的關聯改變),才屬於概念漂移(Concept Drift)。

Q3. 下列何者是混合精度訓練(Mixed Precision Training)的主要目的?

(A) 提高模型的過擬合程度 (B) 結合 FP32 與 FP16 浮點數計算,加速訓練同時節省記憶體 (C) 完全捨棄浮點數運算 (D) 增加訓練資料的維度

解答與解析

參考 Ans: (B) 混合精度訓練結合單精度(FP32)與半精度(FP16)浮點數計算,能在維持模型效能的同時加速訓練並節省記憶體,特別適用於語音、影像與語言模型。

Q4. 某企業發現訓練資料中詐欺樣本僅占 0.5%,導致模型過度學習正常交易而忽略詐欺樣本,下列哪一項最能有效改善此問題?

(A) 增加模型層數 (B) 採用類別加權(Class Weighting)或過抽樣技術(如 SMOTE)平衡資料集 (C) 降低學習率 (D) 使用 Early Stopping

解答與解析

參考 Ans: (B) 樣本嚴重不平衡時,應採用類別加權(調整損失函數權重)或過抽樣技術(如 SMOTE 合成少數樣本)平衡資料集,使模型對少數類別更敏感,這是針對「資料品質與偏態問題」的典型對策。

Q5. 在端對端機器學習流程(End-to-End ML Pipeline)中,「模型部署與上線」階段若需求是「以 RESTful API 提供即時查詢預測服務」,這屬於下列哪一種部署模式?

(A) Batch Serving (B) Online Serving / API Serving (C) 離線分析 (D) 資料清洗

解答與解析

參考 Ans: (B) Online Serving / API Serving 以 RESTful API 或 gRPC 提供即時查詢預測服務;Batch Serving 則是定期批次產出預測結果(如每日風險報表),兩者部署模式與時效性需求不同。

Q6. 下列何者是 MLOps(Machine Learning Operations)的核心精神?

(A) 模型訓練完成後即結束整個專案,無需後續維運 (B) 將資料前處理、訓練、部署與監控整合為可維運、可擴展的系統流程 (C) 僅關注模型準確率,不考慮部署與監控 (D) 完全以人工方式管理模型版本

解答與解析

參考 Ans: (B) MLOps 強調將資料整合、模型訓練驗證、部署上線到持續監控整合為一套可維運、可擴展的端對端系統流程,而非把模型訓練視為單次、獨立的實驗性工作。