DRlinker基于片段的分子生成模型具体复现步骤

DRlinker:
Prior:
1、数据预处理,数据来源ChEMBL数据库,数据集与SyntaLinker相同
2、模型预训练,bash training.sh;其中会踩很多坑,大部分是路径、引用库和cuda的问题
#可以采用自己的数据集或者chenbl数据集
RL:
3、预训练结束后,微调和测试(RL) (有两种搜索方式beam search & Multinomial sampling),
bash fine-tuning-test.sh:train_type为M或者B
其中注意打分函数是可选的,#choose scoring function: tanimoto, activity_model, NOS, CLOGP, linker_length, QED_SA, MW, QED, SIM_3D, SIM_3D1, SIM_3D2, M_SIM_QED
score_function=activity_model
训练RL模型:
bash train_agent_ms.sh:train_type是M
bash train_agent.sh   :train_type是B
其中注意打分函数是可选的,#choose scoring function: tanimoto, activity_model, NOS, CLOGP, linker_length, QED_SA, MW, QED, SIM_3D, SIM_3D1, SIM_3D2, M_SIM_QED
score_function=activity_model
 

PointNet是一个处理点云数据的深度学习框架,它的实现使用了PyTorch。下面是复现PointNet的具体步骤: 1. 准备数据集 PointNet处理的是点云数据,因此需要准备相应的数据集。可以使用公开的点云数据集,如ModelNet40、ShapeNet等。数据集需要进行预处理,将点云数据转换为张量形式,同时需要进行归一化和数据增强等操作。 2. 定义模型 PointNet由两个主要部分组成:PointNet Encoder和PointNet Decoder。PointNet Encoder负责将点云数据编码为全局和局部特征,PointNet Decoder则将这些特征解码为点云数据。PyTorch的实现可以参考PointNet论文中的代码。 3. 定义损失函数 PointNet的损失函数采用了交叉熵和正则化项。可以使用PyTorch提供的交叉熵损失函数和L2正则化项来定义损失函数。 4. 定义优化器 可以使用PyTorch提供的优化器,如SGD、Adam等。 5. 训练模型 将数据集分为训练集和测试集,使用PyTorch提供的DataLoader加载数据,然后使用定义的模型、损失函数和优化器进行模型训练。可以使用PyTorch提供的自动微分机制进行反向传播,更新模型参数。 6. 测试模型 使用测试集测试训练好的模型,计算模型的准确率和其他指标。 以上就是复现PointNet的具体步骤,需要注意的是,由于点云数据的处理比较复杂,因此需要仔细阅读PointNet论文和相关代码,以确保复现过程正确无误。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值