24小时热门版块排行榜    

查看: 715  |  回复: 0

MolAICal

新虫 (初入文坛)

[交流] 使用PyInstaller打包深度学习模型“AIGenMols”的例子

使用PyInstaller打包MolAICal软件深度学习模型“AIGenMols”的例子


更多教程(含英文教程)请见如下:
MolAICal官方主页:https://molaical.github.io
MolAICal 文章介绍:https://doi.org/10.1093/bib/bbaa161
MolAICal中文博客:https://molaical.github.io/cntutorial.html
MolAICal blogspot:https://qblab.blogspot.com


1. 介绍
药物的深度学习模型在使用的时候是以代码的形式调用,如果能将其打包成二进制可执行文件,将有利于深度学习模型的部署使用和推广,在本教程中,选择了ORGAN (https://github.com/gablg1/ORGAN) 来打包二进制可执行程序“AIGenMols”。 此外,您可以根据本教程打包自己训练的深度学习模型。

2. 材料
2.1. 所需软件
1) MolAICal: https://molaical.github.io
2) Anaconda: https://www.anaconda.com/open-source
Anaconda的版本选择应基于Python 3.x而不是Python 2.x

2.2. 示例文件
1) 所有必需的教程文件均可从以下网址下载:
https://github.com/MolAICal/specialtopic/tree/master/012-AIGenMols

3. 步骤
3.1. 安装 Anconda (https://www.anaconda.com/distribution).
确保完全安装并且正确设置了环境变量。

3.2. 下载 “spec-list.txt”并创建一个独立的环境
CODE:
#> conda create --name AIGen --file spec-list.txt
#> conda activate AIGen

注意:如果发生某些错误,例如:CondaHTTPError: HTTP 404 NOT FOUND for url <https://conda.anaconda.org/conda-forge/linux-64/xxxx-xxxx> , 您可以在“ spec-list.txt”中删除相应的软件包。 然后重复上述步骤。 可以通过以下类似步骤安装缺少的软件包,而无需安装版本号:
CODE:
#> conda install -c conda-forge xxxx

3.3. 安装必需的库  
CODE:
#> conda install -c conda-forge openblas
#> conda install -c conda-forge openssl
#> pip install editdistance==0.3.1

3.4. 最后,生成二进制“深度学习模型”
解压缩“ organ.zip”
CODE:
#> unzip organ.zip
#> cd organ
#> pyinstaller --add-data="organ/NP_score.pkl.gz:organ" --add-data="organ/SA_score.pkl.gz:organ" --add-data="organ/data/FDA-H.csv:organ/data" --add-data="organ/checkpoints/FDA-H/FDA-H_99.ckpt.data-00000-of-00001:organ/checkpoints/FDA-H"  --add-data="organ/checkpoints/FDA-H/FDA-H_99.ckpt.index:organ/checkpoints/FDA-H" --add-data="organ/checkpoints/FDA-H/FDA-H_99.ckpt.meta:organ/checkpoints/FDA-H" --add-data="organ/data/FDA1884.csv:organ/data" --add-data="organ/checkpoints/FDA1884/FDA1884_119.ckpt.data-00000-of-00001:organ/checkpoints/FDA1884"  --add-data="organ/checkpoints/FDA1884/FDA1884_119.ckpt.index:organ/checkpoints/FDA1884" --add-data="organ/checkpoints/FDA1884/FDA1884_119.ckpt.meta:organ/checkpoints/FDA1884"  --add-data="organ/data/zinc.csv:organ/data" --add-data="organ/checkpoints/ZINC/ZINC_99.ckpt.data-00000-of-00001:organ/checkpoints/ZINC"  --add-data="organ/checkpoints/ZINC/ZINC_99.ckpt.index:organ/checkpoints/ZINC" --add-data="organ/checkpoints/ZINC/ZINC_99.ckpt.meta:organ/checkpoints/ZINC" -F main.py

打开文件夹 “organ/dist”
#> cd dist

您将看到名为“ main”的文件,将其重命名为“ AIGenMols”
CODE:
#> mv main AIGenMols
#> chmod +x AIGenMols

此时完全生成了名为“AIGenMols”的二进制深度学习模型。将其直接复制或移动到MolAICal软件文件夹中即可。

安装过程分析:
CODE:
----------------------------------------------------------------------------------------------------------------------
--add-data="organ/data/zinc.csv:organ/data" --add-data="organ/checkpoints/ZINC/ZINC_99.ckpt.data-00000-of-00001:organ/checkpoints/ZINC"  --add-data="organ/checkpoints/ZINC/ZINC_99.ckpt.index:organ/checkpoints/ZINC" --add-data="organ/checkpoints/ZINC/ZINC_99.ckpt.meta:organ/checkpoints/ZINC" -F main.py
----------------------------------------------------------------------------------------------------------------------

以上虚线部分是打包关键的部分,您可以使用自己训练好的深度学习模型替换以上数据

注意:
1). 安装Anaconda时,Anaconda的安装路径应确保没有空格。例如: /home/test install/anaconda。字符“test”和“install”之间的空格可能会导致“AIGenMols”打包过程失败。
2). “AIGenMols”的命令用法应如下所示,才能保证打包的模型可以直接被MolAICal调用:
CODE:
AIGenMols -f test.txt -s FDAFrag -n 100
AIGenMols -f test.txt -s ZINCMol -n 100

