使用MAKER進行註釋: 學習MAKER的配置參數

MAKER配置文件詳解

本文翻譯自http://weatherby.genetics.utah.edu/MAKER/wiki/index.php/The_MAKER_control_files_explained

MAKER會生成三個配置文件,如下

  • maker_opts.ctl: 控制MAKER分析行爲的主要配置文件
  • maker_bopts.ctl: BLAST和Exnerate的過濾閾值
  • maker_exe.ctl: MAKER運行過程中所依賴軟件的路徑

這裏主要介紹maker_opts.ctl, 其餘配置文件直接看配置文件裏面的註釋信息即可。

基因組

用於設置被註釋的基因組序列的位置和物種類型,包括genomeorganisam_type兩項

  • genome: FASTA序列路徑
  • organism_type: eukaryotic,prokaryotic二選一

需要注意的是,基因組序列的N50需要超過預期基因長度的中位數,否則註釋效果不好。另外最好保證基因組序列只包括A,T,C,G,N, 對於其他類型兼併鹼基可以都改成N.

使用MAKER得到GFF3進行重註釋

這一項基本上我們用不上,它是在當你把MAKER的中間輸出文件都刪除了,僅保留了輸出的GFF3文件時,你可以用之前相同的輸入設置重新運行流程得到相同的輸出。

#-----Re-annotation Using MAKER Derived GFF3
maker_gff= #MAKER derived GFF3 file
est_pass=0 #use ESTs in maker_gff: 1 = yes, 0 = no
altest_pass=0 #use alternate organism ESTs in maker_gff: 1 = yes, 0 = no
protein_pass=0 #use protein alignments in maker_gff: 1 = yes, 0 = no
rm_pass=0 #use repeats in maker_gff: 1 = yes, 0 = no
model_pass=0 #use gene models in maker_gff: 1 = yes, 0 = no
pred_pass=0 #use ab-initio predictions in maker_gff: 1 = yes, 0 = no
other_pass=0 #passthrough anyything else in maker_gff: 1 = yes, 0 = no

EST/轉錄本證據

出於歷史原因, MAKER還是用EST代表了之前的EST數據和目前的轉錄組數據。 此處不只是使用EST數據,而是可以使用組裝的mRNA-seq, 組裝的全長cDNA。 我們預期他們能夠正確的組裝,並聯配到正確的剪切位點(對於FASTA格式,MAKER使用exonerate找到剪切位點)。用途如下:

  • 直接推斷基因模型(est2genome)
  • 作爲預測結果的支持證據
  • 修改結果和增加UTR
  • 鑑定可變轉錄本
  • 在某些情況下,這些數據和其他證據能幫助MAKER推斷基因邊界
  • 在預測步驟中輔助基因預測工具推斷剪切位點

設置項如下:

  • est: EST, 全長cDNA, 組裝的mRNA序列,可以通過逗號分隔多個文件。
  • altest: 如果真的沒有當前物種的轉錄組數據,也可以使用同源物種的序列。這些序列會通過tblstx進行比對,會消耗大量的運算時間。
  • est_gff: 預比對的轉錄本,以GFF3格式存放,通常來自於CuffLinks/StringTie的組裝結果,或者是上一步的MAKER註釋
  • altest_gff: 和altest一樣,只不過是比對後以GFF3存放,基本上也用不到

同源蛋白證據

和之前的轉錄組數據類似,用途如下

  • 直接推斷基因模型(protein2genome), 僅在它們能夠正確的聯配到剪切位點附件。
  • 作爲預測結果的支持證據(MAKER會檢查CDS,保證基因預測結果和蛋白聯配是相同的閱讀框)
  • 某些情況下,用於推斷基因邊界
  • 在預測步驟中,使用從蛋白推斷的ORF輔助從頭預測軟件

建議使用 uniprot/swiss-prot 或 RefSeq上的NP數據,因爲經過人工審查,可信度較高。不建議是用UniProt/tremble或者Genbank上的數據,這些數據的可信度較低。你可以挑選幾個同源物種的高可信度蛋白。或者使用MAKER註釋的其他物種AED小於0.5的轉錄本產物。

由於許多註釋裏包含一些死亡轉座子(dead transposons)或僞基因(pseudogenes),因此不建議使用臨近物種的所有註釋蛋白。我們想象一個比較糟糕的情況,如果你有鄰近物種的死亡轉座子,當你構建你的重複序列屏蔽文庫時,你發現其中一個條目和該序列匹配。 於是你假設這是一個真實的基因,於是你從屏蔽文庫中刪除了該條目。吸納子啊,當你註釋基因組的時候,該基因變成了註釋集中的一整個基因組家族,但這其實是糟糕的證據和重複序列屏蔽所導致的後果。

需要設置的就兩項:

  • protein: 以FASTA存放的蛋白序列位置
  • protein_gff: 以GFF3格式記錄的蛋白序列預先比對結果,通常來自於之前MAKER輸出

重複序列重複屏蔽

我們可以通過屏蔽重複序列來避免EST和蛋白比對到重複區域,防止基因預測算法在這些區域預測外顯子。由於許多重複序列會編碼真實的蛋白(例如反轉座子等),基因預測工具和比對工具會被他們所迷惑(會在一個基因中錯誤的加上外顯子)

  • model_org: 默認是all, 可以設置成RepeatMasker中RepBase數據庫的其中一個
  • rmlib: 自己構建的重複序列文庫
  • repeat_protein: 轉座因子的蛋白序列
  • rm_gff: 以GFF3格式記錄的重複序列位置信息
  • prok_rm: 不需要修改,因爲原核生物不需要考慮重複序列
  • softmask: 不需要修改

