美文网首页Linux与生物信息基因组组装组学
【基因组预测】braker2基因结构注释要点记录

【基因组预测】braker2基因结构注释要点记录

作者: 生物信息与育种 | 来源:发表于2021-05-24 21:27 被阅读0次

    记录下braker2的使用要点,以备忘记。

    流程使用

    braker2有很多流程,根据你的数据:组装的基因组、转录组、蛋白(同源,包括近缘或远缘)选择不同流程,官网有说明:
    https://github.com/Gaius-Augustus/BRAKER

    现在的动植物组装,大多数都含有以上三类数据吧,因此可选择如下流程,用公共数据库OrthoDB中的直系同源蛋白,根据自己的物种选择,有动物植物微生物等,如我选择植物就有300多万条序列。


    image.png

    作者指出,braker2并非证据越多越好,该流程还是不够稳定(尤其是对中小基因组)。

    整个流程你可以分步,即分别预测转录组和蛋白数据,得到hints,再使用braker进行最终整合和预测。或者只对转录组或者蛋白数据进行预测。比如我先用ProtHint单独对OrthoDB进行预测,这样处理是很快的,三百多万条序列3-4小时即可跑完。最后得到的是prothint_augustus.gff可用于后续输入文件。

    cat Rawdata/* >proteins.fasta
    /ProtHint-2.6.0/bin/prothint.py genome.fa proteins.fasta --workdir test --threads 40
    

    可参考:
    https://github.com/gatech-genemark/ProtHint/tree/master/example
    braker流程为:

    braker.pl --cores 48 --species=test_orthodb-2 \
             --genome=genome.softmasked.fa \
             --softmasking
             --bam=A.bam,B.bam \
             --hints=prothint_augustus.gff \
             --etpmode \
             --gff3
    

    作者建议用--softmasking 基因组

    也可以将所有数据放到脚本中,一步到位。速度也还可以,调用了spaln和diamond等(运行时如果没找到相关软件路径,需要你export PATH临时指定一下),如:

    export GENEMARK_PATH=/path/gmes_linux_64
    export PATH=/path/gmes_linux_64/ProtHint/bin:/path/GUSHR:$PATH
    
    braker.pl --cores 48 --species=test_orthodb-2 \
             --genome=genome.softmasked.fa \
             --softmasking
             --bam=A.bam,B.bam \
             --prot_seq=proteins.fa \
             --gff3
    

    建议还是看官网吧,我描述的比较片面

    另一个可能更实用的流程是:


    image.png

    可用genomeThreader预测近缘物种同源蛋白。速度会比较慢,不建议用exonerate,巨慢无比。

    braker.pl --cores 48 --species=homodb \
             --genome=genome.softmasked.fa \
             --softmasking
             --bam=A.bam,B.bam \
             --prot_seq=proteins.fa \
             --prg=gth \
             --gff3
    

    另外如果你想要预测UTR,braker得到的gtf/gff文件默认是没有这类信息的。则需要调用GUSHR,参数中添加--addUTR=on。最终得到的gushr.gtf即是包含了UTR的结果文件。

    问题

    braker还不是很成熟,运行过程中可能遇到各种问题。
    这是官网的一些建议:

    • 使用高质量基因组。组装很碎的基因组不仅耗时,还影响准确性
    • 染色体或scaffold名称不宜过长且不含%&!*(){})等特殊字符。
    • 使用软屏蔽基因组好于硬屏蔽基因组。
    • 检查物种是否具有进化分支特征。
    • 检查基因预测结果,如UCSC浏览器。

    我个人的一些记录:

    • 预测结果文件braker.gtf中,转录本和基因ID,前面可能会自动加上file_1_file_1_,如g4417.t1变为file_1_file_1_g4417.t1,导致生成的gff(或者你用其他软件,如augustus转换脚本gtf2gff.pl,实际上你在参数中指定--gff3,流程调用的也是agustus/gtf2gff.pl)转化得到的gff3文件中没有基因特征。所以,如果你用的结果是braker.gtf,含有这个问题,必须人为去掉。augustus.hints.*则是正常,目前没发现这个问题。

    https://www.biostars.org/p/9464353/

    • 第二个比较关心的问题是,braker流程出来一堆结果,我到底该用哪个?虽然官网有一些解释,但总有些不能理解。
      几个比较关键的结果: augustus.hints.* 是AUGUSTUS最终蛋白hints结果。
      而braker.gtf/gff3是 AUGUSTUS和GeneMark-EP+预测(braker流程中的蛋白预测)的并集,因此该结果是高敏感性低特异性(更多基因被预测以及更多假阳性)。
      总体来说,二者结果是相近的,如果侧重于敏感性,则用braker.gtf结果。否则用augustus。(个人建议还是用augustus的结果,相当于二次预测)

    https://github.com/Gaius-Augustus/BRAKER/issues/194

    https://github.com/Gaius-Augustus/Augustus/issues/31

    总之,braker2流程虽然使用简单(相对于evm,maker等),但它的结果还是差异很大的,预测的基因数目普遍较多。文章引用率还不是太高,使用需要谨慎。

    仅尝试使用体验,后续待补充。

    相关文章

      网友评论

        本文标题:【基因组预测】braker2基因结构注释要点记录

        本文链接:https://www.haomeiwen.com/subject/ojhfsltx.html