pytorch
Seanlocked
Call on duty.
展开
-
PyTorch设立计算图并自动计算(梯度下降和线性回归的实现)
numpy和pytorch实现梯度下降法设定初始值求取梯度在梯度方向上进行参数的更新使用Python实现x = 1learning_rate = 0.1epochs = 100y = lambda x : x ** 2 + 2 * x + 1for epoch in range(epochs): dx = 2 * x + 2 x = x - learning...原创 2019-04-12 11:57:01 · 700 阅读 · 0 评论 -
PyTorch实现Logistic regression
PyTorch基础实现代码import numpy as npimport torchfrom torch.autograd import Variabletorch.manual_seed(2)x_data=Variable(torch.Tensor([[1.0],[2.0],[3.0],[4.0]]))y_data=Variable(torch.Tensor([[0.0],[0.0...原创 2019-04-12 12:36:59 · 1206 阅读 · 0 评论 -
用PyTorch实现多层网络
用PyTorch实现多层网络步骤如下:引入模块,读取数据构建计算图(构建网络模型)损失函数与优化器开始训练模型对训练的模型预测结果进行评估import torch.nn.functional as Fimport torch.nn.init as initimport torchfrom torch.autograd import Variableimport matpl...原创 2019-04-13 17:38:19 · 1909 阅读 · 0 评论 -
PyTorch理解更多神经网络优化方法
了解不同优化器SGD随机梯度下降法是梯度下降法的一个小变形,就是每次使用一批(batch) 数掘进行梯度的计算,而不是计算全部数据的梯度.因为现在深度学习的数据量都特别大, 所以每次都计算所有数据的梯度是不现实的,这样会导致运算时间特别长,同时每次都计算全部的梯度还失去了一些随机性, 容易陷入局部误差,所以使用随机梯度下降法可能每次都不是朝着真正最小的方向.但是这样反而容易跳出局部极小点。...原创 2019-04-16 19:32:03 · 555 阅读 · 0 评论 -
PyTorch实现L2正则化以及Dropout
了解知道Dropout原理如果要提高神经网络的表达或分类能力,最直接的方法就是采用更深的网络和更多的神经元,复杂的网络也意味着更加容易过拟合。于是就有了Dropout,大部分实验表明其具有一定的防止过拟合的能力。用代码实现正则化(L1、L2、Dropout)Dropout的numpy实现PyTorch中实现dropout...原创 2019-04-14 22:13:39 · 5551 阅读 · 1 评论 -
PyTorch手写数字识别
手写数字识别是经典数据集最后一次任务我们来搞一下import torchimport torch.nn as nnimport torch.nn.functional as Fimport torch.optim as optimimport matplotlib.pyplot as pltfrom torchvision import datasets, transforms ...原创 2019-04-18 22:09:54 · 7891 阅读 · 2 评论