首页/新闻资讯/正文详情

FastTree v2.2.0安装与使用--生信工具116

发布时间:2026/11/4 7:20:34 来源:云帆数科 栏目:资讯中心
FastTree v2.2.0安装与使用--生信工具116
简介FastTree 可以基于核酸或者蛋白多序列比对结果构建近似最大似然Approximately-Maximum-Likelihood系统发育树。 它可以处理多达百万条序列的比对文件内存和耗时可控。对于大数据集比 PhyML、RAxML 快 100–1000 倍。 开源地址官网FastTree 2.2: Approximately-Maximum-Likelihood Trees for Large AlignmentsGithubGitHub - morgannprice/fasttree: FastTree 2: Approximately-Maximum-Likelihood Trees for Large Alignments · GitHub精度说明 默认参数下FastTree 精度优于 PhyML 3远优于传统距离矩阵类建树方法。 替换模型核酸Jukes-Cantor、GTR蛋白JTT、WAG、LG 位点异质性默认采用 CAT 近似模型给每个位点分配独立进化速率。 分支可靠性输出 SH-like 局部支持值和 PhyML3 的 SH-like support 算法一致。更多文档入口HowFastTree 2.2: Approximately-Maximum-Likelihood Trees for Large AlignmentsInstallFastTree 2.2: Approximately-Maximum-Likelihood Trees for Large AlignmentsUsageFastTree 2.2: Approximately-Maximum-Likelihood Trees for Large AlignmentsPerformance / AccuracyFastTree 2.2: Approximately-Maximum-Likelihood Trees for Large Alignments、FastTree 2.2: Approximately-Maximum-Likelihood Trees for Large Alignments特色功能Gamma20OpenMP 多线程自定义替换矩阵FAQ原理五大建树阶段启发式邻接树Heuristic Neighbor-Joining最小进化Minimum EvolutionNNI SPR 重排距离校正最大似然拓扑优化与分支长度优化ML局部支持值计算SH test1. 启发式邻接树FastTree 使用改良版邻接算法生成初始拓扑不存储距离矩阵而是存储节点 profile大幅降低内存。 三层启发加速记录每个节点最优配对爬山搜索寻找更优配对top-hits 策略避免计算全部两两距离局限邻接阶段距离没有多重替换校正会受到长枝吸引LBA影响后续最小进化阶段修正这个问题。2. 最小进化 ME 阶段通过 NNI、SPR 重排不断降低总树长和 FastME 思路接近但基于 profile 而非距离矩阵速度更快。 默认4*log2(N)轮 NNI2 轮 SPR。 SPR 代价高FastTree 将 SPR 拆解成一串 NNI只延伸最优分支链。 在噪声不大的距离矩阵下NNISPR 足以收敛到较优拓扑。距离计算规则蛋白BLOSUM45 矩阵校正公式-1.3 * log(1-d)核酸JC 距离-0.75*log(1 - 4/3 d)两条序列比对gap 位点直接忽略两个 profile 比对按非 gap 比例加权3. 最大似然 ML 优化在 ME 树基础上同时优化拓扑 枝长。 模型JC / GTR核酸JTT / WAG / LG蛋白。 CAT 模型默认 20 个速率分类速率几何分布 0.05~20贝叶斯先验分配每个位点到最可能速率组避免小比对过拟合。ML 搜索提速策略也是和 RAxML 核心区别只做 NNI不做 SPR同一时间只维护一棵拓扑位点速率、模型参数只优化一次不每轮 NNI 都重算NNI 之间不单独迭代优化枝长枝长收敛阈值0.0001 或者 枝长的 0.1%取较大值四元组似然优化最多 2 轮第一轮后似然差 5 则直接抛弃该拓扑连续两轮似然提升不足 0.1 的子树直接跳过分支稳定、显著优于星型树时不再尝试替代拓扑限制 NNI 轮次上限2*log2(N)保证运行时间可控一般提前收敛4. 局部支持值 SH-like support对每个分支拆分评估 3 种四元组拓扑(A,B),(C,D)/(A,C),(B,D)/(A,D),(B,C)使用 SH 检验对比。说明使用 CAT 近似、不完整重优化枝长结果和 PhyML3 的 SH-like 支持几乎一致两者默认 1000 次重采样重采样比对不重新优化枝长。 传统 bootstrap 怎么做FastTree 不内置seqbootphylip生成重采样比对FastTree-n批量分析所有重采样比对CompareToBootstrap.pl 对比原始树和 bootstrap 树 超大比对推荐-intree1全局快速 bootstrap以原始比对树作为每一轮重采样的起始树速度很快相关性高r0.975。 关闭 ML 阶段-noml则会使用旧版最小进化局部 bootstrap。编译 安装 FastTree可执行文件FastTree 单线程版FastTreeMP OpenMP 多线程版FastTree.exe Windows 版FastTree.c 源码单线程编译gcc -O3 -fopenmp-simd -funsafe-math-optimizations -marchnative -o FastTree FastTree.c -lmMac 注意需要安装 Xcode 命令行工具-finline-functions可能报错可删掉。多线程 FastTreeMPgcc -DOPENMP -O3 -fopenmp -fopenmp-simd -funsafe-math-optimizations -marchnative -o FastTree FastTree.c -lmMac 原生 clang 对 OpenMP 支持差建议换 gcc。开源协议自由修改分发改进建议发邮件 fasttreemicrobesonline.org。 历史版本ChangeLog.txt/github old 分支。运行命令重点你跑 TE 树高频用✅ 蛋白比对默认 JTTCATFastTree alignment_file tree_file # 或者 FastTree alignment.file tree_file✅ 蛋白换成 WAG / LG你 Gypsy RT 蛋白树常用 LGFastTree -lg pep.aln tree.newick FastTree -wag pep.aln tree.newick✅ 核酸比对 GTRCATFastTree -gtr -nt alignment.file tree_file不加-gtr则默认 JCCAT。✅-gammaCAT 跑完之后重新缩放枝长输出 Gamma20 似然值速度仅慢约 5%Gamma 似然跨样本可比适合拓扑 SH/AU 检验搭配-log。FastTree -gamma -lg pep.aln tree.newickWindowscmd 运行Linux/Mac./FastTree查看参数直接敲 FastTree 或者FastTree -help⚠️ 没有-h输入格式支持 FASTA、交错 PHYLIP。序列 ID 必须唯一序列名不要包含: , ( )否则 newick 树无法解析FASTA 后第一个空格后的内容默认丢弃-quote开启保留空格单引号除外输出树加引号后续 FastTree 无法再读取这棵树PHYLIP支持长 ID块之间名字对齐单文件可放多个比对搭配-n输出格式标准 Newick树根位置无生物学意义。 内部节点携带 SH 支持值范围0~1不是 0~100。 完全相同序列会产生多歧分支冗余序列的父节点无支持值。 可视化工具MEGA、iTOL。速度、复杂度、实测数据单线程基准测试数据集序列数比对长度模型耗时内存RAxML/PhyML 耗时外排通透酶 COG28148362394 aaJTTCAT0.25 h0.35 GB1200hABC 转运蛋白 PF0000539092214 aaJTTCAT1 h0.96 GB——16S rRNA150111287 ntGTRCAT0.66 h0.56 GB99h16S rRNA150111287 ntJCCAT0.49 h0.36 GB——16S rRNA2378821287 ntJCCAT -fastest21.8 h5.8 GB——复杂度默认空间 O (N L a N^1.5)时间 O (N^1.5 log (N) L a)-fastest空间 O (N L a N^1.25)时间 O (N^1.25 L a)N 序列数L 比对长度a 字母表大小核酸 4蛋白 20237k 16S 案例时间拆分-fastest邻接阶段最耗时ML NNI 是每轮最慢的步骤。 FastTreeMP 3 线程一般提速 1.5~1.7 倍邻接阶段可多线程ML NNI、ME 阶段不并行。精度对比小结对比 PhyML3仅 NNIFastTree 略准得益于 ME-SPR 初始树对比 RAxML/PhyML带 SPR 全搜索FastTree 精度略低但速度快几百倍两者不一致的分支大多支持度很低模拟数据几千几万条序列拓扑正确率很高大数据集非常划算似然对比500 条 16S 子集 RAxML GTRΓ4 FastTree GTRCAT PhyML3 GTRΓ4 PhyML3 HKYΓ4 FastTree JCCAT500 条 COG 蛋白家族也有相同趋势。OpenMP 多线程 FastTreeMP并行模块top-hits、NJ 节点距离比对、ML NNI 的 3 个拓扑似然、SH 支持计算。 ⚠️ 重要FastTreeMP非确定性多线程调度顺序会影响 NJ 启发搜索树拓扑可能轻微变化但质量基本一致。 控制线程数export OMP_NUM_THREADS3 ./FastTreeMP -lg pep.aln tree.newick运行FastTreeMP -help会打印当前线程设置。CAT / Gamma20 模型详解-gamma先用 CAT 模型优化树再缩放枝长计算 Gamma20 离散伽马似然。 Gamma20 优势跨运行可比大数据下甚至优于很多工具 Gamma4。 局限核酸 GTRGamma20速率参数没有完全优化精度略降少于 50 条序列的小比对不推荐位点速率估计误差大Gamma20 似然和别的软件 Gamma4 不能直接等价对比原理预先计算 20 个固定速率0.05~20的位点似然Brent 法优化 Gamma 形状参数 α。 常规 Gamma 是等概率离散区间FastTree Gamma20 是按连续 Gamma 积分分配每个速率的权重。自定义氨基酸替换矩阵-trans仅蛋白、仅 ML 阶段生效ME 阶段用-matrix/-nomatrix。 矩阵是制表符分隔顺序A R N D C Q E G H I L K M F P S T W Y V *最后一列是稳态频率 π。 校验条件π 全部 0π 总和 1Q 对角元为负非对角元≥0Q・π 0稳态∑Qᵢᵢπᵢ -1平均突变速率 1时间可逆 Qᵢⱼ / Qⱼᵢ πᵢ / πⱼ单精度版本容易数值不稳定自定义矩阵优先用默认双精度版。FAQ高频踩坑你跑 TE 树经常遇到Q1必须要比对好的序列吗✅ 是。蛋白家族muscle /hmmalignhmmalign 小写是未匹配结构域建议删掉RNAinfernal修剪Gblocks /trimal 去除低质量 gap 列Q2报未识别字符只识别 核酸A C G TU 兼容 蛋白20 标准氨基酸gap-其他字符N、R、X、Z、U 硒代半胱氨酸都会告警当成缺失。Q3大量 0.0001/0.0005 甚至负枝长-noml最小进化阶段负枝长是噪声代表该分支极短、不确定旧单精度版本枝长下限 0.0001新版单精度 0.0005需要精确短枝用默认双精度版本Q4怎么加速-fastest5 万序列首选NJ 阶段大幅提速FastTreeMP 多线程-mlnni 4减少 ML NNI 轮次-noml直接关掉 ML不推荐正式文章过滤大量 gap 列、提前聚类去冗余序列usearchQ5怎么提高精度-pseudo大量碎片化序列很多 gap推荐-spr 4增加 ME 阶段 SPR 轮次-mlacc 2 -slownniML 搜索更彻底≈4 倍慢-fastest -no2nd超大数据集NJ 阶段更保守小幅提升精度Q6不同拓扑做 SH/AU 检验搭配-gamma -log输出位点似然用 CONSEL 包做拓扑检验。 固定拓扑只优化枝长FastTree -gamma -nt -gtr -nome -mllen -intree top1.newick -log top1.log aln.fasta top1.ftlen FastTree -gamma -nt -gtr -nome -mllen -intree top2.newick -log top2.log aln.fasta top2.ftlen perl GammaLogToPaup.pl top1.log top2.log top12.txt makermt --paup top12.txt consel top12 catpv top12.pv⚠️ 坑不要漏写 log 文件名否则会覆盖比对文件Q7树根有生物学意义吗❌ FastTree 输出无根树根位置是程序随便放的。 校正外类群重根 / 中点根超大树可以用自带 reroot.pl。Q8是否可复现单线程确定可复现跨平台浮点误差很小似然几乎一致FastTreeMP非确定性线程调度影响 NJ 启发树会轻微变化质量不变SH 支持值有随机种子每次运行会浮动Q9-intree -nome -mllen拓扑变了如果比对里有完全相同序列输入树里这些相同序列放在不同位置FastTree 内部会合并输出树会统一放到同一个位置拓扑改变无告警。Q10全基因组超宽比对内存爆炸FastTree 擅长序列多、比对短不擅长比对长度极大。支持值计算内存8 * 1000 * L bytes百万位点就要 8GB方案 1-nosupport关闭支持值方案 2-boot 100减少重采样次数方案 3JC 模型、-noml降低内存宽比对支持值本身参考意义有限重组会破坏系统发育假设。适合你的常用命令汇总Gypsy/Copia RT 蛋白树# LG模型推荐和IQ-TREE一致 FastTree -lg -gamma -log tree.log Gypsy_rt.aln Gypsy_rt.newick # 关闭支持值极速跑海量TE FastTree -lg -nosupport Gypsy_rt.aln Gypsy_rt.newick # 五万条以上超大TE数据集 FastTree -lg -fastest Gypsy_rt.aln Gypsy_rt.newick参考文献Price, M.N., Dehal, P.S., and Arkin, A.P. (2009) FastTree: Computing Large Minimum-Evolution Trees with Profiles instead of a Distance Matrix.Molecular Biology and Evolution26:1641-1650, doi:10.1093/molbev/msp077.Price, M.N., Dehal, P.S., and Arkin, A.P. (2010) FastTree 2 -- Approximately Maximum-Likelihood Trees for Large Alignments.PLoS ONE, 5(3):e9490. doi:10.1371/journal.pone.0009490.

