submit Track 1 B code
本仓库是图灵大工队在计图比赛赛道一的开源代码。B 榜实验编号为 B-069,B 榜名次为第 9 名,线上综合分为 1.3767719868171975。
B-069
1.3767719868171975
仓库不包含比赛数据。checkpoints/ 中仅保留复现 B-069 所需的三个 轻量 Jittor 模型及归一化参数,全部权重合计约 540 KiB。
checkpoints/
. ├── checkpoints/ # B-069 小型模型参数及说明 ├── configs/ # 可复现配置 ├── data/ # 数据放置说明,不提交原始数据 ├── docs/ # 算法改动与原提交包说明 ├── outputs/ # 日志、配置、预测和结果包,默认忽略 ├── scripts/ # 一键复现与自检入口 └── src/ ├── a_list/ # A 榜 Dataset1/2 代码 └── b_list/ ├── dataset3/ # B 榜 D3 训练与推理 └── dataset4/ # B 榜 D4 训练、推理及实验代码
推荐环境:Ubuntu 22.04、Python 3.10、CUDA 12.x、Jittor 1.3.10.0。
python3 -m venv .venv source .venv/bin/activate python -m pip install --upgrade pip python -m pip install -r requirements.txt
首次导入 Jittor 可能触发本地编译,因此耗时会明显长于后续运行。
从比赛官方渠道取得赛道一 B 榜数据,并通过 --data-root 指定数据根目录:
--data-root
/path/to/data_B/ ├── dataset3/ │ ├── train.csv │ └── test.csv └── dataset4/ ├── train.csv └── test.csv
字段及放置说明见 data/README.md。请勿将数据集提交到 Git 仓库。
data/README.md
B-069 使用固定随机种子 61807,记录在 configs/b069.json 中。D3 使用 归档的 anchor/novel ckpt 推理;D4 按配置重新训练并推理。
61807
configs/b069.json
bash scripts/run_b_best.sh \ --config configs/b069.json \ --data-root /path/to/data_B \ --output-root outputs/b069
运行器会先校验路径,然后保存:
outputs/b069/effective_config.json
outputs/b069/command.txt
outputs/b069/run.log
outputs/b069/result.zip
只检查配置与数据路径,不启动训练:
bash scripts/run_b_best.sh \ --config configs/b069.json \ --data-root /path/to/data_B \ --output-root outputs/b069 \ --check-only
如需从零训练 D3 两个排序器:
python src/b_list/dataset3/train_and_predict.py \ --data-dir /path/to/data_B/dataset3 \ --output-dir outputs/dataset3_train \ --anchor-seed 15013 \ --novel-seed 75013
D3 使用已归档 ckpt 的独立推理命令如下:
python src/b_list/dataset3/hybrid_inference.py \ --data-dir /path/to/data_B/dataset3 \ --anchor-model checkpoints/jittor_anchor.pkl \ --anchor-normalization checkpoints/jittor_anchor_normalization.npz \ --novel-model checkpoints/jittor_novel_seed75013.pkl \ --novel-normalization checkpoints/jittor_novel_seed75013_normalization.npz \ --output-dir outputs/dataset3_inference
完整 B 榜输出请使用上一节的一键命令。最终 result.zip 仅包含:
result.zip
dataset3.csv dataset4.csv
bash scripts/self_check.sh
该命令会编译所有 Python 文件,并运行 A 榜、D3、D4 的内置小规模测试; 不读取比赛数据,也不会启动完整训练。
NDCG@10 对每个候选列表的前 10 位计算归一化折损累计增益,再对查询取平均。 线上综合分由比赛评测系统计算。不同 CUDA/Jittor 版本、硬件并行顺序及 D4 重新训练可能产生轻微数值差异;原线上提交包 SHA-256 记录在 configs/b069.json。
40%-60%
60%-82.5%
相对 A 榜的完整改动见 docs/algorithm_changes.md。
docs/algorithm_changes.md
NOTICE
本仓库使用 MIT License,详见 LICENSE。
LICENSE
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
计图赛道一:图灵大工 B-069
本仓库是图灵大工队在计图比赛赛道一的开源代码。B 榜实验编号为
B-069,B 榜名次为第 9 名,线上综合分为1.3767719868171975。仓库不包含比赛数据。
checkpoints/中仅保留复现 B-069 所需的三个 轻量 Jittor 模型及归一化参数,全部权重合计约 540 KiB。目录结构
环境安装
推荐环境:Ubuntu 22.04、Python 3.10、CUDA 12.x、Jittor 1.3.10.0。
首次导入 Jittor 可能触发本地编译,因此耗时会明显长于后续运行。
数据准备
从比赛官方渠道取得赛道一 B 榜数据,并通过
--data-root指定数据根目录:字段及放置说明见
data/README.md。请勿将数据集提交到 Git 仓库。训练与完整复现
B-069 使用固定随机种子
61807,记录在configs/b069.json中。D3 使用 归档的 anchor/novel ckpt 推理;D4 按配置重新训练并推理。运行器会先校验路径,然后保存:
outputs/b069/effective_config.json:实际配置;outputs/b069/command.txt:实际运行命令;outputs/b069/run.log:完整日志;outputs/b069/result.zip:最终预测包。只检查配置与数据路径,不启动训练:
如需从零训练 D3 两个排序器:
评测与推理
D3 使用已归档 ckpt 的独立推理命令如下:
完整 B 榜输出请使用上一节的一键命令。最终
result.zip仅包含:自检
该命令会编译所有 Python 文件,并运行 A 榜、D3、D4 的内置小规模测试; 不读取比赛数据,也不会启动完整训练。
结果说明
NDCG@10 对每个候选列表的前 10 位计算归一化折损累计增益,再对查询取平均。 线上综合分由比赛评测系统计算。不同 CUDA/Jittor 版本、硬件并行顺序及 D4 重新训练可能产生轻微数值差异;原线上提交包 SHA-256 记录在
configs/b069.json。算法概览
40%-60%、60%-82.5%以及每个事件 3 个上下文。相对 A 榜的完整改动见
docs/algorithm_changes.md。权重、数据与第三方依赖
checkpoints/中权重均小于 200 KiB,是 B-069 复现必需文件;NOTICE中补充来源。许可证
本仓库使用 MIT License,详见
LICENSE。