当前位置: 首页 > news >正文

生信教程|替代模型选择

摘要

由于教程时间比较久远,因此不建议实操,仅阅读以了解学习。

在运行基于可能性的系统发育分析之前,用户需要决定模型中应包含哪些自由参数:是否应该为所有替换假设单一速率(如序列进化的 Jukes-Cantor 模型)或者是否应该允许不同的转换率和颠换率(如 HKY 模型)。或者是否应该对所有替换使用不同的比率(如 GTR 模型)四种核苷酸的频率(“状态频率”)是否应该被估计或假设为全部相等?自由模型参数的最佳数量取决于可用数据,并且可以根据 Akaike 信息准则(AIC)等标准进行选择,该准则旨在在模型拟合的改进与模型拟合所需的附加参数数量之间取得平衡。

本教程[1]中,我将介绍如何使用软件 PAUP* (Swofford 2003) 选择系统发育分析的替代模型,PAUP* 是一种用于各种类型系统发育分析的流行多功能工具。

数据集

本教程中使用的数据是教程多序列比对中为 16s 和 RAG1 序列生成的比对的过滤版本。由于 PAUP* 需要 Nexus 格式的对齐作为输入,因此请使用文件 16s_filtered.nex 和 rag1_filtered.nex。

PAUP*

该软件最初开发于 20 世纪 80 年代末,是最古老的系统发育分析程序之一,尽管它已经存在了很长时间,但其作者 Dave Swofford 从未发布过最终版本。尽管在基于可能性的系统发育推断方面,PAUP* 在速度方面早已被其他程序超越,但它对于它包含的各种其他功能仍然很重要。不久前,PAUP* 只能以 100 美元左右的价格从 Sinauer Associates 购买。自 2015 年起,Dave Swofford 在他的新 PAUP* 网站上免费分发 PAUP* 4.0 的更新版本作为试用版。这些试用版会在几个月后过期,因此如果您将来还想使用 PAUP,则可能需要重新下载。这种情况可能只是暂时的,因为 PAUP 5 的开发正在进行中,该产品将至少部分进行商业分发。

虽然本教程中的描述假设您已安装适用于 Mac OS X 或 Windows 的 PAUP* 图形用户界面 (GUI) 版本,但也可以安装 PAUP* 的命令行版本,这在 Linux 上是必需的或 Mac OS X Catalina 或更新版本,因为这些系统当前不存在 GUI。如果您使用命令行版本,您可能需要查找等效命令;启动 PAUP* 后,始终可以通过 PAUP* 的帮助屏幕来完成此操作,只需键入“?”即可显示该帮助屏幕。并按 Enter 键。下面的屏幕截图显示了 PAUP* 命令行版本的帮助屏幕。

alt

模型选择和系统发育推断

基于替换模型与序列数据的拟合程度的比较已在多种工具中实现,并且最常使用程序 jModelTest 进行。但由于最近在 PAUP* 中实现了自动选择替代模型,并且该存储库中的其他教程无论如何都需要安装 PAUP,因此我在这里使用 PAUP 而不是 jModelTest 来进行模型选择。实际上,两个程序之间的模型选择非常相似。

  • 单击 PAUP* 的“文件”菜单中的“打开...”。确保在打开的窗口底部选择“执行”作为初始模式,如下一个屏幕截图所示。选择 Nexus 格式的 16s 序列对齐文件 (16s_filtered.nex),然后单击“打开”。 PAUP* 将给出其对该文件的解释的简短报告,包括在比对中发现的物种(分类单元)和字符的数量。
alt
  • “自动模型选择”选项可以在 PAUP* 的“分析”菜单中找到。但是,当您单击它时,您会看到为了运行此模型选择,需要系统发育。虽然这可能看起来可能会导致循环推理(选择替代模型是最大似然系统发育分析所必需的,但也取决于系统发育),但这在实践中不是问题,因为模型选择的结果并不强烈依赖于正确的系统发育;因此,任何合理的系统发育都会导致相似的模型选择结果。因此,最好的解决方案是使用 Neighbor-Joining 算法运行快速系统发育分析,该算法也可以在 PAUP* 中方便地实现。
alt
  • 要从邻接系统发育分析的可用设置中进行选择,请单击 PAUP* 的“分析”菜单中的“邻接/UPGMA...”,如下面的屏幕截图所示。
