本篇文章更新時間:2026/03/16
如有資訊過時或語誤之處,歡迎使用 Contact 功能通知或向一介資男的 LINE 社群反應。
如果本站內容對你有幫助,歡迎贊助支持 。
用圖像方法打開機器學習世界:決策樹的直覺式入門
編輯前言:這篇文章來自 A Visual Introduction to Machine Learning。作者用生動的視覺化案例,帶大家從零開始理解什麼是機器學習、邊界如何被建立,以及為什麼決策樹是入門者的友善起點。我讀完之後覺得概念清晰又具體,因此整理成這篇心得分享。
核心觀點 (Key Takeaways)
- 機器學習的本質,是用統計學方法自動找出資料中的邊界與模式。
- 決策樹是一種以「單一變數、逐層分割」方式找到最佳分類邊界的模型。
- 當模型過度貼合訓練資料時,就會產生過度擬合(overfitting),導致面對新資料表現變差。
深入解析
這篇文章以「判斷房子位於舊金山或紐約」作為主題,用高度直覺的方式示範資料如何被分類、邊界如何被建立。
原文提到:「Identifying boundaries in data using math is the essence of statistical learning.」這幾乎可以作為機器學習的核心定義。
一、從直覺到特徵:什麼資訊可以分類房子?
一開始作者提出一個直觀假設:因為舊金山地勢多山,所以如果房子的海拔高於 240 英尺,就很可能來自舊金山。這是一個典型的「單一特徵分類」方式。
但單一特徵往往不夠。加入第二個特徵「每平方英尺價格」之後,圖像立即多了層次。紐約的房產單價普遍高,如果房子海拔低但單價高於 1776 美元,那大概率屬於紐約。這裡也順帶點出:
- 資料的欄位稱為「features(特徵)」或「variables」。
- 特徵越多,分類邏輯越可能變複雜。
二、決策樹:用 if-then 建立邏輯邊界
決策樹的核心邏輯很簡單:
- 如果(if)海拔大於某個高度 → 分到 A 類
- 否則(then)分到 B 類
作者把這樣的分岔稱為「fork」,而這些分岔點就是分類的「boundary」。很有趣的是,最好的分割點不見得是在人類直覺上看起來最明顯的 240 英尺,因為模型會追求「純度(homogeneity)」。也就是說:
- 一個分支裡的資料越乾淨(屬於同一類別的比例越高),分割效果越好。
文章以長條圖示範,讓讀者清楚看到資料分布,進而理解什麼才是「更好的 split point」。
三、遞迴(recursion):樹變深、分類變準
決策樹之所以稱為「樹」,是因為模型會對每個分支再切割一次,並重複這個動作。這就是遞迴。舉例來說:
- 低海拔區域的下一個最佳特徵是「每平方英尺價格」。
- 高海拔區域的下一個最佳特徵可能是「總價」。
越往下分,準確率就越高,文章展示模型深度增加後可以達到:
- 第一層 84% 準確率
- 再多幾層上到 96%
- 最後甚至可以「100% 完美分類訓練資料」
這裡就引出了下一個重點。
四、當準確率太完美:過度擬合(overfitting)
把決策樹一直長到每個葉節點(leaf node)都只含單一類別,確實能完美分類訓練資料。但作者提醒:真正重要的是模型在「沒看過的資料」上表現如何。
原文指出:「These errors are due to overfitting. Our model has learned to treat every detail in the training data as important, even details that turned out to be irrelevant.」
過度擬合的本質是:
- 模型把訓練資料的噪音也當成規律。
- 導致測試資料表現變差。
決策樹特別容易遇到這個問題,因此後續才有隨機森林(Random Forest)、梯度提升樹(GBDT)等改良方法。
筆者心得與啟發
讀完後,我覺得這篇文章最大的價值是讓「邊界」變得具象。一般人談機器學習時,容易陷入公式、向量空間或黑盒模型;但這篇文章用房價例子,把抽象概念具體化成可視化的判斷流程。
我在閱讀時特別有感的有兩點:
- 第一,模型的本質不是神奇的預言,而是對資料進行合理切割。 如果切割錯了,或切得太細,結果自然會失真。
- 第二,直覺常常提供不錯的起點,但模型能在更大的資料維度里找到真正有效的邊界。 這也是為什麼我們需要機器學習,而不是只靠人的經驗則判斷。
如果你是初學者,這篇文章非常值得收藏,因為它清楚示範了「從直覺到模型」的完整思考流程。下一篇文章將進一步解釋過度擬合,我也會持續追蹤並分享心得。
