Pytorch
沐雲小哥
这个作者很懒,什么都没留下…
展开
-
pytroch基础用法
pytroch基础用法原创 2022-07-07 23:55:40 · 423 阅读 · 0 评论 -
Pytorch实现ResNet结构
Resnet-18 和 Resnet-34代码:class BasicBlock(nn.Module): expansion = 1 def __init__(self, in_channel, out_channel, stride=1, downsample=None, **kwargs): super(BasicBlock, self).__init__() self.conv1 = nn.Conv2d(in_channels=in_channel, out_channels=.原创 2021-09-08 00:00:26 · 838 阅读 · 0 评论 -
Pytorch极简入门教程(十六)——预训练网络ResNet101微调
预训练网络ResNet101微调导入必要模块import torchimport torch.nn as nnimport torch.optim as optimimport numpy as npimport torch.nn.functional as Fimport matplotlib.pyplot as pltimport torchvisionfrom torchvision import transformsfrom torch.utils.data import Da原创 2021-05-06 22:03:03 · 4643 阅读 · 2 评论 -
Pytorch极简入门教程(十五)——预训练网络ResNet
预训练网络ResNet导入必要模块import torchimport torch.nn as nnimport torch.nn.functional as Fimport torch.optim as optimimport numpy as npimport matplotlib.pyplot as pltimport torchvisionfrom torchvision import transformsfrom torch.utils.data import DataLoa原创 2021-05-06 22:02:27 · 1469 阅读 · 0 评论 -
Pytorch极简入门教程(十四)——学习速率衰减
学习速率衰减导入必要的模块import torchimport torch.nn as nnimport torch.nn.functional as Fimport torch.optim as optimimport numpy as npimport matplotlib.pyplot as pltimport torchvisionfrom torchvision import transformsfrom torch.utils.data import DataLoader原创 2021-05-06 22:01:59 · 154 阅读 · 0 评论 -
Pytorch极简入门教程(十三)——批标准化BN层
批标准化BN层导入必要的模块import torchimport torch.nn as nn # 神经网络主要工具箱import torch.nn.functional as Fimport torch.optim as optimimport numpy as npimport matplotlib.pyplot as pltfrom torchvision import transforms# torchvision 有4个功能模块: model、datasets、transfo原创 2021-05-06 22:01:11 · 390 阅读 · 0 评论 -
Pytorch极简入门教程(十六)——DenseNet提取特征
Pytorch之DenseNet提取特征导入必要的模块import torchfrom torch.utils import datafrom PIL import Imageimport numpy as npimport torchvisionfrom torchvision import transformsimport matplotlib.pyplot as pltimport glob# 卷积部分可以认为是特征提取网络#model = torchvision.model原创 2021-05-05 21:54:47 · 2289 阅读 · 3 评论 -
Pytorch极简入门教程(十九)——ResNet网络结构
ResNet网络结构导入必要的模块import torchimport torch.nn as nnimport torch.nn.functional as Fimport torchvisionimport matplotlib.pyplot as plt定义ResnetbaseBlock函数class ResnetbaseBlock(nn.Module): def __init(self, in_channels, out_channels): super()原创 2021-05-05 21:53:52 · 222 阅读 · 0 评论 -
Pytorch极简入门教程(十八)——自定义输入Dataset类
自定义输入Dataset类导入必要的模块import torchfrom torch.utils import datafrom PIL import Imageimport numpy as npfrom torchvision import transformsfrom torch.utils.data import DataLoaderimport torchvisionimport matplotlib.pyplot as pltimport glob导入数据的图片和标签原创 2021-05-05 21:52:59 · 604 阅读 · 0 评论 -
Pytorch极简入门(十八)——模型权重保存
模型权重保存导入必要模型import torchimport torch.nn as nnimport torch.nn.functional as Fimport torch.optim as optimimport matplotlib.pyplot as pltimport numpy as npimport torchvisionfrom torchvision import transformsfrom torch.utils.data import DataLoaderi原创 2021-05-05 21:51:55 · 7961 阅读 · 0 评论 -
Pytorch极简入门教程(十二) —— 四种天气数据集的分类
import torchimport torch.nn as nnimport torch.nn.functional as Fimport torch.optim as optimimport numpy as npimport matplotlib.pyplot as pltfrom torch.utils.data import DataLoaderfrom torch.utils.data import TensorDatasetimport torchvision# python原创 2020-12-14 09:11:29 · 2334 阅读 · 1 评论 -
Pytorch极简入门教程(十一)—— GPU上训练模型
# -*- coding: utf-8 -*-"""手写数字分类 卷积池化模型"""import torchimport torch.nn as nnimport torch.nn.functional as Fimport torch.optim as optimimport numpy as npfrom torch.utils.data import DataLoaderfrom torch.utils.data import TensorDatasetimport matp原创 2020-12-08 18:27:51 · 344 阅读 · 2 评论 -
Pytorch中iter(dataloader)的使用
dataloader本质上是一个可迭代对象,可以使用iter()进行访问,采用iter(dataloader)返回的是一个迭代器,然后可以使用next()访问。也可以使用enumerate(dataloader)的形式访问。下面举例说明:transformation = transforms.Compose([ transforms.ToTensor()])train_ds = datasets.MNIST("./data", train=True, transform=transfor原创 2020-12-08 10:58:39 · 22949 阅读 · 10 评论 -
Pytorch极简入门教程(十)—— 手写数字识别
import torchimport torch.nn as nnimport torch.nn.functional as Fimport torch.optim as optimimport numpy as npfrom torch.utils.data import TensorDatasetfrom torch.utils.data import DataLoaderimport matplotlib.pyplot as plt"""torchvision内置了常用数据集和常见原创 2020-12-07 22:04:25 · 184 阅读 · 2 评论 -
Pytorch极简入门教程(九)—— softmax分类
# -*- coding: utf-8 -*- """ 在pytorch里,对于多分类问题我们使用 nn.CrossEntropyLoss()和 nn.NLLLoss等来计算softmax交叉熵 """原创 2020-12-07 14:26:48 · 704 阅读 · 4 评论 -
Pytorch极简入门教程(八)—— 精确率计算
import torchimport pandas as pdimport numpy as npimport matplotlib.pyplot as pltfrom torch import nnfrom torch.utils.data import DataLoaderfrom torch.utils.data import TensorDatasetfrom sklearn.model_selection import train_test_splitdata = pd.read原创 2020-12-07 14:22:36 · 761 阅读 · 0 评论 -
Pytorch极简入门教程(七)—— 划分训练集和测试集
# -*- coding: utf-8 -*-from torch.utils.data import TensorDatasetfrom torch.utils.data import DataLoaderimport torchimport pandas as pdimport numpy as npimport matplotlib.pyplot as pltfrom torch import nndata = pd.read_csv("dataset/HR.csv")print(原创 2020-12-07 14:13:31 · 2417 阅读 · 0 评论 -
Pytorch极简入门教程(六)——多层感知机
# -*- coding: utf-8 -*-import torchimport pandas as pdimport numpy as npimport matplotlib.pyplot as pltfrom torch import nndata = pd.read_csv("dataset/HR.csv")print("data.head():\t", data.head())data.info()print("data.info():\t", data.info())data原创 2020-12-07 14:08:10 · 180 阅读 · 0 评论 -
pytorch极简入门教程(五)—— Dataloaer和 Dataset的使用
from torch.utils.data import TensorDatasetfrom torch.utils.data import DataLoaderimport torchimport pandas as pdimport numpy as npimport matplotlib.pyplot as pltfrom torch import nndata = pd.read_csv("dataset/HR.csv")print("data.head():\t", data.h原创 2020-12-04 12:02:41 · 651 阅读 · 1 评论 -
Pytorch极简入门教程(四)—— 逻辑回归与数据处理
import torchimport pandas as pdimport numpy as npimport matplotlib as pltfrom torch import nndata = pd.read_csv("dataset/credit-a.csv", header=None)print(data.info())data.head()# 查看前5行的数据print("data.head():\t", data.head())X = data.iloc[:, :-1]原创 2020-12-04 00:18:12 · 256 阅读 · 0 评论 -
Pytorch极简入门教程(三)—— 入门实例
import pandas as pdimport torchimport numpy as npimport matplotlib.pyplot as pltfrom torch import nndata = pd.read_csv("dataset/Income1.csv")print("data.info:\t", data.info)X = torch.from_numpy(data.Education.values.reshape(-1, 1).astype(np.float32原创 2020-12-04 00:16:05 · 292 阅读 · 0 评论 -
Pytorch极简入门教程(二)—— 张量与数据类型
import torchimport numpy as npx = torch.randn(2, 3)print("x:\t", x)# 区别 x.size() 和 x.shape()print("x.size():\t", x.size())print("x.size(0):\t", x.size(0))print("x.shape:\t", x.shape)A = torch.zeros(2, 3)print("A:\t", A)B = torch.ones((2, 3, 4)原创 2020-12-02 14:22:41 · 177 阅读 · 0 评论 -
Pytorch极简入门教程(一)—— 数据集的读取
# -*- coding: utf-8 -*-import torchimport pandas as pdimport matplotlib.pyplot as pltimport numpy as npdata = pd.read_csv("dataset/Income1.csv")data.info()print("data:\t", data)# 绘制散点图plt.scatter(data.Education, data.Income)# x轴名称plt.xlabel("原创 2020-12-01 23:44:39 · 666 阅读 · 1 评论 -
Pytorch-Mnist手写数字识别
import torchimport numpy as np# 导入 Pytorch内置的mnist数据from torchvision.datasets import mnist# 导入预处理模块import torchvision.transforms as transformsfrom torch.utils.data import DataLoader# 导入nn及优化器import torch.nn.functional as Fimport torch.optim as opt原创 2020-11-30 16:17:41 · 142 阅读 · 1 评论 -
Pytorch--Tensor的几种形状
Tensor的几种形状Scalar:import torchfrom torch import tensor"""Tensor 常见的形式有那些:. 0 scalar. 1 vector. 2 matrix. 3 n-dimensional tensor"""# Scalar 通常就是一个数值x = tensor(42.)print("x:\t", x)print("x.dim():\t", x.dim())print("2*x:\t", 2*x)print("x原创 2020-11-06 21:48:38 · 1046 阅读 · 0 评论 -
Pytorch--LOSS及其梯度
LOSS及其梯度. Mean Squared Error. Cross Entropy Loss . binary . multi-class . +softmax . leave it to Logistic Regression Partautograd.grad:import torchfrom torch.nn import functional as F# pred = wx + bx = torch.ones(1)w = torch.full([1原创 2020-11-06 21:46:21 · 1063 阅读 · 0 评论 -
Pytorch--激活函数
激活函数Sigmoid / Logistic:import torch# 从-100到100,均匀切分成10份a = torch.linspace(-100, 100, 10)print("a:\t", a)# torch.sigmoid()"""from torch.nn import functional as FF.sigmoid()"""b = torch.sigmoid(a)print("b:\t", b)a: tensor([-100.0000, -77.77原创 2020-11-06 21:42:52 · 185 阅读 · 0 评论 -
线性回归
线性回归import torchimport torch.nn as nnimport numpy as npx_values = [i for i in range(11)]x_train = np.array(x_values, dtype = np.float32)# 将x_train列表形式转换成矩阵形式x_train = x_train.reshape(-1, 1)print("x_train.shape:\t", x_train.shape)y_values = [2*i+1原创 2020-11-06 21:37:44 · 224 阅读 · 0 评论 -
Pytorch--反向传播自动求导机制
反向传播自动求导机制# 框架帮我们把反向传播全部计算好import torch# 方法1x = torch.randn(3, 4, requires_grad=True)print("x:\t", x)# 方法2x = torch.randn(3, 4)x.require_grad = Trueprint("x:\t", x)b = torch.randn(3, 4, requires_grad = True)t = x + by = t.sum()print("y:\t", y原创 2020-11-06 21:37:01 · 397 阅读 · 0 评论 -
Pytorch 属性统计
Pytorch 属性统计. norm. mean sum. prod. max, min, argmin, argmax. kthvalue, topknorm - p :范数import torcha = torch.full([8], 1)b = a.view(2, 4)c = a.view(2, 2, 2)# 所有元素的1范数print("a.norm(1):\t", a.norm(1))print("a.norm(1):\t", a.norm(1))print("c原创 2020-11-05 10:19:41 · 967 阅读 · 0 评论 -
Pytorch 数学运算
Pytorch 数学运算basic:add sub div matmulimport torcha = torch.rand(3, 4)b = torch.rand(4)print("a+b:\t", a+b)c = torch.add(a, b)print("c:\t", c)# a-b == sub(a, b)d = torch.all(torch.eq(a-b, torch.sub(a, b)))print("d:\t", d)# a/b == div(a, b)原创 2020-11-05 10:18:46 · 360 阅读 · 0 评论 -
Pytorch 索引与切片
Pytorch 索引与切片Indexingimport torcha = torch.rand(4, 3, 28, 28)# 对第一个维度进行索引 从最左边开始索引print("a[0].shape:\t", a[0].shape)print("a[1].shape:\t", a[1].shape)# 索引到第二个维度b = a[0, 0].shapeprint('a[0, 0].shape:\t', a[0, 0].shape)print("a[1, 1].shape:\t", a[0原创 2020-11-02 21:32:26 · 267 阅读 · 0 评论 -
Pytorch Broadcast自动扩展
Pytorch Broadcast自动扩展Broadcasting 1. Expand 2. withour copying data1. for catual demanding[class, students, scores]Add bias for every students: +5 score[4, 32, 8] + [4, 32, 8][4, 32, 8] + [5.0]2. memory consumption[4, 32, 8] => 1024[5.0] =&g原创 2020-11-02 21:31:50 · 304 阅读 · 0 评论 -
Pytorch 维度变换
Pytorch 维度变换view reshapeimport torcha = torch.rand(4, 1, 28, 28)print("a.shape:\t", a.shape)# prod(a.size) = prod(a'.size)b = a.view(4, 28*28)print("b:\t", b)c = a.view(4, 28*28).shapeprint("c:\t", c)d = a.view(4, 784).shapeprint("d:\t", d)原创 2020-11-02 21:31:03 · 239 阅读 · 0 评论 -
Pytorch 合并与分割
Pytorch 合并与分割cat Statistics about scoresimport torcha = torch.rand(4, 32, 8)print("a.shape:\t", a.shape)b = torch.rand(5, 32, 8)print("b.shape:\t", b.shape)c = torch.cat([a, b], dim = 0).shapeprint("c:\t", c)a.shape: torch.Size([4, 32, 8])原创 2020-11-02 21:30:01 · 211 阅读 · 0 评论 -
Pytorch基本数据类型
Pytorch基本数据类型基本数据类型:a = torch.randn(2, 3)print(a.type())print(type(a))torch.FloatTensortorch.Tensor标量的表示:Dimension 0 / rank 0 通常使用在lossprint(torch.tensor(1.))print(torch.tensor(1.3))tensor(1.)tensor(1.3000)b = torch.tensor(2.2)print(b.原创 2020-10-30 21:04:34 · 533 阅读 · 0 评论 -
Pytorch 创建Tensor
Pytorch 创建Tensortensor创建import numpy as npimport torcha = np.array([2, 3.3])b = torch.from_numpy(a)print("b: \t", b)c = np.ones([2,3])d = torch.from_numpy(c)print("d: \t", d)b: tensor([2.0000, 3.3000], dtype=torch.float64)d: tensor([[1原创 2020-10-30 20:51:13 · 264 阅读 · 0 评论