群体结构——系统发育树的构建

最近杂事真的非常的满,终于找到时间更新一下。。。。

通过上一篇文章的介绍,系统发育树的基本概念大家已经了解清楚,那到底怎么获得一棵可信的进化树呢?

构建系统发育树

对于群体遗传学分析,一般都会以群体SNPs位点数据构建系统发育树,因此,接下来我主要以SNPs数据为例,介绍系统进化树的构建方法。

构建步骤概况

序列比对->建树方法选择->计算最佳替代模型->进化树建立->进化树美化

序列比对

常见的序列比对软件包括:Clustal和Muscle等。

Clustal除了有自己独立的软件外(多种操作系统都支持),也常被整合到一些常见的软件中,如:Bioedit、MEGA等。

Muscle同样支持多种操作系统。

两个软件的引用频率都很高,没有绝对的谁好谁坏,哪个顺手就用哪个即可。

建树方法选择

1、Distance-based methods 距离法:

基于距离的方法:首先通过各个物种之间的比较,根据一定的假设(进化距离模型)推导得出分类群之间的进化距离,构建一个进化距离矩阵。进化树的构建则是基于这个矩阵中的进化距离关系。

  • Unweightedpair group method using arithmetic average(UPGMA)非加权分组平均法

  • Minimum evolution(ME)最小进化法

  • Neighbor joining(NJ)邻位归并法

2、Character-based methods 特征法:

基于特征的方法:不计算序列间的距离,而是将序列中有差异的位点作为单独的特征,并根据这些特征来建树。

  • Maximum parsimony(MP) 最大简约法

  • Maximum likelihood method(ML) 最大似然法

模型选择的依据如下图:

模型选择依据

UPGMA法已经较少使用。一般来讲,如果模型合适,ML的效果较好。对近缘序列,有人喜欢MP,因为用的假设最少。MP一般不用在远缘序列上,这时一般用NJ或ML。对相似度很低的序列,NJ往往会出现Long-branch attraction(LBA,长枝吸引现象),有时严重干扰进化树的构建。贝叶斯方法则太慢。对于各种方法构建分子进化树的准确性,有一篇综述(Hall BG, 2005)认为贝叶斯的方法最好,其次是ML,然后是MP。其实如果序列的相似性较高,各种方法都会得到不错的结果,模型间的差别也不大。不过现在文章普遍使用的是NJ是ML模型。

替代模型选择

系统发育分析中,最大似然法(ML)和贝叶斯法(BI)是对替代模型非常敏感的两种算法,因此,利用ML法或BI法重建系统发育树前,替代模型的选择是必不可少的过程。

  • jModeltest适用于核苷酸替代模型的选择,是一个跨平台java程序。
  • ProtTest适用于氨基酸替代模型的选择。
    这两个软件都是通过 PhyML 对进化树和模型参数进行最大似然估计,通过 AIC, BIC 分值寻找最佳替代模型,分值越小则模型越优。

使用jModeltest计算核苷酸最佳替代模型

Win操作系统下jModeltest的使用方法参考这篇文章:图解核苷酸替代模型的选择 - jModelTest 篇(By Raindy)
ProTest的使用方法可以参考这篇文章:使用 ProtTest 来选择最优氨基酸替代模型

我自己基本都用的是Linux版本的jModelTest,使用及其简单,命令如下:

java -jar /PathToJmodel/jmodeltest-2.1.10/jModelTest.jar -d FileName.phy -f -i -g 4 -s 11 -BIC -AIC -v -a -tr 40 -o FileName_jmodeltest.txt

参数说明:
-d:输入文件。注意!这个软件需要输入的是.phy格式文件,不是.fasta格式。
-f:include models with unequals base frecuencies
-g:include models with rate variation among sites and number of categories
-i: include models with a proportion invariable sites
-s:number of substitution schemes
-v:do model averaging and parameter importances
-a:estimate model-averaged phylogeny for each active criterion
-BIC:calculate the Bayesian Information Criterion
-AIC:calculate the Akaike Information Criterion

结果的最下方,有如图所示的列举,也就是得分最高的模型。


jmodeltest结果

建树

