跳转到内容

基因组选择:先把基线和验证做对,再谈深度学习

基因组选择(genomic selection, GS)的目标很直接:利用全基因组标记预测个体的育种值,在表型还没完全测完之前就提前筛选候选材料。

这个问题很适合机器学习,但也最容易被“换一个更复杂的模型”带偏。对多数育种数据来说,先把 GBLUP 这样的经典基线做扎实,比直接上深度网络更重要。

GBLUP 用基因组标记构建个体间的关系矩阵,再在线性混合模型框架里预测育种值。它的假设并不华丽,但在多基因控制、样本量有限的性状上经常非常强。

rrBLUP 可以理解为对大量 marker effect 做统一收缩。BayesA、BayesB、BayesCπ、BayesR 等方法则允许不同位点采用不同的效应分布。

如果性状确实由少数较大效应位点和大量小效应位点共同控制,贝叶斯方法有时会比统一收缩更合适。

单步 GBLUP 把系谱、基因型和表型信息放到同一个框架里,在实际育种群体中很有价值,尤其适合并不是所有个体都有基因型的情况。

Random Forest、XGBoost、SVR 等方法不依赖严格的线性加性假设,因此可能捕捉部分非线性和 marker interaction。

但它们的优势并不是自动出现的。育种数据常见的问题是样本量不大、marker 数远高于个体数,而且家系结构很强。在这种数据上,复杂模型很容易学到亲缘关系而不是可迁移的遗传规律。

所以我不会把“XGBoost > GBLUP”当成默认预期,而会把它作为需要验证的假设。

深度模型更可能在下面几类数据里体现价值:

  • 样本量足够大;
  • 有明显非加性效应或复杂互作;
  • 需要把 SNP 与环境、表型图像、多组学一起建模;
  • 多性状联合预测能共享信息;
  • 有足够严格的外部验证来约束过拟合。

如果只是几百到几千个材料、几十万个 SNP、单性状预测,深度学习并不会因为“表达能力更强”就自然胜出。

真正决定结果的往往是数据划分

Section titled “真正决定结果的往往是数据划分”

随机把个体分成训练集和测试集,可能得到一个很好看的相关系数,但这个数字未必代表实际育种场景。

更有价值的验证方式包括:

  • 跨家系:测试集来自训练中未见的家系;
  • 跨年份:用早年数据预测后续年份;
  • 跨环境:在不同地点或处理条件上验证;
  • 跨群体:考察模型离开原训练群体后的衰减。

如果模型最终是用于选育下一代材料,验证设计就应该尽量模拟这个使用场景。

一个比较稳的顺序是:

  1. 做基因型和表型质控;
  2. 明确训练集和测试集的育种场景,而不是先随机切分;
  3. 跑 GBLUP / rrBLUP 作为基线;
  4. 再试 Bayes、Random Forest 或 XGBoost;
  5. 只有在数据量和任务结构支持时,再上深度学习;
  6. 同时报告准确率、偏差、不同群体中的稳定性和计算成本。

这个顺序的意义不是保守,而是让每一步复杂度都有可比较的收益。

相比单纯把 SNP 喂进更深的网络,我更看好三类扩展:

  • G×E 建模:把环境变量和基因型一起建模;
  • 多模态预测:联合基因型、表型图像和组学数据;
  • 跨世代迁移:明确模型在新世代、新家系中的有效范围。

这些问题更接近真实育种流程,也更能检验模型是不是在学习可泛化的生物学信号。

本页导航

目录