作者:May
審稿:童蒙
編輯:amethyst
前言
基因組轉(zhuǎn)座子(TE)注釋過程中,對于RepeatModeler這種denovo注釋的得到的轉(zhuǎn)座子往往不能進(jìn)行分類,因此對TE的統(tǒng)計經(jīng)常存在unknow重復(fù)序列過多的情況,之前已經(jīng)發(fā)表了TEclass曙聂,REPCLASS和PASTEC等嘁酿,TEclass基于支持向量機(jī)(SVM)分類TE,REPCLASS基于TE結(jié)構(gòu)及同源的特征分類TE,PASTEC基于隱馬爾科夫模型(HMM)來分類TE榜聂。2020年在Bioinformatics上發(fā)表了一款新的軟件,基于卷積神經(jīng)網(wǎng)絡(luò)(CNN)的重復(fù)序列分類軟件DeepTE[1]嗓蘑,這里我們對其使用方法及效果進(jìn)行了一系列測評须肆。
軟件安裝
軟件地址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),以及不同物種分類的模型泄隔,可以從以下網(wǎng)站下載拒贱,下載的文件放在model_dir目錄下,作為參數(shù)-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
參數(shù)解析
該軟件主要包括2個腳本:DeepTE.py和DeepTE_domain.py佛嬉,DeepTE.py為主腳本逻澳,進(jìn)行TE分類,DeepTE_domain.py主要對序列進(jìn)行TE保守結(jié)構(gòu)域的鑒定暖呕。
DeepTE.py基本參數(shù)如下:
-i :輸入的unknow重復(fù)序列
-d:工作目錄斜做,生成中間結(jié)果
-o :輸出目錄
-m:模型的名稱,提供該參數(shù)直接下載模型湾揽,P:植物瓤逼,M:動物笼吟,F(xiàn):真菌,O:其他霸旗,U:UNS_model則會自行下載
-m_dir :下載的model_dir路徑(上述下載的物種文件的存放目錄)贷帮,包括植物,動物诱告,真菌撵枢,其他和UNS_model(直接提供-m P、M蔬啡、F诲侮、O、U則會自行下載 )
-sp:序列來源的物種分類:P:植物箱蟆, M:動物沟绪,F(xiàn):真菌, O:其他 空猜,U:未知
-fam:提供TE家族名稱(如果是已知的家族可以提供)绽慈,如果不提供則認(rèn)為是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:可選參數(shù),該參數(shù)需要DeepTE_domain.py進(jìn)行domain分析后提供 .
-UNS:提供該參數(shù)時-i為DNA序列辈毯,可以將輸入的DNA序列分為TEs, CDS和基因間區(qū)坝疼。使用該參數(shù)不需要提供-sp和-fam(目前該參數(shù)只適用于植物)
-prop_thr:注釋TE的可能性閾值,例如某個TE為ClassI的可能性為0.6谆沃,如果閾值設(shè)置為0.7,則該TE為被標(biāo)記為'unknown'钝凶,默認(rèn)值為 0.6.
DeepTE_domain.py的參數(shù)包含-d、-o唁影、-i參數(shù)的含義與DeepTE.py相同耕陷,這里不多做解釋。
-s :提供的TE家族的domain信息据沈,軟件提供該目錄:supfile_dir
--hmmscan :hmmscan的路徑
應(yīng)用實例
從Repbase隨機(jī)選取擬南芥的重復(fù)序列作為輸入序列哟沫,進(jìn)行測試。使用DeepTE_domain.py對保守domain進(jìn)行鑒定锌介,命令行如下:
DeepTE_domain.py -d working_dir -o output_dir -i Arabidopsis.repeat.fasta -s supfile_dir --hmmscan hmmer-3.1b1/bin/hmmscan
生成結(jié)果:
- output_dir/opt_te_domain_pattern.txt嗜诀,該文件分為2列,第一列為序列名稱孔祸,第二列為鑒定到保守domain信息隆敢。該結(jié)果可以作為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生成的結(jié)果筑公,如不提供該參數(shù),則不借助domain鑒定的信息尊浪。
生成結(jié)果:
- 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)
結(jié)語
TE類型眾多,分類問題一直以來都是一個難題炼鞠。測試數(shù)據(jù)選取的已知類型的TE鹅士,從deepTE的分類結(jié)果來看券躁,某些序列分類準(zhǔn)確性較高,上圖中紅框部分為已知類型和deepTE分類類型一致的序列掉盅,deepTE利用了Repbase的TE作為了訓(xùn)練集也拜,因此分類的準(zhǔn)確性比較高。如果采用denovo注釋到的TE趾痘,可以結(jié)合軟件的結(jié)果和deepTE的分類結(jié)果以得到更準(zhǔn)確的結(jié)果慢哈。
參考文獻(xiàn)
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.