打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
当机器学习遇到基因组选择

当你还在GBLUP或者贝叶斯类方法进行优化时, 我带着卷积神经网络进行了降维打击…

1. 参考文献

Crossa, José, Pérez-Rodríguez, Paulino, Cuevas J , et al. Genomic Selection in Plant Breeding: Methods, Models, and Perspectives[J]. Trends in Plant Science, 2017:S136013851730184X.

2. 摘要

全基因组选择(Genomic selection)可以大大加快育种进程, 这篇文章从以下几个方面进行讨论:

  • 基因组选择的历史和现状

  • 基因组选择的基础和准则

  • 基因组选择的模型, 包括GbyE

  • 基因组选择如何改良获得优良品系

  • 系谱数据整合基因组选择(SSBLUP)

3. 后代育种值的构成

    1. 双亲的育种值的平均值

    1. 孟德尔抽样(Mendelian sampling)

  • 双亲育种值的平均值, 可以通过系谱构建A矩阵, 进行计算.

  • 孟德尔抽样, 可以通过多环境测试(multienvironment field trials)进行检验.

GS的优势在于, 可以通过基因型值, 直接检测孟德尔抽样, 这样就不需要多地点的测试去计算孟德尔抽样.

4. 基因组选择的流程

    1. 训练群体, 有表型, 有基因型

    1. 测试群体(候选群体), 有基因型, 预测表型值进行选择

5. GS和常规育种的比较


左边为常规育种, 右边为GS加入的育种流程.

这里默认是一年两个世代(A和B), 比如A夏播, B是南繁.

6. 什么时间多性状模型要优于单性状模型

  • 两性状或者多性状分析时, 当性状之间遗传相关比较高时, 多性状模型要高于单性状模型(us > diagonal)

  • 当性状之间遗传相关比较低时, 多性状模型和单性状模型结果类似

7. 当机器学习遇到基因组选择

GBLUP, RRBLUP, 贝叶斯类的方法, 本质上是线性核心(Linear core), 其实可以把GS当做分类的选择, 应为GS本质上是为了选择好的, 中等的, 低的, 可以当做分类器的问题, 这样就可以用很多机器学习的算法进行运算.

机器学习分类器用于GS的优势: 通过训练群体, 能够将符合某类标准的个体以最大可能的概率挑选出来, 而不是计算所有可能的结果(Using classifiers in GS is attractive because they are trained to maximize the probability of an individual beingamember of the target class, rather thansearchingfor its overall performance)

研究表明, 特别是针对于一些非加性效应(比如杂种优势), 考虑基因与环境互作, 神经网络类的(nolinear core)机器学习方法预测的效果更好.

8. 感想

与其临渊羡鱼,不如退而结网
现在机器学习各种算法层出不穷, 是时候拥抱新事物了.

比如下面几个常用的库, 跑起来.

Tensorflow
Tensorflow把神经网络运算抽象成运算图(Graph),一个运算图中包含了大量的张量(Tensor)运算。而张量实际上就是N维数据的集合。神经网络运算的本质是通过张量运算来拟合输入张量与输出张量之间的映射关系。

Keras
Keras被认为是最酷的Python深度学习库之一。如果你是深度学习开发方面的新手,那么非常建议你使用它。它提供了非常简明的机制来表达神经网络结构。它也提供了许多非常棒的工具用于神经网络模型的编译、数据的处理、以及网络结构的可视化等等。

Theano
Theano 是一个用于多维数组计算的 Python 运算框架。Theano 的工作原理与 Tensorflow 相似, Theano还可以用于与Tensorflow类似的分布式或并行环境。

PyTorch
PyTorch是最大的深度学习库,允许开发人员通过加速GPU执行张量计算,创建动态计算图,并自动计算梯度。 除此之外,PyTorch还提供丰富的API,用于解决与神经网络相关的应用问题。

Scikits-learn
Scikits-learn,又称为sk-learn,是一个基于Numpy与SciPy的Python库。Sk-learn被认为是用于处理复杂数据的最优秀的机器学习库之一。它包含了大量用于实现传统机器学习和数据挖掘任务的算法,比如数据降维、分类、回归、聚类、以及模型选择等。随着时间的发展,sk-learn不断演进。其中包括它加入了交叉验证功能,提供了使用多个衡量指标的能力。许多的训练方法都得到了一定的改进,如逻辑回归、近邻算法(KNN)等。

这里面, 以Tensorfolow, PyTorchsklearn最为常用, 先用这三个库进行学习, 将手中的数据跑起来.

当你还在GBLUP或者贝叶斯类方法进行优化时, 我带着卷积神经网络进行了降维打击…

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
即使是搞爬虫你也得会点深度学习
为什么TensorFlow正在缓慢死亡
深度学习框架“新晋一哥”Pytorch,你真的掌握了吗?
2018年国外深度学习技术发展综述
基因组选择育种实施路径
PBJ 长文综述| 植物基因组测序、基因编辑等前沿技术的持续突破助力现代农业迅速发展
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服