Skip to content

niny9/WIDS

Repository files navigation

WIDS 2024 脑连接组多任务预测项目

本项目为Kaggle大赛参赛方案,基于脑连接组数据,融合图神经网络(GNN)、集成学习(XGBoost、随机森林)、AutoGluon自动化机器学习等多类模型,针对ADHD(注意缺陷多动障碍)及性别两大目标进行预测。项目最终在private榜单显著提升排名,体现出强工程实践与数据挖掘创新能力。


📂 目录结构

WIDS-main/
├── Ensemble_Model/           # 集成模型脚本与notebook(主控融合策略)
├── Ensemble_Model_v2/        # 第二版集成代码,含GNN、参数优化等
├── utils/                    # 工具库(特征工程、数据预处理、可视化等)
│   ├── features/             # 特征处理与预处理脚本
│   └── plotting/             # 可视化工具
├── utils_v2/                 # 工具库新版(内容与utils一致,部分优化)
├── GNN_*.py                  # GNN相关单/多任务训练脚本
├── README.md                 # 项目说明文档

🏆 项目亮点与技术路线

1. 多模型融合

  • XGBoost单模型:高效树模型,基线性能优异,具备特征重要性解释能力。
  • 随机森林单模型:鲁棒性强,适用于异常值和小样本。
  • AutoGluon自动集成:自动化模型选择与融合,涵盖xgboost、rf、岭回归等,自动特征工程、调参、融合多模型结果。

2. 图神经网络(GNN)创新

  • 基于GCN、GAT、MetaGNN等多种架构建模,深度挖掘脑连接组结构信息。
  • 实现了多任务学习(ADHD+性别)与特征拼接(脑图特征+元信息)。
  • 代码结构支持灵活切换单目标/多目标预测与不同GNN模型。

3. 集成融合策略

  • 通过stacking、加权融合等方法,集成三类机器学习模型,提升泛化能力和最终榜单表现。

  • 集成主控脚本及优化脚本全部模块化,便于后续扩展与复现实验。

4. 特征工程与数据治理

  • 专门为脑连接组数据设计的预处理流程,包含矩阵标准化、对称性处理、元特征归一化与拼接。

  • 训练、验证、测试集严格隔离,全过程防止数据泄漏。


🚀 快速开始

1. 数据预处理

python utils/features/prepare_for_trainning_wz.py

2. 单模型/集成建模与训练

python GNN_adhd(0.71)_.1.0_250410.py # GNN建模(ADHD预测) python Ensemble_Model/ensemble_model_main3.ipynb # 集成策略主流程

3. AutoGluon自动化建模

python utils/features/treat_data_for_autoglun_wmy.py

4. 结果可视化

python utils/plotting/plot_confusion_matrix.py


📊 比赛表现

Private榜分数:0.73872 最终排名:557/1075,较public榜单上升60位


⚠️ 主要问题与不足

特征工程局限:AutoGluon及表格类模型的特征处理未充分利用脑连接组的结构特征,岭回归等基线模型在自动集成时易被选为主力,未能深度发挥高维图数据优势。

特征融合挑战:虽然GNN部分做了特征拼接与创新,但部分机器学习流程未能充分复用图结构信息。

后续建议:优化特征工程,提升结构化特征与机器学习模型的协同利用。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors