torch的一些函数

pytorch中.to(device) 和.cuda()的区别 推荐使用to(device)的方式,主要原因在于这样的编程方式更加易于扩展,而cuda()必须要求机器有GPU,否则需要修改所有代码;to(device)的方式则不受此限制,device既可以是CPU也可以是GPU; 阅读详情

1.https://zhuanlan.zhihu.com/p/288541909

2. .detach()

y=tensor.detach()
创建一个常量,名字是y, 注意它没有梯度

3. .normal()

torch.normal(means,std,out=None)
效果:返回一个张量,包含从给定参数means,std的离散正态分布中抽取随机数。 均值means是一个张量,包含每个输出元素相关的正态分布的均值。 std是一个张量,包含每个输出元素相关的正态分布的标准差。 均值和标准差的形状不须匹配,但每个张量的元素个数须相同 。。out,这里实际上是指输出的形状

3. required_grad

源自: https://blog.youkuaiyun.com/sazass/article/details/116668755
,size_17,color_FFFFFF,t_70,g_se,x_16)

4. .matmul()

`如果都是 2D,就是普通的矩阵乘法

在这里插入图片描述
`如果 a是1D,b是2D,则还是普通的矩阵乘法
在这里插入图片描述

·如果 a是2D,b是1D,(如果a,b的行数相同)将b转置后再进行普通的乘法
在这里插入图片描述

5.with torch.no_grad():

在使用pytorch时,并不是所有的操作都需要进行计算图的生成(计算过程的构建,以便梯度反向传播等操作)。而对于tensor的计算操作,默认是要进行计算图的构建的,在这种情况下,可以使用 with torch.no_grad():,强制之后的内容不进行计算图构建。
也可以用来避免‘nonetye’的出现,这一般是对0求梯度而导致的

6. .to(device)

这两行代码放在读取数据之前。

mytensor = my_tensor.to(device)

这行代码的意思是将所有最开始读取数据时的tensor变量copy一份到device所指定的GPU上去,之后的运算都在GPU上进行
典例

device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
#整个模型的计算将由gpu负责
model.to(device)

下面是查看gpu的一些信息用的
在这里插入图片描述
https://blog.youkuaiyun.com/nima1994/article/details/83001910

7. nn.ReLU()与F.ReLU()

nn.ReLu只能在网络的容器中使用,比如nn.Sequential()里面
而 F.ReLu()可以在任意地方使用,比如forward函数里面
在这里插入图片描述

8. torch.cat()

torch.cat((a,b,c,d),dim=num)
表示将a,b,c,d在第num个维度上拼接起来

# 通道数*深度*长*宽,dim=1表示在深度上拼接
torch.cat((p1,p2,p3,p4),dim=1)

reference:
https://blog.youkuaiyun.com/sazass/article/details/116668755
https://blog.youkuaiyun.com/shaopeng568/article/details/95205345
https://blog.youkuaiyun.com/nima1994/article/details/83001910

【Python】torch.exp()和 torch.sigmoid()函数详解和示例 本文对torch.exp()和 torch.sigmoid()函数进行原理和示例讲解,以帮助大家理解和使用。 阅读详情

相关推荐

torch.normal()函数详解

torch.normal()函数说人话解释,官方文档和大多数博客不说人话,本博客保证有基础就一定能看懂,并且相当简单,还有一个例子教怎么用torch.normal()生成服从正态分布的二维数据并可视化出来

smalltorch的博客 9698

Pytorch 学习笔记--to(device)的用法

在学习深度学习的时候,我们写代码经常会见到类似的代码: img = img.to(device=torch.device("cuda" if torch.cuda.is_available() else "cpu")) model = models.vgg16_bn(pretrained=True).to(device=torch.device("cuda" if torch.cuda.is_available() else "cpu")) 也可以先定义device: device = torch

weixin_41503889的博客 5万+

Pytorch中torch.repeat_interleave()函数解析

一. torch.repeat_interleave()函数解析 1.函数说明 官网:torch.repeat_interleave(),函数说明如下图所示: 2. 函数原型 torch.repeat_interleave(input, repeats, dim=None) → Tensor 3. 函数功能 沿着指定的维度重复张量的元素 4. 输入参数: 1)input (类型:torch.Tensor):输入张量 2)repeats(类型:int或torch.Tensor):每个元素的重复次数 3)d

flyingluohaipeng的博客 1万+

《动手学深度学习Pytorch版》之Pytorch常用操作

未完待续。。。。。 GPU操作 二、模型保存读取操作 1、访问模块模型参数 model.parameters() 一个从参数名称隐射到参数Tesnor的字典对象 state_dict 举例1 import torch from torch import nn net = MLP() #这里我省略了MLP()的定义,详见《动手学习深度学习Pytorch》对应章节 net.state_dict() 输出1 class MLP(nn.Module):... OrderedDict([('hidden.

irober的博客 503

【Pytorch】torch.argmax 函数详解

本文介绍了 Pytorch 中的 torch.argmax 函数

weixin_44211968的博客 1万+

Torch的损失函数总结

nn.L1Loss 取预测值和真实值的绝对误差的平均数。 loss⁡(x,y)=1N∑i=1N∣x−y∣ \operatorname{loss}(\mathbf{x}, \mathbf{y})=\frac{1}{N} \sum_{i=1}^{N}|\mathbf{x}-\mathbf{y}| loss(x,y)=N1​i=1∑N​∣x−y∣ nn.SmoothL1Loss 也叫作 Huber Lo...

Loy Fan 1768

【pytorch图像分类】GoogLeNet网络结构

引言 原文连接:GoogLeNet 为了提升网络的性能可以选择增加网络深度和宽度,问题: 导致带来大量的参数 较深的网络需要更多的数据,容易产生过拟合现象 增加网络的深度 也容易带来梯度消失现象 · 网络创新: 局部特征结构:inception模块 对特征并行地执行多个大小不同的卷积和池化运算,最后拼接到一起。 优点:1 * 1 3*3 5 * 5 卷积运算对应不同的特征图区域,可以得到更好的图像表征信息 注意:每个分支所得的特征矩阵高和宽必须相同 .

没有笔记本用了 1382

torch.log函数

torch.log(torch.Tensor([1]) 结果:0,任何数的0次方,为1 torch.log是以自然数e为底的指数函数。 torch.log(torch.Tensor([2.7])=0.999 import numpy as np import torch from numpy.core.defchararray import count import math a...

jacke121的专栏 5万+

torch.matmul()的用法(背景:出于准备毕业论文,初学李沐前辈的动手学深度学习,也就是江湖中流传的“花书”先给大家推荐一下学习的网页)

CUDA语义 - PyTorch中文文档https://pytorch-cn.readthedocs.io/zh/latest/notes/cuda/ 这个网站封面长这样,上面就是“花书”的网页版,里面有pytorch、tensorflow等三种流行框架的实现代码,比较适合入门(我也是刚入门,菜鸟写博客,有错欢迎指正,一起学习共同进步) 推荐:pytorch中文文档 主页 - PyTorch中文文档Nonehttps://pytorch-cn.readthedocs.io/zh/latest/朋.

tp_0moyi0的博客 1059

F.pad函数、torch.chunk函数、torch.roll函数、torch.narrow函数

首先创建了一个4x6的张量,并分别沿着第一个维度(行)和第二个维度(列)将其分割成了多个块。沿着第一个维度分割时,我们得到了两个2x6的张量;沿着第二个维度分割时,我们得到了三个4x2的张量。原始的3x3张量被填充成了一个5x7的张量。左边和上边各填充了1个单位的0,右边和下边各填充了2个单位的0。这样,填充后的张量尺寸变大了,但原始数据仍然保留在中心位置。

379

Pytorch常用乘法函数总结:torch.mul()、*、torch.mm()、torch.bmm()、torch.mv()、torch.dot()、@、torch.matmul()

torch.mul() 和 * 等价,为element-wise乘,可广播;torch.mm() 二维矩阵乘法,torch.bmm() 三维批量矩阵乘法,均不可广播;torch.mv(mat, vec) 为矩阵向量乘法,不可广播;torch.dot() 仅支持两个一维向量点积,返回一个标量数字;@ 矩阵乘法,等价于 torch.dot() + torch.mv() + torch.mm();torch.matmul() 矩阵乘法,与 @ 类似,但它不止一维二维,可扩高维,可广播

qq_43629945的博客 3000

SQLite性能优化:从WAL模式到内存映射的深度解析

本文深入解析SQLite性能优化策略,重点介绍WAL模式和内存映射技术的应用。通过合理配置WAL日志、同步策略和事务批处理,SQLite的IO吞吐量可提升3-5倍。结合内存映射和缓存优化,性能可进一步提升至默认配置的50倍,适用于高并发读写场景。

weixin_29231027的博客 455

【torch函数】torch.multinomial函数

input: 输入张量,表示每个类别的概率分布。它可以是一个一维张量,也可以是一个二维张量。如果是二维张量,每行表示一个概率分布。函数返回一个包含抽样结果的张量,其形状为(input.size(0), num_samples)。是PyTorch中的一个函数,用于从多项分布中抽取样本。此示例从给定的概率分布中抽取了5个样本,其中每个样本是从0到3的整数,表示概率分布中对应类别的索引。num_samples: 抽样次数,即要从每个概率分布中抽取的样本数量。out: 输出张量,用于存储抽取的样本。

weixin_45780075的博客 3217

WinCC动态选择报警记录案例

本例中需要确认查询的时间段以及查询的关键字,然后通过一个按钮来执行报警数据查询脚本,并把查询出的结果加载到当前报警控件中。<本例中数据查询脚本的思路是根据选项组所选定的参数加载相应的归档变量到在线趋势控件,根据设定的查询时间范围设定控件时间轴的开始时间及结束时间。本文以 WinCC V8.0为例,介绍如何动态的查询WinCC报警记录,包括关键字查询/时间&关键字查询,如图1所示。<在WinCC变量管理中创建不同的变量组,并在变量组下创建相应的变量,如图2 所示(下图并非实际变量值)。

weixin_45072604的博客 2713

蓝桥杯FPGA赛道积分赛

代码如下: 按键驱动 代码如下 按键驱动 代码如下: 顶层文件 按键驱动 数码管驱动 声明:本代码借鉴网络资料,如有侵权和错误请联系作者删除。我是从寒假开始备赛的,由于我基础不行,备赛过程中也是混混呃呃的,备赛效率不高,总体来说备赛不认真,有点拖拉,但是最后我也坚持备赛到了今天,在备赛过程中,即复习了旧的东西,也学到了新的东西,总结起来还是有点收获的,后天北京、天津、河北地区就要进行省赛了,我会全力以赴,不管结果怎么样,尽力就好,最后祝大家都能

weixin_69804913的博客 1993

torch中一些函数的使用

代码案例: torch.sum/max/min() :计算张量中所有元素的总和。 :返回张量中的最大值及其索引。 :返回张量中的最小值及其索引。 用于计算张量中所有元素的总和。可以指定沿着哪个维度进行求和,也可以不指定,这样将对整个张量进行求和。 代码案例: 返回张量中的最大/小值及其索引。可以指定沿着哪个维度进行计算最大/小值,也可以不指定,这样将对整个张量进行计算。 代码案例: torch.squeeze/unsqueeze() 函数会在指定的维度上增加一个尺寸为 1

Word_And_Me_的博客 819

14、多级快速多极子算法(MLFMA)详解

多级快速多极子算法(MLFMA)是一种高效加速矩阵向量乘法(MVM)的数值方法,广泛应用于电磁场积分方程求解中。该算法通过构建多级树结构,将MVM分解为近场直接计算和远场分组计算两部分,利用递归聚类、聚合-平移-分解三阶段处理远场相互作用,并结合采样、模式计算与优化策略,将计算复杂度从O(N^2)降低至O(N log N)。博文详细阐述了MLFMA的核心步骤、数学推导、计算复杂度及实际应用中的优化技术,如伽辽金方案改进、对称性利用和反插值方法,为大规模电磁问题的高效求解提供了系统性指导。

t8u9v0w1x的博客 242

torch.cat 与 torch.concat函数与torch.stack函数

将给定序列的张量在给定维度上连接起来。

qq_43701910的博客 9070

23、变压器与电抗器知识详解

本文详细介绍了电力变压器的基本原理、等效电路、测试方法及多种运行方式,涵盖双绕组与自耦变压器的建模与应用。深入探讨了变压器极性判断、并联运行条件、电压调节技术,并扩展至非线性、磁滞、EMTP和高频模型,用于瞬态分析。同时阐述了地磁感应电流(GIC)的影响及对偶建模方法。最后系统介绍了各类电抗器的应用场景与特性,包括限流、无功补偿、滤波及特殊用途电抗器,全面覆盖电力系统中变压器与电抗器的核心知识。

eee77的博客 150

Python从0到100(二):Python语言介绍及第一个Pyhon程序

Python从0到100(二):Python语言介绍及第一个Pyhon程序。与C和Java比,Python的学习成本和难度曲线不是低一点,更适合新手入门,自底向上的技术攀爬路线。

拥有百余位万粉技术博主、200余位可合作代发博主,私域技术社群规模达千人,商务合作私信 5440

torch.argmax函数说明

torch.argmax()函数 argmax函数:torch.argmax(input, dim=None, keepdim=False)返回指定维度最大值的序号,dim给定的定义是:the demention to reduce.也就是把dim这个维度的,变成这个维度的最大值的index。 1)dim的不同值表示不同维度。特别的在dim=0表示二维中的列,dim=1在二维矩阵中表示行。广泛的...

weixin_42494287的博客 7万+

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

一些python torch函数

torch.tril` 用于获取矩阵的下三角部分,并将上三角部分置零。`torch.triu` 用于获取矩阵的上三角部分,并将下三角部分置零。这两个函数在矩阵操作和线性代数计算中非常有用,尤其是在需要分解矩阵或进行特定形式的矩阵运算时。

zaishaoyi的专栏 2129

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

深入浅出Pytorch函数——torch.ones

torch.ones

冯·诺依曼 2万+

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

PyTorch中Torch.arange()函数详解

可以看到,torch.range()的范围是[-8, 8],类型为torch.float32。torch.arange()的范围是[-8, 8),类型为torch.int64。即只有当类型为float时才可设置requires_grad=True,故可将。改为以下,即手动改变数据类型即可。

weixin_41147796的博客 3520
上一篇: 21.8.29 逻辑分类
下一篇: 杂七杂八 for p9
SCUT-Chung
博客等级 码龄7年 39粉丝 31原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值