PyTorch使用笔记

本文介绍如何将神经网络模型放置于GPU上以加速训练过程,使用PyTorch的nn.Sequential构造多层感知器(MLP),并在每个epoch后利用验证集评估模型,以防止过拟合并选择最佳模型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 将data, target, loss层,神经网络模型放到GPU上!
  2. 在构造模型时,可以使用这种方法,直接使用nn.Sequential来构造!
    这样在forward时可以直接用一个self.model来做!
class MLP(nn.Module):

    def __init__(self):
        super(MLP, self).__init__()

        self.model = nn.Sequential(
            nn.Linear(784, 200),
            nn.ReLU(inplace=True),
            nn.Linear(200, 200),
            nn.ReLU(inplace=True),
            nn.Linear(200, 10),
            nn.ReLU(inplace=True),
        )

    def forward(self, x):
        x = self.model(x)

        return x
  1. 神经网络在训练时可以每经过一个epoch就用训练得到的模型在validation set上进行一下测试,看模型实际效果,从而有效避免过拟合的出现!
  2. 训练时可以每个epoch(或者每隔n个)学习到的模型以及其loss保存下来,然后用val set验证其准确率,最后所有的epoch完成后,从中选择一个效果最好的check point模型进行加载,对test set进行测试看其实际泛化能力,但一定注意test set的数据不参与backward,只是forward
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值