热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python如何安装torch_PyTorch安装与基本使用详解

什么要学习PyTorch?有的人总是选择,选择的人最多的框架,来作为自己的初学框架,比如Tensorflow,但是大多论文的实现都是基于PyTorch的,如果我们要深入论文的细节

什么要学习PyTorch?

有的人总是选择,选择的人最多的框架,来作为自己的初学框架,比如Tensorflow,但是大多论文的实现都是基于PyTorch的,如果我们要深入论文的细节,就必须选择学习入门PyTorch

安装PyTorch

一行命令即可 官网

fjkwmq21tt4.png

pip install torch===1.6.0 torchvision===0.7.0 - https://download.pytorch.org/whl/torch_stable.html

时间较久,耐心等待

测试自己是否安装成功

运行命令测试

import torch

x = torch.rand(5,3)

print(x)

输出

tensor([[0.5096, 0.1209, 0.7721],

[0.9486, 0.8676, 0.2157],

[0.0586, 0.3467, 0.5015],

[0.9470, 0.5654, 0.9317],

[0.2127, 0.2386, 0.0629]])

开始学习PyTorch

不初始化的创建张量

import torch

x = torch.empty([5,5])

print(x)

输出

tensor([[0., 0., 0.],

[0., 0., 0.],

[0., 0., 0.],

[0., 0., 0.],

[0., 0., 0.]])

随机创建一个0-1的张量

import torch

x = torch.rand(5,5)

print(x)

输出

tensor([[0.3369, 0.5339, 0.8419, 0.6857, 0.6241],

[0.4991, 0.1691, 0.8356, 0.4574, 0.0395],

[0.9714, 0.2975, 0.9322, 0.5213, 0.8509],

[0.3037, 0.8690, 0.3481, 0.2538, 0.9513],

[0.0156, 0.9516, 0.3674, 0.1831, 0.6466]])

创建全为0的张量

import torch

x = torch.zeros(5,5, dtype=torch.float32)

print(x)

创建的时候可以通过dtype指定数据类型

输出

tensor([[0., 0., 0., 0., 0.],

[0., 0., 0., 0., 0.],

[0., 0., 0., 0., 0.],

[0., 0., 0., 0., 0.],

[0., 0., 0., 0., 0.]])

使用数据来直接创建张量

import torch

x = torch.zeros([5,5], dtype=torch.float32)

print(x)

输出

tensor([5., 5.])

使用原有tensor创建新的tensor

import torch

x = torch.tensor([5,5], dtype=torch.float32)

x = x.new_zeros(5, 3)

y = torch.rand_like(x)

print(x)

print(y)

输出

tensor([[0., 0., 0.],

[0., 0., 0.],

[0., 0., 0.],

[0., 0., 0.],

[0., 0., 0.]])

tensor([[0.5552, 0.3333, 0.0426],

[0.3861, 0.3945, 0.6658],

[0.6978, 0.3508, 0.4813],

[0.8193, 0.2274, 0.8384],

[0.9360, 0.9226, 0.1453]])

观察tensor的维度信息

x = torch.rand(3,3)

x.size()

输出

torch.Size([3, 3])

一些简单的运算

x = torch.tensor([1])

y = torch.tensor([3])

'''

方式1

'''

z = x + y

'''

方式2

'''

z = torch.add(x, y)

'''

方式3

'''

result = torch.empty(1)

# 不初始化数据

torch.add(x, y, out=result)

# 将结果返回到result中

'''

方式4

'''

x.add_(y)

输出

tensor([4])

索引操作

x = torch.rand(5,5)

x[:,:]

x[1,:]

x[:,1]

x[1,1]

分别输出

tensor([[0.4012, 0.2604, 0.1720, 0.0996, 0.7806],

[0.8734, 0.9087, 0.4828, 0.3543, 0.2375],

[0.0924, 0.9040, 0.4408, 0.9758, 0.2250],

[0.7179, 0.7244, 0.6165, 0.1142, 0.7363],

[0.8504, 0.0391, 0.0753, 0.4530, 0.7372]])

tensor([0.8734, 0.9087, 0.4828, 0.3543, 0.2375])

tensor([0.2604, 0.9087, 0.9040, 0.7244, 0.0391])

tensor(0.9087)

维度变换

x = torch.rand(4,4)

x.view(16)

x.view(8,2)

x.view(-1,8)

分别输出

tensor([0.9277, 0.9547, 0.9487, 0.9841, 0.4114, 0.1693, 0.8691, 0.3954, 0.4679,

0.7914, 0.7456, 0.0522, 0.0043, 0.2097, 0.5932, 0.9797])

