多目标分子生成使用可解释子结构
multiobj-rationale 项目地址: https://gitcode.com/gh_mirrors/mu/multiobj-rationale
项目介绍
本项目是基于ICML 2020论文实现的《多目标分子生成使用可解释子结构》,它提出了一种利用可解释的子结构进行多目标药物分子设计的方法。该方法不仅生成符合化学性质要求的分子,还提供了关于为何特定分子被生成的逻辑解释,通过一系列子结构的优化来满足诸如GSK3、JNK3抑制活性以及QED(Drug Likeness)和SA(Synthetic Accessibility)等多元属性。
项目快速启动
环境准备
首先,你需要安装Anaconda并创建一个环境来支持项目运行:
git clone https://github.com/wengong-jin/multiobj-rationale.git
cd multiobj-rationale
conda env create -f environment.yml
conda activate rationale
运行示例
假设你想预测给定分子在JNK3靶点上的属性,你可以这样做:
python properties.py --prop jnk3 < data/jnk3/rationales.txt
若要提取理性子结构,可以使用以下命令:
python mcts.py --data data/jnk3/actives.txt --prop jnk3 --ncpu 4 > jnk3_rationales.txt
预训练生成模型并测试生成含有特定子结构(如苯环)的分子:
python decode.py --rationale rationale.txt --model ckpt/chembl-h400beta0.3/model_20 --num_decode 1000
其中,rationale.txt
应包含定义好的子结构描述。
应用案例和最佳实践
-
双靶点分子设计: 以设计针对GSK3和JNK3的双重抑制剂为例,项目提供了从理由提取到分子生成的完整流程。通过调整参数和选择特定的属性组合,科学家可以定制化他们的分子设计过程,确保生成的分子同时满足多个药理学标准和合成易行性。
-
理性子结构发现: 利用MCTS算法,可以根据活性分子集生成对应于特定化学属性的理性子结构,并评估这些子结构的得分,这有助于理解分子活性的关键要素。
典型生态项目
虽然该项目本身专注于多目标分子设计,但其方法论和技术栈能够融入更广泛的化学信息学和药物研发生态系统中。例如,结合其他机器学习库用于更复杂的属性预测、与其他化学数据库集成以扩大训练数据来源、或者与合成路线规划工具结合,进一步优化分子的设计和合成路径。
由于这是一个专注研究的开源项目,其生态扩展更多地体现在学术合作和后续研究之中,开发者和研究人员可以通过贡献代码、分享案例分析或在相关论坛讨论,不断丰富这个领域的实践和应用。
请注意,以上内容为简化的指导,实际操作时应参照项目仓库中的最新说明和文档,以获取最准确的信息和步骤。
multiobj-rationale 项目地址: https://gitcode.com/gh_mirrors/mu/multiobj-rationale