回到頂部
資料分成訓練、驗證與測試流程並產生機器學習模型
🔬 Level 2

機器學習是什麼?監督式、非監督式與模型評估入門

用垃圾郵件、房價與顧客分群看懂機器學習,釐清監督式、非監督式、特徵、訓練驗證測試集,以及 Accuracy、Precision、Recall 怎麼選。

內容查核: 連結查核: 來源查核:

本文含聯盟連結

影音平台推薦下一支影片、信箱攔截垃圾郵件、銀行判斷交易風險,背後都可能用到機器學習。它們看起來像「電腦自己學會規則」,更準確的說法是:開發者定義任務、資料與評估方式,演算法再從資料調整模型參數。 若你還不確定 AI、機器學習和生成式 AI 的範圍,可先看 AI 新手入門

模型學到的是資料中的統計模式,不是放諸四海皆準的真理。資料有偏差、答案標錯、測試方式不合理,模型就可能在報表上很好看,到了真實環境卻失準。

機器學習和一般程式有什麼差別?

一般規則式程式由人明確寫出條件,例如「訂單超過某金額就人工審核」。機器學習則讓模型從過往案例學習輸入和結果之間的關係,再對新案例輸出預測。

方法規則從哪裡來適合情境
規則式程式人明確撰寫條件規則穩定、可完整列舉、必須容易解釋
機器學習演算法從資料調整模型規則難以手寫、案例多、允許用機率判斷

兩者常常一起使用。垃圾郵件模型可以先給風險分數,再由明確規則決定要放進垃圾桶、要求驗證,還是交給人工處理。若十條規則就能穩定完成工作,也不必為了「使用 AI」增加資料管線與監控成本。

一個機器學習問題有哪些元素?

資料、特徵與標籤

資料是用來訓練與評估的案例。特徵(feature)是模型可使用的輸入,例如信件字數、寄件網域、房屋坪數或最近交易次數。標籤(label)是監督式學習想預測的答案,例如「垃圾郵件/正常郵件」或成交價格。

資料並非越多越好。數量增加通常有幫助,但代表性、標記品質、欄位定義與蒐集方式同樣重要。一百萬筆過時或偏向單一族群的紀錄,可能不如較小但貼近使用情境的資料集。

演算法與模型

演算法是如何從資料更新參數的方法;模型是訓練完成後用來預測的結果。決策樹、線性模型與神經網路都是模型家族,同一批資料用不同方法訓練,可能得到不同的準確度、速度與可解釋性。

損失函數與評估指標

訓練時,損失函數告訴演算法「目前錯多少」,演算法據此調整參數。評估指標則用來回答業務問題,例如攔截垃圾信時漏掉多少、房價預測平均差多少、詐欺警示中有多少是真的。

監督式學習:從有答案的案例學習

監督式學習使用成對的輸入與標籤。模型在訓練時看過案例及正確答案,目標是把學到的關係套用到未見資料。

分類:答案是類別

  • 信件是垃圾郵件或正常郵件。
  • 影像中是否有產品瑕疵。
  • 客戶是否可能取消訂閱。

分類模型通常輸出機率或分數,再由門檻轉成類別。門檻不是固定答案:把詐欺門檻調低,可能抓到更多可疑交易,同時也會誤擋更多正常交易。

迴歸:答案是連續數值

  • 預測房屋成交價格。
  • 預估下週需求量。
  • 預測設備剩餘壽命。

迴歸的答案是連續數值,任務不一定和未來有關。若資料生成方式改變,例如政策、價格或使用者行為變動,模型也需要重新評估。

非監督式學習:尋找未標記資料的結構

非監督式學習沒有每筆資料的標準答案,常用來探索結構、壓縮資訊或協助後續分析。

分群

分群會依選定特徵與距離概念,把相似案例放在一起。例如根據購買頻率、金額與商品類型建立顧客群。模型找出的群不會自動等於「高價值客戶」或其他業務標籤,仍需要人解讀與驗證。

分群結果很受特徵尺度、群數與演算法假設影響。同一批客戶資料改用不同欄位,可能得到完全不同的群組。

降維

降維把大量相關特徵壓縮成較少的表示,可用於視覺化、降低雜訊或加速後續模型。壓縮後的維度不一定有直觀名稱,也可能犧牲部分資訊。

異常偵測

當真正異常案例很少或難以標記時,可以先學習常見模式,再找出偏離模式的案例。被標成異常只代表「和多數資料不同」,不等於一定是詐欺、故障或攻擊,通常還需要人工或其他規則確認。

強化學習和前兩者有何不同?

強化學習讓代理人在環境中採取行動,根據獎勵訊號調整策略,目標是提高長期累積回饋。遊戲、機器人控制與部分資源配置問題會使用這種方法。

它不是單純「沒有標籤的學習」。獎勵函數、可採取行動與環境回饋都由系統設計;獎勵定義錯誤時,代理人可能找到符合分數、卻違背真正目的的做法。

特徵工程還重要嗎?

特徵工程是把原始資料轉成模型更容易使用的表示。例如把日期轉成年、月、星期,把交易紀錄整理成近 30 天次數,或把類別欄位編碼成數值。

