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

GlimmerHMM安装与使用-生信工具24

GlimmerHMM

01 概述

GlimmerHMM是一种基于广义隐马尔科夫模型(GHMM)的新型基因预测工具。虽然该基因预测工具符合GHMM的总体数学框架,但它还结合了从GeneSplicer程序中改编的剪接位点模型。可变长度的特征状态(例如外显子、内含子、基因间区域)是使用Nth-order插值马尔科夫模型(IMM)实现的,如Delcher等人1999年所描述的,N=8。目前,GlimmerHMM的GHMM结构包括每个相位的内含子、基因间区域和四种类型的外显子(起始外显子、内部外显子、终止外显子和单独外显子),如下图所示。

GlimmerHMM在预测DNA序列中的基因时使用了一些假设。主要假设如下:

1. 每个基因的编码区以起始密码子ATG开始(但可以预测部分基因),
2. 除了最后一个密码子,基因中没有在读框内的终止密码子,
3. 每个外显子与前一个外显子保持一致的读码框。

这些约束显著提高了计算最优基因模型的效率,因为它们限制了GHMM算法的搜索空间。另一方面,系统无法检测到真正的移码。

02 下载与安装
wget -c https://ccb.jhu.edu/software/glimmerhmm/dl/GlimmerHMM-3.0.4.tar.gz
tar -zxvf GlimmerHMM-3.0.4.tar.gzhttps://ccb.jhu.edu/software/glimmerhmm/man.shtml   #官网及操作手册
03 训练特定生物的GlimmerHMM
3.1 需要特定生物的训练

我们早期实现的基因预测工具GlimmerM在为水稻训练时,明显比为拟南芥训练时产生的基因模型更优(Pertea和Salzberg 2002)。这对于GlimmerHMM也是有效的。虽然当前的GlimmerHMM训练应该对密切相关的生物体效果良好,但用户应该使用我们的训练程序重新训练系统以适应其他真核生物,以提高基因预测的准确性。对于GlimmerHMM已经训练的所有物种,我们期望随着这些物种DNA序列数量的增加,通过重新训练系统,性能会进一步提高。 

3.2 数据收集

首先,需要注意的是,彻底收集一个良好的训练数据集是训练任何基因预测工具之前的一个步骤。这一步非常重要,因为用于训练的数据质量与最终基因预测工具的准确性成正比。作为任何特定物种的基因预测工具,GlimmerHMM需要一个包含尽可能多的该物种基因组完整编码序列的训练数据集。通过调查公共数据库,可以找到所有有实验室证据支持的目标生物体的已知基因。如果这些基因数量足够多,它们将构成一个良好的训练数据集。不幸的是,这种情况很少见,所以需要使用其他方法来构建可靠的数据集。根据我们的经验,训练数据集通常是通过使用BLAST等程序将长ORF(超过500个碱基)与非冗余蛋白质序列数据库进行比对,以便将已知蛋白质映射到基因组中来构建的。 

3.3 训练GlimmerHMM

要训练GlimmerM,应运行以下命令: 

trainGlimmerHMM <mfasta_file> <exon_file> [optional_parameters]`<mfasta_file>`和`<exon_file>`分别是包含已知基因外显子坐标的多FASTA文件和文件。`<mfasta_file>`是一个包含训练序列的多FASTA文件,格式如下:>seq1
AGTCGTCGCTAGCTAGCTAGCATCGAGTCTTTTCGATCGAGGACTAGACTT
CTAGCTAGCTAGCATAGCATACGAGCATATCGGTCATGAGACTGATTGGGC
>seq2
TTTAGCTAGCTAGCATAGCATACGAGCATATCGGTAGACTGATTGGGTTTA
TGCGTTA

`<exon_file>`是一个包含外显子坐标的文件,坐标相对于`<mfasta_file>`中包含的序列;不同的基因用空行分隔;格式如下:


seq1 5 15
seq1 20 34seq1 50 48
seq1 45 36seq2 17 20

在此示例中,`seq1`有两个基因:一个在正链上,另一个在互补链上。这里可以找到fasta和外显子文件的真实示例。

如果没有足够的数据用于训练剪接位点,训练过程将失败并退出,并显示警告信息。在这种情况下,用户应该收集更多具有内含子的已知基因,然后再次尝试训练过程。如果没有足够的数据用于训练基因的翻译起始和终止位点,用户需要收集更多基因。默认情况下,假定至少有50个带有标准起始密码子(ATG)和终止密码子(TAA/TAG/TGA)的基因。

