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

酶 EC number 预测工具CLEAN的安装和使用

写在前面

酶往往根据其可以催化的化学反应进行分类,最广为人知的酶催化功能数字分类方案是酶委员会(EC)编号,每个EC编号都与酶催化的化学反应相关,所有催化相同反应的酶都具有相同的EC编号。因此,EC编号是到目前为止最常用的酶分类方案,它使用四位数字来确定酶的催化功能,通过预测EC编号,可以用来完全确定酶的催化功能。针对现有模型无法对研究较少的蛋白质,或者具有未表征功能,或者多种活性的蛋白质的功能进行准确注释的问题,研究人员基于对比学习机制开发了一种酶蛋白功能预测的AI深度学习框架CLEAN。CLEAN 基于 UniProt 的高质量数据库进行训练,通过输入氨基酸序列就可得到酶功能编号(EC, Enzyme commission,指示酶催化哪种反应的 ID 代码)的可能性排序列表。为了验证 CLEAN 的准确性和稳健性,作者团队不仅进行了大量的计算机运算实验,还使用 CLEAN 为 36 个分类的卤化酶的进行功能注释 EC 编号,结合实际实验验证结果,综合表明 CLEAN 在这些酶功能预测任务中比其他工具更具优越性。

一、安装教程

1. 克隆项目代码

git clone https://github.com/tttianhao/CLEAN.git
cd CLEAN/app

2. 创建 Conda 环境

确保你已经安装了 Anaconda 或 Miniconda。

conda create -n clean python==3.10.4 -y
conda activate clean

说明:这里我们新建了一个名为 clean 的虚拟环境,Python 版本为 3.10.4

3. 安装依赖

进入项目目录后,使用 pip 安装所需依赖:

pip install -r requirements.txt

4. 安装 PyTorch + CUDA 11.3

# CUDA 11.3
conda install pytorch==1.11.0 torchvision==0.12.0 torchaudio==0.11.0 cudatoolkit=11.3 -c pytorch

5. 下载预训练权重

  • 下载并解压官方提供的预训练模型(70% / 100% split),以及 cluster embeddings 文件。

  • 把解压后的内容放到:data/pretrained/(没有下载这部分文件的话,推理会报错)

  • 注意:解压完之后文件命名可能会修改,需要将文件名更改为 pretrained ,否则后续会报错

unzip pretrained.zip

6. 构建依赖模块

python build.py install

这是 CLEAN 的自定义构建步骤,必须执行。

7. 安装 Facebook ESM(蛋白质语言模型依赖)

git clone https://github.com/facebookresearch/esm.git

8. 准备 ESM 数据目录

该目录将存储esm的embedding文件(.pt文件)

mkdir data/esm_data

二、使用教程

1. 执行示例推理脚本

python CLEAN_infer_fasta.py --fasta_data price

执行上述脚本你的时候会默认下载esm的模型权重:esm1b_t33_650M_UR50S,但是由于网络等原因可能遇到下面的问题,解决方案就是下载到本地在传输到服务器上即可;

RuntimeError: unexpected EOF, expected ... The file might be corrupted.

显示以下的信息说明执行成功:

结果将保存在以下目录中:results/inputs/price_maxsep.csv

2. 通用推理脚本

python CLEAN_infer_fasta.py --fasta_data <name>
  • 只接收一个参数:--fasta_data(字符串)。

  • 语义:不带扩展名的 FASTA 基名。
    示例:--fasta_data test → 期望存在 data/inputs/test.fasta

  • 推理结果:会保存在以下路径中 results/<name>.csv

脚本会自己去找 data/inputs/<name>.fasta,传入 test 而不是 test.fasta;否则最后清理时会去删 test.fasta.csv 这种不存在的路径

3. 结果分析和对比

选择部分序列使用上述命令行进行预测,并同步在CLEAN的网页端(Clean)也进行预测,对两个结果进行比较;

