Pytorch入门

Pytorch深度学习入门与实战 PyTorch是一个开源机器学习Python库,用于深度学习实现,如计算机视觉(使用武器)和自然语言处理。它是由Facebook的AI Research Lab(Fair)于2016年开发的,自数据科学和ML领域以来已采用。Pytorch为已经熟悉Python的人提供了直观的机器,并且具有oop支持和动态计算图等具有很大的功能。除了构建深度神经网络之外,由于其GPU加速,Pytorch也非常适合复杂的数学计算。此功能允许Pytorch使用计算机的GPU来大量加速计算。 阅读详情

前言

  • Torch是一个科学计算框架,广泛支持将GPU放在首位的机器学习算法。

  • PyTorch是一个基于Torch的python机器学习库,底层由 C++ 实现。

  • PyTorch 主要有两大特征:

    • 类似于 NumPy 的张量计算,能在 GPU 或 MPS 等硬件加速器上加速。

    • 基于带自动微分系统的深度神经网络。

安装Pytorch

有conda和pip两种安装方式,参考Previous PyTorch Versions根据使用版本安装,Wheel表示使用pip安装,Conda表示使用conda安装,OSX和Linux and Windows表示操作系统。注意在镜像源下载的是cpu版本,必须在官网安装,检查代码如下

import torch
print(torch.__version__) # 检查Pytorch的版本
print(torch.cuda.is_available()) # 检查当前环境能否使用CUDA

若torch.cuda.is_available()返回false,解决方法参考torch.cuda.is_available()返回false——解决办法

基础

张量(Tensor)

张量可以视为多维数组。

张量可以运行在不同设备上,比如CPU和GPU,可以将张量移动到 GPU 上加速计算。

张量支持自动微分。

详细介绍可以参考PyTorch 张量(Tensor) | 菜鸟教程

out.backward() # 反向传播,计算梯度
print(x.grad) # 查看 x 的梯度

nn.Module

我们可以继承 nn.Module 类来构建神经网络模型。

import torch.nn as nn
import torch.optim as optim
​
# 定义一个简单的全连接神经网络
class SimpleNN(nn.Module):
    def __init__(self):
        super(SimpleNN, self).__init__()
        self.fc1 = nn.Linear(2, 2)  # 输入层到隐藏层
        self.fc2 = nn.Linear(2, 1)  # 隐藏层到输出层
    
    def forward(self, x):
        x = torch.relu(self.fc1(x))  # ReLU 激活函数
        x = self.fc2(x)
        return x

nn.Sequential

我们可以用 nn.Sequential 来按顺序组织神经网络层。

import torch
import torch.nn as nn
​
model = nn.Sequential(
   nn.Linear(n_in, n_h),  # 输入层到隐藏层的线性变换
   nn.ReLU(),            # 隐藏层的ReLU激活函数
   nn.Linear(n_h, n_out),  # 隐藏层到输出层的线性变换
   nn.Sigmoid()           # 输出层的Sigmoid激活函数
)

nn.functional

nn.functional 提供了大量的神经网络函数,包括激活函数,损失函数,池化操作,卷积操作等。

import torch
import torch.nn.functional as F
​
x = torch.randn(3, 4)
​
# ReLU
output = F.relu(x)
​
# 最大池化
x = torch.randn(1, 3, 32, 32)
output = F.max_pool2d(x, kernel_size=2, stride=2)
​
predictions = torch.randn(32, 10)
targets = torch.randint(0, 10, (32,))
​
# 交叉熵损失
loss = F.cross_entropy(predictions, targets)
​
# 卷积
x = torch.randn(1, 3, 32, 32)
weight = torch.randn(16, 3, 3, 3)
bias = torch.randn(16)
​
conv_output = F.conv2d(x, weight, bias, stride=1, padding=1)

数据处理和加载

torch.utils.data.Dataset 是一个抽象类,允许你从自己的数据源中创建数据集。

torch.utils.data.DataLoader 用于从 Dataset 中按批次(batch)加载数据。

torchvision.transforms 用于进行常见的图像预处理和增强操作,如旋转、裁剪、归一化等。

Pytorch入门教程 Pytorch学习总结:1.张量Tensor 张量是一种特殊的数据结构,与数组和矩阵非常相似。在PyTorch中,我们使用张量对模型的输入和输出以及模型的参数进行编码。 张量类似于NumPy的ndarray,除了张量可以在 GPU 或其他硬件加速器上运行。事实上,张量和NumPy数组通常可以共享相同的底层内存,从而无需复制数据。... 阅读详情

