EVidenceModeler v2.1 安装与使用--生信工具58
EVidenceModeler (EVM) 流程做基因组注释
01 背景
EVidenceModeler(简称 EVM)软件将 从头基因预测、蛋白比对 和 转录本比对 整合为加权的共识基因结构。EVM 提供了一个灵活且直观的框架,用于将多种证据类型整合成一个自动化的基因结构注释系统。
EVM 的输入包括基因组序列、GFF3 格式的基因预测和比对数据,以及用于为每种证据类型应用的数值权重列表。权重可以手动配置。
理想情况下,输入应包括:
-
至少三个不同的从头预测工具,例如:GlimmerHMM、SNAP、Augustus、GeneMarkHMM 和 FGeneSH。
-
基于 RNA-seq 的转录本结构(例如来自 PASA 的比对组装)。
-
蛋白质剪接比对(例如,使用相关蛋白数据库运行 miniprot)。
02 获取与安装 EVM
可以通过 Docker 或 Singularity 镜像来运行 EVM,这是最简单的方式,不需要额外的软件安装。
如果不使用镜像,EVM 也可以从 GitHub 的 EVM Release 页面下载。
下载软件后,在其永久存放位置解压(例如:/usr/local/bin
),该位置以下会被称为 $EVM_HOME
。
在软件的基础目录下运行 make
命令,编译包含的 ParaFly 插件,以支持并行命令执行。
为了充分利用高质量的转录本比对结果,建议下载并安装 PASA —— 更多关于 PASA 的使用信息见下文。
推荐使用 conda 安装:
conda search evidencemodeler conda install evidencemodeler
安装完成后,EVM 的 Perl 脚本会存放在:
anaconda3/envs/EVM/opt/evidencemodeler-2.1.0/EvmUtils/
EVM 本质上是一个 整合多来源证据(蛋白、转录组、从头预测)的基因注释工具。
数据来源:Arabidopsis 染色体级组装论文
使用数据:C24.chr.all.v2.0.fasta 的 1 号染色体
03 EVM 输入文件
运行核心命令:
~/anaconda3/envs/EVM/opt/evidencemodeler-2.1.0/EvmUtils/evidence_modeler.pl \ --genome ../../repeat/chr1.fa.masked \ --weights weights.txt \ --gene_predictions evm_abinitio.gff3 \ --protein_alignments evm_pro.gff3 \ --transcript_alignments transcripts.fasta.transdecoder.genome.gff3 \ > evm.out
所需输入包括:
-
基因组序列:
chr1.fa.masked
-
需提前进行重复序列屏蔽。
-
-
权重文件 weights.txt(示例):
PROTEIN genomeThreader 4 TRANSCRIPT transdecoder 8 ABINITIO_PREDICTION Augustus 1 ABINITIO_PREDICTION GeneMark.hmm 1
ab initio 预测结果:
evm_abinitio.gff3
-
来自 Augustus 和 GeneMark,可通过 BRAKER2 生成,再转换为 EVM 格式。
-
-
同源蛋白比对结果:
evm_pro.gff3
-
使用 genomeThreader (gth),比对同源蛋白序列。
-
-
转录组证据:
transcripts.fasta.transdecoder.genome.gff3
-
由 Hisat2 + StringTie + TransDecoder 流程获得。
-
04 输入文件生成步骤
4.1 重复序列屏蔽
RepeatMasker -species Arabidopsis -pa 12 -xsmall -dir repeat chr1.fa
若为非模式物种,需要先构建重复序列库。
4.2 基于同源蛋白的注释
# 比对同源蛋白
~/anaconda3/envs/braker2/bin/gth \ -gff3out -intermediate -duplicatecheck seq \ -protein proteins.fa \ -translationtable 1 \ -genomic chr1.fa.masked \ -o homo_protein.gff3 -force
# 转换为 EVM 格式
~/anaconda3/envs/EVM/opt/evidencemodeler-2.1.0/EvmUtils/misc/genomeThreader_to_evm_gff3.pl \ homo_protein.gff3 > evm_pro.gff3
4.3 基于转录组数据
# 比对 hisat2-build ../repeat/chr1.fa.masked chr1 -p 8 hisat2 -p 8 --dta -x chr1 \ -1 SRR4420296_R1.fastq.gz -2 SRR4420296_R2.fastq.gz \ -S SRR4420296.sam# 转换并拼接 samtools sort -@ 8 -O bam -o SRR4420296.bam SRR4420296.sam stringtie -p 12 -o SRR4420296.gtf SRR4420296.bam# 转换为 cDNA 与 GFF3 gtf_genome_to_cdna_fasta.pl SRR4420296.gtf ../repeat/chr1.fa.masked > transcripts.fasta gtf_to_alignment_gff3.pl SRR4420296.gtf > transcripts.gff3# ORF 预测 TransDecoder.LongOrfs -t transcripts.fasta TransDecoder.Predict -t transcripts.fasta# 转换到基因组坐标 cdna_alignment_orf_to_genome_orf.pl \ transcripts.fasta.transdecoder.gff3 transcripts.gff3 transcripts.fasta \ > transcripts.fasta.transdecoder.genome.gff3
4.4 从头预测(Ab initio)
braker.pl --cores 48 --species=At01 \ --genome=../repeat/chr1.fa.masked \ --softmasking \ --bam=SRR4420296.bam \ --gff3 \ --prot_seq=../proteins.fa --prg=gth
结果包含:
-
augustus.hints.gtf
-
GeneMark-ET/genemark.gtf
需格式转换:
~/anaconda3/envs/EVM/opt/evidencemodeler-2.1.0/EvmUtils/misc/augustus_GTF_to_EVM_GFF3.pl \ augustus.hints.gtf > evm_augustus.gff3
~/anaconda3/envs/EVM/opt/evidencemodeler-2.1.0/EvmUtils/misc/GeneMarkHMM_GTF_to_EVM_GFF3.pl \ GeneMark-ET/genemark.gtf > evm_genemark.gff3
# 合并 cat evm_augustus.gff3 evm_genemark.gff3 > evm_abinitio.gff3
05 整合注释
有了上述文件,即可运行 EVM 主流程,整合多种证据,得到最终的注释结果:
~/anaconda3/envs/EVM/opt/evidencemodeler-2.1.0/EvmUtils/evidence_modeler.pl \ --genome ../../repeat/chr1.fa.masked \ --weights weights.txt \ --gene_predictions evm_abinitio.gff3 \ --protein_alignments evm_pro.gff3 \ --transcript_alignments transcripts.fasta.transdecoder.genome.gff3 \ > evm.out
$EVM_HOME/EVidenceModeler \--sample_id mySampleID \--genome genome.fasta \--gene_predictions gene_predictions.gff3 \--protein_alignments protein_alignments.gff3 \--transcript_alignments transcript_alignments.gff3 \--segmentSize 100000 \--overlapSize 10000
06 引用
-
The EVM paper: Haas et al. Automated eukaryotic gene structure annotation using EVidenceModeler and the Program to Assemble Spliced Alignments. Genome Biology 2008, 9:R7doi:10.1186/gb-2008-9-1-r7.
-
Using EVM along with PASA for genome annotation: Approaches to Fungal Genome Annotation, Mycology. 2011 Oct 3; 2(3): 118–141
- GINGER: an integrated method for high-accuracy prediction of gene structure in higher eukaryotes at the gene and exon level Takeaki Taniguchi, Miki Okuno, Takahiro Shinoda, Fumiya Kobayashi, Kazuki Takahashi, Hideaki Yuasa, Yuta Nakamura, Hiroyuki Tanaka, Rei Kajitani, Takehiko Itoh
EVM 是一个 整合多种证据的注释框架,依赖于 重复序列处理、同源蛋白比对、转录组拼接与预测、从头基因预测 等多个步骤。关键在于 格式转换与权重设置,最终通过 evidence_modeler.pl
融合证据生成可靠的基因组注释。