>WP_063460136
MAIPPYPDFRSAAFLRQHLRATMAFYDPVATDASGGQFHFFLDDGTVYNTHTRHLVSATRFVVTHAMLYRTTGEARYQVGMRHALEFLRTAFLDPATGGYAWLIDWQDGRATVQDTTRHCYGMAFVMLAYARAYEAGVPEARVWLAEAFDTAEQHFWQPAAGLYADEASPDWQLTSYRGQNANMHACEAMISAFRATGERRYIERAEQLAQGICQRQAALSDRTHAPAAEGWVWEHFHADWSVDWDYNRHDRSNIFRPWGYQVGHQTEWAKLLLQLDALLPADWHLPCAQRLFDTAVERGWDAEHGGLYYGMAPDGSICDDGKYHWVQAESMAAAAVLAVRTGDARYWQWYDRIWAYCWAHFVDHEHGAWFRILHRDNRNTTREKSNAGKVDYHNMGACYDVLLWALDAPGFSKESRSAALGRP
>WP_012428705
MTATIGSKIGQRRRIGRGPLQVTGLGLGTAPLGGLYRDLSDEEAHATIAAAWDAGVRYFDTAPHYGNTKAEHRLGDALRRYPRADYVLSTKVGRRFVPRTTPFDDKEGWQNPLPFEAIYDYTHDGILRSFEDSQQRLGIVDIDILLVHDIGRVTHGDNHPHYWRQLTEGGGFRALDALRSSGAIKAVGLGVNEGAAILDAMAEFDIDCALLAGRYTLLEQTTLDDLLPACEKRGVSILLGGAFNSGILARGVQGDLKFNYGEAPPEVIERVARLEAVCRTHGVPLAAAALQFPYAHPTVATVLTGARSADELRENAASFELPIPAALWFALREEGLLDSRAPAPED
>WP_012434194
MTTQSTDHDQQNMTAIVCHAPKDYRVEQVSKPRAGAHELVIRIAACGICASDCKCHSGAKMFWGGPSPWVKAPVIPGHEFFGFVEEIGEGAADHFGVKMGDRVIAEQIVPCGKCRYCKSGQYWMCEVHNIFGFQREVADGGMAEYMRIPPTAIVHKIPDGISLEDAAIIEPLACAIHTVNRGEVQLDDVVVIAGAGPLGLMMTQIAHLKTPKKLVVIDLVEERLALAREYGADVTINPKQDDALAIIHSLTDGYGCDVYIETTGAPIGVNQGMDLIRKLGRFVEFSVFGADTTLDWSVIGDRKELDVRGAHLGPYCYPIAIDLLARGLVTSKGIVTHGFSLEEWDEAIKIANSLDSIKVLLKPRA
>WP_011760344
MMRMGVDLGGTKIELVALGEDGSELFRKRIATPREYQGTLNAVVTLVNEAEATLGTQGSLGIGIPGVISPYTGLVKNANSTWINGHPLDRDLGALLNREVRVANDANCFAVSEAVDGAAAGKRVVFGAILGTGCGAGLAFDGRVHEGGNGIGGEWGHNPLPWMRPDEFNTTECFCGNKDCIETFVSGTGFVRDFRNSGGTAQNGAEIMSLVDAGDELANLVFDRYLDRLARSLAHVINMLDPDAIVLGGGMSNVQAIYARLPAILPKYVVGRECRTPVVQNLYGCSSGVRGAAWLWEKR
>NP_384124
MPAPSSILLSPDDNVVVATAAIAPGDRLAGGVSAVARIEPGHKAAIRRIDVGEPVVKYGQAIGRATSPIAPGEHVHSHNLAFDQGRLAVGAAVPPEAASEADKARTFLGYRRADGRAATRNYIGIVASVNCSTTVCRAIADEANRRILPKYEGIDGFVPIVHDQGCGMSSTGDGMKNLHRTLAGYARHANFGGVLMVGLGCEVNQLTLYGQSGAGAEKRHFNIQEAGGSRRSVERALGILDEIAKEVAAARRVPIPVSEIIVGLQCGGSDGLSGITANPALGAAVDILAAAGGTAILSETSEIYGAEHLLRSRAVNETVAVKLDGLIAWWEDYVAMHGASLDNNPSPGNKRGGLTTILEKSLGAVAKGGRSPLTAVYNYAERVTEPGLVFMDTPGYDPVSATGQVAGGANVIAFTTGRGSCFGCRPAPSIKLTSNTALYRAMEEDMDIDCGVIASGETTIADLGRGIFELIIETASGRKTKSELFGYGDNEFVPWHLGATL
>WP_054597488
MHDIELTEEQVMIRDMARDFARGEIAPHAQAWEKAGWIDDALVAKMGELGLLGMVVPEEWGGTYVDYVAYALAVEEISAGDGATGALMSIHNSVGCGPVLNYGTEEQKQTWLADLASGQAIGCFCLTEPQAGSEAHNLRTRAELRDGQWVINGAKQFVSNGRRAKLAIVFAVTDPDLGKKGLSAFLVPTDTPGFIVDRSEHKMGIRASDTCAVTLNNCTIPEANLLGERGKGLAIALSNLEGGRIGIAAQALGIARAAFEAALAYARDRVQFDKPIIEHQSVANMLADMHTRLNAARLLILHAARLRSAGKPCLSEASQAKLFASEMAEKVCSSAIQIHGGYGYLEDYPVERYYRDARITQIYEGSSEIQRMVIARELKNYLV
>WP_010210411
MLPNEEQLQISDAARQFAQERLKPFAAEWDREHRFPKEAIGEMAELGFFGMLVPEQWGGCDTGYLAYAMALEEIAAGDGACSTIMSVHNSVGCVPVLKFGNDQQKEQFLKPLASGAMLGAFALTEPQAGSDASSLKTRARLEGDHYVLNGCKQFITSGQNAGVVIVFAVTDPAAGKRGISAFIVPTDSPGYSVARVEDKLGQHASDTCQILFEDVKVPVANRLGEEGEGYKIALANLEGGRVGIASQAVGMARAAFEAARDYARERESFGKPIIEHQAVAFRLADMATQIAVARQMVHYAAALRDSGKPALVEASMAKLFASEMAEKVCSAALQTLGGYGYLSDFPLERIYRDVRVCQIYEGTSDIQRMVISRNL
>NP_384884
MIVHFEPASEEGIASVVRSAAAERVTLAVVGGGTRAGLGNPVRADRTLSTRRLSGIVTYDPAEMTMSALAGTPVAEVEAALHAKGQMLSFEPMDHRPIFATTGEPTIGGVFAANVSGPRRYVAGAARDSLLGVRFVNGRGEPIKAGGRVMKNVTGLDLVKLMAGSYGTLGILTEVTFKVLPLPPAAATVVVSGLNDAEAAAVMAEAMAQPVEVSGASHLPESVRSRFLDGALPDGAATVLRLEGLAASVAIRAEKLGEKLSRFGRISQLDEAQTRTLWAEIRDVKPYADGTRRPLWRISVAPSAGHQLVAALRLQTGVDAFYDWQGGLVWLRMEADPEAELLRRYIGAVGGGHAALLRAGEEARGRIPAFEPQPPAVARLSERIRAQFDPSGIFNPGRAAALVRN
>WP_011759060
MAFDQTLEGQLYLGIDGGGSKCRATLYNNKLDVLGTGVAGRANPLFGLEQTFESILASTEMALRDAGLSLNDASLLVAGLGLAGVNVPRLLADVQAWQHPFKTMYVTSDLHTACIGAHQGGDGAVIITGTGSCGYVHVGDESLSLGGHGFALGDKGSGAWLGLRAAEHVLLQLDGFAEPTALTERLFANLGVSDALGIVENLAGRSSSCYATLAREVFAAADEGDKVAVGILREGAAYISEMARKLFTLEPARFSMIGGLAEPLQKWLDADVVARLEPSLAAPETGAVLFAIQQHNKQSAA
>WP_011758678
MKFYNRDFLLSHSQSILDFYDPRVLDASGGYFHNYYDDGSLFEPGFRQLVSSCRITVNYARAADILDKPEYLAHARHGLNYLLNVHLQADERFAWTLKSHRPEDMTQQAYGYAFALLAFAACRKSGILKDNNKLLWIYNLLEQRFWQPEYGLYADEIGADGVLSDYRGQNANMHLCEAMIAAFEASGEGRFLDRAMEIADKIANRQAALTGGIIWEHFTPGFAINWEYNKDDPKNLYRPWGFQGGHQTEWAKLLLSLARHSHQPWLISRAKTLFDTAFEKSWDKEHGGMVYGFGPNGDWCDDDKYFWVQAESFAAAAMLYQQTGEQKYLDAYNALWNYAWQHFVDHEHGAWFRVLYRDNRKYSNEKSTAGAKCDYHTLGACFDSLRDLT

