前言
Python初学者一枚,文章仅为个人学习记录,便于以后查看使用。
使用PyTorch更方便地实现线性回归的训练。
1 生成数据集
生成与上一节中相同的数据集。
其中features是训练数据特征,labels是标签。
import torch
import numpy as np
num_inputs = 2
num_examples = 1000
true_w = [2, -3.4]
true_b = 4.2
features = torch.tensor(np.random.normal(0, 1, (num_examples, num_inputs)), dtype=torch.float)
labels = true_w[0] * features[:, 0] + true_w[1] * features[:, 1] + true_b
labels += torch.tensor(np.random.normal(0, 0.01, size=labels.size()), dtype=torch.float)
2 读取数据
PyTorch提供了data包来读取数据。
由于data常用作变量名,将导入的data模块用Data代替。
在每一次迭代中,我们将随机读取包含10个数据样本的小批量。
import torch.utils.data as Data
batch_size = 10
# 将训练数据的特征和标签组合
dataset = Data.TensorDataset(features, labels)
# 随机读取小批量
data_iter