pytorch笔记-batch

在学习PyTorch的batch处理时,遇到TensorDataset函数因版本更新产生的不兼容错误。修正方法包括调整参数传递方式以及将训练过程置于if name == 'main':之下,以消除'freeze_support()'警告。
摘要由CSDN通过智能技术生成

在学习莫烦大神的pytorch视频的batch部分,由于pytorch版本更新,产生了一些不兼容的情况。源代码如下:

import torch
import torch.utils.data as Data
torch.manual_seed(1) # 设定随机数种子


BATCH_SIZE=5
x=torch.linspace(1,10,10)
y=torch.linspace(10,1,10)

torch_dataset=Data.TensorDataset(data_tensor=x,target_tensor=y)
loader=Data.DataLoader(#变成小批数据
    dataset=torch_dataset,
    batch_size=BATCH_SIZE,#每一组batch里面原数据个数
    shuffle=True,  #是否将原数据打乱分组
    num_workers=2
)

for epoch in range(3):
    for step,(batch_x,batch_y) in enumerate(loader):
        print('Epoch:',epoch)

直接运行会报错,是由于Data.TensorDataset()函数版本更新后接受参数为*tensor,不再设默认值,故只需将对应行改为:

torch_dataset=Data.TensorDataset(x,y)

但是会继续报错:
The “freeze_support()” line can be omitted if the program
is not going to be frozen to produce an executable.
只需把训练过程放在if name

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值