命令行得到的结果如下:第一列为输入的序列ID,第二列为模型给定预测 EC number 的置信度/打分(0–1 之间,越大越可信);

WP_063460136,EC:5.3.1.7/0.0433
WP_012428705,EC:1.1.1.107/0.1956
WP_012434194,EC:1.1.1.301/0.2441
WP_011760344,EC:2.7.1.4/0.3752
NP_384124,EC:4.2.1.7/0.4580
WP_054597488,EC:1.3.1.95/0.5248
WP_010210411,EC:1.3.8.1/0.6246
NP_384884,EC:1.1.99.14/0.7765
WP_011759060,EC:2.7.1.8/0.8432
WP_011758678,EC:5.3.1.7/0.9870

网页端得到的结果如下:

可以发现命令行与网页端的预测结果是一致的,但是显示有所区别,命令行预测直接显示置信度打分,网页端是直接给定一个置信度水平(高、中、低)。通过比较,我们可以发现CLEAN的置信度区间:

  • 低置信度:预测打分≤0.2

  • 中等置信度:预测打分 >0.2 且 ≤0.8

  • 高置信度:预测打分 >0.8

http://www.xdnf.cn/news/18813.html

相关文章:

  • Java 线程池详解:原理、使用与源码深度解析
  • 从全栈开发到微服务架构:一次真实的Java面试实录
  • 【图像处理基石】如何把非笑脸转为笑脸?
  • Git连接Github远程仓库的代理设置
  • Java:HashSet的使用
  • Linux shell脚本条件循环
  • 基础篇(下):神经网络与反向传播(程序员视角)
  • 【论文阅读 | arXiv 2025 | WaveMamba:面向RGB-红外目标检测的小波驱动Mamba融合方法】
  • Multitouch for mac 触控板手势增强软件
  • Zynq开发实践(Verilog、仿真、FPGA和芯片设计)
  • RAG智能问答为什么需要进行Rerank?
  • 【K8s】整体认识K8s之namespace
  • 低功耗模式DMA数据搬运问题解析
  • 模块测试与低功耗模式全攻略
  • 【Java】springboot的自动配置
  • 谷德红外温度传感器在 3D 打印领域应用探究
  • Rust 登堂 生命周期(一)
  • 纯血鸿蒙下的webdav库
  • 最近遇到的几个JVM问题
  • JVM OOM问题排查与解决思路
  • Flask蓝图:模块化开发的利器
  • HarmonyOS NEXT系列之元服务框架ASCF
  • 第04章 SPSS简介与数据库构建
  • 【机器学习】9 Generalized linear models and the exponential family
  • BQTLOCK 勒索软件即服务出现,拥有复杂的规避策略
  • 大白话解析:多证明验证(Merkle Multi-Proof)​
  • 可视化-模块1-HTML-03
  • 基于SpringBoot的美食分享平台【2026最新】
  • 构建wezzer平台!
  • Indy HTTP Server 使用 OpenSSL 3.0