tensor([[0.9277, 0.9547],

[0.9487, 0.9841],

[0.4114, 0.1693],

[0.8691, 0.3954],

[0.4679, 0.7914],

[0.7456, 0.0522],

[0.0043, 0.2097],

[0.5932, 0.9797]])

tensor([[0.9277, 0.9547, 0.9487, 0.9841, 0.4114, 0.1693, 0.8691, 0.3954],

[0.4679, 0.7914, 0.7456, 0.0522, 0.0043, 0.2097, 0.5932, 0.9797]])

注意:必须维度变换数据的数量必须保持一致

到此这篇关于PyTorch安装与基本使用详解的文章就介绍到这了,更多相关PyTorch安装与使用内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

本文标题: PyTorch安装与基本使用详解

本文地址: http://www.cppcns.com/jiaoben/python/340145.html


推荐阅读
  • 开源Keras Faster RCNN模型介绍及代码结构解析
    本文介绍了开源Keras Faster RCNN模型的环境需求和代码结构,包括FasterRCNN源码解析、RPN与classifier定义、data_generators.py文件的功能以及损失计算。同时提供了该模型的开源地址和安装所需的库。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • Python瓦片图下载、合并、绘图、标记的代码示例
    本文提供了Python瓦片图下载、合并、绘图、标记的代码示例,包括下载代码、多线程下载、图像处理等功能。通过参考geoserver,使用PIL、cv2、numpy、gdal、osr等库实现了瓦片图的下载、合并、绘图和标记功能。代码示例详细介绍了各个功能的实现方法,供读者参考使用。 ... [详细]
  • 基于dlib的人脸68特征点提取(眨眼张嘴检测)python版本
    文章目录引言开发环境和库流程设计张嘴和闭眼的检测引言(1)利用Dlib官方训练好的模型“shape_predictor_68_face_landmarks.dat”进行68个点标定 ... [详细]
  • Python操作MySQL(pymysql模块)详解及示例代码
    本文介绍了使用Python操作MySQL数据库的方法,详细讲解了pymysql模块的安装和连接MySQL数据库的步骤,并提供了示例代码。内容涵盖了创建表、插入数据、查询数据等操作,帮助读者快速掌握Python操作MySQL的技巧。 ... [详细]
  • 本文总结了使用不同方式生成 Dataframe 的方法,包括通过CSV文件、Excel文件、python dictionary、List of tuples和List of dictionary。同时介绍了一些注意事项,如使用绝对路径引入文件和安装xlrd包来读取Excel文件。 ... [详细]
  • Python已成为全球最受欢迎的编程语言之一,然而Python程序的安全运行存在一定的风险。本文介绍了Python程序安全运行需要满足的三个条件,即系统路径上的每个条目都处于安全的位置、"主脚本"所在的目录始终位于系统路径中、若python命令使用-c和-m选项,调用程序的目录也必须是安全的。同时,文章还提出了一些预防措施,如避免将下载文件夹作为当前工作目录、使用pip所在路径而不是直接使用python命令等。对于初学Python的读者来说,这些内容将有所帮助。 ... [详细]
  • 如何自行分析定位SAP BSP错误
    The“BSPtag”Imentionedintheblogtitlemeansforexamplethetagchtmlb:configCelleratorbelowwhichi ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • EzPP 0.2发布,新增YAML布局渲染功能
    EzPP发布了0.2.1版本,新增了YAML布局渲染功能,可以将YAML文件渲染为图片,并且可以复用YAML作为模版,通过传递不同参数生成不同的图片。这个功能可以用于绘制Logo、封面或其他图片,让用户不需要安装或卸载Photoshop。文章还提供了一个入门例子,介绍了使用ezpp的基本渲染方法,以及如何使用canvas、text类元素、自定义字体等。 ... [详细]
  • Python使用Pillow包生成验证码图片的方法
    本文介绍了使用Python中的Pillow包生成验证码图片的方法。通过随机生成数字和符号,并添加干扰象素,生成一幅验证码图片。需要配置好Python环境,并安装Pillow库。代码实现包括导入Pillow包和随机模块,定义随机生成字母、数字和字体颜色的函数。 ... [详细]
  • python中安装并使用redis相关的知识
    本文介绍了在python中安装并使用redis的相关知识,包括redis的数据缓存系统和支持的数据类型,以及在pycharm中安装redis模块和常用的字符串操作。 ... [详细]
author-avatar
我是小白我有不烦的梦想
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有