转座子分类软件deepTE简介
前言
基因组转座子(TE)注释过程中,对于RepeatModeler这种denovo注释的得到的转座子往往不能进行分类,因此对TE的统计经常存在unknow重复序列过多的情况,之前已经发表了TEclass,REPCLASS和PASTEC等,TEclass基于支持向量机(SVM)分类TE,REPCLASS基于TE结构及同源的特征分类TE,PASTEC基于隐马尔科夫模型(HMM)来分类TE。2020年在Bioinformatics上发表了一款新的软件,基于卷积神经网络(CNN)的重复序列分类软件DeepTE[1],这里我们对其使用方法及效果进行了一系列测评。
软件安装
软件地址https://github.com/LiLabAtVT/DeepTE,推荐使用conda安装,安装过程如下
conda create -n py36 python=3.6
conda activate py36
conda install tensorflow-gpu=1.14.0
conda install biopython
conda install keras=2.2.4
conda install numpy=1.16.0
此外,该软件还依赖HMMER(v3.1b1),以及不同物种分类的模型,可以从以下网站下载,下载的文件放在model_dir目录下,作为参数-m_dir的输入
Plants:https://de.cyverse.org/dl/d/89D2FE7A-41BA-4F64-80E2-B9C26D49E99F/Plants_model.tar.gz
Metazoans:https://de.cyverse.org/dl/d/441459EF-6DDD-41A5-A9AB-1D5D13049F18/Metazoans_model.tar.gz
Fungi:https://de.cyverse.org/dl/d/8B112733-063A-4DE9-89EC-22A062D8807B/Fungi_model.tar.gz
Others:https://de.cyverse.org/dl/d/34CF8ACB-0B1F-4210-8359-366A70539F01/Others_model.tar.gz
UNS models:https://de.cyverse.org/dl/d/3280369B-030A-4ADF-8B6F-EDD4EC21DC4A/UNS_model.tar.gz
参数解析
该软件主要包括2个脚本:DeepTE.py和DeepTE_domain.py,DeepTE.py为主脚本,进行TE分类,DeepTE_domain.py主要对序列进行TE保守结构域的鉴定。
DeepTE.py基本参数如下:
-i :输入的unknow重复序列
-d:工作目录,生成中间结果
-o :输出目录
-m:模型的名称,提供该参数直接下载模型,P:植物,M:动物,F:真菌,O:其他,U:UNS_model则会自行下载
-m_dir :下载的model_dir路径(上述下载的物种文件的存放目录),包括植物,动物,真菌,其他和UNS_model(直接提供-m P、M、F、O、U则会自行下载 )
-sp:序列来源的物种分类:P:植物, M:动物,F:真菌, O:其他 ,U:未知
-fam:提供TE家族名称(如果是已知的家族可以提供),如果不提供则认为是unknown TEs
ClassI: 输入序列为ClassI TEs
ClassII: 输入序列为ClassII subclass1 TEs
LTR: 输入序列为LTR TEs
nLTR:输入序列为 nLTR TEs
LINE:输入序列为LINE TEs
SINE: 输入序列为 SINE TEs
Domain: 输入序列为 Class II subclass1 TEs 特异的超家族
-modify:可选参数,该参数需要DeepTE_domain.py进行domain分析后提供 .
-UNS:提供该参数时-i为DNA序列,可以将输入的DNA序列分为TEs, CDS和基因间区。使用该参数不需要提供-sp和-fam(目前该参数只适用于植物)
-prop_thr:注释TE的可能性阈值,例如某个TE为ClassI的可能性为0.6,如果阈值设置为0.7,则该TE为被标记为'unknown',默认值为 0.6.
DeepTE_domain.py的参数包含-d、-o、-i参数的含义与DeepTE.py相同,这里不多做解释。
-s :提供的TE家族的domain信息,软件提供该目录:supfile_dir
--hmmscan :hmmscan的路径
应用实例
从Repbase随机选取拟南芥的重复序列作为输入序列,进行测试。使用DeepTE_domain.py对保守domain进行鉴定,命令行如下:
DeepTE_domain.py -d working_dir -o output_dir -i Arabidopsis.repeat.fasta -s supfile_dir --hmmscan hmmer-3.1b1/bin/hmmscan
生成结果:
output_dir/opt_te_domain_pattern.txt,该文件分为2列,第一列为序列名称,第二列为鉴定到保守domain信息。该结果可以作为DeepTE.py的输入文件。
使用DeepTE.py借助上一步的保守domain信息分类TE,命令行如下:
DeepTE.py -o TE_claasify_out -d working_dir -i Arabidopsis.repeat.fasta -m_dir model_dir/Plants_model -sp P -modify output_dir/opt_te_domain_pattern.txt
注:-modify提供的为DeepTE_domain.py生成的结果,如不提供该参数,则不借助domain鉴定的信息。
生成结果:
TE_claasify_out/opt_DeepTE.fasta和TE_claasify_out/opt_DeepTE.txt
TE_claasify_out/opt_DeepTE.txt:第一类为序列名称,第二列为序列分类信息,(ATENSPM4#DNA/CMC-EnSpm ClassII_DNA_CACTA_nMITE)
TE_claasify_out/opt_DeepTE.fasta:为分类后的序列,原始的序列名称和类别用"__"分隔(ATENSPM4#DNA/CMC-EnSpm__ClassII_DNA_CACTA_nMITE)
结语
TE类型众多,分类问题一直以来都是一个难题。测试数据选取的已知类型的TE,从deepTE的分类结果来看,某些序列分类准确性较高,上图中红框部分为已知类型和deepTE分类类型一致的序列,deepTE利用了Repbase的TE作为了训练集,因此分类的准确性比较高。如果采用denovo注释到的TE,可以结合软件的结果和deepTE的分类结果以得到更准确的结果。
参考文献:
Yan, H., A. Bombarely, and S. Li, DeepTE: a computational method for de novo classification of transposons with convolutional neural network. Bioinformatics, 2020. 36(15): p. 4269-4275.
作者:May
审稿:童蒙
编辑:amethyst
往期精选
Motif可视化——从PFM矩阵到sequence logo