撰写于:  浏览:410 次  分类:PyTorch 教程
错误原因:我们使用view()函数的时候,稍有不慎会碰到这样的错误:RuntimeError: invalid argument 2: view size is not compatible with input tensor's....这是因为tensor经过转置后数据的内存地址不连续导致的。解决方案:在view()函数前加contiguous([...]

撰写于:  浏览:463 次  分类:PyTorch 教程
data_ptr方法是tensor向量的一个很重要的方法,它的作用是返回tensor首元素的内存地址,常用来判断两个tensor是不是共享内存,如下所示:data_t = data.t() # Transpose print(data.data_ptr() == data_t.data_ptr()) # True因为Transpose操作只是改变了[...]

撰写于:  浏览:438 次  分类:PyTorch 教程
PyTorch中有很多浮点类型,例如,torch.float16、torch.float32、torch.float64等。当初始化tensor的时候,可以指定使用那种浮点数类型,如果我们不指定,那么PyTorch默认使用torch.float32类型。如下所示:>>> torch.tensor([1.2, 3]).dtype t[...]

撰写于:  浏览:477 次  分类:PyTorch 教程
在PyTorch中,Tensor.contiguous()方法是一个重要的Tensor操作,用于确保Tensor的内存布局是连续的。这种操作通常在进行某些特定操作后可能需要,因为Tensor的物理内存布局有可能因为某些操作而变得非连续。Tensor的内存布局一个Tensor的数据在内存中可以是连续的,也可以是非连续的。连续的内存布局意味着Tenso[...]

撰写于:  浏览:369 次  分类:PyTorch 教程
1、什么是共轭矩阵?共轭矩阵是一个复数矩阵,其中它的所有元素都被它们的共轭取代,即它的所有复数的虚部的符号都被改变了。2、共轭矩阵的示例

撰写于:  浏览:518 次  分类:PyTorch 教程
1、torch.complex函数介绍在PyTorch中我们可以生成复数tensor,方法是:torch.complex(real, imag, *, out=None) 参数介绍:real:生成的复数中的实部。imag:生成的复数中的虚部。out:输出的tensor。提示:real实部和imag虚部必须类型,而且只能是float32或者doubl[...]

撰写于:  浏览:439 次  分类:PyTorch 教程
1、torch.set_printoptions方法简介torch.set_printoptions方法是来修改pytorch中的打印选项的,就是使用print打印tensor时,我们显示的元素精度,最多显示元素个数等一系列相关操作的选项。如下所示:>>> # 限制tensor的输出精读 >>> torch.se[...]

撰写于:  浏览:1910 次  分类:PyTorch 教程
学习PyTorch,应当多看看它的API文档。PyTorch API文档,如同一座金矿,等着我们去开采。下面给大家分享一下我的个人经验。常言道,书读百遍其义自见,只有看得多了才能发现门道。PyTorch API总共分为几大模块:(1)torch模块。这是针对tensor进行全局设置的模块,毕竟tensor是pytorch的核心,主要常用的函数有:全[...]

撰写于:  浏览:443 次  分类:PyTorch 教程
Sequential 是 PyTorch 中的一种神经网络框架,它可以被认为是一个容器,其封装了神经网络的结构。Sequential 模型只有一组输入和一组输出。各层之间按照先后顺序进行堆叠。前面一层的输出就是后面一次的输入。通过不同层的堆叠,构建出神经网络。1、Sequential的源码分析class Sequential(Module): # [...]

撰写于:  浏览:542 次  分类:PyTorch 教程
1、model.state_dict()函数简介state_dict是Python的字典对象(具体来说,是OrderedDict字典类型),可用于保存模型参数、超参数以及优化器(torch.optim)的状态信息。需要注意的是,只有具有可学习参数的层(如卷积层、线性层等)才有state_dict。import torch.nn as nn impo[...]

撰写于:  浏览:1351 次  分类:PyTorch 教程
1、ConvNetDraw,一个在线工具,可以绘制卷积神经网络,链接为:https://cbovar.github.io/ConvNetDraw/ 2、PlotNeuralNet,一个使用Latex绘制神经网络的工具,主要面向卷积神经网络。提示:相比其他的绘图软件,这款软件是最漂亮的。 3、draw_convnet,一个用于画卷积神经网[...]

撰写于:  浏览:1288 次  分类:PyTorch 教程
提示:本文更新于2024年8月24日1、Adam优化器简介Adam 是一种可以替代传统随机梯度下降过程的一阶优化算法,它能基于训练数据迭代地更新神经网络权重。Adam 最开始是由 OpenAI 的 Diederik Kingma 和多伦多大学的 Jimmy Ba 在 2015 年 ICLR 论文(Adam: A Method for Stochas[...]

撰写于:  浏览:380 次  分类:PyTorch 教程
1、Batch Normalization简介Batch Normalization,简称BN,由Google于2015年提出,这是一个深度神经网络训练的技巧,它不仅可以加快了模型的收敛速度,并且在一定程度缓解了深层网络中“梯度弥散”的问题,从而使得训练深层网络模型更加容易和稳定,所以目前Batch Normalization已经成为几乎所有卷积神[...]

撰写于:  浏览:1456 次  分类:PyTorch 教程
1、梯度下降法简介梯度下降法(英语:Gradient descent)是一个一阶最优化算法,通常也称为最速下降法。 要使用梯度下降法找到一个函数的局部极小值,必须向函数上当前点对应梯度(或者是近似梯度)的反方向的规定步长距离点进行迭代搜索。如果相反地向梯度正方向迭代进行搜索,则会接近函数的局部极大值点;这个过程则被称为梯度上升法。2、梯度下降法原理[...]

撰写于:  浏览:420 次  分类:PyTorch 教程
1、model eval简介model.eval()是PyTorch中的一个方法,用于将模型设置为评估模式(evaluation mode)。一般情况下,当我们完成模型的训练并准备对其进行评估、测试或推断时,会调用该方法。2、model eval的作用调用model.eval()的作用是将模型中的某些特定层或部分切换到评估模式。在评估模式下,一些层[...]

关注公众号,每天学一个AI知识

    友情链接