Skip to content

09 - 实战项目

从理论到实践,通过真实项目检验和巩固所学知识。

模块概览

属性
前置要求完成 01-04 模块学习
项目数量19+ 个完整项目
难度范围⭐⭐ ~ ⭐⭐⭐⭐⭐
特色含 Kaggle 金牌方案

项目分类

📊 01-ML 基础项目

入门级机器学习项目,适合初学者练手。

项目描述技术栈难度
Titanic 生存预测经典二分类问题,学习特征工程XGBoost, Pandas⭐⭐
Otto 产品分类多分类问题,学习集成方法LightGBM, Stacking⭐⭐⭐
House Prices 预测回归问题,学习数据预处理Ridge, Lasso, XGBoost⭐⭐

👁️ 02-计算机视觉项目

图像识别与处理相关项目。

项目描述技术栈难度
MNIST 手写数字识别CNN 入门经典项目TensorFlow, Keras⭐⭐
CIFAR-10 图像分类多类别图像分类ResNet, Data Augmentation⭐⭐⭐
图像风格迁移神经风格迁移实现VGG19, PyTorch⭐⭐⭐

📝 03-NLP 项目

自然语言处理相关项目。

项目描述技术栈难度
LSTM 情感分析电影评论情感分类LSTM, Word2Vec⭐⭐⭐
Transformer 文本分类基于注意力机制的分类Transformer, PyTorch⭐⭐⭐⭐
命名实体识别 (NER)序列标注任务BiLSTM-CRF, BERT⭐⭐⭐⭐
文本摘要生成Seq2Seq 摘要模型T5, Transformers⭐⭐⭐⭐

📈 04-时序预测项目

时间序列分析与预测。

项目描述技术栈难度
温度预测 LSTM多变量时序预测LSTM, Keras⭐⭐⭐
股票价格预测金融时序分析LSTM, Attention⭐⭐⭐⭐
能源消耗预测多步预测问题Transformer, Prophet⭐⭐⭐⭐

🏆 05-Kaggle 竞赛项目

真实竞赛的完整解决方案。

🥇 金牌方案

竞赛排名奖金池核心技术
Feedback Prize - ELLTop 1%$160,000DeBERTa, Multi-task Learning, Pseudo Labeling
RSNA Abdominal TraumaTop 1%$140,000EfficientNet, 3D CNN, Multi-label Classification

🥈 银牌方案

竞赛排名核心技术
American Express DefaultTop 5%GBDT Ensemble, Feature Engineering, Time Series

🥉 铜牌方案

竞赛排名核心技术
RSNA Lumbar SpineTop 10%3D Medical Imaging, Segmentation, Classification

项目详解

Feedback Prize - ELL (🥇 金牌)

竞赛背景:评估英语学习者的写作水平,预测 6 个维度的分数。

解决方案亮点

数据处理 ──► 模型架构 ──► 训练策略 ──► 后处理
    │            │            │           │
    ▼            ▼            ▼           ▼
 文本清洗    DeBERTa-v3   多任务学习    模型融合
 数据增强    Large       伪标签       阈值优化
 分层采样    + Pooling   对抗训练     TTA

核心代码结构

python
class FeedbackModel(nn.Module):
    def __init__(self, model_name, num_labels=6):
        super().__init__()
        self.backbone = AutoModel.from_pretrained(model_name)
        self.pooler = MeanPooling()
        self.classifier = nn.Linear(hidden_size, num_labels)

    def forward(self, input_ids, attention_mask):
        outputs = self.backbone(input_ids, attention_mask)
        pooled = self.pooler(outputs.last_hidden_state, attention_mask)
        return self.classifier(pooled)

关键技术

  • DeBERTa-v3-Large: 最强预训练语言模型
  • Multi-task Learning: 同时预测 6 个目标
  • Pseudo Labeling: 利用无标签数据
  • Adversarial Training: AWP 对抗训练提升鲁棒性

RSNA Abdominal Trauma (🥇 金牌)

竞赛背景:从 CT 扫描图像中检测腹部创伤。

解决方案亮点

阶段方法说明
预处理3D Volume Processing处理 DICOM 格式医学影像
模型EfficientNet-B5 + 3D CNN2D 切片 + 3D 体积特征
训练Multi-label Classification多器官损伤检测
推理TTA + Ensemble测试时增强 + 模型融合

数据处理流程

python
def process_dicom(dicom_path):
    # 读取 DICOM 序列
    slices = load_dicom_series(dicom_path)

    # 窗宽窗位调整
    volume = apply_windowing(slices, window_center=40, window_width=400)

    # 重采样到统一尺寸
    volume = resample_volume(volume, target_spacing=[1.5, 1.5, 3.0])

    return volume

项目运行指南

环境准备

bash
# 进入项目目录
cd 09-practical-projects

# 安装项目依赖
pip install -r requirements.txt

# 下载预训练模型(如需要)
python scripts/download_models.py

运行示例

bash
cd 01-ml-basics/titanic-survival-xgboost
jupyter lab titanic_analysis.ipynb
bash
cd 05-kaggle-competitions/01-Feedback-ELL
python train.py --config configs/deberta_large.yaml
bash
cd 05-kaggle-competitions/02-RSNA-Abdominal
python train.py --fold 0 --model efficientnet_b5

学习建议

入门者路线

Titanic ──► MNIST ──► 情感分析 ──► 温度预测
   │          │          │           │
   ▼          ▼          ▼           ▼
 特征工程    CNN基础    RNN/LSTM    时序建模

进阶者路线

Otto 多分类 ──► Transformer 文本分类 ──► Kaggle 银牌方案
      │                │                      │
      ▼                ▼                      ▼
   集成学习      注意力机制           工业级方案

竞赛者路线

Kaggle 铜牌 ──► Kaggle 银牌 ──► Kaggle 金牌
      │              │              │
      ▼              ▼              ▼
   基础方案      优化技巧      顶级方案

参考资源

Kaggle 相关

论文

  • Vaswani et al. (2017). Attention Is All You Need
  • He et al. (2020). DeBERTa: Decoding-enhanced BERT with Disentangled Attention

工具

Released under the MIT License.