计算完最佳模型,我们就要开始建树了。对于ML树的构建,推荐大家使用新一代RAxML——raxml-ng。

RAxML一直是ML建树的经典工具,其由来自德国海德堡理论科学研究所(Heidelberg Institute for Theoretical Studies)的Alexandros Stamatakis开发。近年来,其江湖地位也受到来自其他软件,尤其是IQ-Tree的挑战。Zhou等人的文章Evaluating Fast Maximum Likelihood-Based Phylogenetic Programs Using Empirical Phylogenomic Data set对RAxML,IQ-TREE,FastTree,Phyml四个最大似然法建树软件的实际效果和表现进行了系统比较,其中一个结论是IQTREE在准确性方面要略胜一筹。
近日,RAxML的升级版,raxml-ng发布!

相较于上一代,raxml-ng有如下优势:

    1. 速度较RAxML有较大幅度提升。raxml-ng对算法有改进,其中也借鉴了IQTREE的部分思路。作者利用Zhou的数据将raxml-ng与IQTREE进行了比较,发现raxml-ng在可以得出更准确的结果的同时其速度是IQTREE的1.3到4.5倍。
    1. RAxML对于DNA替换模型的吝啬是其饱受诟病的一个原因。而这一问题在raxml-ng中得到了完美解决。raxml-ng现在支持22个核酸进化模型。
    1. 多线程效率上有一定提升

使用raxml-ng构建ML树

话不多说,直接建树:

raxml-ng --all --msa FileName.fas --model TVM+G --bs-trees 1000 --threads 90

参数说明:
--all:Perform an all-in-one analysis (ML tree search + non-parametric bootstrap)
--msa:对其后的序列文件
--model:直接输入上一步产生的最佳模型
--bs-trees:检查树的鲁棒性(robustness)进行自展(bootstrap)检验,进行1000次bootstrapping抽样
--threads:给定线程

运行后结果如下图所示,其中.bestTree就是我们要的树文件,导入树可视化工具即可(我比较常用MEGA和iTOL),下次再写一下如何美化进化树吧。

raxml-ng结果文件

工欲善其事,必先利其器

做进化分析的工友们可能都有个感觉,很多分析一等就是好几天,特别是建树(做过的都知道其中的痛苦),有时候忽然加入一个样品又要从头来。因此,一台给力的服务器是必要的工具。比如,上文提到了SNP进化树,我做的还仅仅只是相近物种,而且基因组很小(9M),SNP位点就有4万个,如果要用我MEGA这些软件调用我电脑8核的CPU,1000自展值可能要跑到毕业。

生物学背景出身的我,抄着那一点可怜的计算机常识,在我们课题组购买服务器时,我做了非常多的功课。当然,主要还是听取公司技术人员的建议,通过我非常非常非常长时间的测试,多次使用常见的生物信息分析软件(我主要从事寄生虫基因组、宿主转录组、16S宏基因组等研究),最终,找到了一个性价比超高的服务器配置,具体配置如下:

单台双计算节点服务器+混合统一高速存储:

  • 单节点48核96线程2.3GHz全核满载3.0GHz,512GB内存【单台96核192线程,1TB内存】,固态系统及缓存盘(线程数不用解释吧,越多越好;远程控制跑跑各种生物学脚本用不到显卡,钱都丢到CPU和内存才是王道);
  • 120TB混合统一存储万兆互联(注意:和存储之间的交换速度直接影响大部分脚本运行速度)。

真心感谢一下烽伟的技术小哥哥们,乐死不疲的回答我各种低级的问题,如果有啥需要可以联系一下他们的技术,感觉蛮靠谱哒,官网:烽伟科技

上一个他们的LOGO,以表感谢。


上海烽伟

本文为本人的学习笔记,希望对大家有所帮助。本文大量参考网络文章,文章来源列举于全文末尾。

参考:
一文读懂进化树
使用 ProtTest 来选择最优氨基酸替代模型
RAxML进化树构建的新一代——raxml-ng

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 193,968评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,682评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,254评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,074评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 60,964评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,055评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,484评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,170评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,433评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,512评论 2 308
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,296评论 1 325
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,184评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,545评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,880评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,150评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,437评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,630评论 2 335

推荐阅读更多精彩内容