機器學習技術與應用
中級擇一科目,50 題,90 分鐘,及格 70 分
🚨 官方勘誤(L23 最重要!必讀)
主題:Recall 公式
Recall = TP / (TP + FP) Recall = TP / (TP + FN) 影響:直接影響模型評估考題答案,是 L23 最重要勘誤
主題:加權求和通式
w₁x₁ + w₂x₂ Σ wᵢxᵢ(通式,i = 1 to n) 影響:神經網路節點計算題的正確寫法
整理:Precision vs Recall 完整公式
| 指標 | 公式 | 意義 |
|---|---|---|
| Precision | TP / (TP + FP) | 預測為正中有多少真正是正 |
| Recall ✅ | TP / (TP + FN) | 真正為正中有多少被找到 |
| F1 Score | 2 × P × R / (P + R) | Precision 和 Recall 的調和平均 |
🐍 程式碼閱讀題(16-20%)
不需要寫程式,但要看懂以下常見模式:
# scikit-learn 標準流程
from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
pipe = make_pipeline(StandardScaler(), LogisticRegression())
pipe.fit(X_train, y_train) # 前處理 + 訓練
y_pred = pipe.predict(X_test)
# cross_val_score 回傳每個 fold 的分數(陣列,不是 mean)
scores = cross_val_score(model, X, y, cv=5)
print(scores.mean()) # 才是平均分
⚠️ 115 年新增考點警報
- ▸ scikit-learn Pipeline 程式碼閱讀(make_pipeline、fit_transform)
- ▸ Keras/TensorFlow Sequential model 結構
- ▸ SHAP 值(模型可解釋性,特徵貢獻度量化)
- ▸ Optuna / GridSearchCV 超參數調整
約 16-20% 程式碼閱讀題;Recall 公式勘誤是超高頻考點,官方學習指引原版有誤
知識點地圖(依評鑑範圍)
L231 機器學習基礎數學(預估 8-10 題)
機率統計
- • 條件機率、貝氏定理
- • 常態分佈、t 分佈
- • 最大似然估計(MLE)
線性代數 + 優化
- • 矩陣乘法、轉置、特徵值
- • PCA 降維原理(特徵值分解)
- • 梯度下降(Gradient Descent)
L232 機器學習與深度學習(預估 18-22 題,最多!)
Ensemble 方法(高頻!)
- • Bagging(隨機森林):平行,降 Variance
- • Boosting(XGBoost):序列,降 Bias
- • Stacking:用另一個模型整合預測結果
深度學習架構
- • CNN:影像特徵(卷積 + 池化)
- • RNN/LSTM:序列資料(時間序列、NLP)
- • Transformer:Self-Attention,平行計算
L233 建模與調校(預估 15-18 題)
過擬合處理
- • L1(Lasso)/ L2(Ridge)正則化
- • Dropout(隨機丟棄神經元)
- • Early Stopping
- • 增加訓練資料 / 資料增強
超參數調整
- • Grid Search vs Random Search
- • K-fold Cross Validation
- • Learning Rate 排程
常見陷阱
【勘誤!】Recall 公式:官方學習指引原版寫 TP/(TP+FP) 是錯誤的,正確為 TP/(TP+FN)
Precision vs Recall 定義:Precision = 預測為正中有多少真正是正;Recall = 真正為正中有多少被找到
Bagging vs Boosting:Bagging(隨機森林)降低 Variance 並行;Boosting(XGBoost/AdaBoost)降低 Bias 序列
cross_val_score 回傳值:每個 fold 的分數陣列,不是 mean;要用 .mean() 取平均
備考計畫
7 天速成建議
- Day 1:【必讀】Recall 公式勘誤 + Precision/Recall/F1/AUC 全部弄清楚
- Day 2:L231 數學基礎(梯度下降、PCA)
- Day 3-4:L232 算法(Ensemble + 深度學習架構)
- Day 5:scikit-learn Pipeline 程式碼閱讀練習
- Day 6:L233 過擬合 + 超參數調整
- Day 7:全科模擬 50 題
策略:【最重要】Recall = TP/(TP+FN),官方原版錯了,考題用正確版。程式碼題重點是理解 Pipeline 流程(資料前處理 → 訓練 → 評估),不需背 API