生物分子模拟论坛

 找回密码
 我想注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 263|回复: 0

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

[复制链接]
发表于 2020-8-16 20:48:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,下载更多分子模拟资源。

您需要 登录 才可以下载或查看,没有帐号?我想注册

x
本帖最后由 MolAICal 于 2020-9-2 23:42 编辑

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


更多教程(含英文教程)请见如下:
MolAICal官方主页:https://molaical.github.io
MolAICal 文章介绍:https://doi.org/10.1093/bib/bbaa161
MolAICal中文博客:https://molaical.github.io/cntutorial.html
MolAICal blogspothttps://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的版本选择应基于Python3.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”并创建一个独立的环境
[mw_shl_code=bash,true]#> conda create --name AIGen --file spec-list.txt
#> conda activate AIGen
[/mw_shl_code]
注意:如果发生某些错误,例如:CondaHTTPError: HTTP 404 NOT FOUND forurl <https://conda.anaconda.org/conda-forge/linux-64/xxxx-xxxx> , 您可以在“spec-list.txt”中删除相应的软件包。 然后重复上述步骤。 可以通过以下类似步骤安装缺少的软件包,而无需安装版本号:
[mw_shl_code=bash,true]#> conda install -c conda-forge xxxx[/mw_shl_code]

3.3. 安装必需的库  
[mw_shl_code=bash,true]#> conda install -c conda-forge openblas
#> conda install -c conda-forge openssl
#> pip install editdistance==0.3.1
[/mw_shl_code]

3.4. 最后,生成二进制“深度学习模型”
解压缩“ organ.zip”
[mw_shl_code=bash,true]#> unzip organ.zip
#> cd organ
#> pyinstaller --add-data="organ/NP_score.pkl.gzrgan" --add-data="organ/SA_score.pkl.gzrgan" --add-data="organ/data/FDA-H.csvrgan/data" --add-data="organ/checkpoints/FDA-H/FDA-H_99.ckpt.data-00000-of-00001rgan/checkpoints/FDA-H"  --add-data="organ/checkpoints/FDA-H/FDA-H_99.ckpt.indexrgan/checkpoints/FDA-H" --add-data="organ/checkpoints/FDA-H/FDA-H_99.ckpt.metargan/checkpoints/FDA-H" --add-data="organ/data/FDA1884.csvrgan/data" --add-data="organ/checkpoints/FDA1884/FDA1884_119.ckpt.data-00000-of-00001rgan/checkpoints/FDA1884"  --add-data="organ/checkpoints/FDA1884/FDA1884_119.ckpt.indexrgan/checkpoints/FDA1884" --add-data="organ/checkpoints/FDA1884/FDA1884_119.ckpt.metargan/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

[/mw_shl_code]
打开文件夹 “organ/dist”
#> cd dist
您将看到名为“ main”的文件,将其重命名为“ AIGenMols”
[mw_shl_code=bash,true]#> mv main AIGenMols
#> chmod +x AIGenMols
[/mw_shl_code]
此时完全生成了名为“AIGenMols”的二进制深度学习模型。将其直接复制或移动到MolAICal软件文件夹中即可。

安装过程分析:
[mw_shl_code=bash,true]--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[/mw_shl_code]
以上部分是打包关键的部分,您可以使用自己训练好的深度学习模型替换以上数据

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

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

[/mw_shl_code]

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

评分

参与人数 1金币 +10 收起 理由
川大-灰太狼 + 10 赞一个!

查看全部评分

您需要登录后才可以回帖 登录 | 我想注册

本版积分规则

QQ|分迪科技|小黑屋|手机版|Archiver|生物分子模拟论坛 ( 蜀ICP备14009200号-3 )

GMT+8, 2021-1-25 06:02 , Processed in 0.100671 second(s), 25 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表