pytorch专题

PyTorch安装相关

在虚拟环境安装的torch时,与这个torch相对应的cuda版本要与本机或者服务器上的版本相等,不然在安装一些库的时候可能会报错。 The detected CUDA version (12.4) mismatches the version that was used to compile PyTorch (11.7). Please make sure to use the

PyTorch之list、ndarray、tensor数据类型相互转换

温故而知新,可以为师矣! 一、参考资料 python中list、numpy、torch.tensor之间的相互转换 二、常用操作 list 转 numpy ndarray = np.array(list) import numpy as npa_list = [[j for j in range(5)] for i in range(3)]a_ndarray = np.array(a

为pytorch前向和反向的Tensor生成描述性统计

为pytorch前向和反向的Tensor生成描述性统计 代码 在调试Megatron-DeepSpeed的精度时,我们希望对比每一层前向和反向传播的输入输出误差。然而,由于数据量过大,直接保存所有数据不太现实。因此,我们生成了输入输出tensor的描述性统计信息,并等间隔抽样N个数据点,以比较这些点的相对误差,从而查找精度异常的位置。为了准确定位,我们通过类名和对象ID生成唯一的对象

【PyTorch与深度学习】6、PyTorch中搭建分类网络实例

课程地址 最近做实验发现自己还是基础框架上掌握得不好,于是开始重学一遍PyTorch框架,这个是课程笔记,此节课很详细,笔记记的比较粗,这个视频课是需要有点深度学习数学基础的,如果没有数学基础,可以一边学一边查一查 1. Transforms 我们导入到数据集中的图片可能大小不一样,数据并不总是以训模型所需的最终处理形式出现。我们使用Transforms对数据进行一些操作,使其适合训练(比如统

【Pytorch】10.CIFAR10模型搭建

CIFAR10模型 是torchvision中官方给出的一个数据集,可以通过 dataset = torchvision.datasets.CIFAR10('./data', train=False, download=True, transform=torchvision.transforms.ToTensor()) 来下载到指定文件夹 搭建CIFAR10模型 首先我们先

Pytorch层--AdaptiveAvgPool2d

翻译自: https://discuss.pytorch.org/t/what-is-adaptiveavgpool2d/26897 知乎链接: https://www.zhihu.com/question/282046628 函数原型: nn.AdaptiveAvgPool2d(output_size) 原理解释: 更多细节 池化模板大小计算(Pool Kernel Size): sten

python创建新环境并安装pytorch

python创建新环境并安装pytorch 一、创建新环境1、准备工作2、创建虚拟环境并命名3、激活虚拟环境 二、安装pytorch1、pytorch官网2、选择与你的系统相对应的版本3、安装成功 一、创建新环境 1、准备工作 本次创建的环境是在anaconda环境下,否则需要在纯净环境下创建,具体可以参考:创建python虚拟环境的两种方法 2、创建虚拟环境并命名 使用

##20 实现图像风格迁移:使用PyTorch深入学习的艺术之旅

文章目录 前言项目概述准备阶段图像处理模型选择风格和内容特征提取风格迁移算法优化过程结果展示完整代码与实验项目结论参考文献 前言 图像风格迁移是一种使一幅图像呈现另一幅画作风格的技术,通过深度学习,我们能够捕捉到内容图像的结构信息和风格图像的风格特征,并将它们融合在一起,创造出令人惊叹的艺术作品。本文将带领大家实现一个基于PyTorch的图像风格迁移项目。 项目概述

清华博士导师整理:Tensorflow 和 Pytorch 的笔记(包含经典项目实战)

作为一名 AI 工程师,掌握一门深度学习框架是必备的生存技能之一。 自 TensorFlow 从 Google 中脱颖而出以来,它在研究和商业领域成为最受欢迎的开源深度学习框架,紧接着 从 Facebook 诞生的 PyTorch 由于社区推动的易用性改进和越来越广泛的用例部署,而迅速赶上TensorFlow。 两个框架在当年一度备受争议,TensorFlow 和 PyTorch 谁更好? 从去

Pytorch代码基础—张量

Pytorch代码—张量 Pytorch张量 张量的属性: data:被包装的Tensorgrad:data的梯度grad_fn:创建Tensor的Function,是自动求导的关键requires_grad:指示是否需要梯度isleaf:指示是否是叶子结点(张量)dtype:张量的数据类型,如 torch.FloatTensor,torch.cuda.FloatTensorshape:张

pytorch 2.0 多线程并行,导致GPU利用100%,卡住

背景:       程序中有pytorch模型两个,yolov5,crnn。 之前无论是pth格式,还是TRT格式,并行的都没有问题。 最近发现,多线程ThreadPoolExecutor(max_workers=2)调用的时候,即单个进程内处理一张图像,依次是yolov5--->crnn模型,会导致GPU利用100%,卡住。 起初怀疑是:GPU显卡3090计算能力不够,但换成2080

(done) 关于 pytorch 代码里常出现的 batch_first 到底是啥?

参考文章:https://pytorch.org/docs/stable/generated/torch.nn.utils.rnn.pad_sequence.html 首先看参考文章里的解释,如下图 从文章描述来看,当 batch_first = True 时,输出的张量的 size 是 B x T x *。当 batch_first = False 时,输出的张量的 size 是 T

Pytorch学习-引言

Pytorch相关链接 Pytorch官方网站 https://pytorch.org/ Pytorch的Github仓库 https://github.com/pytorch/pytorch Pytorch论坛 https://discuss.pytorch.org/ Pytorch离线下载包链接 https://download.pytorch.org/wh

Ubuntu20.4安装pytorch的笔记和遇到的坑

1。 选择miniconda. 具体方法是下载到 Miniconda3-py311_23.11.0-1-Linux-x86_64.sh 然后执行安装。这里我不累述了。 2。 添加路径到~/.bashrc 中的$PATH 3。 conda deactivate后,conda create -n myenv 具体如下 conda create -n myenv python=3.8 co

ubuntu 22.04 安装 RTX 4090 显卡驱动 GPU Driver(PyTorch准备)

文章目录 1. 参考文章2. 检查GPU是Nvidia3. 卸载已有驱动3.1. 命令删除3.2. 老驱动包 4. 官网下载驱动5. 运行5.1. 远程安装关闭交互界面5.2. 运行5.3. 打开交互界面 6. 检测与后续安装 1. 参考文章 https://blog.csdn.net/JineD/article/details/129432308 2. 检查GPU是Nvidi

【PyTorch】标量、向量、张量的直观理解

标量 标量就是一个数字。标量也称为0维数组。 比如5套房子中的“5”就是标量; 向量 向量是一组标量组成的列表。向量也称为1维数组。 比如房子的价格是受多种因素(是否为学区房、附近有无地铁、房子面积、房间数量、楼层等)来影响,那么我们将这多种因素来表示为房子的特征,这一组特征值就可以用向量表示。 矩阵 矩阵是由一组向量组成的集合。矩阵也称为2维数组。 在刚才的例子中,一套房子的特征

【PyTorch】torch.backends.cudnn.benchmark 和 torch.backends.cudnn.deterministic

1. torch.backends.cudnn.benchmark 在 PyTorch 中,torch.backends.cudnn.benchmark 是一个配置选项,用于在运行时自动选择最优的卷积算法,以提高计算效率。这个设置特别针对使用 CUDA 和 cuDNN 库进行的运算,并在使用具有变化输入尺寸的网络时有很大帮助。让我们更详细地解释这个设置的功能和应用场景。 什么是 cuDNN?

一次pytorch分布式训练精度调试过程

现象: loss不下降 过程如下: 1.减少层数,准备最小复现环境 2.dropout设置为0,重复运行二次,对比loss是否一致 3.第二次迭代开始loss不一致 4.对比backward之后的梯度,发现某一个梯度不一致 5.dump得到所有算子的规模,单算子测试功能正常 6.怀疑是内存越界导致 7.排除通信库的问题,逐算子bypass 8.dump reduce_scatter的输入,发现

4. Pytorch入门教程——创建一个基类来构建一个基本的神经网络

现在我们已经准备好了Dataloaders,之后要定义神经网络并训练它。为了定义一个神经网络,最好的方法是定义类来分离和抽象所有类型网络的通用功能,如训练循环,验证,评估,预测,设置不同的超参数等。 我们还需要定义实现特定类型网络的类,例如专门用于迁移学习的类,或为全连接操作的类等等。我们将创建三个主要类: 从Pytorch的核心类nn.Module派生的神经网络的基类,它是Pytorch中任

3. Pytorch入门教程——数据集预处理,准备训练

在这个部分,将介绍以下内容: 理解数据载入器(Dataloaders)的概念和Pytorch数据载入器API;将图片数据集分成训练,验证和测试集;创建Pytorch Dataloaders加载图片用于训练,验证和测试;使用Pytorch API来定义变换(Transforms)进行数据集预处理,更有效的进行训练;使用Pytorch API将所有图片转变成Pytorch Tensors;使用图片的

2. Pytorch入门教程——创建Cifar10 Pytorch数据集

我们使用一个很经典的数据集Cifar10,而该数据集可以直接通过Pytorch内置函数获取到。 一、导入所需的库 import torch ## pytorchimport torchvision ## 迁移学习模型和许多其他视觉相关类from torch import nn ## Pytorch核心神经网络模型类from torch import optim ## 包含几个Pytorc

pytorch常用内置loss函数与正则化技术(补充小细节)

文章目录 前言一、常用损失函数(后面用到了新的会一一补充)1.1 回归中的损失函数1.1.1 nn.MSELoss()示例1:向量-向量示例2:矩阵--矩阵(维度必须一致才行) 1.2 分类中的损失函数1.2.1 二分类(1)nn.BCELoss --- 二分类交叉熵损失函数示例1:向量-向量示例2:矩阵--矩阵(维度必须一致才行) (2)BCEWithLogitsLoss --- 二分类

Pytorch基础:环境变量CUDA_VISIBLE_DEVICES

相关阅读 Pytorch基础https://blog.csdn.net/weixin_45791458/category_12457644.html?spm=1001.2014.3001.5482         CUDA_VISIBLE_DEVICES这个环境变量可以影响CUDA能识别到的GPU,并影响它映射到的cuda设备编号。         首先我们知道使用nvidia-smi命

EfficientNet网络结构详细解读+SE注意力机制+pytorch框架复现

文章目录 🚀🚀🚀前言一、1️⃣ 网络详细结构1.1 🎓 MBConv结构1.2 ✨SE注意力机制模块1.3 ⭐️Depthwise Separable Convolution深度可分离卷积1.3.1 普通卷积操作(Convolution)1.3.2 逐深度卷积(Depthwise Convolution)1.3.3 逐点卷积(Pointwise Convolution)🔥

PyTorch的基础用法简介

PyTorch是一个基于Python的开源机器学习库,它提供了灵活的神经网络构建和训练工具。下面是PyTorch的基础用法介绍: 张量(Tensors):PyTorch中的基本数据结构是张量,它类似于多维数组。可以通过torch.Tensor()函数创建张量,并使用一系列操作来修改和访问张量的值。 import torch# 创建张量x = torch.Tensor([[1, 2, 3],

【基于 PyTorch 的 Python 深度学习】6 视觉处理基础:卷积神经网络(2)

前言 文章性质:学习笔记 📖 学习资料:吴茂贵《 Python 深度学习基于 PyTorch ( 第 2 版 ) 》【ISBN】978-7-111-71880-2 主要内容:根据学习资料撰写的学习笔记,该篇主要介绍了卷积神经网络的池化层部分和现代经典网络。 一、池化层 池化 Pooling 又称下采样,通过卷积层获得图像的特征后,理论上可以直接使用这些特征训练分类器,例如 sof