【百奥云GS专栏】全基因组选择之工具篇
前面我们已经介绍了基因组选择的各类模型,今天主要来了解一下做GS有哪些可用的软件和工具。基因组选择处在热门研究阶段,每年都有不少新工具开发出来,可分析的软件非常之多,为了便于大家更加清晰地了解,这里我将它们分为免费开源包/库、成熟软件、WEB/GUI工具三类,用户使用难度依次降低。
1. 免费开源包/库
R和Python语言作为开源软件的代表,在数据分析领域有着不可替代的优势。近几年大部分GS分析软件都是由这两种语言开发。免费开源的R包或者Python库使用起来比较灵活,可根据用户的具体需求随时变化参数来获得最佳性能,但对使用用户而言需要有一定的数据分析基础。
1.1 R包
rrBLUP
https://cran.r-project.org/web/packages/rrBLUP/rrBLUP.pdf
主要用于建立RRBLUP模型,可估计每个SNP的效应值。sommer
https://cran.r-project.org/web/packages/sommer/sommer.pdf
更新较频繁,不同版本的用法可能稍有差异。可求解各种混合效应模型,包括RRBLUP和GBLUP经典模型。BGLR
https://github.com/gdlc/BGLR-R
主要用于建立Bayes类模型,包括BayesA、BayesB、BayesC、BayesCpi、BRR、BL、RKHS,也可用于建立GxE、多性状等复杂模型。brnn
https://cran.r-project.org/web/packages/brnn/brnn.pdf
全称贝叶斯正则化前馈神经网络(Bayesian regularization for feed-forward neural networks),专门建立brnn模型,计算比较耗时。HIBLUP
https://hiblup.github.io/
基于BLUP方法的分析工具,可实现ABLUP/PBLUP、GBLUP、SSBLUP等模型。具体可包括A、G、H矩阵构建,AI、EM等多种方差组分估计方法,以及混合模型方程求解等。BWGS
https://cran.r-project.org/web/packages/BWGS/BWGS.pdf
针对小麦基因组选择分析开发的R包,同样适用于其他作物。整合了BLUP、Bayes和机器学习三类方法,其实就是整合了单独分析这三类方法的R包,如rrBLUP、BGLR、glmnet、randomForest、brnn、e1071等。主要函数有交叉验证建模和表型预测两个。synbreed
http://synbreed.r-forge.r-project.org/
很古老的R包,实现的功能有数据预处理、可视化及统计建模,包括BLUP和贝叶斯类方法。cpgen
https://github.com/cheuerde/cpgen
可建立BLUP、Bayes模型,还可以做GWAS,特点是能实现多线程并行化计算。GSMX
https://cran.r-project.org/web/packages/GSMX/GSMX.pdf
多变量基因组选择分析工具。主要用于估计性状遗传力和处理过拟合。PopVar
https://cran.r-project.org/web/packages/PopVar/PopVar.pdf
可建立常见的RRBLUP、BayesA/B/C、BL、BRR等模型,特点是可以根据双亲群体的子代作为训练群体来预测双亲。此外也可进行多性状分析。BGGE
https://cran.r-project.org/web/packages/BGGE/BGGE.pdf
基于贝叶斯方法建立GxE模型。GAPIT
https://www.zzlab.net/GAPIT/
主要用于GWAS分析,内置了作者提出的sBLUP和cBLUP方法。此外,作者专门开发出GUI工具iPat,详见第三节。KAML
https://github.com/YinLiLin/KAML
在BLUP方法LMM的基础上,通过改变遗传结构方法,如将pseudo-QTNs设为协变量,将某特异性状赋予权重优化亲缘关系矩阵等。可搭配HIBLUP使用。snpReady
https://cran.r-project.org/web/packages/snpReady/vignettes/snpReady-vignette.html
不是专门做GS建模的R包,主要用来做SNP的预处理,包括质控、G矩阵处理、群体遗传汇总。GSelection
https://cran.r-project.org/web/packages/GSelection/GSelection.pdf
分析功能包括特征选取、特征去冗余、方差估计、表型预测等。MTGS
https://rdrr.io/cran/MTGS/
全称Genomic Selection using Multiple Traits,用于多性状分析。但此包已被CRAN移除,只能源码安装旧版本。BMTME
https://cran.r-project.org/web/packages/BMTME/BMTME.pdf
全称Bayesian Multi-Trait Multi-Environment for Genomic Selection Analysis,基于贝叶斯模型的多环境和多性状分析。DeepGS
https://github.com/cma2015/DeepGS
通过卷积神经网络算法来预测表型,并集成了RR-BLUP模型,提高预测性能。机器学习用于GS的常见R包:如randomForest、glmnet、e1071、mxnet等。
混合线性模型分析的常见R包:lme、lme4、nlme、MCMCglmm等。
1.2 Python库
SeqBreed
https://github.com/miguelperezenciso/SeqBreed
主要能实现常见的BLUP类模型,也可以灵活地评估特定场景中地遗传结构,如QTN数目、作用及性状数量等来提升预测性能。常见机器学习Python工具:经典机器学习模块如sklearn,深度学习框架如Karas、TensorFlow、PyTorch等。
2. 成熟软件
动物基因组选择发展较早,因此成熟的遗传评估软件一开始是专门为动物育种而设计开发,只有其中一部分功能适用于植物育种。
早期的软件一部分是商业软件,使用需付费。一部分虽然免费,但允许使用的数据量小,商用需授权。它们大多用FORTRAN、C等语言编写,运行稳定且运算较快。但模型比较单一,基本都是通过混合线性模型来评估遗传参数,建立的大多是BLUP类模型。
近几年越来越多的高性能免费软件趋于成熟,随着海量数据的积累和实际应用的需求,这类软件将显得越来越重要。
ASREML
https://www.vsni.co.uk/software/asreml
包括ASReml-W和ASReml-R,专门用于海量数据的混合模型分析,可评估许多重要的遗传参数,运算较快。仅应用BLUP类方法。BLUPF90
http://nce.ads.uga.edu/wiki/doku.php
BLUPF90系列程序是Fortran 90/95中的软件集合,用于动物育种中的混合模型计算。DMU
https://dmu.ghpc.au.dk/
历史悠久,主要用于动物数量遗传评估。功能包括估计方差组分和固定效应,预测育种值。MixBLUP
https://www.mixblup.eu/
动物育种软件,结合系谱和基因组信息基于BLUP方法估计育种值。WOMBAT
http://didgeridoo.une.edu.au/km/wombat.php
为动物育种开发,使用REML估计方差组分。PIBLUP
https://github.com/huiminkang/PIBLUP
各类BLUP模型构建,包括加性、显性和上位性矩阵。虽然用R编写,但使用了多线程并行运算,加入了数学核心函数库,使用预处理共轭梯度等方法加快了运算速度。GVCBLUP
https://animalgene.umn.edu/gvcblub
在GBLUP基础上可对加性和显性效应进行基因组预测和方差成分估计。JWAS
http://reworkhow.github.io/JWAS.jl/latest/
Julia语言编写,基于贝叶斯多元回归方法。对固定和随机效应无限制,且可用于多性状分析。
3. WEB/GUI工具
基于网页或图形界面的工具目前还较少,因此对于普通用户使用GS技术,仍有一定的门槛。以下几个工具仅供参考。
GS1.0
http://www.rmbreeding.cn/tool/gs1.0
基于GBLUP的水稻基因组选择在线分析模块,要求输入基因型、表型和亲缘关系矩阵三个文件。solGS
https://cassavabase.org/solgs
基于RRBLUP模型建立的web工具。iPat
http://zzlab.net/iPat/#!
图形用户界面GUI工具,可单独进行GS(包括BLUP和贝叶斯类模型,内置rrBLUP、BGLR等R包),也可结合GWAS辅助GS分析。
以上仅列出了常见的GS分析工具及其简介,更多的软件未能一一列出(如数据前期的清洗、指标评价、数据可视化等),具体的用法也可以去查看对应的文档。
【百奥云GS专栏】全基因组选择之工具篇的更多相关文章
- 【百奥云GS专栏】全基因组选择之模型篇
目录 1. 前言 2. BLUP方法 ABLUP GBLUP ssGBLUP RRBLUP 3. 贝叶斯方法 BayesA BayesB BayesC/Cπ/Dπ Bayesian Lasso 4. ...
- 【百奥云GS专栏】1-全基因组选择介绍
目录 什么是基因组选择? 基因组选择技术的发展 基因组选择的原理和流程 基因组选择的模型 基因组选择的展望 参考资料 什么是基因组选择? 基因组选择(Genomic Selection,简称GS)这一 ...
- 【GS文献】全基因组选择模型研究进展及展望
目录 1. GS概况 2. GS模型 1)直接法 GBLUP 直接法的模型改进 ①单随机效应 ②多随机效应 2)间接法 间接法模型 基于间接法的模型改进 3. GS模型比较 模型比较结论 4.问题及展 ...
- 【GS文献】植物全基因组选择育种技术原理与研究进展
目录 1. 优势杂交育种预测 2. GS育种原理与模型算法 岭回归和LASSO回归 贝叶斯方法 GBLUP和RRBLUP 偏最小二乘法 支持向量机/支持向量回归 其他方法 3. 模型预测能力验证 4. ...
- 全基因组选择育种(GS)简介
全基因组选择(Genomic selection, GS)是一种利用覆盖全基因组的高密度标记进行选择育种的新方法,可通过早期选择缩短世代间隔,提高育种值(Genomic Estimated Breed ...
- 【GS模型】全基因组选择之rrBLUP
目录 1. 理论 2. 实操 2.1 rrBLUP包简介 2.2 实操 3. 补充说明 关于模型 关于交叉验证 参考资料 1. 理论 rrBLUP是基因组选择最常用的模型之一,也是间接法模型的代表.回 ...
- 【GS文献】基因组选择技术在农业动物育种中的应用
中国农业大学等多家单位2017年合作发表在<遗传>杂志上的综述,笔记之. 作者中还有李宁院士,不胜唏嘘. 1.概述 GS的两大难题:基因组分型的成本,基因组育种值(genomic esti ...
- 【GS文献】基因组选择在植物分子育种应用的最新综述(2020)
目录 1. 简介 2. BLUP类模型 3. Bayesian类模型 4. 机器学习 5. GWAS辅助的GS 6. 杂交育种 7. 多性状 8. 长期选择 9. 预测准确性评估 10. GS到植物育 ...
- 【GS应用】基因组选择在杂交玉米上的应用示例
目录 GS两步走 示例 缩短周期和成本 分类 杂交类型 试验研究 选择响应 选择的强度 选择的周期 预测能力 数据分析的注意事项 GS实施 优缺点 GS的成功 展望 GS两步走 示例 缩短周期和成本 ...
随机推荐
- sqlmap--tamper使用技巧
apostrophemask.py 适用数据库:ALL 作用:将引号替换为utf-8,用于过滤单引号 使用脚本前: tamper("1 AND '1'='1") 使用脚本后: 1A ...
- Linux入门所必备的Linux命令和C语言基础
文件和目录(底部有视频资料) cd /home 进入 '/ home' 目录' cd - 返回上一级目录 cd -/- 返回上两级目录 cd 进入个人的主目录 cd ~user1 进入个人的主目录 c ...
- 数列极限计算中运用皮亚诺Taylor展开巧解
这是讲义里比较精华的几个题目,今晚翻看也是想到了,总结出来(处理k/n2形式). 推广式子如下: 例题如下:
- 高频面试题:一张图彻底搞懂Spring循环依赖
1 什么是循环依赖? 如下图所示: BeanA类依赖了BeanB类,同时BeanB类又依赖了BeanA类.这种依赖关系形成了一个闭环,我们把这种依赖关系就称之为循环依赖.同理,再如下图的情况: 上图中 ...
- wifi 热点配置最优信道
wifi热点服务hostapd启动需要配置hostad.conf文件,其中有一个参数channel是用来配置信道的,信道的可选参数如下: # channel 1-14 is 2.4 GHz ; cha ...
- 进程间通信消息队列msgsnd执行:Invlid argument——万恶的经验主义
最近在搞进程间通信,首先在我的ubuntu 14.04上写了接口和测试demo,编译和执行都OK,,代码如下: 接口文件ipcmsg.h /* ipcmsg.h */ #ifndef H_MSGIPC ...
- Luogu P1297 [国家集训队]单选错位 | 概率与期望
题目链接 题解: 单独考虑每一道题目对答案的贡献. 设$g_i$表示gx在第$i$道题目的答案是否正确(1表示正确,0表示不正确),则$P(g_i=1)$表示gx在第$i$道题目的答案正确的概率. 我 ...
- 禁用root直接远程登录,使用普通账号登录后再切换root
1.创建一个普通用户 #useradd test 2.给test设置密码 #passwd test 3.禁用root远程登录 #vim /etc/ssh/sshd_config #PermitRoot ...
- LOTO实践【干货】电压比较器的快速应用
LOTO实践[干货]电压比较器的快速应用 话不多说先上图: 最近出差去客户那边做设备调试,现场如上图,其中我负责的技术部分包含了一个掉落物监测的功能.硬件上的原理比较简单,发射板上的红外发射头阵列,以 ...
- Linux下的 sniff-andthen-spoof程序编写
Linux下的 sniff-andthen-spoof程序编写 一.任务描述 在本任务中,您将结合嗅探和欺骗技术来实现以下嗅探然后欺骗程序.你需要两台机器在同一个局域网.从机器A ping IP_X, ...