SGMD
代理模型引导的分子发现(SGMD)

代理模型引导的分子生成与发现框架工作流程
使用方法
-
./example目录包含论文中使用的三个完整示例数据集:energetics、BACE和permeability。 -
若要迁移至自定义数据集,请将
Sequence_v1.2.py、Diffusion_v1.2.py和D.csv放置在同一目录下。可以通过修改DATA_CSV = "D.csv"更改文件名。D.csv必须包含两列:SMILES:分子表示;D:目标性质。标签列的匹配规则可以通过r"(^|[^A-Za-z])D([^A-Za-z]|$)|label|target"修改。 -
相应的运行命令分别为
python Sequence_v1.2.py和python Diffusion_v1.2.py。 -
Sequence_v1.2.py和Diffusion_v1.2.py中的TARGET_D表示用于候选分子筛选和富集的目标性质阈值。在Diffusion_v1.2.py中,GRAPH_N_MAX和GEODIFF_N_MAX应设置为最大原子数(包括加氢后结构中的氢原子),而GRAPH_ATOMS用于指定所考虑的元素类型。 -
./smiles_check目录中的smiles_check_v6.py是一个自动化后处理脚本,用于筛选和可视化生成的分子结果。该脚本从generated_with_pred_MERGED_R5.csv中读取SMILES和预测性质值D,筛选并排序D > 9.4的分子(df = df[df[D_COL] > 9.4]),并使用RDKit进行全面的化学有效性筛选。此外,该脚本还包含可选的新颖性过滤功能,通过canonical SMILES匹配去除已存在于Dm.csv中的分子,以及通过前端开关控制的可选最大环尺寸过滤功能(默认阈值 = 12)。检查内容包括:SMILES成功解析及SanitizeMol检查、单一中性组分及可选自由基限制、可选原子白名单、原子数和重原子数的分子尺寸限制、包括MW、LogP、TPSA、HBD/HBA和可旋转键在内的理化性质范围、环和芳香环数量限制、PAINS结构警示,以及合成可及性SA分数阈值筛选。
[!NOTE]
chemprop使用v1.6.1;其调用方式在Windows和Ubuntu系统中有所不同,Sequence_v1.2.py和Diffusion_v1.2.py均支持这两个平台。为避免仓库体积过大,
./example目录中不包含*.pt文件。如有需要,可通过电子邮件(misaraty@163.com)获取相应的*.pt文件,或通过运行脚本重新生成。