使用MAKER进行基因注释(高级篇之SNAP模型训练)

简介: 训练 ab initio 基因预测工具(以SNAP为例)对于一个新的物种而言,你大概率是没有一个高质量的基因模型去进行基因预测。但是我们可以利用EST序列(少部分物种估计有)、二代测序数据、同源物种蛋白序列,先直接用Maker做基因注释,尽管得到的模型可能不是特别的完美,但可以作为输入反复迭代运行Maker,从而提高最终的表现。

训练 ab initio 基因预测工具(以SNAP为例)

对于一个新的物种而言,你大概率是没有一个高质量的基因模型去进行基因预测。但是我们可以利用EST序列(少部分物种估计有)、二代测序数据、同源物种蛋白序列,先直接用Maker做基因注释,尽管得到的模型可能不是特别的完美,但可以作为输入反复迭代运行Maker,从而提高最终的表现。

这次使用的是下载的练习数据集(见附录)

cd ~/maker_tutorial/example_02_abinitio

同样,让我们先构建配置文件,并修改如下配置

maker -CTL
vim maker_opts.ctl
# modify the following line
genome=pyu_contig.fasta
est=pyu_est.fasta
protein=sp_protein.fasta
est2genome=1
protein2genome=1

这里的"est2genome"和"protein2genome"表示直接从EST序列和同源但序列中推测基因结构,当然这肯定不靠谱。不过没有关系,我们的目标是将其作为输入用于训练而已。

运行预测程序,大约需要20分钟

~/opt/biosoft/maker/bin/maker &> maker.log &

那么下一步就是收集所有的GFF文件,整理成SNAP所需的ZFF格式

mkdir snap
cd snap
~/opt/biosoft/maker/bin/gff3_merge -d ../pyu_contig1.maker.output/pyu_contig1_master_datastore_index.log
~/opt/biosoft/maker/bin/maker2zff pyu_contig1.all.gff

于是我们就会在snap文件下得到"genome.ann"和"genome.dna". 在这两个文件的基础上,我们就可以参考SNAP的文档开始训练

可以先用fathom genome.ann genome.dna -gene-stats了解基因的一些信息,比如说这里的测试数据集就有153个基因,几乎平均的分布在正负链上。

1 sequences
0.525725 avg GC fraction (min=0.525725 max=0.525725)
153 genes (plus=79 minus=74)
5 (0.032680) single-exon
148 (0.967320) multi-exon
130.782104 mean exon (min=3 max=704)
87.851593 mean intron (min=61 max=384)

此外还可以用fathom genome.ann genome.dna -validate检查下是否有明显的错误,这里的153个基因有106个warning,警告类型粗略看了一眼基本都是CDS不完整。

后续就可以开始参数预测。步骤是,先用fathom -genome.ann genome.dna -categorize 1000将序列分类,这里的1000表示基因两侧会额外有1000bp的序列。该参数推荐使用基因一半的长度,如果基因比较稠密则要调低。这一步会生成如下文件:

  • alt.ann, alt.dna (genes with alternative splicing)
  • err.ann, err.dna (genes that have errors)
  • olp.ann, olp.dna (genes that overlap other genes)
  • wrn.ann, wrn.dna (genes with warnings)
  • uni.ann, uni.dna (single gene per sequence)

这里只用第四类的基因,也就是每个序列上只有一个基因。用fathom uni.ann uni.dna -export 1000 -plus只输出unigene中正链基因,这一步同样会生成四个文件

  • export.aa 每个基因的蛋白序列
  • export.ann 正链的基因结构
  • export.dna 正链的DNA
  • export.tx 每个基因的转录本

接着让forge负责预测参数, 由于输出会很多,所以建议创建个文件夹

mkdir params
cd params
forge ../export.ann ../export.dna
cd ..

最后是hmm-assembler.pl构建HMM,即基因模型文件, hmm-assembler pyu params > pyu1.hmm

完成SNAP的模型构建后,修改"maker_opts.ctl"用以增加该文件,并不再用est和protein直接推测基因结构。

snaphmm=pyu1.hmm
est2genome=0
protein2genome=0

再一次运行maker

~/opt/biosoft/maker/bin/maker &> maker.log &

这次结果会比上一次有很明显的提升,你可以重复上面的代码从而进一步提高SNAP的模型。

目录
相关文章
|
2月前
|
人工智能 算法 数据可视化
AI Earth ——开发者模式案例6:决策树模型实现冬小麦提取
AI Earth ——开发者模式案例6:决策树模型实现冬小麦提取
36 2
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
满足不同下游任务特征需求!Sea AI Lab 提出多粒度自监督学习框架Mugs,刷新多项SOTA(2)
满足不同下游任务特征需求!Sea AI Lab 提出多粒度自监督学习框架Mugs,刷新多项SOTA
153 0
|
2月前
|
机器学习/深度学习 编解码 人工智能
SAM-Med | 英伟达基于SAM提出医学图像标注效率神器
SAM-Med | 英伟达基于SAM提出医学图像标注效率神器
120 0
|
3月前
|
机器学习/深度学习 PyTorch 算法框架/工具
Coggle 30 Days of ML 打卡任务三:苹果病害模型训练与预测
Coggle 30 Days of ML 打卡任务三:苹果病害模型训练与预测
|
3月前
|
机器学习/深度学习 自然语言处理 算法
Coggle 30 Days of ML(23年7月)任务三:使用TFIDF提取文本特征
Coggle 30 Days of ML(23年7月)任务三:使用TFIDF提取文本特征
|
8月前
|
自然语言处理 运维 机器人
GPT学术优化 (GPT Academic):支持一键润色、一键中英互译、一键代码解释、chat分析报告生成、PDF论文全文翻译功能、互联网信息聚合+GPT等等
GPT学术优化 (GPT Academic):支持一键润色、一键中英互译、一键代码解释、chat分析报告生成、PDF论文全文翻译功能、互联网信息聚合+GPT等等
|
5月前
|
机器学习/深度学习 自然语言处理 安全
【网安AIGC专题10.11】论文1:生成式模型GPT\CodeX填充式模型CodeT5\INCODER+大模型自动程序修复(生成整个修复函数、修复代码填充、单行代码生产、生成的修复代码排序和过滤)
【网安AIGC专题10.11】论文1:生成式模型GPT\CodeX填充式模型CodeT5\INCODER+大模型自动程序修复(生成整个修复函数、修复代码填充、单行代码生产、生成的修复代码排序和过滤)
96 0
|
8月前
|
数据可视化 数据挖掘 Go
RNA-seq丨转录组分析标准流程与常用工具
RNA-seq丨转录组分析标准流程与常用工具
|
11月前
|
人工智能 自然语言处理
OpenAI文本生成3D模型再升级,数秒完成建模,比Point·E更好用
OpenAI文本生成3D模型再升级,数秒完成建模,比Point·E更好用
163 0
|
11月前
|
存储 负载均衡 计算机视觉
【训练Trick】让你在一张卡上训练1000万个id人脸数据集成为可能(附开源代码和论文链接)
【训练Trick】让你在一张卡上训练1000万个id人脸数据集成为可能(附开源代码和论文链接)
79 0

热门文章

最新文章