相关推荐

中小企业做AI,难在哪、容易在哪?
中小企业做AI,难在哪、容易在哪?

先讲一个钢铁行业的故事。 1969年,纽柯(Nucor)在美国南卡罗来纳建起自己的第一座电弧炉小钢厂:用废钢炼钢,从钢筋这类低端产品做起,再往上做棒材和板材。 克里斯坦森在1997年的《创新者的窘境》里用小型钢厂… · 2026/11/4 7:20:34

Ubuntu 基础配置 (WSL2)和操作命令
Ubuntu 基础配置 (WSL2)和操作命令

Ubuntu 基础配置 (WSL2) 在 WSL Ubuntu 环境中,进行一些基础配置可以提升使用体验和开发效率。 1. 系统更新 这是你在任何 Linux 发行版上都应该做的第一件事,确保你的系统拥有最新的软件包和安全补丁。 sudo apt update # 更新软件包列表 sudo apt upgrade -y … · 2026/11/4 7:20:34

设计加工一体服务商到底该怎么挑?别被榜单带偏了
设计加工一体服务商到底该怎么挑?别被榜单带偏了

ODM 不是“照图代工”,它的价值在替你想清楚产品再落地。 对有代工需求的企业,八千里工业设计公司的价值在协同:OEM/ODM 从首板一路跟到批量,外观、结构、手板、模具、量产不用你一家家去拼。链条在一手里,改一版图不用… · 2026/11/4 7:20:34