alt
  • 在新打开的弹出窗口中,保留所有默认选项并单击“确定”(PAUP* 命令行版本中的等效命令只是 NJ;)。
  • 再次单击“分析”菜单中的“自动模型选择...”。使用邻接生成的树将已被选择用于模型选择,弹出窗口现在将为您提供用于此模型选择的多个选项。模型选择的可用标准称为“AIC”、“AICc”、“BIC”和“DT”。这些与似然比检验类似,但优点是它们可用于比较非“嵌套”模型(如果其中一个模型具有其他模型的所有参数加上附加参数,则两个模型是嵌套的)。 “AIC”代表“Akaike信息准则”,“AICc”是“针对小样本量校正的Akaike信息准则”,“BIC”是“贝叶斯信息准则”,“DT”是“决策理论”标准。其中最常用的是 Akaike 信息准则。每个模型的 AIC 独立计算为 AIC = 2 k −2 log(L),其中 k 是模型中自由参数的数量,L 是所有自由参数优化后数据的可能性(即最大可能性)。通常,如果一个模型的 AIC 分数比另一个模型的 AIC 分数好(= 小)至少 4 分,则该模型被认为优于另一个模型。设置“AIC”旁边的勾号,但删除“AICc”、“BIC”和“DT”旁边的勾号。另请选择“应用选择模型的设置:”右侧的“AIC”。作为“模型集”,选择数字“3”。这意味着将测试具有相等替代率的模型(例如 Jukes-Cantor 模型)、具有单独的转换和颠换替代率的模型(例如 HKY 模型)以及具有六个独立替代率的模型(GTR 模型)。保留“等速率”和“gamma”旁边的勾号(允许站点间速率变化的伽玛分布),但删除“invar.sites”和“两者”的勾号。我建议这样做,因为不变位点比例(“+I”)和位点间速率变化(“+G”)的参数很混乱,因为对一组位点应用特别低的速率几乎具有相同的效果。考虑到这些站点的效果完全不变。保留“显示每个模型的输出”旁边的勾号,并设置“显示每个模型的参数估计”旁边的勾号。确保设置面板如下面的屏幕截图所示,然后单击“确定”。
alt
  • PAUP* 将在三个表中报告模型选择的输出。在第一个部分(在“评估树 1 的模型”下),您将看到已比较的 12 个模型的列表,如下所示(“JC”代表 Jukes-Cantor 模型)。
alt
  • 在同一个表的第 4 列和第 5 列中,您将看到 k,即模型中自由参数的数量。第 4 列列出了与最简单模型相比额外的自由参数的数量,第 5 列列出了自由参数的总数。第二个表列出了每个模型的参数估计值。每个型号的编号和名称后面有九列数字。最后,第三个表再次列出了模型,但这次是按 AIC 分数排名。
alt
  • 重复替换模型与 RAG1 序列比对 (rag1_filtered.nex) 的比较。

动动您发财的小手点个赞吧!

Reference

[1]

Source: https://github.com/mmatschiner/tutorials/blob/master/substitution_model_selection/README.md

本文由 mdnice 多平台发布

相关文章:

生信教程|替代模型选择

