pytorch

本文探讨了如何在PyTorch中利用nn.Module创建模块,定制数据集并运用torch.utils.data.DataLoader进行高效数据加载。重点讲解了register_buffer、collate_fn的使用以及如何通过tensorboard记录训练过程。同时介绍了torchvision库的dataset和transforms在预处理中的应用。

nn.Module

  • self.register_buffer(),将该成员变量在前向传播前,保存下来(即保存在model.state_dict中)

torch.utils

data.Dataset

自定义数据集继承父类,自定义数据集需要重写__getitem____len__方法

data.DataLoader

  • collate_fn:将自定义数据集__getitem__输出合成一个list,然后分离,各自成为一个batch_size的Tensor,对字典的处理比较特殊复杂;自定义collate_fn(unet代码中)
  • pin_memory:锁页内存,开启后速度更快

tensorboard.Summarywriter

  • 实例化writer对象
writer = SummaryWriter("./logs/dataloader")
  • 添加log
writer.add_images("Epoch:{}".format(epoch), imgs, step)
  • 启动tensorboard
tensorboard --logdir="./logs/dataloader" --bind_all

torchvision

datasets

自带一些数据集下载功能,不过此种方式定义的需要传入transform

tranforms

预处理,使用compose

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值