有題目、有標準答案、有老師拿紅筆改考卷。
這是機器學習裡最循規蹈矩的「正統派」修行。
上一集我們聊的非監督式學習,是那種沒人教、自己瞎悟的邪修。今天換正統派——監督式學習就是個乖寶寶:老師(你)給它一堆「題目+標準答案」,它拚命背,背到能舉一反三,看到新題目也能猜對。
它的人生只有兩道大題。第一道叫回歸——答案是連續數字(房價多少、明天幾度)。第二道叫分類——答案是類別(垃圾信還是正常信、貓還是狗)。差別就一句話:你要它「猜數字」還是「選邊站」。
而每個模型屁股後面都拖著一顆紅點——評估指標。因為有標準答案的世界最爽的一點就是:它到底考幾分,一翻兩瞪眼,賴不掉。
答案是一個連續數字。核心就是拿一條線(或一個面)去穿過資料,讓誤差最小。差別在於——你要不要順便「管一下」模型別太貪心。
畫一條直線穿過資料,讓每個點到線的誤差平方和最小。簡單、可解釋、跑超快,每個係數都告訴你「這個特徵漲一單位,答案漲多少」。教科書第一頁的主角。
死穴:世界不是直的。關係一彎它就失準,而且特徵一多、彼此又高度相關時,它會過度自信、亂配權重。於是後面三位「加了緊箍咒」的版本登場。
Ridge 就是線性回歸加了一條 L2 懲罰:係數只要一大,就罰。結果是把所有權重整體壓小、變得溫和,特別擅長處理「特徵一堆又互相打架(共線性)」的場面,讓模型不再過度自信。
注意:它會把係數壓小,但不會直接歸零——大家都還在,只是變乖。
Lasso 換成 L1 懲罰,個性更狠:它會把無用特徵的係數直接壓到 0,等於順手做了「特徵篩選」。想從幾百個變數裡自動挑出真正有料的幾個?找它就對了,模型又稀疏又好解釋。
缺點:一群高度相關的特徵,它常常只留一個、砍掉其餘,有時砍得太任性。
當你在 Ridge 和 Lasso 之間選擇困難,Elastic Net 說:小孩子才做選擇。它把 L1、L2 兩種懲罰混在一起,既能砍特徵、又能溫和處理一群相關的變數(把它們一起留下或一起壓小)。
高維、特徵又多又糾纏的資料,它通常是最穩的折衷方案——代價是多了一個混合比例要調。
答案是類別。目標是畫出一條(或一堆)決策邊界,把不同種類的資料乾淨地分開。七個模型,七種畫線哲學。
別被名字騙了——它是分類模型。它算出「屬於某類的機率」,再壓進 0~1 之間(Sigmoid),過半就判正類。快、穩、可解釋,還會告訴你「有 87% 把握」,是二元分類永遠的起手式與基準線。
限制:本質畫的是直線邊界,遇到彎彎繞繞的資料就得靠特徵工程幫忙。
決策樹就是一連串「if-else」的問診:這個大於 5 嗎?那個是紅的嗎?超直覺、能畫給老闆看。但單棵樹很容易死背資料(過擬合)。
解法很暴力也很聰明——隨機森林:一次種幾百棵各看一部分資料的樹,最後大家投票表決。三個臭皮匠勝過一個諸葛亮,穩定度和準確度雙升,還不太需要調參。
隨機森林是大家各做各的再投票;GBDT 是接力賽:每棵新樹都專門去補上一棵犯的錯,一棵接一棵越修越準。這就是 XGBoost、LightGBM 的核心,也是 Kaggle 表格資料屠榜等級的常勝軍。
威力強大但脾氣需要哄:參數多、調不好會過擬合,訓練也比森林講究。
SVM 的執念是最大間隔:不滿足於把兩類分開,它要那條分界線兩邊留白留到最大,泛化能力才強。碰到非線性?它有核技巧(Kernel),偷偷把資料升到高維再切一刀,彎的邊界也搞得定。
優點是小樣本、高維度時很強;缺點是資料一大就慢,而且機率解釋沒那麼直觀。
史上最懶的模型——它根本不訓練。要判斷一個新點,就看它最近的 K 個鄰居是哪一類,多數決。概念直覺到不行,也不預設任何資料形狀。
代價全在預測時付:每猜一次都要跟全體算距離,資料大就慢;還很怕維度太高、也對特徵尺度敏感(記得先標準化)。
它用貝氏定理算機率,但大膽假設所有特徵彼此獨立(這就是「樸素/天真」的由來,現實中幾乎不成立)。妙的是,這個天真假設在文字分類、垃圾信過濾上表現超好。
優點:超快、資料少也能跑、天生適合高維文字。是很多 NLP 任務的經典基準線。
這對兄弟假設每個類別的資料都服從高斯分佈,然後推出最佳邊界。LDA 假設各類「胖瘦一致」,畫出的是直線邊界(順便還能拿來降維);QDA 放寬這條,允許各類形狀不同,畫出曲線邊界,更靈活但要更多資料。
當資料真的接近常態、樣本又夠時,它們簡單、快速又穩健。
有標準答案的世界,最爽也最殘酷——分數騙不了人。但選錯指標,一樣會被自己騙。
RMSE / MAE 看誤差多大,R² 看解釋了多少變異。對大誤差敏感就用 RMSE,想抗離群值用 MAE。
資料不平衡時 Accuracy 會騙人。改看 Precision(抓得準不準)、Recall(有沒有漏抓)、F1(兩者平衡)。
AUC-ROC 衡量模型「排序好壞的能力」,不受單一門檻影響,是比較模型的好朋友。
務必用交叉驗證 + 獨立測試集,確認它不是在死背訓練題,而是真的會考新題。