摘要 由于教程时间比较久远,因此不建议实操,仅阅读以了解学习。 在运行基于可能性的系统发育分析之前,用户需要决定模型中应包含哪些自由参数:是否应该为所有替换假设单一速率(如序列进化的 Jukes-Cantor 模型&#xf…...

redis持久化、主从和哨兵架构

一、redis持久化 1、RDB快照(snapshot) redis配置RDB存储模式,修改redis.conf文件如下配置: # 在300s内有100个或者以上的key被修改就会把redis中的数据持久化到dump.rdb文件中 # save 300 100# 配置数据存放目录(现…...

Python 连接 Oracle 详解

文章目录 1 首先,安装第三方库 cx_Oracle2 其次,配置命令 1 首先,安装第三方库 cx_Oracle 参考 CSDN 博客:Python 安装第三方库详解(含离线) 2 其次,配置命令 import cx_Oracle# 1.数据库连接…...

认识模块化

1. 模块化的基本概念 1.1 什么是模块化 模块化是指解决一个复杂问题时,自顶向下逐层把系统划分成若干模块的过程。对于整个系统来说,模块是可组 合、分解和更换的单元。 1. 现实生活中的模块化 2.编程领域中的模块化 编程领域中的模块化,…...

2023年及以后语言、视觉和生成模型的发展和展望

一、简述 在过去的十年里,研究人员都在追求类似的愿景——帮助人们更好地了解周围的世界,并帮助人们更好地了解周围的世界。把事情做完。我们希望建造功能更强大的机器,与人们合作完成各种各样的任务。各种任务。复杂的信息搜寻任务。创造性任务,例如创作音乐、绘制新图片或…...

OpenLdap +PhpLdapAdmin + Grafana docker-compose部署安装

目录 一、OpenLdap介绍 二、PhpLdapAdmin介绍 三、使用docker-compose进行安装 1. docker-compose.yml 2. grafana配置文件 3. provisioning 四、安装openldap、phpldapadmin、grafana 五、配置OpenLDAP 1. 登陆PhpLdapAdmin web管理 2. 需要注意的细节 内容介绍参考…...

Java | 排序内容大总结

不爱生姜不吃醋⭐️ 如果本文有什么错误的话欢迎在评论区中指正 与其明天开始,不如现在行动! 文章目录 🌴前言🌴算法整理🌴两个结论🌴总结 🌴前言 本文内容是关于选择排序、冒泡排序、插入排序…...

Go 语言入门指南:基础语法和常用特性解析

什么是Go语言? Go语言是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。它用批判吸收的眼光,融合C语言、Java等众家之长,将简洁、高效演绎得淋漓尽致。 Go语言语法与C相近,但功能上有&a…...

20.添加HTTP模块

添加一个简单的静态HTTP。 这里默认读者是熟悉http协议的。 来看看http请求Request的例子 客户端发送一个HTTP请求到服务器的请求消息,其包括:请求行、请求头部、空行、请求数据。 HTTP之响应消息Response 服务器接收并处理客户端发过来的请求后会返…...

Qemu 架构 硬件模拟器

Qemu 架构 硬件模拟器 Qemu 是纯软件实现的虚拟化模拟器, 几乎可以模拟任何硬件设备, 我们最熟悉的就是能够模拟一台能够独立运行操作系统的虚拟机, 虚拟机认为自己和硬件打交道, 但其实是和 Qemu 模拟出来的硬件打交道&#xff…...

通过starrocks jdbc外表查询sqlserver

1.sqlserver环境准备,使用docker环境,可以参考使用flink sqlserver cdc 同步数据到StarRocks_gongxiucheng的博客-CSDN博客 部署获得sqlserver环境; 2.获取starrocks环境,也可以通过docker部署,参考:使用…...

ArcGIS 10.5安装教程!

软件介绍: ArcGIS Desktop 10.5中文特别版是一款功能强大的GSI专业电子地图信息编辑和开发软件,ArcGIS Desktop 包括两种可实现制图和可视化的主要应用程序,即 ArcMap 和 ArcGIS Pro。ArcMap 是用于在 ArcGIS Desktop 中进行制图、编辑、分析…...

ConstraintLayout约束布局

1.进行复杂页面布局时&#xff0c;最外层的根布局不要用ConstraintLayout. 示例布局&#xff1a; <?xml version"1.0" encoding"utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android"http://schemas.android.co…...

通过pyinstaller将python项目打包成exe执行文件

目录 第一步&#xff1a;安装pyinstaller 第二步&#xff1a;获取一个ico图标&#xff08;也即是自己这个exe文件最后的图标&#xff09; 第三步&#xff1a;打包 第一步&#xff1a;安装pyinstaller pip install pyinstaller 第二步&#xff1a;获取一个ico图标&#xff…...

P1068 [NOIP2009 普及组] 分数线划定

题目描述 世博会志愿者的选拔工作正在 A 市如火如荼的进行。为了选拔最合适的人才&#xff0c;A 市对所有报名的选手进行了笔试&#xff0c;笔试分数达到面试分数线的选手方可进入面试。面试分数线根据计划录取人数的 150 % 150\% 150% 划定&#xff0c;即如果计划录取 m m …...

应用在汽车新风系统中消毒杀菌的UVC灯珠

在病毒、细菌的传播可以说是一个让人敏感而恐惧的事情。而对于车内较小的空间&#xff0c;乘坐人员流动性大&#xff0c;更容易残留细菌病毒。车内缺少通风&#xff0c;残留的污垢垃圾也会滋生细菌&#xff0c;加快细菌的繁殖。所以对于车内消毒就自然不容忽视。 那么问题又来…...

TOOLLLM: FACILITATING LARGE LANGUAGE MODELS TO MASTER 16000+ REAL-WORLD APIS

本文是LLM系列的文章之一&#xff0c;针对《TOOLLLM: FACILITATING LARGE LANGUAGE MODELS TO MASTER 16000 REAL-WORLD APIS》的翻译。 TOOLLLMs&#xff1a;让大模型掌握16000的真实世界APIs 摘要1 引言2 数据集构建3 实验4 相关工作5 结论 摘要 尽管开源大型语言模型&…...

【JavaSpring】spring接口-beanfactory和applicationcontext与事件解耦

beanfactory 1.applicationcontext的父接口 2.是Spring的核心容器 功能 表面只有getBean&#xff0c;但实现类默默发挥了巨大作用 1.管理所有bean 2.控制反转 3.基本的依赖注入 applicationcontext 功能 1.继承了MessageSource&#xff0c;有了处理国际化资源的能力 …...

《深入理解Java虚拟机》——Java内存区域与内存溢出异常

Java内存区域与内存溢出异常 运行时数据区域程序计数器Java虚拟机栈本地方法栈Java堆方法区运行时常量池直接内存 实例堆溢出栈溢出 运行时数据区域 根据《Java虚拟机规范的规定》&#xff0c;Java虚拟机所管理的内存将会包含已下架几个运行时数据区域。 程序计数器 在Java虚…...

公众号hanniman往期精选

目录 一、AI产品分析&#xff08;10篇&#xff09; 二、AI产品经理&#xff08;10篇&#xff09; 三、AI技术&#xff08;10篇&#xff09; 四、AI行业及个人成长&#xff08;10篇&#xff09; 一、AI产品分析 1、【重点】深度 | 关于AIGC商业化的13个非共识认知&#xff08;80…...

JavaScript 中的 ES|QL:利用 Apache Arrow 工具

作者&#xff1a;来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗&#xff1f;了解下一期 Elasticsearch Engineer 培训的时间吧&#xff01; Elasticsearch 拥有众多新功能&#xff0c;助你为自己…...

DAY 47

三、通道注意力 3.1 通道注意力的定义 # 新增&#xff1a;通道注意力模块&#xff08;SE模块&#xff09; class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...

系统设计 --- MongoDB亿级数据查询优化策略

系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log&#xff0c;共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题&#xff0c;不能使用ELK只能使用…...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...

【VLNs篇】07:NavRL—在动态环境中学习安全飞行

项目内容论文标题NavRL: 在动态环境中学习安全飞行 (NavRL: Learning Safe Flight in Dynamic Environments)核心问题解决无人机在包含静态和动态障碍物的复杂环境中进行安全、高效自主导航的挑战&#xff0c;克服传统方法和现有强化学习方法的局限性。核心算法基于近端策略优化…...

用递归算法解锁「子集」问题 —— LeetCode 78题解析

文章目录 一、题目介绍二、递归思路详解&#xff1a;从决策树开始理解三、解法一&#xff1a;二叉决策树 DFS四、解法二&#xff1a;组合式回溯写法&#xff08;推荐&#xff09;五、解法对比 递归算法是编程中一种非常强大且常见的思想&#xff0c;它能够优雅地解决很多复杂的…...

flow_controllers

关键点&#xff1a; 流控制器类型&#xff1a; 同步&#xff08;Sync&#xff09;&#xff1a;发布操作会阻塞&#xff0c;直到数据被确认发送。异步&#xff08;Async&#xff09;&#xff1a;发布操作非阻塞&#xff0c;数据发送由后台线程处理。纯同步&#xff08;PureSync…...

【大模型】RankRAG:基于大模型的上下文排序与检索增强生成的统一框架

文章目录 A 论文出处B 背景B.1 背景介绍B.2 问题提出B.3 创新点 C 模型结构C.1 指令微调阶段C.2 排名与生成的总和指令微调阶段C.3 RankRAG推理&#xff1a;检索-重排-生成 D 实验设计E 个人总结 A 论文出处 论文题目&#xff1a;RankRAG&#xff1a;Unifying Context Ranking…...

VSCode 使用CMake 构建 Qt 5 窗口程序

首先,目录结构如下图: 运行效果: cmake -B build cmake --build build 运行: windeployqt.exe F:\testQt5\build\Debug\app.exe main.cpp #include "mainwindow.h"#include <QAppli...

Heygem50系显卡合成的视频声音杂音模糊解决方案

如果你在使用50系显卡有杂音的情况&#xff0c;可能还是官方适配问题&#xff0c;可以使用以下方案进行解决&#xff1a; 方案一&#xff1a;剪映替换音色&#xff08;简单适合普通玩家&#xff09; 使用剪映换音色即可&#xff0c;口型还是对上的&#xff0c;没有剪映vip的&…...