简介
这是一款2017年发表在NAR上的注释LncRNA的工具,FEELnc: a tool for long non-coding RNA annotation and its application to the dog transcriptome,该软件基于随机森林二分类器来对LncRNA与mRNA进行分类预测
模块
FEELnc主要的工作模块分为3个,分别是:1. FEELnc_filter.pl;2. FEELnc_codpot.pl;3. FEELnc_classifier.pl;
我们接下来就简单介绍一下其工作原理和用法:
1. FEELnc_filter.pl
当我们做好转录本拼接以后
第一步(FEELnc_filter)包括过滤掉多余的,假阳性的转录本,或在某种意义上与参考注释的外显子重叠的转录本,尤其是Protein_coding外显子,因为它们很可能对应于新的mRNA亚型
# Usage:
FEELnc_filter.pl -i infile.gtf -a annotation_mRNA.gtf > candidate_lncRNA.gtf
#利用你新注释的GTF,与原来的mRNA的GTF注释做比较,得到候选LncRNA的GTF
#如果你不想删除与mRNA以外的其他转录本重叠的转录本(例如lincRNA,miRNA,假基因...),则强烈建议使用此选项。
FEELnc_filter.pl -i infile.gtf \
-a ref_annotation.GTF \
-b transcript_biotype=protein_coding \
> candidate_lncRNA.gtf
2. FEELnc_codpot.pl
这一步主要步骤(FEELnc_codpot)旨在计算CPS,即对候选的LncRNA的GTF文件中每个候选转录本计算编码潜力得分(CPS,在[0-1]之间)
这一步也是核心关键的一步,FEELnc_codpot对LncRNA和mRNA的特征提取如下:
首先如果我们有很好的LncRNA的GTF文件,我们就可以直接利用上一步经过过滤的 candidate_lncRNA.gtf 进行预测
FEELnc_codpot.pl -i candidate_lncRNA.gtf -a known_mRNA.gtf -l known_lncRNA.gtf
#其中
- known_mRNA.gtf (or .fa) : a set of known protein_coding transcripts
- known_lncRNA.gtf (or .fa): a set of known lncRNA transcripts
但如果你没有很好的mRNA和LncRNA的GTF文件,你可以采取下面两种方法进行:
- shuffle:定义LncRNA是protein-coding RNA衍生出来的 “碎屑” , 利用k-mers对一部分mRNA序列进行重新 “洗牌”,把这一部分定义为LncRNA序列
FEELnc_codpot.pl -i candidate_lncRNA.gtf -a known_mRNA.gtf -g ref_genome.FA --mode=shuffle
FEELnc_codpot.pl -i candidate_lncRNA.fa -a known_mRNA.fa --mode=shuffle
- intergenic:从目标基因组中提取随机序列对物种特异性非编码序列建模,该方法简单的提取随机序列信息,并把它作为LncRNA的特征序列
FEELnc_codpot.pl -i candidate_lncRNA.gtf -a known_mRNA.gtf -g ref_genome.FA --mode=intergenic
特征提取后,依靠随机森林的方式进行模型训练,计算Sensitivity和Specificity,并绘制ROC曲线:
那么Sensitivity和Specificity两条曲线交点即为LncRNA和protein coding RNA的临界值:
往左为LncRNA,往右为mRNA
其中,这个coding potential score (CPS)的计算方式可以参考这篇文章:传送门,
该软件计算CPS的方法与之类似
3. FEELnc_classifier.pl
最后一步是将新的LncRNA分类到近端RNA转录本的定位和转录方向,因为用mRNA(或其他ncRNA)对lncRNA进行分类可以帮助预测lncRNA的功能。这个近端表示的是某个LncRNA基因与某个protein coding基因线性距离最近
这是所有的分类:
对于所有新识别的lncRNA转录本,使用滑动窗口策略检查与参考注释中最接近的转录本之间是否可能重叠。 分类的第一级区分两种交互类型:
对于每个LncRNA交互,将在输出文件中识别出最佳的lncRNA:RNA_partner交互,并且第一列isBest中的值== 1(否则为0)。规则如下:
图示分类:
使用说明:
FEELnc_classifier.pl -i lncRNA.gtf -a ref_annotation.GTF > lncRNA_classes.txt
参考:
Github