深度學習可以直接從影像、聲音與文字中學出許多表示,降低部分手工特徵需求,但資料定義仍然重要。開發者還是要決定預測時間點、可使用哪些欄位、缺值如何處理,以及哪些資訊在真實預測時根本拿不到。

最危險的錯誤之一是資料洩漏(data leakage):訓練資料包含預測當下不可能知道的答案線索。例如用「退款完成日期」預測訂單是否會退款,離線分數可能非常高,上線時卻沒有這個欄位可用。

訓練集、驗證集與測試集

三種資料用途不同:

  • 訓練集:用來調整模型參數。
  • 驗證集:用來選模型、調超參數與決定門檻。
  • 測試集:在選擇完成後,估計模型面對未見資料的表現。

沒有所有專案都適用的 70/20/10 或 80/20 固定比例。資料量大時,較小的驗證與測試比例也可能足夠;資料少時可考慮交叉驗證。比例之外,怎麼切更重要:

  • 預測未來需求時,應按時間先後切分,不能把未來資料隨機混進訓練集。
  • 同一病人、使用者或裝置的紀錄應避免同時出現在訓練與測試兩邊。
  • 少數類別要確認各資料集仍有足夠案例可評估。

測試集若被反覆拿來調整模型,就不再是獨立測試。這時應保留新的資料,或清楚承認目前分數已經受到選擇影響。

Accuracy、Precision、Recall 怎麼選?

以「陽性」代表模型要找的事件:

  • Accuracy(準確率):所有案例中,預測正確的比例。
  • Precision(精確率):模型判為陽性的案例中,實際為陽性的比例。
  • Recall(召回率):所有真正陽性案例中,被模型找出的比例。
  • F1:Precision 與 Recall 的調和平均,適合需要平衡兩者的比較,但仍會隱藏具體錯誤成本。

假設一萬筆交易只有十筆詐欺,模型全部猜「正常」也有 99.9% Accuracy,卻一筆詐欺都抓不到。這種不平衡資料要同時看 Precision、Recall、混淆矩陣,以及不同門檻下的表現。

迴歸任務常見指標包括 MAE(平均絕對誤差)與 RMSE(均方根誤差)。RMSE 對大誤差較敏感;選哪一個要看大錯一次是否特別昂貴。指標最終應連回實際代價,例如誤擋訂單、漏掉瑕疵與人工複核時間。

過度擬合與分布改變

過度擬合是模型太貼近訓練資料細節,在未見資料上表現下降。可以透過更多具代表性的資料、正則化、限制模型複雜度、資料增強與適當驗證降低風險。

但上線失準不一定都是過度擬合。使用者、產品、政策或感測器改變,會使實際資料分布和訓練時不同。這時需要持續監控輸入分布、錯誤率、延遲與業務結果,必要時重新標記資料、調整規則或重訓模型。

從問題到上線的實務流程

  1. 定義目標:先寫清楚要預測什麼、在什麼時間點預測,以及預測後要採取什麼行動。
  2. 建立簡單基準:拿固定規則、平均值或簡單模型比較,確認複雜模型真的帶來改善。
  3. 整理與切分資料:檢查標記品質、缺值、偏差、群組與時間,防止資料洩漏。
  4. 訓練與驗證:比較模型和門檻,記錄實驗條件,不只挑最高單一分數。
  5. 獨立測試:用未參與選擇的資料評估,也檢查重要族群與邊界案例。
  6. 小範圍上線:保留人工覆核、回退方案與事件紀錄;生成式模型還可參考 LLM 評測指南
  7. 持續監控:追蹤資料漂移、模型品質、成本、公平性與實際業務結果。

Google 的 Rules of ML也建議先建立可靠管線與簡單模型,再增加複雜度。模型上線只是週期的一部分,不是專案終點。

常見問題

機器學習、深度學習和 AI 有什麼關係?

AI 是較大的領域,機器學習是其中一類方法;深度學習又是機器學習中的一類,主要使用多層神經網路。不是所有 AI 都是機器學習,也不是所有機器學習都需要深度神經網路,可延伸閱讀 深度學習入門

做機器學習一定要很多資料嗎?

沒有固定筆數。需求取決於任務難度、特徵、雜訊、模型與可接受誤差。資料少時可先用簡單模型、遷移學習或規則基準;比起盲目蒐集,先分析模型在哪些案例失敗更有價值。

模型 Accuracy 很高,為什麼還不能上線?

高 Accuracy 可能來自類別不平衡、資料洩漏或測試資料不貼近真實情境。還要檢查 Precision、Recall、重要族群、時間外資料、延遲、成本與失敗後果。

機器學習模型會一直自己變好嗎?

通常不會。多數已部署模型的參數是固定的,只有重新訓練或明確設計線上學習流程才會更新。新資料也可能包含錯誤或攻擊,因此更新前需要驗證、版本控制與回退機制。

什麼情況不適合使用機器學習?

規則可以完整列舉、沒有可用資料、錯誤代價極高卻無法人工覆核,或問題環境變動快到無法評估時,都應先考慮規則式系統、改善資料或縮小任務。

資料來源

№ · further reading

延伸閱讀