一、學習目標
讀完這篇,你會知道:
- 資料(Data)對 AI 來說到底是什麼角色?
- 原始資料、訓練資料、驗證資料、測試資料有什麼不同?
- 結構化、半結構化、非結構化資料各長什麼樣?
- AI 資料從哪裡來?六大資料來源怎麼分?
- 訓練集 / 驗證集 / 測試集的功能各是什麼?
二、核心內容
2-1|AI 與資料的關係——廚師與食材
一句話版本:資料是 AI 的食物,沒有好食材,再厲害的廚師也做不出好料理。
想像一位廚師(AI 模型)要學做菜:
- 食材(原始資料):剛從市場買回來的生鮮,未經處理
- 料理過的菜(訓練資料):洗好、切好、調味好,可以下鍋的狀態
- 試吃的菜(驗證資料):做完拿給助理試吃,看看要不要調整
- 最終評分菜(測試資料):拿給完全不知道食譜的評審打分
┌─────────────────────────────────────────────────────────┐
│ AI 學習的資料流 │
│ │
│ [原始資料] │
│ ↓ 清洗、標記 │
│ [訓練資料] ──→ AI 模型學習規律 │
│ ↓ 抽出 20% │
│ [驗證資料] ──→ 訓練途中調整參數用 │
│ ↓ 最後才碰 │
│ [測試資料] ──→ 最終效能評估,不能作弊! │
│ │
└─────────────────────────────────────────────────────────┘
考試重點:測試資料(Test Data)在整個訓練過程中絕對不能碰,一旦用過就等於「考試洩題」,評估結果失去意義。
2-2|資料的基本型態:標記 vs 未標記
在進一步分類之前,先搞懂最重要的一對概念:
| 型態 | 英文 | 比喻 | 例子 |
|---|---|---|---|
| 標記資料 | Labeled Data | 每張照片都有老師幫你寫上「這是貓」 | 圖片 + 類別標籤、病歷 + 診斷結果 |
| 未標記資料 | Unlabeled Data | 一堆沒有說明的照片,你自己猜 | 沒有分類的網路文章、原始感測器數值 |
為什麼重要?
- 標記資料 → 拿來訓練監督式學習(Supervised Learning)
- 未標記資料 → 拿來訓練非監督式學習(Unsupervised Learning)
- 少量標記 + 大量未標記 → 拿來訓練半監督式學習(Semi-supervised Learning)
考試重點:標記資料成本高(需要人工標注),未標記資料雖然多但不能直接用於監督式學習。這是現實世界 AI 訓練最大的瓶頸之一。
2-3|資料格式三大類型
用廚房食材的包裝方式來記:
| 類型 | 英文 | 比喻 | 特色 | 常見例子 |
|---|---|---|---|---|
| 結構化資料 | Structured Data | 超市貨架:每樣東西都有固定位置和標籤 | 有行有列,格式整齊,容易搜尋 | 資料庫(SQL)、Excel 試算表、CSV 檔 |
| 半結構化資料 | Semi-structured Data | 家裡冰箱:大致有分區,但沒那麼嚴格 | 有基本組織但格式彈性,不是固定欄位 | JSON、XML、HTML、電子郵件 |
| 非結構化資料 | Unstructured Data | 雜物間:什麼都有,完全沒有固定格式 | 機器最難處理,但佔世界資料量 80% 以上 | 圖片、音訊、影片、自由文字 |
結構化資料長這樣(Excel 表格):
┌──────┬──────┬──────┬──────┐
│ 姓名 │ 年齡 │ 城市 │ 薪資 │
├──────┼──────┼──────┼──────┤
│ 小明 │ 28 │ 台北 │ 50000│
│ 小華 │ 35 │ 台中 │ 65000│
└──────┴──────┴──────┴──────┘
每欄都有固定意義,機器很容易讀
半結構化資料長這樣(JSON):
{
"name": "小明",
"age": 28,
"skills": ["Python", "SQL", "Tableau"],
"address": {
"city": "台北",
"district": "信義區"
}
}
有層次結構,但欄位不固定,skills 可以有 1 個或 100 個
非結構化資料長這樣:
┌─────────────────────────────────────────────┐
│ 一張貓咪照片的本質: │
│ 2048 × 1536 個像素,每個像素有 RGB 三個數值 │
│ → 機器看到的是 9,437,184 個數字 │
│ → 「這是貓」這件事,機器完全不知道 │
└─────────────────────────────────────────────┘
考試重點:結構化資料適合傳統 ML 方法;非結構化資料的處理(圖像用 CNN、文字用 Transformer)是深度學習崛起的主要原因。
2-4|資料來源六大類型
資料從哪裡來?用食材供應商的角度來想:
| 來源類型 | 英文 | 比喻 | 典型例子 |
|---|---|---|---|
| 感測器資料 | Sensor Data | 農場直送:即時、連續、量大 | IoT 設備、工廠機台溫度、心跳監測、自動駕駛雷達 |
| 使用者行為資料 | User Behavior Data | 客人點餐紀錄:記下每個客人做了什麼 | 點擊率、購買紀錄、頁面停留時間、搜尋關鍵字 |
| 自然語言資料 | NLP Data | 顧客留言板:文字訊息、評論 | 社群媒體貼文、新聞文章、客服對話紀錄 |
| 視覺資料 | Visual Data | 監控攝影機:記錄看見的一切 | 醫療影像(X 光、MRI)、衛星圖、產線瑕疵照片 |
| 公開資料集 | Open Datasets | 超市的公開食譜書:免費取用 | ImageNet、COCO、Common Crawl、Kaggle 競賽資料集 |
| 企業內部資料 | Enterprise Data | 餐廳內部庫存系統:自家秘方 | ERP 系統、客戶關係管理(CRM)、銷售記錄 |
三大公開資料集你必須認識:
| 資料集 | 內容 | 用途 |
|---|---|---|
| ImageNet | 超過 1,400 萬張標記圖片,1,000 個類別 | 圖像分類、物件辨識基準測試 |
| COCO | 33 萬張圖片,含物件偵測和語義分割標記 | 物件偵測(Object Detection)訓練 |
| Kaggle | 各種主題的競賽資料集平台 | 資料科學練習、業界競賽 |
考試重點:ImageNet 是 2012 年深度學習革命的催化劑——AlexNet 在 ImageNet 競賽大幅超越傳統方法,標誌著深度學習時代的開始。
2-5|功能性分類:訓練 / 驗證 / 測試資料集
這是 AI 工程中最常出現的三分法,用考試備考流程來記憶:
| 資料集 | 英文 | 比例(常見) | 用途 | 考試比喻 |
|---|---|---|---|---|
| 訓練集 | Training Set | 60–70% | 模型從這裡學習規律,調整參數(weights) | 課本和習題:反覆練習 |
| 驗證集 | Validation Set | 10–20% | 訓練過程中調整超參數,避免過擬合 | 模擬考:看哪裡還要補強 |
| 測試集 | Test Set | 10–20% | 最終評估模型在「完全沒見過的資料」上的表現 | 正式考試:不能事先看題目 |
比例分配的黃金原則:
┌──────────────────────────────────────────────────────┐
│ 資料集分割比例(典型設定) │
│ │
│ ████████████████████████████████░░░░░░░░░░░░░ │
│ ←────────── 訓練集 70% ──────────→←─驗證 15%─→ │
│ ←─15%─→│
│ 測試集 │
│ │
│ 資料量很大時:可以 80/10/10 │
│ 資料量很小時:考慮用 K-Fold 交叉驗證 │
└──────────────────────────────────────────────────────┘
過擬合(Overfitting)是什麼?
訓練資料準確率 99%,測試資料準確率只有 60%——這就是過擬合。
比喻:你死記了考古題的所有答案(訓練集準確率超高),但正式考試換了新題型,你完全不會(測試集表現差)。驗證集就是讓你在正式考前發現這個問題。
考試重點:訓練集讓模型「學」;驗證集讓模型「調整」;測試集是最終「考試」,三者必須嚴格分開,不能有資料洩漏(Data Leakage)。
三、關鍵名詞中英對照
| 中文 | 英文 | 一句話解釋 |
|---|---|---|
| 原始資料 | Raw Data | 未經任何處理的原始紀錄 |
| 訓練資料 | Training Data | 用來讓模型學習規律的標記資料 |
| 驗證資料 | Validation Data | 訓練過程中用來調整超參數的資料 |
| 測試資料 | Test Data | 最終評估模型效能,訓練期間完全不碰 |
| 標記資料 | Labeled Data | 每筆資料都有正確答案標籤 |
| 未標記資料 | Unlabeled Data | 沒有標籤,需要人工或演算法標注 |
| 結構化資料 | Structured Data | 有固定欄位格式的資料(如 Excel) |
| 半結構化資料 | Semi-structured Data | 有組織但格式彈性(如 JSON、XML) |
| 非結構化資料 | Unstructured Data | 無固定格式(圖片、音訊、自由文字) |
| 過擬合 | Overfitting | 模型在訓練集表現好但泛化能力差 |
| 資料洩漏 | Data Leakage | 測試集資訊在訓練階段被看見,導致評估失準 |
| ImageNet | ImageNet | 1,400 萬張標記圖片,深度學習革命的催化劑 |
| COCO | COCO | 物件偵測的主流公開訓練資料集 |
四、考試重點提示
必背清單:
- 訓練集 / 驗證集 / 測試集各自的用途不能搞混
- 測試集不能在訓練過程中使用,否則發生「資料洩漏」
- 結構化 ≠ 半結構化 ≠ 非結構化:格式整齊程度不同
- ImageNet 是 2012 年深度學習革命的關鍵資料集
- 標記資料成本高 → 半監督學習和弱監督學習的存在原因
- 非結構化資料佔全球資料量 80% 以上
易混淆比較:
| 常搞混的 | 差別在哪 |
|---|---|
| 訓練集 vs 驗證集 | 訓練集更新模型參數(weights);驗證集調整超參數(hyperparameters) |
| 驗證集 vs 測試集 | 驗證集可以用多次;測試集只能在最後用一次 |
| 標記資料 vs 訓練資料 | 標記資料是按格式分類;訓練資料是按用途分類,訓練資料通常是標記的 |
| JSON vs XML | 都是半結構化資料;JSON 更輕量、XML 更冗長但支援命名空間 |
| ImageNet vs COCO | ImageNet 做圖像分類;COCO 做物件偵測(有邊框標記) |
Q1. 一家公司收集了 10 萬筆客服對話紀錄,但沒有標記哪些是「投訴」哪些是「諮詢」。這份資料屬於?
- (A) 結構化標記資料
- (B) 非結構化未標記資料
- (C) 半結構化標記資料
- (D) 結構化未標記資料
Q2. AI 模型在訓練集準確率達 98%,但在測試集只有 61%,這最可能是什麼問題?
- (A) 欠擬合(Underfitting)
- (B) 過擬合(Overfitting)
- (C) 資料量太少
- (D) 模型架構錯誤
Q3. 下列哪個資料集是以「物件偵測任務」為主要設計目的?
- (A) ImageNet
- (B) COCO
- (C) Kaggle
- (D) Common Crawl
Q4. JSON 格式的資料屬於哪種類型?
- (A) 結構化資料
- (B) 非結構化資料
- (C) 半結構化資料
- (D) 原始資料
Q5. 在機器學習流程中,驗證集(Validation Set)的主要作用是?
- (A) 讓模型學習規律,更新權重(weights)
- (B) 調整超參數(hyperparameters),防止過擬合
- (C) 評估模型最終上線後的真實效能
- (D) 做資料清洗和預處理
解答與解析
| 題號 | 答案 | 解析 |
|---|---|---|
| Q1 | (B) | 客服對話是自由文字 → 非結構化資料;沒有「投訴 / 諮詢」標籤 → 未標記資料。兩個條件都符合 (B)。 |
| Q2 | (B) | 訓練集表現極好但測試集極差,是過擬合(Overfitting)的典型症狀——模型把訓練資料的「雜訊」也記起來了,泛化能力差。 |
| Q3 | (B) | COCO(Common Objects in Context)包含邊框標記(bounding box)和分割遮罩,專為物件偵測設計。ImageNet 主要做圖像分類。 |
| Q4 | (C) | JSON 有鍵值對的組織結構,但欄位數量和巢狀層級可以彈性調整,屬於半結構化資料的典型代表。 |
| Q5 | (B) | 驗證集用於調整超參數(如學習率、層數、Dropout 比例),目的是找到泛化能力最好的設定,防止模型過擬合訓練集。更新 weights 的是訓練集;最終評估是測試集的工作。 |