相关推荐

PyTorch入门教程

介绍PyTorch的基本用法,包括张量操作、神经网络搭建、模型训练等。

DeepDriving 2685

Pytorch 入门

我们首先定义一个Pytorch实现的神经网络#导入若干工具包importtorchimporttorch.nnasnnimporttorch.nn.functionalasF#定义一个简单的网络类classNet(nn.Module)模型中所有的可训练参数,可以通过net.parameters()来获得.假设图像的输入尺寸为32*32input=torch.randn(1,1,32,32)#4个维度依次为注意维度。...

mengxianglong123的博客 1万+

【Pytorch】2024 Pytorch基础入门教程(完整详细版)

Pytorch是torch的python版本,是由Facebook开源的神经网络框架,专门针对 GPU 加速的深度神经网络(DNN)编程。Torch 是一个经典的对多维矩阵数据进行操作的张量(tensor )库,在机器学习和其他数学密集型应用有广泛应用。与Tensorflow的静态计算图不同,pytorch的计算图是动态的,可以根据计算需要实时改变计算图。但由于Torch语言采用 Lua,导致在国内一直很小众,并逐渐被支持 Python 的 Tensorflow 抢走用户。

优快云已停更,感兴趣关注https://aaronzijingcai.github.io/ 27万+

pytorch入门

dir()打开 help()帮助 —packageDataset:数据集(提供一种方式去获取数据及其label);Dataloader:数据装载器(为后面的网络提供不同的数据形式)

weixin_45200843的博客 1152

ESP32S3 Korvo2V3四通道AEC配置实战:基于AFE的回声消除优化

本文详细介绍了在ESP32S3 Korvo2V3平台上配置四通道AEC(回声消除)的实战经验。通过AFE算法优化和硬件连接调试,实现高质量回声消除,显著提升智能音箱和会议设备的语音交互体验。重点解析了四通道配置、数据格式对齐和参数调优等关键技术要点。

elastic6hunter的博客 932

【AMD显卡在WIndow10/11部署带GPU支持的深度学习环境(Pytorch-DirectML篇)】

这篇是之前Tensorflow-DirectML的姊妹篇,如果对TF感兴趣的可以搜索我的博文。 首先我们丢一个官网地址,但是官网那个会误导新人如果你按那个操作的话。 https://docs.microsoft.com/en-us/windows/ai/directml/gpu-pytorch-windows 这里用我的方法操作: 首先声明一下,因为我的显卡是AMD RX6600,不带XT(性能和RTX3060 12G版本半斤八两),所以目前没有最新的WSL2驱动,如果有了的话欢迎告知我,所以我这里就.

weixin_44029053的博客 2万+

pytorch基础入门教程/一小时学会pytorch

Pytorch一小时教程 pytorch是什么 它是一个基于python的科学计算库,致力于为两类用户提供服务: 一些想要找到Numpy搭建神经网络替代品的用户; 寻找一个可提供极强的可拓展性和运行速度的深度学习研究平台; 让我们开始干活吧! 1. 张量的概念和生成     张量和Numpy中ndarrays的概念很相似,有了这个作为基础,张量也可以被运行在GPU上来加速计算,下面介绍如何创...

weixin_41070748的博客 8万+

sdc时钟约束2——多驱动时钟

sdc 多驱动时钟 master_clock

qq_40411444的博客 5527

PyTorch入门书籍盘点

对于深度学习框架而言,PyTorch是一匹十足的黑马,虽然Tensorflow依然占据着老大哥的位置,但是从2019年的各项数据显示PyTorch大有一飞冲天之势。

pythonhy的博客 5023

告别繁琐!VS Code 下OpenClaw零配置上手秘籍

本文介绍了在VSCode环境下零配置上手OpenClaw开发工具的最佳实践。首先详细说明了VSCode和OpenClaw插件的安装步骤,包括获取安装包、配置环境变量等准备工作。然后重点讲解了核心配置流程:设置OpenClaw路径、调整工作区参数、添加自定义代码片段等优化开发体验的方法。通过创建测试项目验证配置有效性,并针对常见的路径错误、运行报错等问题提供了排查方案。本文旨在帮助开发者快速搭建高效的OpenClaw开发环境,充分发挥VSCode与OpenClaw的组合优势,提升开发效率。无论是新手还是资深开

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 528

ADS基础教程22 - 有限元电磁仿真(FEM)

一、引言二、FEM操作过程1.新建Layout1.新建Layout2.EM设置3.设置Frequency plan4.设置Output plan5.设置Options6.设置网格频率7.仿真结果三、总结介绍了在ADS中如何进行FEM仿真过程。END!}}END!