-f: 表示生成包含SMILES格式分子的文件名。
-s: 代表选择的深度学习模型名称,如:ZINCMol代表使用ZINC数据库的分子训练出的深度药物生长模型
-n: 代表产生的分子数

这只是打包“AIGenMols”的一个示例。您可以对自己训练的模型使用类似的打包方法。
回复此楼

» 猜你喜欢

» 本主题相关商家推荐: (我也要在这里推广)

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 MolAICal 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 jzg3xk1po8 2026-07-31 6/300 2026-08-01 15:46 by y4XuShGyllvT
[考博] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 jzg3xk1po8 2026-07-31 11/550 2026-08-01 15:43 by y4XuShGyllvT
[基金申请] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 jzg3xk1po8 2026-07-31 11/550 2026-08-01 15:43 by y4XuShGyllvT
[教师之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 jzg3xk1po8 2026-07-31 8/400 2026-08-01 15:42 by y4XuShGyllvT
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 jzg3xk1po8 2026-07-31 11/550 2026-08-01 15:40 by y4XuShGyllvT
[基金申请] 面上再次挂了,太难了,躺也躺不了,倦也卷不过,小学校之殇! +16 低垂的野花 2026-07-31 21/1050 2026-08-01 15:35 by jklily
[基金申请] 2026年国自然面上资助率 +15 布布和一二 2026-07-30 19/950 2026-08-01 15:18 by 40862026
[基金申请] 微信指数没变化,科研之友没阅读 +14 wangze12014 2026-07-28 18/900 2026-07-31 18:35 by lzchaihuo
[教师之家] 基础研究怎么拉横向,学校到款任务越来越多,难以完成 拉横向,都有哪些途径啊 +8 锦衣卫寒战 2026-07-28 8/400 2026-07-31 18:13 by beefly
[高分子] HXDI做水性聚氨酯乳液,是不是特别容易出渣 15+3 yuyusuv 2026-07-29 3/150 2026-07-31 09:21 by huizingga
[基金申请] 系统今天又提示维护了,估计离放榜不远了 +11 winnerche 2026-07-29 15/750 2026-07-30 23:08 by jnhyjjm
[考博] 申请2027年材料/化学类博士 10+3 考研老狗? 2026-07-25 5/250 2026-07-30 19:33 by 白色木鱼
[基金申请] 你们的时间戳变了吗 +3 archvillain 2026-07-30 4/200 2026-07-30 18:53 by levinzhwen
[基金申请] 今年的WR进展到哪一步了? +5 wsgjhwz 2026-07-25 9/450 2026-07-30 12:59 by 可淡不可忘
[有机交流] 产物和副产物价值比较 30+4 小汤02 2026-07-27 5/250 2026-07-30 12:44 by czyzsu
[基金申请] 时间戳他又来了 +14 晓晓爱翠翠 2026-07-26 17/850 2026-07-29 16:30 by 呵呵二哥
[基金申请] 这种情况还有戏吗 +5 drbart 2026-07-27 11/550 2026-07-29 05:50 by drbart
[基金申请] 同事接到电话了,我却没有 +4 1234567wang 2026-07-27 4/200 2026-07-28 10:11 by GOODLUCKER
[基金申请] 准备明年的基金了 +5 Tide man 2026-07-27 5/250 2026-07-28 09:25 by newfuzzy1
[分析] 水蒸气蒸馏法乳化现象 +3 月光娇娇 2026-07-26 3/150 2026-07-26 23:25 by caiyun
信息提示
请填处理意见