Pytorch入门教程(一)基础
来源:互联网 发布:mac 手绘动画 编辑:程序博客网 时间:2024/06/14 10:04
Pytorch入门教程
Pytorch基础
这一部分主要介绍Pytorch的处理对象以及操作。
Pytorch的两个操作对象
- Tensor
首先介绍最基本的操作单元Tensor。
Tensor就是张量的英文,表示多维的矩阵,比如一维就是向量,二维就是一般的矩阵等等,Pytorch里面处理的单位就是一个一个的Tensor。
什么是张量?
A.Zee 书中所说: A tensor is something that transforms like a tensor! 一个量, 在不同的参考系下按照某种特定的法则进行变换, 就是张量。
陈维桓先生的《微分流形初步》一书中的一段话:
张量的概念是 G.Ricci 在19世纪末提出的. G.Ricci 研究张量的目的是为几何性质和物理规律的表达寻求一种在坐标变换下不变的形式. 他所考虑的张量是如同向量的分量那样的数组, 要求它们在坐标变换下服从某种线性变换的规律. 近代的理论已经把张量叙述成向量空间及其对偶空间上的多重线性函数, 但是用分量表示张量仍有它的重要性, 尤其是涉及张量的计算时更是如此.
但其实简单解释来说
1.单个的数值叫Scalar。也就是一个数字。比如说250这样的自然数。也可以是实数。下同。
2.一维的数组叫Vector,也就是向量。比如 {a1,a2,a3……an}。这里a1,a2…的值都是Scalar。
3.二维的数组叫Matrix,也就是矩阵。
4.三维以上的都叫Tensor,也就是张量。
可以显示得到的矩阵的大小
这个和numpy很相似,同时tensor和numpy.array之间也可以相互转换,互相转换时使用的是torch.from_numpy函数。
tensor的运算也很简单,一般的四则运算都是支持的。
- Variable
Variable提供了自动求导功能,也就是可以自动给你你要的参数的梯度。这里就是Pytorch和Numpy不一样的地方。
本质上Variable和Tensor没有区别,不过Variabel会放入一个计算图,然后进行前向传播,反向传播以及自动求导。
一个Variable里面包含着三个属性,data,grad和creator,其中creator表示得到这个Variabel的操作,比如乘法或者加法等等,grad表示方向传播的梯度,data表示取出这个Variabel里面的数据。
这是一个简单计算图的例子。
参考文献:
1、什么是张量? -知乎
2、十分钟快速入门Pytorch。
- Pytorch入门教程(一)基础
- 基于PyTorch的深度学习入门教程(一)——PyTorch安装和配置
- PyTorch从零开始(一):
- Pytorch小记(一)
- PyTorch入门学习(一)
- Pytorch学习笔记(一)
- pytorch入门(一)-----Autograd
- 周易零基础入门教程(一)
- PyTorch的入门教程实战
- Pytorch学习入门(一)--- 从torch7跳坑至pytorch --- Tensor
- Pytorch学习笔记(一):pytorch的安装-Ubuntu14.04
- 基于PyTorch的深度学习入门教程(七)——PyTorch重点综合实践
- 我在读pyTorch文档(一)
- 用pytorch实现一个神经网络(一)
- JSP 入门教程一[基础内容]
- JavaScript 入门教程一[基础内容]
- HTML 入门教程一[基础内容]
- pytorch 学习笔记(一)
- 如何看待和学习基础servlet???
- c语言小练习
- css部分常用功能
- nexus私服linux搭建
- 一种说不出的“Feeling”
- Pytorch入门教程(一)基础
- hibernate初步认识
- Python入门(二)
- echart 画 二维图的解析规范
- 关于vim的不可不知的快捷键
- 十月十四日课堂笔记
- png图片半透明部分在网页中显示为白色的处理
- java中Collections.sort() 排序函数的用法
- mysql 用时间查询 今天,昨天,本月的数据