训练程序可以接受的可选参数包括:

-i i1,i2,...,inisochores to be considered for training (e.g. if two isochores are desired with 0-40% GC content and 40-100% then the option should be: -i 0,40,100; default is set to -i 0,100 )
-f valval = average value of upstream UTR region if known
-l valval = average value of downstream UTR region if known  
-n valval = average value of intergenic region if known
-v valval = value of flanking region to be considered around genes (default=200)
-b valval = build 1st or 2nd order markov model for the splice sites (default=1)
- `-i i1,i2,...,in`:用于训练的等温区(例如,如果希望两个等温区的GC含量为0-40%和40-100%,则选项应为:`-i 0,40,100`; 默认设置为`-i 0,100`)- `-f val`:`val` = 如果已知,则为上游UTR区域的平均值- `-l val`:`val` = 如果已知,则为下游UTR区域的平均值- `-n val`:`val` = 如果已知,则为基因间区的平均值- `-v val`:`val` = 考虑在基因周围的侧翼区域值(默认=200)- `-b val`:`val` = 构建1阶或2阶马尔科夫模型用于剪接位点(默认=1)
3.4 修改训练期间获得的参数

这一步是可选的,但许多情况下,手动调整系统参数可以提高预测的准确性。这部分是因为某些生物体的系统训练所需参数可能未知(例如基因间区的平均大小),所以可能需要尝试不同的参数值。我们注意到,类似于Majoros和Salzberg 2004中描述的梯度上升程序,在参数空间中搜索,通常可以优化训练的准确性。

选择适当的阈值来确定特定位点检测的假阴性-假阳性比率可能是一个挑战性问题,因为真实位点数量较少,而假阳性数量却非常多。这需要一系列决策,以最大限度地提高识别任务的准确性,而不显著损失灵敏度。在GlimmerHMM的训练过程中,通过检查假阳性率的权衡来选择调用序列为真实剪接位点的阈值。系统创建一个排序的阈值列表,调整评分函数,以便错过1, 2, 3个等真实位点。默认阈值选择为假阳性率下降不到1%的得分。为了在设置信号阈值时提供更大的灵活性,我们的训练程序允许用户查阅特定于训练数据的假阳性和假阴性率,并设置自己的阈值。

运行trainGlimmerHMM后,可以查看日志文件以找到GlimmerHMM的一些参数的默认值。训练目录中的config.file文件为每个等温区指定使用的配置文件。对于默认情况,当没有考虑等温区时,只有一行信息:

C+G <= 100 train_0_100.cfg

所有参数的更改都可以在train_0_100.cfg文件中完成。每个参数在.cfg文件的一行中描述。以下表格中描述了可以更改的参数:

line in the .cfg fileDescription
acceptor_threshold valueacceptor site threshold value; the false negative/false positive rates for different acceptor thresholds can be consulted from the false.acc file.
donor_threshold valuedonor site threshold value; the false negative/false positive rates for different donor thresholds can be consulted from the false.don file.
ATG_threshold valuestart codon threshold value; the false negative/false positive rates for different start codon thresholds can be consulted from the false.atg file.
Stop_threshold valuestop codon threshold value; the false negative/false positive rates for different stop codon thresholds can be consulted from the false.stop file.
split_penalty valuea factor penalizing the gene finder's tendency to split genes.
intergenic_val valuethe minimum intergenic distance espected between genes.
intergenic_penalty valuea penalty factor for genes situated closer than the intergenic_val value.
MeanIntergen valuethe average size of intergenic regions.
BoostExon valuea factor to increase the sensitivity of exon prediction.
BoostSplice valuea factor to increase the score of good scoring splice sites.
BoostSgl valuea factor to increase the predicted number of single exon genes.
onlytga valueset this value to 1 if TGA is the only stop codon in the genome.
onlytaa valueset this value to 1 if TAA is the only stop codons in the genome.
onlytag valueset this value to 1 if TAG is the only stop codons in the genome.
- `acceptor_threshold value`:- 受体位点阈值;不同受体阈值的假阴性/假阳性率可以在`false.acc`文件中查阅。- `donor_threshold value`:- 供体位点阈值;不同供体阈值的假阴性/假阳性率可以在`false.don`文件中查阅。- `ATG_threshold value`:- 起始密码子阈值;不同起始密码子阈值的假阴性/假阳性率可以在`false.atg`文件中查阅。- `Stop_threshold value`:- 终止密码子阈值;不同终止密码子阈值的假阴性/假阳性率可以在`false.stop`文件中查阅。- `split_penalty value`:- 惩罚基因预测工具倾向于拆分基因的一个因子。- `intergenic_val value`:- 基因之间预期的最小基因间距。- `intergenic_penalty value`:- 基因间距小于`intergenic_val`值时的惩罚因子。- `MeanIntergen value`:- 基因间区的平均大小。- `BoostExon value`:- 增加外显子预测灵敏度的因子。- `BoostSplice value`:- 增加高评分剪接位点分数的因子。- `BoostSgl value`:- 增加预测单外显子基因数量的因子。- `onlytga value`:- 如果TGA是基因组中唯一的终止密码子,则将此值设置为1。- `onlytaa value`:- 如果TAA是基因组中唯一的终止密码子,则将此值设置为1。- `onlytag value`:- 如果TAG是基因组中唯一的终止密码子,则将此值设置为1。
04 运行 GlimmerHMM

