训练误差和泛化误差 深度学习模型到底是在学习什么,这是一个很重要的问题。简单来说,它是从喂给它的数据当中学习到当中模式pattern,利用这个
数据导入 import torch from torch import nn from d2l import torch as d2l batch_size = 256 train_iter, test_iter = d2l.load_data_fashion_mnist(batch_size) # 每次随机取batch_size个样本 模型 net = nn.Sequential(nn.Flatten(), nn.Linear(784, 256), nn.ReLU(), nn.Linear(256, 10)) def init_weights(m): if type(m) == nn.Linear: nn.init.normal_(m.weight, std=0.01) net.apply(init_weights); apply类似于p
数据导入 import torch from torch import nn from d2l import torch as d2l batch_size = 256 train_iter, test_iter = d2l.load_data_fashion_mnist(batch_size) # 每次随机取batch_size个样本 初始化模型参数 num_inputs, num_outputs, num_hiddens = 784, 10, 256 W1 = nn.Parameter(torch.randn( num_inputs, num_hiddens, requires_grad=True) * 0.01) b1 = nn.Parameter(torch.zeros(num_hiddens, requires_grad=True)) W2 =
多层感知机 多层感知机故名思义,在之前的线性模型(linear、softmax)基础上,增加了网络的层数。这也是深度学习的基础。 线性模型的局限
《Dive-into-DL-PyTorch》 学习记录(P42-P74)
注意 本文主要记录代码,优化细节,添加注释。 加载数据 import torch from torch import nn from d2l import torch as d2l batch_size = 256 train_iter, test_iter = d2l.load_data_fashion_mnist(batch_size) 初始化参数 # PyTorch不会隐式地调整输入的形状。
注意 本文主要记录代码,优化细节,添加注释。 数据加载 import torch from IPython import display from d2l import torch as d2l batch_size = 256 train_iter, test_iter = d2l.load_data_fashion_mnist(batch_size) 其中load_data_fashion_mnist由
分类问题与回归问题有明显的区别,本质是连续和离散的区别,比如我想知道某张照片是猫还是狗,如果模型的输出是一个0.9其实不能代表任何事情,难道
通过使用深度学习框架来简洁地实现 线性回归(2)–从零实现中 的(线性回归模型)
使用基础的Tensor
以及autograd
实现线性回归模型的构建和训练