首页 > 其他分享 >PyTorch1【Tensors张量基础】

PyTorch1【Tensors张量基础】

时间:2023-01-03 10:47:37浏览次数:41  
标签:__ 0.6900 tensor PyTorch1 torch 张量 time print Tensors

 

"""
Created on 2023/1/3 10:06.
@Author: haifei
"""
from __future__ import print_function  # 必须放在第一行
import torch
import time

# 构造一个5x3矩阵,不初始化
x = torch.empty(5, 3)
print(x)
"""
tensor([[0., 0., 0.],
        [0., 0., 0.],
        [0., 0., 0.],
        [0., 0., 0.],
        [0., 0., 0.]])
"""

# 构造一个随机初始化的矩阵
x = torch.rand(5, 3)
print(x)
'''
tensor([[0.6776, 0.6315, 0.9299],
        [0.8867, 0.6325, 0.2507],
        [0.2035, 0.6077, 0.9731],
        [0.6938, 0.7488, 0.1132],
        [0.6091, 0.5762, 0.4716]])
'''

# 构造一个矩阵全为 0,而且数据类型是 long
x = torch.zeros(5, 3, dtype=torch.long)
print(x)
'''
tensor([[0, 0, 0],
        [0, 0, 0],
        [0, 0, 0],
        [0, 0, 0],
        [0, 0, 0]])
'''

# 直接使用数据构造一个张量
x = torch.tensor([5.5, 3])
print(x)
'''
tensor([5.5000, 3.0000])
'''

# 创建一个 tensor 基于已经存在的 tensor
x = x.new_ones(5, 3, dtype=torch.double)
print(x)
'''
tensor([[1., 1., 1.],
        [1., 1., 1.],
        [1., 1., 1.],
        [1., 1., 1.],
        [1., 1., 1.]], dtype=torch.float64)
'''
x = torch.rand_like(x, dtype=torch.float)
print(x)
'''
tensor([[0.5983, 0.0666, 0.9064],
        [0.4012, 0.6202, 0.8771],
        [0.0147, 0.7532, 0.9623],
        [0.5253, 0.5974, 0.5697],
        [0.4968, 0.1105, 0.4458]])
'''

# 获取它的维度信息
print(x.size())  # 是一个元组,所以它支持左右的元组操作
'''
torch.Size([5, 3]) 
'''


y = torch.rand(5, 3)
# torch加法方式1
print(x + y)
'''
tensor([[1.1285, 0.5830, 0.0489],
        [0.9867, 0.8027, 0.6900],
        [1.0094, 0.9405, 0.9767],
        [1.5128, 1.1366, 0.7828],
        [1.3099, 1.0841, 0.7579]])
'''

# torch加法方式2
print(torch.add(x, y))
'''
tensor([[1.1285, 0.5830, 0.0489],
        [0.9867, 0.8027, 0.6900],
        [1.0094, 0.9405, 0.9767],
        [1.5128, 1.1366, 0.7828],
        [1.3099, 1.0841, 0.7579]])
'''

# torch加法方式3: 提供一个输出 tensor 作为参数
result = torch.empty(5, 3)
torch.add(x, y, out=result)
print(result)
'''
tensor([[1.1285, 0.5830, 0.0489],
        [0.9867, 0.8027, 0.6900],
        [1.0094, 0.9405, 0.9767],
        [1.5128, 1.1366, 0.7828],
        [1.3099, 1.0841, 0.7579]])
'''

# torch加法方式4: in-place: adds x to y
y.add_(x)
print(y)
'''
tensor([[1.1285, 0.5830, 0.0489],
        [0.9867, 0.8027, 0.6900],
        [1.0094, 0.9405, 0.9767],
        [1.5128, 1.1366, 0.7828],
        [1.3099, 1.0841, 0.7579]])
'''

# 可以使用标准的 NumPy 类似的索引操作
print(x[:, 1])
'''
tensor([0.0025, 0.3533, 0.6957, 0.6749, 0.7565])
'''

# 改变一个 tensor 的大小或者形状
x = torch.randn(4, 4)
y = x.view(16)
z = x.view(-1, 8)
print(x.size(), y.size(), z.size())
'''
torch.Size([4, 4]) torch.Size([16]) torch.Size([2, 8])
'''

# 如果你有一个元素 tensor ,使用 .item() 来获得这个 value
x = torch.randn(1)
print(x)  # tensor([0.4217])
print(x.item())  # 0.42166027426719666

if __name__ == '__main__':
    start = time.time()
    print('It takes', time.time() - start, "seconds.")

 

标签:__,0.6900,tensor,PyTorch1,torch,张量,time,print,Tensors
From: https://www.cnblogs.com/yppah/p/17021329.html

相关文章

  • 几个例子帮你梳理PyTorch知识点(张量、autograd)
    因为我最近想学Pytorchlightning,重构一下之前的代码,所以回来梳理一下Pytorch的语法,好进行下一步学习,所以从头重新回顾一下Pytorch。这个文章是通过几个简单例子帮大家回顾......
  • lesson13 张量、计算图、会话
    #lesson13 张量、计算图,会话#搭建第一个神经网络,总结搭建八股#基于Tensorflow的NN:用张量表示数据,用计算图搭建神经网络,#用会话执行计算图,优化线上的权重(参数),得到模型。......
  • ValueError:only one element tensors can be converted to Python scalars解决办法
    问题描述深度学习初学者的我在使用pytorchdebug深度神经网络模型的时候,list,tensor,array之间的转化太复杂了,总是傻傻分不清。这次又遇到问题:ValueError:onlyoneelement......
  • pytorch输出tensor张量时显示省略号的问题
    问题描述:由于tensor的数据量过大,再用print输出tensor数据时会将中间的部分用省略号代替,无法看到全部的tensor元素。   解决方案:在程序开头加入下面的代......
  • pytorch张量索引
    一、pytorch返回最值索引1官方文档资料1.1torch.argmax()介绍 返回最大值的索引下标函数:torch.argmax(input,dim,keepdim=False)→LongTensor返回值:Retur......
  • pytorch tensor 张量常用方法介绍
    1. view()函数PyTorch 中的view()函数相当于numpy中的resize()函数,都是用来重构(或者调整)张量维度的,用法稍有不同。>>>importtorch>>>re=torch.tensor([1,......
  • [MindSpore快速入门]Tensor张量:初始化,属性,索引,转换。01
    ​​MindSpore​​​​03张量_哔哩哔哩_bilibili​​注意本文多次引用官网的教程,以及其在b站上发的视频。这并不是我的文章,只能说我把细节打印整理下来,故我会将其标注为转......
  • PyTorch: 张量的变换、数学运算及线性回归
    本文已收录于Pytorch系列专栏:​​Pytorch入门与实践​​专栏旨在详解Pytorch,精炼地总结重点,面向入门学习者,掌握Pytorch框架,为数据分析,机器学习及深度学习的代码能力打下......
  • PyTorch: 张量的拼接、切分、索引
    本文已收录于Pytorch系列专栏:​​Pytorch入门与实践​​专栏旨在详解Pytorch,精炼地总结重点,面向入门学习者,掌握Pytorch框架,为数据分析,机器学习及深度学习的代码能力打下......
  • PyTorch : 了解Tensor(张量)及其创建方法
    本文已收录于Pytorch系列专栏:​​Pytorch入门与实践​​专栏旨在详解Pytorch,精炼地总结重点,面向入门学习者,掌握Pytorch框架,为数据分析,机器学习及深度学习的代码能力打下......