程序GlimmerHMM需要两个输入:一个FASTA格式的DNA序列文件和一个包含程序训练文件的目录。如果未指定训练目录,默认情况下使用当前工作目录。目前,该程序没有实现任何选项。

05 参考文献

Delcher, A.L., Harmon, D., Kasif, S., White,O. and Salzberg, S.L. Improved microbial gene identification with GLIMMER Nucleic Acids Research, 27:23 (1999), 4636-4641.

Majoros, W.H., Pertea, M., and Salzberg, S.L. TigrScan and GlimmerHMM: two open-source ab initio eukaryotic gene-finders Bioinformatics 20 2878-2879.

Majoros,W.M. and Salzberg, S.L. (2004) An empirical analysis of training protocols for probabilistic gene finders. BMC Bioinformatics 5:206.

Pertea, M., X. Lin, et al. (2001). "GeneSplicer: a new computational method for splice site prediction." Nucleic Acids Res 29(5): 1185-90.

Pertea, M. and S. L. Salzberg (2002). "Computational gene finding in plants." Plant Molecular Biology 48(1-2): 39-48.

Pertea, M., S. L. Salzberg, et al. (2000). "Finding genes in Plasmodium falciparum." Nature 404(6773): 34; discussion 34-5.

Salzberg, S. L., M. Pertea, et al. (1999). "Interpolated Markov models for eukaryotic gene finding." Genomics 59(1): 24-31.

Yuan, Q., J. Quackenbush, et al. (2001). "Rice bioinformatics. analysis of rice sequence data and leveraging the data to other plant species." Plant Physiol 125(3): 1166-74.

相关文章:

GlimmerHMM安装与使用-生信工具24

GlimmerHMM 01 概述 GlimmerHMM是一种基于广义隐马尔科夫模型&#xff08;GHMM&#xff09;的新型基因预测工具。虽然该基因预测工具符合GHMM的总体数学框架&#xff0c;但它还结合了从GeneSplicer程序中改编的剪接位点模型。可变长度的特征状态&#xff08;例如外显子、内含…...

Elasticsearch架构基本原理

Elasticsearch的架构原理可以详细分为以下几个方面进行介绍&#xff1a; 一、Elasticsearch基本概念 Elasticsearch&#xff08;简称ES&#xff09;是一个基于Lucene构建的开源、分布式、RESTful搜索和分析引擎。它支持全文搜索、结构化搜索、半结构化搜索、数据分析、地理位…...

STM32自己从零开始实操08:电机电路原理图

一、LC滤波电路 其实以下的滤波都可以叫低通滤波器。 1.1倒 “L” 型 LC 滤波电路 1.1.1定性分析 1.1.2仿真实验 电感&#xff1a;通低频阻高频的。仿真中高频信号通过电感&#xff0c;因为电感会阻止电流发生变化&#xff0c;故说阻止高频信号 电容&#xff1a;隔直通交。…...

无线物联网练习题

文章目录 选择填空简答大题 选择 不属于物联网感知技术的是(A) A:ZigBee B:红外传感器 C:FRID D:传感器 ZigBee是一种无线通信技术&#xff0c;虽然它常用于物联网中作为设备之间的通信手段&#xff0c;但它本身并不是一种感知技术 关于物联网于与互联网的区别的描述&#xff…...