商品状态机设计:解决电商库存、价格、上下架一致性问题
商品状态机设计:解决电商库存、价格、上下架一致性问题

简介:本资源是一个基于ASP.NET开发的网络商品销售管理系统源码包,面向Web开发初学者与.NET技术实践者,聚焦商品维护、订单处理与库存管理等核心电商功能实现。压缩包共55个文件,含15个DLL动态库(封装业务逻辑&#xff… · 2026/11/4 7:58:39

轻量级电商后台:SPU/SKU分离+商品状态机+SKU矩阵生成
轻量级电商后台:SPU/SKU分离+商品状态机+SKU矩阵生成

简介:这是一套基于ASP.NET开发的网络商品销售管理系统源码,面向初学者与Web开发学习者,聚焦商品维护、订单处理与库存管理等核心电商功能实现。资源共55个文件,包含15个DLL动态库(封装业务逻辑)、13个C#源文… · 2026/11/4 7:58:39

金融风控与工业物联网中的可解释异常检测技术
金融风控与工业物联网中的可解释异常检测技术

1. 项目背景与核心挑战 在金融风控和工业物联网领域,我们经常遇到一个棘手问题:算法检测出了异常,但没人能说清楚为什么。三周前某证券公司的系统警报触发了37次,风控团队却花了整整两天才确认其中只有5次是真实威胁——这种低效排… · 2026/11/4 7:58:39

Windows进程管理神器Process Explorer深度解析与应用
Windows进程管理神器Process Explorer深度解析与应用

1. 进程管理器 Process Explorer 深度解析作为一名在Windows系统管理领域摸爬滚打多年的老鸟,Process Explorer绝对是我工具箱里使用频率最高的神器之一。这款由微软Sysinternals团队开发的免费工具,可以说是任务管理器的"Pro Max"版本——它不… · 2026/11/4 7:58:39

51单片机RFID门禁系统:MFRC522+EEPROM工业级实现
51单片机RFID门禁系统:MFRC522+EEPROM工业级实现

简介:本资源为基于51单片机的RFID系统完整开发包,面向嵌入式初学者、电子设计爱好者及物联网入门开发者,解决RFID模块与经典8051架构微控制器协同工作的软硬件实现难题。压缩包含RFID模块驱动代码(适配MFRC522等主流芯片&#xff… · 2026/11/4 7:58:39

全球网络延迟模拟框架设计与实践
全球网络延迟模拟框架设计与实践

1. 为什么需要全球网络延迟模拟框架 在全球化应用部署的今天,我们的服务可能同时运行在东京、法兰克福和圣保罗的服务器上。但物理距离带来的网络延迟问题,往往要到用户投诉时才会被发现。去年我们团队就遇到过这样的情况:一个在欧洲内部测试… · 2026/11/4 7:57:39

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38

AI辅助技术栈评估:提升研发决策效率60%
AI辅助技术栈评估:提升研发决策效率60%

1. 项目背景与核心价值技术决策一直是研发团队面临的重大挑战。随着技术生态的快速演进,技术栈的选择、维护和迭代变得愈发复杂。我们团队在过去两年里,先后经历了三次重大技术栈迁移,每次都需要投入大量人力进行技术评估和风险分析。直到去年… · 2026/11/4 0:00:17

从生成Token到直接决策:Jev如何重塑AI Agent工程实践
从生成Token到直接决策:Jev如何重塑AI Agent工程实践

1. 从"生成文字"到"拍板决策":Jev 到底在解决什么问题大多数人第一次接触大模型,脑子里建立的模型是"输入问题、输出文字"。你问它今天天气怎么样,它给你一段描述;你让它写个周报,它给你… · 2026/11/4 0:00:17

32G统一内存跑大模型:内存账、TPS实测与端云分流
32G统一内存跑大模型:内存账、TPS实测与端云分流

想在一台 32G 统一内存的小主机上把大模型跑成"日常可用",这件事我前后折腾了小半年。标题里说的这台 Mac mini M6,是我们这次讨论的目标平台,具体到手规格以实物为准;但下面这套推算方法和实测思路,对任何统… · 2026/11/4 0:00:17

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码