愈创木酚:新分子设计的基准
guacamol的Python项目详细描述
愈创木酚
guacamol是一个开源的python包,用于为 de novo分子设计。
为了深入解释基准和基线分数的类型, 请查阅我们的报纸 Benchmarking Models for De Novo Molecular Design
安装
安装guacamol
的最简单方法是使用pip
:
pip install guacamol
guacamol
需要RDKit library(版本2018.09.1.0
或更新版本)。
基准模型
对于分布式学习基准,专门化DistributionMatchingGenerator
(来自guacamol.distribution_matching_generator
)为您的模型。
这个类的实例必须能够生成类似于训练集的分子。
对于实际的基准测试,请调用assess_distribution_learning
(来自guacamol.assess_distribution_learning
)一个类的实例。
您还必须提供培训集文件的位置(请参见下面的“数据”部分)。
对于目标导向的基准,专门化GoalDirectedGenerator
(来自guacamol.goal_directed_generator
)为您的模型。
这个类的实例必须能够生成指定数量的分子
在给定的评分函数中获得高分的。
对于实际的基准测试,请调用assess_goal_directed_generation
(来自guacamol.assess_goal_directed_generation
)一个类的实例。
基线方法的示例实现可从https://github.com/BenevolentAI/guacamol_baselines获得。
数据
为了公平评估基准和结果的可比性, 您应该使用包含chembl数据集分子的训练集。 按照下面描述的过程获取标准化数据集。
下载
您可以下载预构建的数据集here:
md505ad85d871958a05c02ab51a4fde8530
training
md5e53db4bff7dc4784123ae6df72e3b1f0
validation
md5677b757ccec4809febd83850b43e1616
test
md57d45bc95c33c10cb96ef5e78c38ac0b6
all
生成
要自己生成培训数据,请运行
python -m guacamol.data.get_data -o [output_directory]
它将在当前文件夹中为您下载和处理chembl。
这个脚本将使用
^{
python包的不同版本可能会导致生成的数据集不同,从而导致脚本失败。 请参阅下面的部分(“docker”)以使用上面给出的散列重复生成标准化数据集。
Docker
要确保您有正确的依赖关系,您可以构建一个docker映像,请从顶层目录运行:
docker build -t guacamol-deps dockers/
然后您可以运行:
docker run --rm -it -v `pwd`:/guacamol -w /guacamol guacamol-deps python -m guacamol.data.get_data -o guacamol/data --chembl
排行榜
很快就会来。