今天我们继续分享一个全面且育种家友好的基因组选择平台MultiGS的子工具MultiGS-P,这是一个面向机器学习与深度学习的基因组选择管线。
往期回顾:
MultiGS-P 的功能定位
MultiGS-P 是一个 基于 Python 的基因组选择(GS)分析管线,专门面向机器学习模型、深度学习模型和图神经网络(GNN)模型。
MultiGS-P 的核心特点可以概括为一句话:
MultiGS-P 将“现代预测模型”系统性引入 GS,并提供可比较、可复现、可扩展的运行框架。
需要强调的是: MultiGS-P 不是多性状模型,而是对多个单性状分别建模,这是其在实现层面刻意保持清晰性的设计选择。
MultiGS-P 的核心能力
1. 覆盖完整的现代模型谱系
MultiGS-P 的模型体系明显不同于传统 GS 工具,支持以下几类方法:
(1)线性与正则化模型(Python / R)
- R_RRBLUP、R_GBLUP(通过 R 接口)
这些模型主要用于:提供稳定基线;与复杂模型进行公平对照。
(2)树模型与 Boosting
适用于:非线性但样本量中等的 GS 场景;SNP 或 HAP 特征维度已被控制的情况。
(3)深度学习模型
- DeepBLUP:将 RRBLUP 嵌入神经网络结构
- DeepResBLUP:线性 GS 与深度残差网络的组合
这些模型用于捕捉:非线性效应;复杂 marker–trait 映射关系。
(4)图神经网络(GNN)
MultiGS-P 明确支持图结构建模:
其基本思想是:
将样本视为图节点,通过基因型相似性构建样本图,再进行信息传播。
这类模型适合:群体结构复杂;个体间关系显著的 GS 场景。
(5)集成学习(EnsembleGS)
MultiGS-P 内置 stacking 框架:
用于综合不同模型的预测优势;提升整体预测稳定性。
2. 多特征视图的组合建模能力
MultiGS-P 支持三类 marker 表达方式:
- HAP:单倍型块,依赖 rtm-gwas-snpldb
与 MultiGS-R 不同的是:
MultiGS-P 允许同时启用多个 Feature View,并在模型层面进行组合建模。
但官方也明确指出: 多视图 = 更高计算成本 + 更高过拟合风险。
数据与预处理要求(MultiGS-P 明确约束)
1. 基因型数据
- 不做任何内部 QC:不做 HWE 过滤;不做 LD pruning;不做深度 / 缺失率过滤。
缺失基因型在预处理阶段统一处理。
2. 表型数据
注意:
运行环境与安装
1. 基本环境
2. 安装流程(官方推荐)
git clone https://github.com/AAFC-ORDC-Crop-Bioinfomatics/MultiGS-P.gitcd MultiGS-Pconda env create -f environment.ymlconda activate multigs_p
3. 单倍型工具
HAP 视图依赖:rtm-gwas-snpldb(仓库自带或独立安装)
五、配置文件结构(MultiGS-P 的核心)
MultiGS-P 的所有行为均由 一个 ini 文件控制。
1. General:执行与复现
[General]seed = 42threads = 10n_replicates = 1n_folds = 5R_path = /path_to_Rresults_dir = results
2. Data:输入与归一化
[Data]vcf_path = train_genotype.vcfphenotype_path = train_pheno.txtpca_variance_explained = 0.95pheno_normalization = standardgenotype_normalization = standard
Prediction 模式下增加:
test_vcf_path =test_phenotype_path =
3. FeatureView:特征表示
[FeatureView]feature_view = SNP,HAP
可选:SNP、HAP、PC、任意组合(逗号分隔)
4. Models:模型选择
[Models]RRBLUP = trueXGBoost = trueMLPGS = trueGraphFormer = trueEnsembleGS = true
规则非常明确:
5. Hyperparameters_*:模型参数
运行 MultiGS-P
1. 激活环境
conda activate multigs_p
2. 执行管线
python MultiGS-P_1.0.pyc --config config.ini
执行特征:
输出结果结构(重点)
1. 表型基础分析
phenotype_analysis/
2. 交叉验证结果
crossvalidation/results/
cv_gs_detailed_results.csvcv_gs_summary_stats_*.csv- ANOVA + Tukey HSD(模型统计比较)
3. 预测模式输出
prediction/results/
- observed vs predicted 散点图
4. 计算资源统计
5. 模型检查点
ckpts/
使用层面的关键建议
小结
MultiGS-P 是一个为复杂模型而设计的 GS 工具,它的价值不在“跑得快”,而在:
在 MultiGS 体系中,MultiGS-P 的角色非常清晰:
探索复杂遗传结构与模型上限的实验与方法平台。
如果您的数据非常丰富,可尝试使用MultiGS-P。尤其是对于学术研究人员来说,深度学习是当前热点,不开发新方法又想尝鲜将DL应用到自己的研究,可能是一个选择。“生物信息与育种”团队深耕行业十余年,有丰富的GS研究经验,若您有这方面的研究需求,我们可提供数据分析服务以及科研合作。
参考Github:https://github.com/AAFC-ORDC-Crop-Bioinfomatics/MultiGS-P