# gaolu-4177 **Repository Path**: haobinjun/gaolu-4177 ## Basic Information - **Project Name**: gaolu-4177 - **Description**: AIC 2026 复赛 · 高炉铁次预测(4177)· 码上云开工队交付物(代码+文档,不含权重与提交包) - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-10-05 - **Last Updated**: 2026-10-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 高炉铁次预测(4177)· 复赛交付说明 **参赛团队编号**:AIC-2026-88558114 **队伍名称**:码上云开工 **队长**:韩雨秀 **赛题**:2026 第八届全球校园人工智能算法精英大赛 · 产业命题赛道(AI+钢铁)· 高炉铁次预测 **数据版本**:`synthetic_round2_v2`  ## 最终成绩(唯一口径 · 截至 2026-10-05 20:00 定榜) | 项 | 定榜实测值 | |---|---| | **最终成绩** | **96.3995** | | **最终名次** | **第 106 名 / 156 队(前 67.9%)** | | 分目标成绩 | `wmape_iron = 0.036359`、`wmape_time = 0.035652` | | 对应提交件 | `round2_v2_L2_tseedC.zip`(2026-10-03 10:01 提交) | | 奖项档位 | 三等奖(70% 档)· **未进入前 40%,未晋级半决赛** | **晋级规则**:复赛一、二等奖(前 40%)→ 晋级半决赛;半决赛一、二等奖 → 晋级总决赛。 **档位划分**:15%(一等)/40%(二等)/70%(三等)。 **评分公式**(平台实测校验 10 次以上,零误差):`Score = 100 × (1 − 0.5×WMAPE_iron − 0.5×WMAPE_time)` --- ## 一、运行环境 | 项 | 要求 | |---|---| | 操作系统 | Windows / Linux 均可(实测 Windows 11) | | Python | **3.10 ~ 3.12**(实测 3.12.5) | | **GPU(推荐)** | NVIDIA GPU,显存 ≥ 8 GB;需装 **CUDA 版 PyTorch**(见 §2.2) | | **CPU(可用但慢)** | 必须设环境变量 `TABPFN_ALLOW_CPU_LARGE_DATASET=1`(否则 TabPFN 拒绝 >1000 样本)
实测 5 折全流程 **1~2 小时**(GPU 约 8~12 分钟) | | 内存 | ≥ 16 GB | | 磁盘 | ≥ 3 GB(依赖约 2.5 GB + 权重 49 MB + 中间产物) | > ⚠️ **实测踩坑(务必先读)**:`pip install -r requirements.txt` 默认装到 **CPU-only 的 torch**, > 此时用 `--device cuda` 会直接报 `AssertionError: Torch not compiled with CUDA enabled`。 > **请先按 §2.2 装 CUDA 版 torch。** ## 二、依赖安装 ### 2.1 基础依赖 ```bash python -m pip install -r requirements.txt ``` 核心:`tabpfn==9.0.0`、`scikit-learn==1.8.0`、`numpy==2.4.6`、`pandas==2.3.3`、`scipy==1.17.1`。 ### 2.2 PyTorch(**关键一步**) ```bash # CUDA 12.4(本机实测) pip install torch --index-url https://download.pytorch.org/whl/cu124 # CUDA 12.1 # pip install torch --index-url https://download.pytorch.org/whl/cu121 # 纯 CPU 机器 # pip install torch ``` 自检: ```bash python -c "import torch;print(torch.__version__, torch.cuda.is_available())" # 期望: 2.6.0+cu124 True ``` ### 2.3 模型权重 **已随包提供**,无需下载: `AIC-2026-88558114-模型文件/tabpfn-v2.6-regressor-v2.6_default.ckpt`(49.2 MB) > 首次运行 TabPFN 时会自动补齐其配套预处理配置到 `~/.cache/tabpfn`(离线环境需预先放置)。 ## 三、运行命令 本包提供**两条复现通路**,用途不同,请按需选择: | 通路 | 脚本 | 复现内容 | 是否逐位一致 | |---|---|---|---| | **A. 精确复现** | `verify_submission.py` | **提交的那一组数字**(用包内冻结的组件预测,不重训) | ✅ **逐位一致**(最大差 <1e-6) | | **B. 从零重训** | `pipeline/run_pipeline.py` | **同一套方法**从头训练得到的结果 | ⚠️ 等价但非逐位(与提交件相关 0.99995/0.99989) | > **为什么 B 不是逐位一致**:提交时铁次的跨目标特征用的是历史 R5 混合(0.727·t_log21_std + 0.154·t_catlog8 + 0.112·t_v35log16,需 CatBoost 与 TabPFN v3.5 权重), > 且时长的随机态为 (6,7,8);而 B 用自身 OOF 作跨目标特征、随机态 (0,1,2)。 > **两者是同一设计的不同实例,指标同级。** ### 3.1 通路 A:精确复现提交件(推荐优先跑这个) ```bash cd AIC-2026-88558114-代码与数据 python verify_submission.py \ --model-dir "../AIC-2026-88558114-模型文件" \ --result "../AIC-2026-88558114-赛题结果文档/AIC-2026-88558114-赛题结果.csv" \ --out result_reproduced.csv ``` 期望输出:`✅ 逐位一致 —— 提交件可从本包精确重建` ### 3.2 通路 B:从零重训(GPU) ```bash cd AIC-2026-88558114-代码与数据 python -m pipeline.run_pipeline \ --data-dir <官方数据包根目录> \ --ckpt "../AIC-2026-88558114-模型文件/tabpfn-v2.6-regressor-v2.6_default.ckpt" \ --device cuda --folds 5 --out result.csv ``` **实测输出**(本机复跑,5 折): ``` [3/5] 时长模型: OOF WMAPE = 0.03790 [4/5] 铁次模型(乘法分解): OOF WMAPE = 0.03721 [5/5] 已写出 result.csv(322 行,校验通过) ``` ### 3.3 通路 B:CPU 运行 ```bash # Windows PowerShell $env:TABPFN_ALLOW_CPU_LARGE_DATASET=1 # Linux / macOS export TABPFN_ALLOW_CPU_LARGE_DATASET=1 python -m pipeline.run_pipeline --data-dir <数据包根目录> --ckpt <权重> --device cpu --folds 5 --out result.csv ``` 实测 CPU 5 折耗时 **1~2 小时**;只想自检可用 `--folds 2`(约 20~30 分钟)。 ### 3.4 对照:演进过程中的 v2 配方(非最终提交件) ```bash python reproduce_final_v2.py --data-dir <数据包根目录> --ckpt \ --device cuda --folds 5 --out result_v2.csv ``` 该脚本复现的是窗口中期配方(加法式跨目标 `i_xT_r5`,平台 96.3888),**保留用于技术报告第 6、18 章的对比**; 若提供 `--ckpt35`(TabPFN v3.5 权重,835 MB,**未随包提供**)则可完整构造 R5 混合特征。 ## 四、输入 / 输出目录结构 ### 4.1 输入(官方数据包,**不含在本交付包内**) ``` <数据包根目录>/ ├─ README.txt ├─ data_dictionary.xlsx ├─ train/ │ ├─ train_samples.csv 2754 条:sample_id, spout_no, tap_iron, tap_time_len │ └─ train_features.csv 2754 条:sample_id + 21 个数值特征 └─ test/ ├─ test_samples.csv 322 条:sample_id, spout_no ├─ test_features.csv 322 条:sample_id + 21 个数值特征 └─ result_template.csv 322 条:sample_id(预测列留空) ``` ### 4.2 本交付包结构 ``` AIC-2026-88558114-码上云开工-复赛-韩雨秀/ ├─ README.md ← 本文件 ├─ requirements.txt ← 依赖清单 ├─ AIC-2026-88558114-技术方案.PDF ← 技术报告(47 页 / 43,538 字) ├─ AIC-2026-88558114-模型文件/ │ ├─ tabpfn-v2.6-regressor-v2.6_default.ckpt ← 基模型权重(49.2 MB) │ ├─ preprocessors.pkl ← 预处理器(标准化器 / logfeat 变换器) │ ├─ final_components.npz ← 最终方案各组件的 OOF 与测试预测 │ └─ 模型文件说明.md ├─ AIC-2026-88558114-代码与数据/ │ ├─ pipeline/ ← 模块化算法代码 │ │ ├─ data_io.py 数据读取 │ │ ├─ features.py 特征构建 │ │ ├─ model_io.py 模型加载 │ │ ├─ train.py 模型训练(OOF 交叉拟合 / 全量训练) │ │ ├─ infer.py 预测推理与合规校验 │ │ └─ run_pipeline.py 主入口(端到端) │ ├─ reproduce_final_v2.py ← 等价的单文件复现脚本 │ ├─ src_final/ src_v2/ ← 方案全流程研究脚本(31 个) │ ├─ 代码与数据说明.md │ └─ 全程复盘.md └─ AIC-2026-88558114-赛题结果文档/ ├─ AIC-2026-88558114-赛题结果.csv ← 排行榜最高分对应结果(322 行) └─ AIC-2026-88558114-赛题结果说明.md ``` ### 4.3 输出 运行后在 `--out` 指定路径生成 `result.csv`: | 列 | 含义 | 约束 | |---|---|---| | `sample_id` | 测试样本编号 | 322 个,与 `result_template.csv` 逐行一致 | | `pred_tap_iron` | 出铁量预测(吨) | 非负有限值 | | `pred_tap_time_len` | 出铁时长预测(分钟) | 非负有限值 | 脚本会**自动执行合规校验**:行数 322、编号逐行一致、无缺失、非负、无重复;任一不满足即抛异常。 ## 五、方案与评分口径 **评分公式**(据平台反馈实测校验 10 次以上,零误差): ``` Score = 100 × ( 1 − 0.5 × WMAPE_iron − 0.5 × WMAPE_time ) WMAPE = Σ|预测 − 真实| / Σ|真实| ← 两个分目标各占 50% ``` 本方案提交件:`WMAPE_iron = 0.036359`、`WMAPE_time = 0.035652` → **96.3995**。 **最终方案要点** - 基模型:TabPFN v2.6(在本数据上以 3%~500% 的优势胜过 XGBoost / LightGBM / CatBoost / TabPFN v3 / v3.5 / SVR / KRR / MLP / kNN / ExtraTrees) - **时长**:偏度前 6 特征 log1p 变换 + 标准化 + log 目标的**单组件**模型(3 随机态平均) - **铁次**:**乘法分解** `iron = 时长预测 × exp(速率模型输出)`,其中 `速率 = 铁次 / 时长`,速率模型输入为 `[标准化 21 特征, spout_no, 时长预测]` - 三个关键结论:① 跨目标特征**单向**有效(铁次←时长)②**单组件优于混合** ③ 固定测试集下**抽样优于去噪** 技术细节与全部否证实验见 `AIC-2026-88558114-技术方案.PDF`。