S SealHack

詞彙表

邊做專案邊學的查閱字典:每個詞一句白話 + 為什麼重要;要系統學習順序見快速版的學習地圖。

本頁內容

查閱用字典,Ctrl+F 找詞最快。想按順序補基礎 → 快速版的學習地圖

一、資料與任務的基本詞

白話
特徵(Feature / X)用來做判斷的線索;表格裡每一個欄位就是一個特徵(預測房價的「坪數、屋齡、地段」)
目標(Target / Label / y)你要預測的東西(房價)。有 target = 有標資料(train),沒 target = 無標資料(test)
樣本 / 列(Sample / Row)一筆資料,表格裡的一行
訓練集 / 測試集(Train / Test)train 有答案拿來學;test 沒答案,是你要預測、主辦方拿來算分的對象
類別不平衡(Class Imbalance)正例 1%、負例 99%:模型全猜「否」也有 99% 準確率,所以這時不能用準確率當指標

任務型別

型別意思例子
二分類預測是/否客戶會不會流失
多分類預測屬於哪一類這是貓/狗/鳥
迴歸預測一個數字房價是多少
排序預測優先順序推薦哪些商品

二、訓練與驗證(最重要的一組)

白話
模型(Model)把「特徵」轉換成「預測」的數學函式,可想成一個學生
訓練 / 擬合(Train / Fit)把有答案的資料餵給模型,讓它調參數到預測儘量接近答案
預測 / 推理(Predict / Inference)把新資料餵給訓練好的模型,得到答案
過擬合(Overfitting)⭐模型把訓練資料連雜訊一起「背」下來,換一批資料就失靈。症狀:訓練分數極高、驗證分數很差。機器學習的頭號敵人
→ 在階段 1 學會怎麼防它
欠擬合(Underfitting)反過來,模型太笨連訓練資料都學不好。較少見
泛化(Generalization)在「沒見過的資料」上表現好的能力——這才是真正的目標
驗證集(Validation Set)從訓練資料切出、假裝沒答案的一塊,用來評估模型
交叉驗證(CV)⭐切 K 份(常 5)輪流當驗證集做 K 次。比單次切分穩定得多,是沒有正解時唯一能信的成績
→ 階段 1:選對切法
(Fold)CV 切出來的每一份;「5-fold CV」= 切 5 份
OOF(Out-Of-Fold)⭐⭐每筆訓練資料「被當驗證集」時得到的預測,拼成完整一份。它是誠實的成績單(每筆預測來自沒看過它的模型),也是整合的原料——沒有它就不能做 hill climbing / stacking
→ 階段 1 的落盤協議階段 4 拿它做集成
資料洩漏(Leakage)⭐訓練時用到「預測當下不該知道的資訊」(未來資訊、目標編碼沒在 fold 內做、ID 帶答案順序)。症狀:CV 高得不合理,一上線就崩
→ 階段 0 診斷時就要查
隨機種子(Seed)控制隨機性的編號。固定 seed 結果才可重現;框架要求所有實驗共用同一 seed 與同一組 fold,原因就是這個
超參數(Hyperparameter)訓練前要自己設的旋鈕(樹深、學習率);調參=找最好的組合。收益通常遠小於特徵工程,別一開始就花時間在這
→ 階段 2:先別調參,先選對家族

切分策略

名稱用在什麼時候
KFold一般情況,隨機切
StratifiedKFold分類任務,確保每折正負例比例一致
GroupKFold同一使用者/病人的資料不可同時出現在訓練和驗證
TimeSeriesSplit時間序列。永遠「用過去預測未來」,絕不能隨機切

三、評估指標(Metric)

指標決定你的所有戰術,每場比賽第一件事就是搞懂指標

分類用

指標白話特性
準確率 Accuracy猜對幾成類別不平衡時會騙人
AUC (ROC-AUC)模型把正例排在負例前面的能力只在乎排序,不在乎絕對機率。0.5 = 瞎猜,1.0 = 完美
LogLoss懲罰「很有自信但答錯」在乎機率準不準,需要校準
Precision / Recall精確率:抓出來的有幾成是對的
召回率:該抓的抓到幾成
兩者互相拉扯
F1Precision 和 Recall 的調和平均需要搜尋最佳閾值
Brier Score「機率準不準」的均方誤差版:預測 0.9 但沒發生,罰得比預測 0.6 重校準好不好的直接量尺,越低越好

排序 / 推薦用

指標白話
MAP@k(Mean Average Precision)前 k 個推薦裡,對的答案有沒有排在越前面越好,而不只是有沒有出現
NDCG跟 MAP@k 類似,但把「有多對」也算進去(不只對/錯,還有幾分對)
Recall@k前 k 個推薦裡,涵蓋了幾成「該推薦的東西」

迴歸用

指標白話特性
RMSE均方根誤差對大錯誤懲罰重,怕離群值
MAE平均絕對誤差對離群值寬容
MAPE百分比誤差目標接近 0 時會爆炸
白話
閾值(Threshold)把機率(0.73)變成「是/否」的那條線。預設 0.5 通常不是最好,應在 OOF 上搜尋最佳閾值
校準(Calibration)讓輸出的「0.7」真的代表 70% 會發生。AUC 評分不需要;LogLoss 很重要。常見做法:Platt scaling(用一條 S 型曲線修正)、isotonic regression(更彈性但要更多資料)

四、特徵工程(Feature Engineering)

編碼(Encoding)= 把文字類別變成數字

方法做法注意
Label Encoding每個類別給一個編號樹模型可用,線性模型會誤解成有大小順序
One-Hot Encoding每個類別開一個 0/1 欄位類別太多會爆炸
Frequency Encoding用「出現次數」代替類別便宜好用
Target Encoding用「該類別的目標平均值」代替很強,但極易洩漏,必須在 fold 內計算 + 平滑
白話
聚合特徵(Aggregation)按某鍵分組算統計量(每個使用者的平均消費、次數、標準差);算完再做「這筆 ÷ 該使用者平均」這類比值,常比原始聚合更有訊號
互動特徵(Interaction)兩個特徵組合(身高/體重 = BMI)。樹學不好除法和比值,手動餵效果很好
缺失值(NaN)填平均/中位數、填特殊值、或讓模型自己處理(LightGBM 支援)。「有沒有缺」本身常是訊號,可另開一欄記錄
特徵重要性(Importance)Gain(預設)會高估高基數特徵別盲信;Permutation(打亂某欄看掉分)更可靠但慢;Null importance(打亂 target 當基準)只留明顯贏過基準的
標準化 / 正規化把數值縮到相近範圍。線性模型、神經網路必做;樹模型不需要(只看大小順序)

五、模型家族

模型白話
GBDT 梯度提升樹一堆淺樹接力,每棵修正前面累積的錯。表格資料的長期霸主
隨機森林(Random Forest)一群獨立深樹投票。比 GBDT 弱一些但穩,不易過擬合
線性模型(Logistic / Ridge / Lasso)只能畫直線/平面,單獨用弱,但犯錯方式和樹完全不同,在整合裡價值高。Ridge/Lasso = 加正則化(防過擬合懲罰項)
神經網路(NN / MLP)多層運算堆疊;MLP = 最基本全連線。表格上通常打不贏 GBDT,但提供多樣性
KNN看最像的 K 個鄰居怎麼答。樸素,整合裡偶有驚喜
SVM / SVR / SVC支援向量機,用數學技巧畫複雜分界線。資料量大時很慢
TabPFN2025 後的新物種:海量合成資料上預訓練過的基礎模型,幾乎不用訓練直接給預測;中小型資料(≤5 萬筆)非常強
AutoML(AutoGluon)自動試模型與組合(k-fold bagging 產 OOF、多層 stacking、加權集成)。不是「弱但方便」,是「不做人工特徵能到哪」的誠實錨點(見框架 §4.0)

GBDT 三個主流實作

名稱特點
LightGBM最快,首選起手式
XGBoost老牌穩定
CatBoost類別特徵多時常最強,預設參數就很好

六、整合(Ensemble)

白話
整合 / 融合(Ensemble / Blending)把多個模型的預測合起來。核心原理:犯不同的錯會互相抵消,所以模型間的差異性比單模分數更值錢
平均(Averaging)最簡單的整合:算術平均(直接平均機率)、Rank 平均(轉名次再平均,只在成員分數尺度差很多時才有利;尺度相近反而略差——C11 實測)、加權平均(強者權重高)
Hill Climbing(爬山法)從最強模型開始,反覆試「加誰、給多少權重」,只留讓 OOF 上升的動作,直到無法進步
Stacking(堆疊)訓練「第二層模型」(Meta Model),輸入是第一層各模型的 OOF,學會「什麼情況信誰」。防洩漏關鍵:第二層必須用與第一層完全相同的 fold
Pseudo-labeling(偽標籤)用最強模型預測無標資料,把預測當「假答案」加回訓練。軟標籤 = 用機率(0.83)而非硬答案(1),資訊更多雜訊更少
知識蒸餾(Distillation)用強大笨重模型(老師)的輸出教輕巧模型(學生);可把整個整合濃縮成一個單模
Seed Averaging同一組設定換多個 seed 各跑一次再平均。永遠不虧,但增益視模型的 seed 方差而定——確定性模型(如未開 subsample 的 LGBM)上是空操作

七、競賽專有詞

白話
Leaderboard(LB)Public LB:比賽中看得到,只用一小部分 test;Private LB:結束才揭曉,這才是最終名次
Shake-up(跳水)結束時名次大洗牌,幾乎都是有人過度擬合 public LB。防範:迭代決策以 CV 為準(見 LB 使用教條),最終選一個 CV 高分 + 一個穩健方案
Adversarial Validation(對抗驗證)訓練分類器區分「這筆來自 train 還是 test」:分不出(AUC≈0.5)= 同分布可隨機切;分很清楚(AUC>0.8)= 有漂移,找出漂移特徵再決定去留
分布漂移(Distribution Shift)train 和 test 長得不一樣,造成「CV 很好但實戰失靈」
Baseline(基線)最簡單的可行方案,當比較基準;任何新做法要贏過它才有意義
Submission(提交)交上去的預測檔;多數比賽可選 2 個作最終計分
Notebook / KernelKaggle 的線上程式筆記本,附免費 GPU

八、工具與函式庫

競賽核心競爭力是「你能跑多少次實驗」——同一實驗 CPU 2 小時、GPU 5 分鐘,一天差 20 倍以上。

名稱用途
pandasPython 處理表格資料的標準工具
NumPy數值運算基礎,.npy 是它的檔案格式
scikit-learn通用 ML 工具箱,切 fold、算指標靠它
Polars比 pandas 快很多的新一代替代品
cuDF / cuMLpandas / sklearn 的 GPU 加速版,幾乎不用改程式碼
CuPyNumPy 的 GPU 版
PyTorch寫神經網路用
Optuna自動調超參數