PyTorch安装及基础

Posted nanhua097

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PyTorch安装及基础相关的知识,希望对你有一定的参考价值。

PyTorch安装:

  https://pytorch.org/get-started/locally/ 

PyTorch基础:

  张量:包括零维(常数),一维(数组/列表/元组),二维(矩阵)......

  张量的创建:

    torch.tensor(list/array/tuple)  #把数组/列表/集合转化为张量

    torch.ones([2,3])  #创建形状为[2,3]的,元素均为1的张量

    torch.zeros([2,3])  #创建形状为[2,3]的,元素均为0的张量

    torch.empty([2,3])  #创建形状为[2,3]的,元素服从正态分布的张量

    torch.rand([2,3])  #创建形状为[2,3]的,元素为0-1的张量

    torch.randn([2,3])  #创建一个形状为[2,3],元素均值为0标准差为1的数组

    torch.randint(low,high,size=[])  生成一个指定size,元素为low-high见随机整数的张量

  tensor属性:

    tensor.item()  tensor中只有一个元素时用于获取元素(多个元素会报错)

    tensor与numpy的转换:

      np_ts = tensor.numpy()

      ts = torch.tensor(np_ts)

    tensor.size(dim)  tensor的形状(可指定方向)

    tensor.view(size)  改变tensor形状

    tensor.t(0,1)  tensor的转置(可指定维度)

  tensor切片与索引:

    类同于numpy

  tensor方法:

    tensor.max(dim)  获取tensor中最大的元素(可指定维度,会同时返回索引)

  tensor数据类型:

    tensor.dtype  查看tensor的数据类型

    tensor.int()  转为int32

    tensor.long()  转为int64

    tensor.float()  转为float32

    tensor.double()  转为float64

  tensor计算:

    tensor+/-/*//tensor  形状相同的矩阵对应位置进行操作(若形状不同,满足广播条件,可进行广播后操作)

    tensor+/-/*//数字  

    tensor1.add_(tensor2)  将相加后的tensor赋值为tensor1

  CUDA类型:

    device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")

    torch.tensor([2,3],device)  #创建类型为cuda的tensor

    tensor.to(device)  #将已创建好的tensor转为cuda类型的tensor

    tensor.cpu()  #将cuda类型的tensor转化为cpu类型的tensor

以上是关于PyTorch安装及基础的主要内容,如果未能解决你的问题,请参考以下文章

从零开始学PyTorch:一文学会线性回归逻辑回归及图像分类

Pytorch安装及环境配置详细教程(CUDA版本)

深度学习常用PyTorch CUDA版本whl下载及在线安装命令

pytorch安装步骤及出现问题的相应解决方案

PyTorch环境配置及安装

cpugpu 安装框架pytorch,cntk,theano及测试