DeepChem教程9:高级模型训练

本教程介绍了深度学习模型训练中的高级技巧,包括超参数优化和动态学习速率调整。通过示例展示了如何使用DeepChem库对HIV数据集进行分类,并在训练过程中监控验证集的ROC AUC分数,以实现更好的模型性能。
摘要由CSDN通过智能技术生成

DeepChem教程9:高级模型训练

到目前为止我们的模型训练按照如下简单的过程:加载数据集,创建模型,调用 fit()函数,评估模型,完成。这对于举例来说是可以的,但是实际的机器学习项目中过程通常更复杂。本教程我们看一下更真实的模型训练工作流程。

超参数优化

我们从加载HIV数据集开始。它基于是否抑制HIV复制酶来分类40000个分子。

In [1]:

import deepchem as dc
tasks, datasets, transformers = dc.molnet.load_hiv(featurizer='ECFP', split='scaffold')
train_dataset, valid_dataset, test_dataset = datasets
现在用数据集来训练模型。我们将使用MultitaskClassifier, 它只是多个全链接层的堆叠。但是还有很多选项。要有多少层呢?每层的数目是多少呢?dropout应该是多少?学习速率是多少?
这些都叫超参数。标准的方法是试用多个值,用训练集来训练每一个模型,用验证集来评估模型,看哪个模型更好。你可以亲手这么做,但是让计算机来为你做更好。DeepChem提供了选择超参数的算法,可以在dc.hyper包中找到。对于这个例子,我们使用GridHyperparamOpt,这是最基础的方法。我们只是给它每个超参数的参数列表,它会尽力的组合它们。

选项的列表由我们提供的dict定义。对于每一个模型参数,我们提供试用值的列表。本例我们考虑三种可能的隐藏层:宽度为500的单隐藏层,宽度为1000的单隐藏层,宽度为1000的双隐藏层。我们也考虑了两种dropout (20% 50%),以及两种学习速率(0.001 and 0.0001)

In [2]:

params_dict = {
  
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值