首页 > TAG信息列表 > Torch

with torch.no_grad() 和 @torch.no_grad()

Pytorch中with torch.no_grad()或@torch.no_grad() 用法 https://www.cnblogs.com/douzujun/p/13364116.html requires_grad=True 要求计算梯度 requires_grad=False 不要求计算梯度 with torch.no_grad()或者@torch.no_grad()中的数据不需要计算梯度,也不会进行反向传播 model.e

pytorch 和 tensorflow的 upsampling 互通代码

pytorch 实现上采样 点击查看代码 import numpy as np import torch.nn.functional as F import torch from torch import nn input = torch.arange(0, 12, dtype=torch.float32).view(2, 2, 3).transpose(1, 2) # size 和 scale_factor只能二选一 sample_layer = nn.Upsample(

pytorch简单实现神经网络

一、基本 (1)利用pytorch建好的层进行搭建 import torch from torch import nn from torch.nn import functional as F #定义一个MLP网络 class MLP(nn.Module): ''' 网络里面主要是要定义__init__()、forward() ''' def __init__(self): '

转置卷积

一. 基本操作 不同于一般的卷积做的是多个元素->1个元素,转置卷积是从1个元素到多个元素 二. 填充、步幅和多通道 1. 填充 常规卷积中padding是在输入的外圈添加元素,转置卷积中的padding则是在输出中删除外圈的元素 x = torch.tensor([[0.0, 1.0], [2.0, 3.0]]) x = x.reshape(1

torch.load中map_location和model.to的关系

  参考资料:   https://discuss.pytorch.org/t/is-map-location-in-torch-load-and-model-load-state-dict-independent-from-device-in-to/99983   我的问题和参考资料中的一样,在使用torch.load的时候有一个map_location参数,此时可以将checkpoint等加载到对应的device上。但

强化学习-PPO

1.PPO是采用截断来对动作的输出进行约束,保证相同的状态下,同样的输出 ratio = torch.exp(log_probs - old_log_probs) surr1 = ratio * advantage surr2 = torch.clamp(ratio, 1 - self.eps, 1 + self.eps) * advantage # 约束 2.使用一个累积的状态优势值来对ratio进行加权 #

强化学习-Actor-Critic(演员和评论家)

1.Actor-Critic既学习价值函数,也学习策略函数 2.价值函数用来评估当前的状态是好的,还是不好的,进而帮助Actor进行策略更新 actor_loss = torch.mean(-log_probs * td_delta.detach()) # 即由td_delta来调控损失 3.Critic的学习价值,由Q_value相同的求解方式求出,即Critic(state) =

千言万语带你用PyTorch搞深度学习

千言万语带你用PyTorch搞深度学习 大纲: *深度学习 *前言 1.基础数据:Tensor 1.1 张量的创建 1.2 火炬。浮点张量 1.3 火炬。整数张量 1.4 火炬.randn 1.5 火炬范围 1.6 torch.zeros/ones/empty 2.二、Tensor的操作 2.1 火炬.abs 2.2 火炬.add 2.3 手电筒.clamp 2.4 火炬.div 2.5 火

pytorch加速训练过程(单机多卡)

第一种方式:nn.DataParallel方式 # main.py import torch import torch.distributed as dist gpus = [0, 1, 2, 3]#指定有哪些gpu torch.cuda.set_device('cuda:{}'.format(gpus[0]))# train_dataset = ... train_loader = torch.utils.data.DataLoader(train_dataset, batch

强化学习-PolicyGrad(策略梯度强化学习)

1.这是一种在线的强化学习方法 2.使用的是动作状态概率的输出值,求取最大化的收益Q, 而不是直接输出Q值 log_prob = torch.log(self.policy_net(state).gather(1, action)) G = self.gamma * G + reward loss = -log_prob * G # 最大化log_prob * G 即最小化-log_prob * G 3.对

Pytorch torch.nn.functional.softmax: What dimension to use?

torch.nn.functional.softmax https://pytorch.org/docs/stable/generated/torch.nn.functional.softmax.html?highlight=softmax#torch.nn.functional.softmax https://stackoverflow.com/questions/49036993/pytorch-softmax-what-dimension-to-use Pytorch softmax: What d

使用LSTM进行时间序列预测PyTorch版本

前言 时间序列数据,顾名思义,是一种随着时间改变的数据。例如, 24小时气温数据, 一个月的产品价格数据, 某一公司股票价格年度数据。 。。。。。。 高级深度学习模型,比如长短期记忆网络(LSTM),能够捕获到时间序列数据中的变化模式,进而能够预测数据的未来趋势。本文中,我们将使用pytorch

torch.repeat()

PyTorch中的repeat()函数可以对张量进行重复扩充。 >>> a= torch.arange(24).reshape(1,2,3,4) >>> print(a.size()) torch.Size([1, 2, 3, 4]) >>> print("b.size",a.repeat(2,2,2,2).size()) b.size torch.Size([2, 4, 6, 8]) >>> print(&qu

GPU多卡训练torch模型

用命令即可: python3 -m torch.distributed.launch --nproc_per_node 8 train.py 或者 使用Accelerator: https://huggingface.co/docs/transformers/v4.21.2/en/accelerate  

目标检测-锚框

一.锚框个数计算以及锚框高宽计算 二.代码实现 def multibox_prior(data, sizes, ratios): """生成以每个像素为中心具有不同形状的锚框""" in_height, in_width = data.shape[-2:] device, num_sizes, num_ratios = data.device, len(sizes), len(ratios) boxes

torch.meshgrid

1:https://blog.csdn.net/weixin_39504171/article/details/106356977 2: https://pytorch.org/docs/stable/generated/torch.meshgrid.html

pytorch转为mindspore模型

MindConverter将PyTorch(ONNX)模型快速迁移到MindSpore框架下使用。 第一步:pytorch模型转onnx: import torch # 根据实际情况替换以下类路径 from customized.path.to.pytorch.model import PyTorchNetwork model = PyTorchNetwork() param_dict = torch.load('/path/to/weight

PyTorch中的CUDA操作

  CUDA(Compute Unified Device Architecture)是NVIDIA推出的异构计算平台,PyTorch中有专门的模块torch.cuda来设置和运行CUDA相关操作。本地安装环境为Windows10,Python3.7.8和CUDA 11.6,安装PyTorch最新稳定版本1.12.1如下: pip3 install torch torchvision torchaudio --extra-in

4. 基础实战——FashionMNIST时装分类

import os import numpy as np import pandas as pd import torch import torch.nn as nn import torch.optim as optim from torch.utils.data import Dataset, DataLoader # 设置环境和超参数 ## 方案一:使用os.environ # os.environ['CUDA_VISIBLE_DEVICES']='0' #

深度学习 之 模型部署【4】-libtorch入门 - pytorch部署torchscript 以及 c++ libtorch 调用 pytorch 模型

pytorch 部署 torchscript from torchvision.models import resnet34 import torch.nn.functional as F import torch.nn as nn import torch import cv2 #读取一张图片,并转换成[1,3,224,224]的float张量并归一化 image = cv2.imread("flower.jpg") image = cv2.resize(image,(2

pytorch环境下查看gpu是否可用

(36条消息) yolov5设置GPU - CSDN python #输入库 import torch #查看版本 print(torch.__version__) #查看gpu是否可用 torch.cuda.is_available() #返回设备gpu个数 torch.cuda.device_count() #退出python quit()  

torch工具箱

Autograde 用户自己创建的叫叶子变量,计算得来的是中间变量; 前向传播时,torch自动构建计算图,从input到loss; 反向求导时,沿着计算图,从loss到input; inpt = torch.ones(size=(4, )) w = torch.tensor(2.0, requires_grad=True) l = inpt * w loss = l.mean() # 钩子函数,在反向传播

65注意力评分函数

点击查看代码 import math import torch from torch import nn from d2l import torch as d2l # 掩蔽softmax操作 #@save def masked_softmax(X, valid_lens): """通过在最后一个轴上掩蔽元素来执行softmax操作""" # X:3D张量,valid_lens:1D或2D张量 if valid_lens

67自注意力和位置编码

点击查看代码 import math import torch from torch import nn from d2l import torch as d2l # 自注意力 num_hiddens, num_heads = 100, 5 attention = d2l.MultiHeadAttention(num_hiddens, num_hiddens, num_hiddens, num_hiddens, num

torch.utils.data

class torch.utils.data.Dataset 表示 \(Dataset\) 的抽象类。 所有其他数据集都应该进行子类化。所以子类应该覆写 __len__和__getitem__,前者提供了数据集的大小,后者支持整数索引,范围从 \(0\) 到 \(len(self)\)。 class torch.utils.data.TensorFataset(data_tensor, target_t