🎯 传统 ML vs DL 决策框架

"该用传统 ML 还是深度学习?"没有绝对答案。但有一套清晰的决策框架——取决于数据量、任务类型、可解释性、算力预算四个维度。

📐 四维决策框架

维度 1:数据量 📊

数据规模推荐原因
< 1000 条传统 MLDL 容易过拟合
1000-10000 条传统 ML 为主DL 可用迁移学习补充
10000-10万 条两者均可取决于其他维度
> 10万 条DL 优势显现数据越多 DL 优势越大
> 100万 条DL 碾压传统 ML 吃不下这个量级

维度 2:任务类型 🎯

任务推荐原因
表格数据(行列)传统 MLXGBoost 在表格数据上至今 SOTA
图像分类/检测DLCNN/ViT 远超传统 CV 特征
NLP(自然语言)DLBERT 之后 NLP 已被 DL 统一
时间序列预测传统 ML 或轻量 DLXGBoost 在时序中仍很强
异常检测 / 风控传统 ML需可解释 + 小样本异常

维度 3:可解释性 🔍

场景要求推荐
医疗诊断必须解释传统 ML
金融风控需要解释传统 ML(监管要求)
内容推荐不重要DL
自动驾驶极度重要混合(感知 DL,规划规则)

维度 4:算力预算 💰

预算推荐
笔记本 CPU传统 ML
单 GPU中小 DL
多 GPU / 集群大模型
云端 API不训练只调用

🔀 决策流程图

              ┌─────────────────────┐
              │  你的数据长什么样?    │
              └──────────┬──────────┘
                         │
          ┌──────────────┼──────────────┐
          ▼              ▼              ▼
     表格数据        图像/视频         文本
          │              │              │
          ▼              │              │
┌─────────────┐         │              │
│ 数据 < 1000?│         │              │
└──┬───────┬──┘         │              │
   │       │            │              │
   ▼       ▼            │              │
  是      否            │              │
   │       │            │              │
   ▼       ▼            ▼              ▼
逻辑回归  XGBoost/  【深度学习】   【深度学习】
决策树   LightGBM  CNN / ViT    Transformer

【传统 ML 优势区】           【DL 优势区】

📋 实战案例分析

💳 信用卡欺诈检测

100万行表格数据,50个特征,0.1% 是欺诈。监管要求必须解释。

→ XGBoost + SMOTE 过采样
为什么不用 DL?监管要求解释每一笔拒绝原因。

🛒 商品图片分类

50万张图片,1000个类目。不需要解释,有 GPU 服务器。

→ ResNet/EfficientNet fine-tune
传统 ML 不适用,CNN 最自然。

👤 用户流失预测

3000 个用户,15个特征。想解释哪些因素导致流失,笔记本跑。

→ 逻辑回归或随机森林
3000条 DL 没优势,逻辑回归快且可看特征重要性。

🤖 智能客服问答

10000对问答 + 产品文档。不需要解释,可调用 API。

→ RAG + LLM API
不用自己训练,GPT/Claude API + 向量数据库。

🥇 黄金法则

🔥 从简单开始,逐步升级。不要一上来就端 Transformer。

第1步:用最简单的模型做 baseline(逻辑回归 / 决策树)
       ↓ "这给我一个底线,知道什么叫'好'"
第2步:如果效果不够,升级到集成方法(随机森林 / XGBoost)
       ↓ "覆盖大部分表格数据场景"
第3步:还不够?分析原因
       ├── 数据太少?→ 收集更多或数据增强
       ├── 特征不够好?→ 特征工程
       ├── 有空间/序列结构?→ 考虑 DL
       └── 模型太简单?→ 考虑 DL

❌ 常见误区

"DL 总是比传统 ML 好"
表格数据上,调好的 XGBoost 经常打赢简单神经网络。Kaggle 表格类竞赛至今被 GBDT 统治。
"数据少就不能用 DL"
可以用迁移学习——拿 ImageNet 预训练模型在你的少量数据上 fine-tune 最后几层。
"传统 ML 已经过时了"
金融、医疗、工业领域的核心模型很多仍是 XGBoost/CatBoost。生产环境中大量运行着传统 ML。
"选一个就不用学另一个"
DL 的基本概念全部来自传统 ML。不懂 ML 直接学 DL = 基础不牢。

💭 我的理解

这个决策框架的核心就一句话:没有免费的午餐

你想让模型准确 → 需要更多数据/算力,这是 DL 的路。
你想让模型能解释 → 接受可能的性能损失,这是传统 ML 的路。

工程决策永远是权衡,不是选"最好"的,而是选"最合适"的。

📚 参考

🧠 返回中枢 ← 三代方法实战 路线图总览