本技能帮你把《计算机科学》(Computer Science, 简称 JSJKX) 稿件的实验做到可复现。本刊为单盲审稿,虽未见
公开的独立 artifact 徽章评审制度(待核实,见 resources/official-source-map.md),但可复现性直接影响外审
专家对方法可信度的判断,也为录用后可能的补充材料打基础。目标:他人能从原始数据一键复现你的主表/主图。
提醒:本刊 Computer Science 是期刊(journal),非会议。
requirements.txt / environment.yml / Dockerfile,锁定语言、库、CUDA/硬件版本。configs/,与论文表格一一对应,避免"论文一套、代码另一套"。repro/
├── README.md # 一键复现步骤、预期结果、耗时
├── env/ # 依赖与 Dockerfile
├── data/ # 数据说明+获取脚本(大数据外链+校验和)
├── src/ # 方法与基线
├── scripts/ # run_all.sh:数据→主表/主图
├── configs/ # 超参与种子
└── results/ # 预期输出与日志
scripts/run_all.sh 应能在干净环境从原始数据复现论文主结果。
scripts/ 里的具体命令。run_all.sh,能从数据到主表/主图?【CSJ 可复现审计】
环境锁定:依赖/版本/硬件 <✓/✗>
随机性:种子固定[✓/✗] 多次运行方差[✓/✗]
数据:划分脚本[✓/✗] 无泄漏[✓/✗] 无污染[✓/✗]
复现包:run_all.sh 一键复现 <✓/✗>
外链:数据/模型+校验和 <✓/✗>;敏感数据合规 <✓/✗>
论文报告:软硬件/种子/获取方式 <✓/✗>
结论:<可复现 / 需补:列点>
本刊 artifact/徽章制度现状为"未见独立徽章"(待核实),以官网《投稿须知》为准。
一个能被外审信任的复现包,不只是"把代码丢上去"。README 应写清:所需硬件与软件版本、安装步骤、数据获取 与预处理、一键复现命令、每条命令对应论文的哪张表/图、预期数值与允许的浮动范围、以及大致运行耗时。文档 越具体,外审(单盲,知你身份)越容易验证,也越少来回追问。为《计算机科学》(Computer Science) 投稿时,把这些 写在复现包 README 与论文实验节,两处一致。
以下问题在计算机各方向反复出现:随机种子未固定导致每次结果不同;库/驱动版本升级致数值漂移;数据预处理 脚本缺失,他人无法从原始数据出发;测试集在调参中被"偷看"造成乐观偏差;只报最好一次而非多次均值;硬件 差异(GPU 型号)未说明。逐项排查这些陷阱,是让本刊外审相信你结果稳健的前提。
可复现性是代码/数据可用性(见 csj-artifact-evaluation)的基础:先做到可复现,再对外提供可用性声明与稳定
链接。复现所需但不宜进正文的完整超参、环境清单、扩展实验,放附录或补充材料(见 csj-supplementary)。录用
后,把复现包与补充材料一并整理,供 csj-camera-ready 阶段最终提交。三者衔接顺畅,可复现性才真正落地。
不同作者的算力条件差异很大,复现的现实门槛也不同。为《计算机科学》(Computer Science) 投稿时,应诚实报告 训练/推理所需的算力(GPU 型号与数量、显存、训练时长)与数据规模,让读者预估复现成本。若完整复现代价高昂, 可额外提供一个小规模可快速复现的子任务或子数据集,让审稿人在有限资源下验证方法的核心行为。这种"分层 复现"既尊重现实约束,又不牺牲可验证性,是负责任的可复现实践。
在论文实验节可放一段简短的复现声明,示例:
【复现说明】实验在 <GPU 型号 x N> 上完成;代码见 <稳定链接>(commit <hash>,<许可>);
数据为 <公开数据集[引用] / 受限数据(申请方式)>;固定随机种子 <seed>,结果为 <k> 次运行均值±方差;
执行 scripts/run_all.sh 可从原始数据复现表 1-表 N 与图 1-图 M,预计耗时 <t>。
该声明与复现包 README 内容一致,是外审快速建立信任的抓手。