从 Spatial-MGCN 到 SpatialDG:标签泄漏问题、正式评论与作者回应
资料核对截至 2026 年 11 月 15 日。同日补充了同级刊物方法的代码排查。
2025 年 12 月,我们在《无监督聚类不应“偷看答案”》中讨论过一个空间转录组分析中的评估问题:模型每训练一轮,就用参考标签计算一次 ARI,再把 ARI 最高的那一轮作为最终结果。那篇博文的页面标注日期为 2025 年 12 月 8 日,举例分析的是 Spatial-MGCN 的公开训练脚本。
2026 年 11 月,同类问题出现在针对 SpatialDG 的正式评论及作者回应中。对于关注空间域识别方法的读者,这段后续值得记录。它涉及原始成绩是否可信,也涉及修正评估后,方法之间应该怎样比较。
需要先交代两项工作的关系。我们的博文讨论了 Spatial-MGCN;Taşçı 和 Gönen 后来发表的评论针对 SpatialDG。公开材料可以支持两者指出了同类问题,但不能据此认定后来的评论受到我们博文的影响,也不足以声称我们是这一问题的最早发现者。
SpatialDG 由 Jiahui Wu、Ayomide Oshinjo 和 Valerio Izzi 提出,2026 年 4 月 6 日发表于 Briefings in Bioinformatics。论文首次投稿于 2025 年 10 月 10 日,早于我们的博文,修回日期为 2026 年 2 月 10 日。它利用表达相似图和空间邻接图学习细胞或 spot 的表示,结合注意力融合、ZINB 表达重构和图对比学习,完成空间域识别等任务。论文报告了优于已有方法的结果。SpatialDG 原文
问题出现在选择最终结果的环节。其公开 DLPFC 脚本的相关逻辑,可以简化为:
for epoch in range(epochs):
embedding = train_one_epoch()
prediction = cluster(embedding)
ari = adjusted_rand_score(reference_labels, prediction)
if ari > best_ari:
best_ari = ari
final_prediction = prediction
这段伪代码保留了与争议有关的流程,省略了模型和绘图细节。实际脚本在计算 ARI 后,根据分数更新并保留聚类结果、嵌入和重构表达。读者可以核对固定版本的 SpatialDG 代码第 123 至 145 行。
ARI 衡量聚类结果与参考分区的一致程度,在有注释的数据集上用它评价聚类,是正常做法。这里的问题是,参考标签同时承担了选择结果和评价结果的职责。
假设第 t 轮模型输出为 prediction(t)。一旦最终轮次由“哪一轮与参考标签最一致”决定,最终输出就间接依赖了参考标签。即使这些标签没有进入神经网络的输入、损失函数或梯度计算,这种依赖依然存在。对于没有参考注释的新组织切片,我们也无法执行同样的选择步骤。
因此,更准确的表述是:这里存在利用参考标签进行模型或结果选择的问题;这与直接用标签训练网络有所区别,但同样会影响无监督基准评估。对同一次运行中已经生成的候选结果而言,最高 ARI 至少不低于其中任何一个固定轮次的 ARI。它回答的是“有标签帮助选择时,这次运行最好能达到多少”,而不能直接代表标签独立选择规则下的表现。
2026 年 11 月 2 日,Mısra Taşçı 和 Mehmet Gönen 在同一期刊发表了针对 SpatialDG 的正式评论。他们检查了公开实现,并复现逐轮 ARI,报告了以下差异:
| 数据集与指标 | 原文报告值 | 评论作者复现的最终轮次值 |
|---|---|---|
| DLPFC:12 张切片的中位 ARI | 0.60 | 0.41 |
| 人乳腺癌:ARI | 0.66 | 0.58 |
这些数字来自评论文章,并非我们重新训练得到的结果。评论分别检查了 DLPFC 训练 80 轮、乳腺癌数据训练 200 轮结束时的表现,还报告在所检查的部分切片和随机种子上,最终轮次的成绩更低、波动更大。
这项复现提供了原评估偏乐观的具体证据。不过,“最终轮次”只是一个可执行的标签独立选择规则,并非所有方法唯一合理的规则。损失最小时停止、固定预算后停止,都可能产生不同结果。因此,不能把上述数值视为所有实现和设置下唯一的“正确成绩”,也不能只更改新方法的选择规则,就完成对所有基线方法的公平排名。
11 月 6 日,SpatialDG 作者发表了正式回应。他们承认原始实现按参考标签 ARI 保留最佳轮次,并承认这不属于严格的标签独立模型选择;同时说明,参考标签没有进入模型输入、训练损失或梯度优化。他们还指出,Spatial-MGCN 的论文关联实现同样采用了按 ARI 选轮次的做法,因此重新比较两种方法。
我们核对的 Spatial-MGCN 公开脚本确实存在这一逻辑。这也与我们此前博文指出的问题一致。基线存在同类问题,说明修正评估应当覆盖基线;它不能使原来的选择方式变得合理。
作者的新比较覆盖相同的 12 张 DLPFC 切片和三个随机种子。回应报告,每张切片上 SpatialDG 的三种子平均 ARI 均高于 Spatial-MGCN。回应表 1
为了解这次重新评估的具体含义,我们进一步检查了回应补充材料链接的 Figshare 资料,包括 S2 压缩包的说明、评估协议和逐次结果表。根据其中的记录,两种方法都取固定最终检查点:SpatialDG 训练 100 次更新,Spatial-MGCN 训练 201 次更新,各自保留方法特定设置。结果如下:
| 汇总方式 | SpatialDG | Spatial-MGCN |
|---|---|---|
| 12 张切片各自三种子平均 ARI 的均值 | 0.4561 | 0.3956 |
| 12 张切片各自三种子平均 ARI 的中位数 | 0.4544 | 0.4015 |
我们用公开的 72 行逐次结果表重新计算了上述汇总数值,也核对了“12 张切片的平均 ARI 均更高”这一陈述,结果一致。这属于对所公布数值的汇总核验,没有独立验证每次训练及其预测结果。
补充包还明确了边界:这次比较属于发表后的重新评估,未能完全重建历史缓存图;预处理保留了历史上按注释筛选的 spot 集合,并使用已知聚类数 K;精简包省略了输入数据、检查点和预测文件,不能直接作为独立重训练包使用。因此,应把它理解为作者在明确设置下提供的新比较证据,不能等同于对原始全部实验的完整复现。
这些细节改变了我们能够作出的判断。重新评估支持 SpatialDG 在这组 DLPFC 设置下相对 Spatial-MGCN 具有平均 ARI 优势。它没有恢复原先按最高 ARI 选轮次的有效性,也没有覆盖原文全部比较方法、全部数据集和全部下游结论。三种子平均值在每张切片上更高,也不意味着每个种子均获胜,或已经完成了更广泛的统计和泛化验证。
另一个容易混在一起的问题,是 SpatialDG 的方法创新性。我们此前对照原文时发现,它与 Spatial-MGCN(2023)共享大量主体设计,包括表达图与空间图、共享参数的共同编码、注意力融合及 ZINB 重构;共同编码和融合部分的式(5)至(10)在形式和编号上也对应。SpatialDG 引用了 Spatial-MGCN,因此评议时需要讨论它具体继承了什么、增加了什么,以及新增机制是否有充分证据支持。
结构相近和评估泄漏需要分别论证。前者关系到创新幅度,后者关系到实验能否支持性能主张。仅凭这些材料,无法认定重复发表或抄袭,也无法证明某段评估代码在两项工作间的具体传播路径。对 SpatialDG 的创新性评价,应继续检查其对比学习、空间感知设计和负采样机制,而不能由标签泄漏问题直接代替。
回到我们最初的发现,这件事也促使我们把措辞说得更准确。为了诊断训练过程而记录 ARI,与用 ARI 改变轮次、超参数或最终报告结果,并不是同一件事。前提是记录没有反馈到选择中。实践中很难仅凭口头说明保证这种隔离,所以将训练与外部评分分开,通常更容易审计。
无标签的替代规则也需要认真验证。训练损失更低,不保证空间域识别更准确;内部聚类指标偏好紧凑、分离的簇,也未必对应真实组织边界。选择这些规则的理由,是它们不需要在目标数据上查看参考标签,而不是它们天然最优。规则应在最终评估前确定;如果先查看同一基准的 ARI,再挑选最有利的“无监督规则”,依然会引入选择偏差。
为避免只围绕 Spatial-MGCN 与 SpatialDG 两篇文章讨论,造成以偏概全,甚至被理解为针对个别团队,我们随后做了一次有限的代码排查。目的是把同一评估问题放在同一标准下讨论,便于公平的学术交流,而不是点名批评某一作者或实验室。
排查范围限定为发表于 Briefings in Bioinformatics、Bioinformatics、PLOS Computational Biology 或同级及更高级别刊物的空间域识别方法,并只检查其官方公开仓库的默认分支。需要记录的情形是:训练过程中用参考标签计算 ARI,并据此更新、保存随后被报告的聚类结果或嵌入。仅在训练中打印 ARI、但并不用它选择检查点或最终结果的做法,不列入下表。我们没有重新训练这些模型,因此下表说明的是公开训练脚本中的选择逻辑,而不能自动等同于论文中每一个数字的实际产生过程。
在这一范围内,除本文已经讨论的 Spatial-MGCN 与 SpatialDG 外,还核对到以下官方实现具有同样的结果选择方式:
| 方法 | 刊物与年份 | 官方脚本中的对应位置 |
|---|---|---|
| Spatial-MGCN | Briefings in Bioinformatics 2023 | DLPFC_test.py 第 118–138 行 |
| stMMR | GigaScience 2024 | train_model.py 第 40–107 行 |
| Path-MGCN | Briefings in Bioinformatics 2025 | Path-MGCN_DLPFC.py 第 42–65 行 |
| STMGAMF | Bioinformatics 2025 | DLPFC_test.py 第 114–154 行 |
| SpaMWGDA | PLOS Computational Biology 2025 | DLPFC_test.py 第 155–188 行 |
| DMGCN | PLOS Computational Biology 2025 | DMGCN_train_DHM.ipynb(MERFISH 训练笔记本中为同一逻辑) |
| SpatialDG | Briefings in Bioinformatics 2026 | dlpfctest.py 第 123–145 行 |
| AugGCL | PLOS Computational Biology 2026 | train_AugGCL.py 第 103–162 行 |
这些脚本的循环结构高度相似,更像是同一套训练与选轮模板被后续工作沿用,而不是彼此独立发明的评估策略。其中 stMMR 还提供了一个对照:当数据对象中存在 ground_truth 时,它按最高 ARI 保存嵌入与聚类并返回;当没有参考标签时,才退回到训练结束时的结果。这进一步说明,该选择步骤依赖目标数据上的参考分区。
作为对照,我们也检查了若干同级或更高级别刊物中常用方法的官方脚本,包括 SpaGCN(Nature Methods,2021)、STAGATE(Nature Communications,2022)、DeepST(Nucleic Acids Research,2022)和 GraphST(Nature Communications,2023)。在其公开默认分支中,未见同样按参考标签 ARI 选择并保存报告结果的写法。这并不能证明这些方法的全部实验都没有其他形式的标签依赖,只说明就这一具体代码模式而言,问题并非出现在所有方法中。
这次排查并不穷尽。我们主要依据公开代码中的特征语句检索,再核对这些实现是否属于上述刊物门槛内的官方仓库;尚未达到该门槛、或无法确认正式发表刊物的实现,没有写入上表。不同仓库还可能另有未发布脚本。因此,上表是一份经核对的例证清单,而不是该领域的完整普查。
对后续方法和基准研究,我们建议把以下信息写进论文与发布材料:
- 明确区分标签是否用于训练、预处理、聚类数设定、检查点选择和最终评分。
- 对所有比较方法使用可比的模型选择原则,并公布各自训练预算及实际执行设置。
- 固定预测结果后再进行外部评分,保留代码版本、配置和全部预定随机种子的结果。
- 修改评估后,说明哪些表格和结论已经重算,哪些仍等待验证。
SpatialDG 的后续讨论已经提供了两类值得保留的记录:正式评论展示了按参考标签选择结果会怎样影响分数;作者回应承认选择环节的问题,并公开了新的比较及其限制。读者应当能够沿着这些材料,区分原始报告、复现结果和后来重新评估各自回答了什么。上面的补充排查则说明,这一选择方式并不是个别文章的孤立现象;讨论时应当覆盖出现过同一问题的方法,而不是只追究其中一篇。
我们希望自己的方法也接受同样的检查。对于一项无监督空间域识别方法,论文和代码都应该交代清楚:面对没有参考分区的新切片,最终输出究竟如何确定。
说明:本文以公开博文、论文及往来文章、固定版本代码和作者补充资料为依据。没有开展新的模型训练;重新评估部分仅独立核验了公开逐次分数的汇总,不代表独立复现训练。补充排查部分只核验官方公开脚本中的结果选择逻辑,同样没有重新训练。
CC BY-NC-SA 4.0
本文由 Xiang CHEN 陈向 创作,采用 CC BY-NC-SA 4.0 协议,首发于 https://chenxofhit.xyz 个人网站。
您可以自由地:
- 分享 — 在任何媒介以任何形式复制、发行本作品
- 演绎 — 修改、转换或以本作品为基础进行创作
惟须遵守下列条件:
- 署名 — 您必须给出适当的署名,提供指向本许可协议的链接,同时标明是否(对原始作品)作了修改。您可以用任何合理的方式来署名,但是不得以任何方式暗示许可人为您或您的使用背书。
- 非商业性使用 — 您不得将本作品用于商业目的。
- 相同方式共享 — 如果您再混合、转换或者基于本作品进行创作,您必须基于与原先许可协议相同的许可协议分发您贡献的作品。
商业使用请联系:[email protected]