当前位置: 首页 > news >正文

新手小白的pytorch学习第一弹-------张量

1 导入pytorch包

import torch

2 创建张量(tensor)

scalar标量
scalar = torch.tensor(7)
scalar
tensor(7)
scalar.ndim

查看scalar的维度,因为scalar是标量,所以维度为0

0
scalar.shape
torch.Size([])
torch.item()
7
vector(向量)
vector = torch.tensor([7,7])
vector
tensor([7, 7])
vetor.ndim
1
vector.shape
torch.Size([2])
MATRIX 矩阵
MATRIX = torch.tensor([[1,2],[3,4]])
MATRIX
tensor([[1, 2],[3, 4]])

同样,用ndim看维度,shape看形状,这里想重点讲一下我对tensor形状的理解

先搞一个tensor出来好吧

Tensor
TENSOR = torch.tensor([[[[1, 2, 3],[4, 5, 6],[7, 8, 9]]]])
TENSOR
tensor([[[[1, 2, 3],[4, 5, 6],[7, 8, 9]]]])
TENSOR.ndim
4
TENSOR.shape
torch.Size([1, 1, 3, 3])

在这里插入图片描述
这是我的理解,也不知道对不对,可以多搞两个例子试一试
在这里插入图片描述
这里主要讲创建tensor(张量),因为pytorch里面的基本数据就是张量,现实生活中的音频、图片、视频都可以变成张量,因此我们需要搞清楚张量哟~输入到网络中的数据都是张量

3 创建随机张量

random_tensor = torch.rand(size=(3,4)
random_tensor
tensor([[0.4875, 0.9833, 0.7744, 0.4002],[0.2102, 0.4866, 0.9648, 0.3243],[0.1394, 0.5789, 0.5765, 0.3988]])

4 创建全为0的张量

zeros = torch.zeros(size=(3,3))
zeros
tensor([[0., 0., 0.],[0., 0., 0.],[0., 0., 0.]])

5 创建全为1的张量

ones = torch.tensor(size=(3,3))
ones
tensor([[1., 1., 1.],[1., 1., 1.],[1., 1., 1.]])
ones.dtype

torch里面的数据类型,一般就是float32

torch.float32

6 创建range和tensor like

one_to_ten = torch.arange(1,11)
one_to_ten
torch.float32
one_to_tens = torch.arange(start=10, end=22, step=2)
one_to_tens
tensor([10, 12, 14, 16, 18, 20])

tensor like意思是创建一个类似于某一个tensor的tensor,举个例子,我们创建一个全为0的,和one_to_tens规模一致的张量,维度,形状一致

m = torch.zeros_like(input=one_to_tens)
m
tensor([0, 0, 0, 0, 0, 0])

同理,也有全为1的。如下所示:

r1 = torch.rand(size=(10,3))
r1
p = torch.ones_like(input=r1)
p
tensor([[1., 1., 1.],[1., 1., 1.],[1., 1., 1.],[1., 1., 1.],[1., 1., 1.],[1., 1., 1.],[1., 1., 1.],[1., 1., 1.],[1., 1., 1.],[1., 1., 1.]])

好好好,今天就短暂的学习这些吧,如果我的学习对你有帮助的话,记得给俺点个赞赞!

赞赞!!!

谢谢你,今天晚上吃的麻辣烫味道还可以,汤的味道还可以,不过食材嘛(你懂的),不过有一个优点就可以啦,知足常乐咯咯咯~
over over over!

相关文章:

  • 生成日志系统和监控
  • 算法·高精度
  • C++的介绍与认识
  • 用JavaScript将 NCR(Numeric Character Reference)标记转换为对应字符的方法
  • 对称加密和非对称加密解析
  • 关于力扣150题目——逆波兰表达式求值Java实现的三种解法
  • 如何写好品牌宣传稿提升品牌曝光?看这篇文章就够了
  • Java虚拟机(JVM):深入理解与性能调优
  • 如何在应用运行时定期监控内存使用情况
  • “LNMP环境搭建实战指南:从零开始配置CentOS 7下的Nginx、MySQL与PHP“
  • C# —— Directory类
  • Java 中的异常处理机制是如何工作的?请解释 try-catch-finally 的基本用法?
  • 如何远程访问运行电脑上运行的程序?
  • 【知网CNKI-注册安全分析报告】
  • C++:filter2D函数简要概述
  • [ 一起学React系列 -- 8 ] React中的文件上传
  • [译]CSS 居中(Center)方法大合集
  • 「前端」从UglifyJSPlugin强制开启css压缩探究webpack插件运行机制
  • CentOS从零开始部署Nodejs项目
  • ES10 特性的完整指南
  • Essential Studio for ASP.NET Web Forms 2017 v2,新增自定义树形网格工具栏
  • gcc介绍及安装
  • golang 发送GET和POST示例
  • HashMap剖析之内部结构
  • Java Agent 学习笔记
  • JAVA_NIO系列——Channel和Buffer详解
  • java架构面试锦集:开源框架+并发+数据结构+大企必备面试题
  • jdbc就是这么简单
  • Promise初体验
  • React-redux的原理以及使用
  • Redis字符串类型内部编码剖析
  • Sublime Text 2/3 绑定Eclipse快捷键
  • win10下安装mysql5.7
  • 对象管理器(defineProperty)学习笔记
  • 区块链分支循环
  • # 飞书APP集成平台-数字化落地
  • #### golang中【堆】的使用及底层 ####
  • #etcd#安装时出错
  • #php的pecl工具#
  • #vue3 实现前端下载excel文件模板功能
  • #我与Java虚拟机的故事#连载02:“小蓝”陪伴的日日夜夜
  • (ibm)Java 语言的 XPath API
  • (libusb) usb口自动刷新
  • (补充)IDEA项目结构
  • (附源码)spring boot儿童教育管理系统 毕业设计 281442
  • (四)库存超卖案例实战——优化redis分布式锁
  • (转载)Linux网络编程入门
  • *上位机的定义
  • .net wcf memory gates checking failed
  • .NET 使用 ILMerge 合并多个程序集,避免引入额外的依赖
  • .Net各种迷惑命名解释
  • //TODO 注释的作用
  • @LoadBalanced 和 @RefreshScope 同时使用,负载均衡失效分析
  • [ 攻防演练演示篇 ] 利用通达OA 文件上传漏洞上传webshell获取主机权限
  • []AT 指令 收发短信和GPRS上网 SIM508/548