XZ_ZC的博客 2579

PyTorch快速入门

PyTorch是Facebook开发的Python深度学习框架,具有动态计算图、GPU加速和自动微分等核心特性。其核心数据结构为张量(Tensor),支持多种创建方式(如从列表、NumPy数组生成)和特殊张量(全零、全一等)。张量运算包括基本算术、矩阵运算和统计函数。形状操作涵盖维度调整、交换和拼接等功能,如reshape、unsqueeze和cat方法。PyTorch兼具灵活性和高效性,是深度学习研究和开发的理想工具。

Springfield3006的博客 1201

AI 时代嵌入式工程师的能力模型与学习路线:全系列收官

AI 时代嵌入式工程师的能力模型与学习路线:全系列收官

weixin_42162924的博客 32

【PyTorch入门教程】1. 基础知识

这是一个面向初学者的PyTorch教程。 PyTorch项目的基本流程,与每个步骤相关的重要模块 张量是PyTorch中使用的核心数据结构。

youcans的博客 2177

8、对比 LightGBM、XGBoost 和深度学习

本文对比了LightGBM、XGBoost和深度学习模型(特别是TabTransformer)在处理表格数据时的性能差异。从模型复杂度、数据准备、训练时间、准确性和适用场景等方面进行分析,重点探讨了三者在人口普查收入预测任务中的表现。文章详细介绍了XGBoost与LightGBM的核心特性与区别,深入讲解了TabTransformer的架构与实现,并涵盖了分类特征编码、缺失值处理和类别不平衡等关键数据预处理技术,为选择合适的表格数据建模方法提供了实践指导。

julia4scientist的博客 120

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

入门pytorch

1.入门建议第一步 github的 tutorials 尤其是那个60分钟的入门。只能说比tensorflow简单许多. 另外jcjohnson 的Simple examples to introduce PyTorch 也不错 2.第二步 example 参考 pytorch/examples 实现一个最简单的例子(比如训练mnist )。 3.第三步 通读doc PyTorch doc 尤其是...

qq_36958831的博客 234

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

pytorch入门系列

pytorch入门系列

zz2230633069的博客 233

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

PyTorch深度学习快速入门

PyTorch深度学习的快速入门教程,教会你进一步了解PyTorch深度学习,理解相关代码及其理论知识,十分适合python小白进行前期的的神经网络学习。

悠眠小虫的博客 1535

PyTorch入门 DeepLearning入门

PyTorch入门 DeepLearning入门 PyTorch中文文档 深度学习入门 吴恩达深度学习deeplearning.ai-哔哩哔哩 Dive-into-DL-PyTorch 《动手学深度学习》(PyTorch版)-哔哩哔哩 PyTorch深度学习入门教程-哔哩哔哩 PyTorch实战教程 相关pdf PyTorch中文文档: 基本的torch语法 深度学习入门:深度学习基本知识 Dive-into-DL-PyTorch: 结合深度学习 PyTorch实战教程: 小项目实战 PyTo

qq_40630902的博客 469

PyTorch入门 - 为什么选择PyTorch?

这些深度学习框架各有千秋,无论是研究项目,构建神经网络,还是为企业开发AI相关产品和服务,选择合适的深度学习框架将可实现 – 要么取得成功,要么得到失败。 那么,究竟哪个框架最适合研究开发并取得成果呢? 如果专注于大数据的海量数据集,并关注可扩展性、部署效率和易用性,则PyTorch是不二之选。

jackson_lingua的博客 703

学习pytorch: 深度学习入门建议

本文主要介绍了使用pytorch作为框架入门深度学习。 其中第1节(深度学习入门)内容较多,建议边看第1节边实践第2节(Pytorch入门)中的内容(主要是2.1和2.2)。

newxuyangcao 3800

60分钟快速入门 PyTorch

PyTorch 是由 Facebook 开发,基于 Torch 开发,从并不常用的 Lua 语言转为 Python 语言开发的深度学习框架,Torch 是 TensorFlow 开源前非常出名的一个深度学习框架,而 PyTorch 在开源后由于其使用简单,动态计算图的特性得到非常多的关注,并且成为了 TensorFlow 的 最大竞争对手。目前其 Github 也有 2w8+ 关注。 Githu...

AI 算法笔记 1793
上一篇: 分类回归任务评估指标
下一篇: Transformer模型学习【附代码】
LETTER•
博客等级 码龄3年 62粉丝 16原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值