当前位置: 首页 > news >正文

酶动力学预测工具CataPro安装教程

简介:预测酶动力学参数是酶发现和酶工程中的一项重要任务。在此,研究人员基于蛋白质语言模型、小分子语言模型和分子指纹,提出了一种名为 CataPro 的新酶动力学参数预测算法。该研究从 BRENDA 和 SABIO-RK 数据库中收集了最新的转化率(kcat)、迈克尔常数(Km)和催化效率(kcat/Km)数据。根据 0.4 的蛋白质序列相似性对这些数据进行聚类,我们得到了相应的 10 倍交叉验证数据集。CataPro 在这些无偏 10 倍交叉验证数据集上进行了训练,在预测 kcat、Km 和 kcat/Km 方面的性能优于之前的预测器。

安装教程:

1、创建并激活虚拟环境

conda create -n catapro python=3.10
conda activate catapro

 2、按照环境的需求安装以下必要的软件包

    pytorch >= 1.13.0
    transformers
    numpy
    pandas
    RDKit

conda install pytorch==2.2.2 torchvision==0.17.2 torchaudio==2.2.2 pytorch-cuda=11.8 -c pytorch -c nvidia    # 安装GPU版本的torch

conda install -c conda-forge rdkit -y    # 安装化学信息处理的开源工具包rdkit

pip install transformers pandas

pip install "numpy<2"        # 因为PyTorch 版本的兼容问题,所以要安装numpy<2

pip install sentencepiece    # 加载 ProtT5_model 和 MolT5_model 时需要用到 HuggingFace 的 T5Tokenizer,而 T5Tokenizer 依赖于 SentencePiece 库

3、安装并初始化 Git LFS


conda install -c conda-forge git-lfs -y    # HuggingFace 模型仓库使用了 Git LFS (Large File Storage),专门用来处理大型文件的版本控制(比如模型权重)
git lfs install    # 初始化 Git LFS

4、下载所需的预训练模型: prot_t5_xl_uniref50 and molt5-base-smiles2caption

# 步骤1:先只克隆元数据,不自动下载 LFS
# 这条命令告诉 git:只克隆仓库结构,不要拉取 LFS 文件。执行后你可以 cd prot_t5_xl_uniref50 看一下文件结构,此时 .bin 文件的大小可能是几十字节(是一个指针文件)。
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/Rostlab/prot_t5_xl_uniref50

# 步骤2:手动拉取权重文件,这一步才会真正开始下载 .bin 文件(模型权重),你会看到下载进度条。
cd prot_t5_xl_uniref50
git lfs pull
# molt5-base-smiles2caption的安装与上面相同
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/laituan245/molt5-base-smiles2caption

cd molt5-base-smiles2caption
git lfs pull
# 安装openpyxl,是pandas 用于写入 Excel 文件的依赖
pip install openpyxl

5、测试运行

# 使用以下命令运行CataPro来推断酶促反应的动力学参数
    python predict.py \
            -inp_fpath samples/sample_inp.csv \
            -model_dpath models \
            -batch_size 64 \
            -device cuda:0 \
            -out_fpath catapro_prediction.csv

输出结果如下:

http://www.dtcms.com/a/106362.html

相关文章:

  • Rabbit:流加密的 “极速赛车手”
  • 单例模式与线程安全
  • 每日算法-250402
  • SESSION_UPLOAD_PROGRESS 的利用
  • Spark、Flink 和 TensorFlow 三大分布式数据处理框架对比
  • 微服务架构技术栈选型避坑指南:10大核心要素深度拆解
  • 供应链中的的“四流合一”
  • 以太网报文结构 via ethernetPacket in CAPL
  • 三轴云台之相机技术篇
  • JavaWeb开发基础知识-Servlet终极入门指南(曼波萌新版)
  • KingbaseES物理备份还原之物理备份
  • 单框架鸿蒙开发
  • 解决报错curl: (35) OpenSSL SSL_connect: 连接被对方重设 in connection to download.docker.com:443
  • JavaScript闭包
  • Python设计模式:责任链模式
  • JAVASE(十三)常用类(二)包装类、工具类Arrays类
  • 【案例分享】江苏某汽车制造厂水冷式制冷站AI节能优化方案
  • LVS-----DR模式
  • JAVA中JVM一次 GC的 流程
  • 电脑屏幕亮度随心控,在Windows上自由调整屏幕亮度的方法
  • 分布式数据一致性场景与方案处理分析|得物技术
  • 谷粒商城:Redisson
  • TiDB 可观测性解读(二)丨算子执行信息性能诊断案例分享
  • Linux网络编程socket服务器端模拟实现
  • JSP 指令
  • Python数据类型-dict
  • 第八届 蓝桥杯 嵌入式 省赛
  • 【ESP32-IDF 笔记】02-LED PWM 配置
  • 运维面试题(ORACLE数据库)--20250401
  • Cesium学习(未完继续)