從頭基因預測

如果你需要從MAKER以外獲取基因模型,則需要在這一節添加相應的配置。根據可信度高低,MAKER會對這些基因模型採取不同的行爲。

  • 通過軟件預測的基因結構可信度低,它們不會影響證據簇(evidence cluster). MAKER會保留預測結果,或者根據EST證據調整外顯子,如果有證據支持,那麼他們會保留在最終的註釋集中。如果有多個註釋結果,MAKER會對其進行比較,從中挑選出最優結果。

  • model_gff提供的基因模型的可信度最高,會影響證據簇。在一些基因邊界判定中,MAKER在證據簇的影響下,更傾向於保留之前的基因模型而非替換。它們也會保留名字。MAKER不會修改模型,要麼刪除要麼保留。最後,即便沒有證據支持,MAKER還是會保留他們,而不會刪除他們,只不過最終的AED會設置爲1.

  • snaphmm: SNAP的HMM文件路徑,允許多個輸入,以逗號分隔

  • gmhmm: GeneMark的HMM文件文件路徑,允許多個輸入,以逗號分隔

  • augustus_species: Augustus的基因模型命名, 不容易訓練,但是效果很好

  • fgenesh_par_file: FGENESH的HMM參數文件,收費工具,基本上用不到

  • pred_gff: 其他預測工具的輸出結果,以GFF3格式保存

  • model_gff: 最高可信度的GFF輸入

  • run_evm=0: 是否讓MAKER運行EVM,速度會變慢

  • est2genome: 讓MAKER根據EST推測基因模型

  • protein2genome: 讓MAKER根據蛋白序列推測基因模型

  • trna: 使用tRNAscan分析tRNA #find tRNAs with tRNAscan, 1 = yes, 0 = no

  • snoscan_rrna: Snoscan分析snoRNA所需的rRNA文件= #rRNA file to have Snoscan find snoRNAs

  • snoscan_meth:Snoscan分析snoRNA所需的O-methylation site 文件

  • unmask: 是否在屏蔽序列中進行基因預測,默認是0

  • allow_overlap: 允許的基因重疊比例,從0到1,空白表示使用默認值

其他類型的註釋

這一項功能很簡單,就是提供一個GFF文件,在MAKER運行結束後增加里面的信息

  • other_gff: 其他類型註釋的GFF文件路徑

外部程序選項

這裏的兩個參數用於影響外部程序,即BLAST的行爲

  • alt_peptide: 對於非標準氨基酸的替換方法,默認是C(cysteine)
  • cpus: BLAST的線程數,如果使用MPI,該值可以設置的小一些,默認是1.

MAKER行爲選項

這裏的選項用於調整MAKER的行爲,使其符合你的基因組特性

  • mad_dna_len至少要3倍於預期的最大內含子長度。在內存足夠的情況下,對於脊椎動物可以考慮設置爲300000,植物一般沒有那麼大的內含子
  • min_contig: 低於該值的contig會被過濾掉,建議設置爲10k.
  • pred_flank: 在基因預測時,將證據簇在兩端進行擴展,默認是200 bp. 對於比較緊湊的基因組,降低該值能夠避免基因錯誤合併。對於比較稀疏的基因組,提高該值可以避免外顯子缺失。
  • pred_stats: 默認是0,只計算MAKER預測基因的AED和QI值,設置爲1則計算所有從頭預測的基因結構。
  • AED_threashold: 根據AED(0-1)值來過濾輸出的基因,默認是1,表示保留所有預測結果。
  • min_protein: 一些時候,基因預測工具會生成許多短預測結果,而由於一些證據類型(例如mRNA-seq)存在噪音,導致這些預測結果看起來有證據支持,於是保留在最終的輸出結果中(AED>1). 通過限制預測蛋白的氨基酸數(amino acides, AA),可以減少預測結果。
  • alt_splice: 是否計算可變轉錄本
  • always_complete: 這個是MAKER開發者在合作者的要求下加上的參數,用來確保基因模型始終有起始密碼子和終止密碼子,默認是0
  • map_forward: 用於保留老版本的GFF文件的信息,映射到新的版本GFF中。
  • keep_preds: 設置爲1時表示保留所有的預測結果,默認是0.
  • split_hit: 新版本的MAKER(>2.28)不需要考慮該項。因爲之前版本拆分後的contig是互不重疊,於是就有可能有外顯子被剛好被拆成兩端,設置該項可以保留該信息。
  • single_exon: 如果一個EST只有只有單個外顯子,默認情況下MAKER並不會把它當做支持基因模型的證據, 除非還有同源蛋白作爲支持。單外顯子EST和組裝的mRNA-seq轉錄本通常是RNA製備過程中的基因組序列污染。關閉時會降低MAKER的敏感度(sensitivity), 但是當你打開它的時候,命中的特異性會比整體的準確度(accuracy)差得多。
  • single_length: 在啓用single_exon時,設置該項用於保留一些比較小的序列,但即便註釋了也可能不是有功能的蛋白。
  • correct_est_fusion用來避免因爲UTR的重疊導致將基因模型的錯誤合併,在真菌基因組中比較常見。它會檢查基因模型的5' UTR長度是否超過基因長度的一半,如果是的話,那麼MAKER會在起始密碼位置打斷基因,然後在5'UTR區重新預測基因。
  • tries: 嘗試次數,默認是2
  • clean_try: 重新嘗試時,是否刪除之前的文件,默認是0,也就是不刪除。建議設置爲1
  • clean_up: 刪除分析過程中的文件,默認不刪除
  • TMP: 臨時文件的目錄,默認存放在/tmp下,建議設置一個容量比較大的目錄
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章