Java的日期类常用方法

Java_Date 第一代日期类 获取当前时间 Date date new Date(); System.out.printf("当前时间" date); 格式化时间信息 SimpleDateFormat simpleDateFormat new SimpleDateFormat("yyyy-mm-dd hh:mm:ss E); System.out.printf("格式化后时间" si…...

数据库设计规范详解

一、为什么需要数据库设计 1、我们在设计数据表的时候&#xff0c;要考虑很多问题。比如: (1) 用户都需要什么数据?需要在数据表中保存哪些数据? (2) 如何保证数据表中数据的 正确性&#xff0c;当插入、删除、更新的时候该进行怎样的 约束检査 ?. (3) 如何降低数据表的 数据…...

Android12 MultiMedia框架之MediaExtractorService

上节学到setDataSource()时会创建各种Source&#xff0c;source用来读取音视频源文件&#xff0c;读取到之后需要demux出音、视频、字幕数据流&#xff0c;然后再送去解码。那么负责进行demux功能的media extractor模块是在什么时候阶段创建的&#xff1f;这里暂时不考虑APP创建…...

Chapter 8 Feedback

Chapter 8 Feedback 这一章我们介绍feedback 反馈运放的原理. 负反馈是模拟电路强有力的工具. 8.1 General Considerations 反馈系统如下图所示 Aolamp open-loop gain即开环增益. Aolxo/xi β \beta β 是 feedback factor, 注意方向. β x f x o \beta\frac{x_{f}}{x_{o…...

Administrators就最高了???system是什么??本地用户提权内网学习第三天 你知道uac是什么??

我们今天来说说本地用户提权的操作&#xff0c;我们在有webshell过后我们要进行进一步的提权操作&#xff0c;要不然对我们后期的内网渗透会有一些阻碍的操作。比如说我们使用mimikatz来进行抓取密码&#xff0c;就不能够成功。 Administrators与system的区别 我们来说说Admin…...

回溯 | Java | LeetCode 39, 40, 131 做题总结(未完)

Java Arrays.sort(数组) //排序 不讲究顺序的解答&#xff0c;都可以考虑一下排序是否可行。 39. 组合总和 错误解答 在写的时候需要注意&#xff0c;sum - candidates[i];很重要&#xff0c;也是回溯的一部分。 解答重复了。是因为回溯的for循环理解错了。 class Solutio…...

Linux系统上部署Whisper。

Whisper是一个开源的自动语音识别&#xff08;ASR&#xff09;模型&#xff0c;最初由OpenAI发布。要在本地Linux系统上部署Whisper&#xff0c;你可以按照以下步骤进行&#xff1a; 1. 创建虚拟环境 为了避免依赖冲突&#xff0c;建议在虚拟环境中进行部署。创建并激活一个新…...

申请一张含100个域名的证书-免费SSL证书

挑战一下&#xff0c;申请一张包含100个域名的证书 首先&#xff0c;我们访问来此加密网站&#xff0c;进入登录页面&#xff0c;输入我的账号密码。 登录后&#xff0c;咱们就可以开始申请证书&#xff0c;首先说一下&#xff0c;咱账号是SVIP哦&#xff0c;只有SVIP才可以申…...

爬数据是什么意思?

爬数据的意思是&#xff1a;通过网络爬虫程序来获取需要的网站上的内容信息&#xff0c;比如文字、视频、图片等数据。网络爬虫&#xff08;网页蜘蛛&#xff09;是一种按照一定的规则&#xff0c;自动的抓取万维网信息的程序或者脚本。 学习一些爬数据的知识有什么用呢&#x…...

Pytorch实战(二)

文章目录 前言一、LeNet5原理1.1LeNet5网络结构1.2LeNet网络参数1.3LeNet5网络总结 二、AlexNext2.1AlexNet网络结构2.2AlexNet网络参数2.3Dropout操作2.4PCA图像增强2.5LRN正则化2.6AlexNet总结 三、LeNet实战3.1LeNet5模型搭建3.2可视化数据3.3加载训练、验证数据集3.4模型训…...

wordpress 付费主题modown分享,可实现资源付费

该主题下载地址 下载地址 简介 Modown是基于Erphpdown 会员下载插件开发的付费下载资源、付费下载源码、收费附件下载、付费阅读查看隐藏内容、团购下载的WordPress主题&#xff0c;一款针对收费付费下载资源/付费查看内容/付费阅读/付费视频/VIP会员免费下载查看/虚拟资源售…...

【INTEL(ALTERA)】NIOS II调试器中的重新启动按钮不起作用

目录 说明 解决方法 说明 在 Nios II SBT 调试Eclipse时&#xff0c;如果单击 重新启动 图标&#xff0c; 执行被暂停&#xff0c; 以下错误消息&#xff1a; Dont know how to run. Try "help target." 解决方法 终止程序&#xff0c;再次下载&#xff0c;并启…...

Hive On Spark语法

内层对象定义之特殊数据类型 Array DROP TABLE IF EXISTS test_table_datatype_array; CREATE TABLE test_table_datatype_array (ids array<INT> ) LOCATION test/test_table_datatype_array;SELECTnames,names[1]array(names[2],names[3])names[5],names[-1],array_c…...

利用 fail2ban 保护 SSH 服务器

利用 fail2ban 保护 SSH 服务器 一、关于 fail2ban1. 基本功能与特性2. 工作原理 二、安装与配置1. Debian/Ubuntu系统&#xff1a;2. CentOS/RHEL系统&#xff1a; 三、保护 SSH四、启动 fail2ban 服务五、测试和验证六、查看封禁的 IP 地址七、一些配置八、注意事项 作者&…...

在TkinterGUI界面显示WIFI网络摄像头(ESP32s3)视频画面

本实验结合了之前写过的两篇文章Python调用摄像头&#xff0c;实时显示视频在Tkinter界面以及ESP32 S3搭载OV2640摄像头释放热点&#xff08;AP&#xff09;工作模式–Arduino程序&#xff0c;当然如果手头有其他可以获得网络摄像头的URL即用于访问摄像头视频流的网络地址&…...

Yolov8训练时遇到报错SyntaxError: ‘image_weights‘ is not a valid YOLO argument.等问题解决方案

报错说明 line 308, in check_dict_alignmentraise SyntaxError(string CLI_HELP_MSG) from e SyntaxError: image_weights is not a valid YOLO argument. v5loader is not a valid YOLO argument. fl_gamma is not a valid YOLO argument. 解决方法 将训练文件中model.tr…...

国防科技大学计算机基础课程笔记02信息编码

1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制&#xff0c;因此这个了16进制的数据既可以翻译成为这个机器码&#xff0c;也可以翻译成为这个国标码&#xff0c;所以这个时候很容易会出现这个歧义的情况&#xff1b; 因此&#xff0c;我们的这个国…...

springboot 百货中心供应链管理系统小程序

一、前言 随着我国经济迅速发展&#xff0c;人们对手机的需求越来越大&#xff0c;各种手机软件也都在被广泛应用&#xff0c;但是对于手机进行数据信息管理&#xff0c;对于手机的各种软件也是备受用户的喜爱&#xff0c;百货中心供应链管理系统被用户普遍使用&#xff0c;为方…...

智慧医疗能源事业线深度画像分析(上)

引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

python/java环境配置

环境变量放一起 python&#xff1a; 1.首先下载Python Python下载地址&#xff1a;Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个&#xff0c;然后自定义&#xff0c;全选 可以把前4个选上 3.环境配置 1&#xff09;搜高级系统设置 2…...

线程同步:确保多线程程序的安全与高效!

全文目录&#xff1a; 开篇语前序前言第一部分&#xff1a;线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分&#xff1a;synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分&#xff…...

Python爬虫实战:研究feedparser库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...

定时器任务——若依源码分析

分析util包下面的工具类schedule utils&#xff1a; ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类&#xff0c;封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz&#xff0c;先构建任务的 JobD…...

TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案

一、TRS收益互换的本质与业务逻辑 &#xff08;一&#xff09;概念解析 TRS&#xff08;Total Return Swap&#xff09;收益互换是一种金融衍生工具&#xff0c;指交易双方约定在未来一定期限内&#xff0c;基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...

Psychopy音频的使用

Psychopy音频的使用 本文主要解决以下问题&#xff1a; 指定音频引擎与设备&#xff1b;播放音频文件 本文所使用的环境&#xff1a; Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

Device Mapper 机制

Device Mapper 机制详解 Device Mapper&#xff08;简称 DM&#xff09;是 Linux 内核中的一套通用块设备映射框架&#xff0c;为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程&#xff0c;并配以详细的…...