蛋白质同源组分配的深度学习工具

deepnog的Python项目详细描述


Linux/MacOS builds on TravisWindows builds on AppVeyorcodecovLanguage grade: PythonDocumentation StatusPyPI versionAnaconda-Server Badge

DeepNOG:蛋白质同源组分配

将蛋白质分配到具有深网络的cpu或gpu上的同源基团(eggnog5)。 DeepNOG比基于对齐的方法快得多, 同时要像HMMER一样准确。在

deepnog命令行工具是用python3.7+编写的。在

安装指南

安装DeepNOG最简单的方法是从PyPI获得:

pip install deepnog

或者,您可以克隆或下载最新版本 从GitHub运行

^{pr2}$

如果您计划将DeepNOG扩展为开发人员,请运行

pip install -e /path/to/DeepNOG

相反。在

deepnog也可以从bioconda安装,如下所示:

conda config --add channels pytorch
conda install pytorch deepnog

使用

DeepNOG可以通过调用上面安装的deepnog来使用 带有蛋白质序列文件(FASTA)的命令。在

示例用法:

  • deepnog infer proteins.faa
    • 预测的蛋白质组蛋白质.faa将写入控制台。 默认情况下,使用eggNOG5细菌水平。在
  • deepnog infer proteins.faa --out prediction.csv
    • 写入预测.csv取而代之的是
  • deepnog infer proteins.faa -db eggNOG5 -t 1236 -V 3 -c 0.99
    • 预测蛋奶5-γ蛋白原细菌群(税1236)
    • 丢弃低于99%置信度的个别预测
    • 显示详细进度报告(-V 3)
  • deepnog train train.fa val.fa train.csv val.csv -a deepnog -e 15 --shuffle -r 123 -db eggNOG5 -t 3 -o /path/to/outdir
    • 为蛋奶酒5的(假设的)3级税率训练一个模型 可重复结果的随机种子。在

OG预测的各个模型不存储在GitHub或PyPI上, 因为它们超过了文件大小限制(最多200米)。 ^{cd1>自动下载并放入模型中 缓存目录(默认值~/deepnog_data/)。您可以更改此目录 通过设置DEEPNOG_DATA环境变量。在

有关帮助和高级选项,请致电deepnog --help, 和deepnog infer --helpdeepnog train --help指定选项 分别用于推理或训练。 另请参见user & developer guide。在

支持的文件格式

首选:法斯塔(生的或生的)

DeepNOG支持以中列出的所有文件格式存储的蛋白质序列 https://biopython.org/wiki/SeqIO但测试了FASTA文件格式 只有。在

当前支持的数据库

  • 蛋奶酒5.0,分类级别1(根级)
  • 蛋奶酒5.0,分类级别2(细菌级别)
  • 蛋奶酒5.0,分类学水平1236(Gammaproteobacteria)
  • (对于其他级别,请在Github上创建一个问题,或者自己训练一个模型——v1.2中的新特性)

当前支持的深层网络体系结构

  • DeepNOG公司
  • DeepFamD(目前无可用)

所需软件包(和最低版本)

  • Pythorch 1.2.0版
  • 数字1.16.4
  • 熊猫0.25.1
  • scikit学习
  • 张力板
  • 生物圈1.74
  • 皮亚姆
  • 全面质量管理4.35.0
  • pytest 5.1.2(仅用于测试)

另请参见requirements/*.txt,以获取特定于平台的建议 (有时,由于平台特定,可能需要特定的版本 deepnog需求中的缺陷)

致谢

本研究得到奥地利科学基金资助:P27703,P31988; 通过英伟达公司的GPU项目。在

引文

一篇研究文章目前正在审查中。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java出现编译错误,我不理解   java在gnu-trove库中是否有任何有序映射?   java Servlet应该有映射,但找不到Servlet   java时间和第二期显示1:10,而不是13:10   java Play Framework 1.2.7 Heroku更新崩溃   线程“main”java中的opencsv异常。lang.NoClassDefFoundError:org/apache/commons/lang3/ObjectUtils   selenium在java中隐藏警告消息   java使用ID引用将JSON实体反序列化为POJO   java无法在JRE 8中加载字体   一个线程中的异常/错误会使整个应用程序停止吗?   java访问重复子规则的元素标签;e、 g.用ANTLR解析(1,2,3)中的a   java如何从平移旋转中找到新坐标   使用HTML Java小程序托管jar文件存在安全问题   java如何按频率而不是字母顺序排列字符串数组   java清除bufferedReader和块以获得更多输入   java解密SAML2断言