Pytorch:将列表数据转不同数据类型的Tensor矩阵

这篇具有很好参考价值的文章主要介绍了Pytorch:将列表数据转不同数据类型的Tensor矩阵。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        本文主要介绍pytorch中不同数据类型的Tensor矩阵,例如:float32、float64、int32、int64。并将创建好的列表数据转成不同数据类型的Tensor矩阵,最后进行:行复制的操作。

一、列表转Tensor,复制行和列向量

a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(a)
print(type(a))  #查看a的类型---即列表类型
'''结果'''
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
<class 'list'>
a = torch.Tensor(a)   #将列表a转成tensor类型
print(a)
print(type(a), a.dtype)   #查看a的类型和a中各个元素的数据类型
'''结果'''
tensor([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.])
<class 'torch.Tensor'> torch.float32
a = a.repeat(2, 1)    #将a的行复制一次,变成两行,1--表示列不变
print(a)
a = a.repeat(3, 1)    #将a的行复制两次,变成三行,1--表示列不变
print(a)
'''结果'''
tensor([[ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.],
        [ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.]])
tensor([[ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.],
        [ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.],
        [ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.]])
a = a.repeat(1, 2)    #将a的列复制一次,增广列数,原来的两倍,1--表示行不变
print(a)
a = a.repeat(1, 3)    #将a的列复制一次,增广列数,原来的三倍,1--表示行不变
print(a)
'''结果'''
tensor([[ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.,  1.,  2.,  3.,  4.,
          5.,  6.,  7.,  8.,  9., 10.]])
tensor([[ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.,  1.,  2.,  3.,  4.,
          5.,  6.,  7.,  8.,  9., 10.,  1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,
          9., 10.]])

二、转Tensor矩阵中元素的数据类型

a = torch.Tensor(a)   #将列表a转成tensor类型
print(a)
print(a.dtype)   #查看a中各个元素的数据类型
a = a.type(torch.FloatTensor)   #转float32数据类型
print(a)
print(a.dtype)
'''结果'''
tensor([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.])
torch.float32
tensor([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.])
torch.float32
a = torch.Tensor(a)   #将列表a转成tensor类型
print(a)
print(a.dtype)   #查看a中各个元素的数据类型
a = a.type(torch.DoubleTensor)   #转float64数据类型
print(a)
print(a.dtype)
'''结果'''
tensor([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.])
torch.float32
tensor([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.], dtype=torch.float64)
torch.float64
a = torch.Tensor(a)   #将列表a转成tensor类型
print(a)
print(a.dtype)   #查看a中各个元素的数据类型
a = a.type(torch.IntTensor)   #转int32数据类型
print(a)
print(a.dtype)
'''结果'''
tensor([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.])
torch.float32
tensor([ 1,  2,  3,  4,  5,  6,  7,  8,  9, 10], dtype=torch.int32)
torch.int32
a = torch.Tensor(a)   #将列表a转成tensor类型
print(a)
print(a.dtype)   #查看a中各个元素的数据类型
a = a.type(torch.LongTensor)   #转int64数据类型
print(a)
print(a.dtype)
'''结果'''
tensor([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.])
torch.float32
tensor([ 1,  2,  3,  4,  5,  6,  7,  8,  9, 10])
torch.int64

三、求个赞就行

Pytorch:将列表数据转不同数据类型的Tensor矩阵

 文章来源地址https://www.toymoban.com/news/detail-513859.html

 

到了这里,关于Pytorch:将列表数据转不同数据类型的Tensor矩阵的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Pytorch入门:Tensor加减乘除矩阵运算

    若张量维数大于2,则对最后两维进行matmul。进行此运算的要求是张量a与b除最后两维外的其他维必须一致:

    2024年02月12日
    浏览(46)
  • pytorch 根据bool矩阵取出tensor中对应位置元素

    1. bool矩阵当做索引(类型是:BoolTensor) 结果为一维向量(因为bool矩阵二维的,根据bool矩阵中True对应位置,把tensor数据中相应位置中的值取出来,组成一个新的一维tensor向量) 输出结果: 2. 一维bool向量当做索引(类型是:BoolTensor) 第一个例子:结果为一维向量(target是

    2023年04月10日
    浏览(51)
  • pytorch一行实现:计算同一tensor矩阵内每行之间的余弦相似度

      余弦相似度的公式如下所示:   可以使用torch自带的余弦相似度计算函数(下面三种用哪一个都可以,效果是一样的):   该函数原文档在:torch官方文档    cosine_similarity中的参数要两个tensor数据,而我们的需求是求一个tensor内的行与行之间的余弦相似度。很显然

    2023年04月08日
    浏览(44)
  • R语言的数据类型与数据结构:向量、列表、矩阵、数据框及操作方法

    R语言拥有丰富的数据类型和数据结构,以满足各类数据处理和分析的需求。本文将分享R语言中的数据类型,包括向量、列表、矩阵、数据框等,以及它们的特点、用途和操作方法。 向量是R语言中最基本的数据结构,它可以存储单个数据类型的元素序列。向量具有固定的长度

    2024年03月11日
    浏览(48)
  • 1.PyTorch数据结构Tensor常用操作

    从接口的角度来讲,对tensor的操作可分为两类: torch.function ,如 torch.save 等。 另一类是 tensor.function ,如 tensor.view 等。 为方便使用,对tensor的大部分操作同时支持这两类接口,如 torch.sum (torch.sum(a, b)) 与 tensor.sum (a.sum(b)) 功能等价。 而从存储的角度来讲,对tensor的操作又可

    2024年02月04日
    浏览(41)
  • pytorch中的tensor实现数据降维以及通道数转换

            首先导入torch包,利用torch.narrow()函数实现数据通道数转换,具体实例见下图         利用torch.rand(5,6)随机生成一个5X6的二维矩阵,利用torch.narrow(x,dim,start,length)进行通道数转化,narrow()函数里第一个参数是你需要转换的原始数据,必须是tensor形式。第二个变量

    2024年02月17日
    浏览(46)
  • 本文通过实例介绍了Redis的基础知识、数据类型、数据结构以及典型应用场景 值得一看!

    作者:禅与计算机程序设计艺术 2017年,Redis是基于MIT许可发布的一个开源的高性能键值数据库,其开发语言为C语言。它提供了多种数据类型(strings、hashes、lists、sets、sorted sets等),分布式支持(可横向扩展),内存存储,持久化功能,事务处理功能等。作为一种高性能的

    2024年02月06日
    浏览(70)
  • 春眠不觉晓,Java数据类型知多少?基础牢不牢看完本文就有数了

    文编|JavaBuild 哈喽,大家好呀!我是JavaBuild,以后可以喊我鸟哥!俺滴座右铭是不在沉默中爆发,就在沉默中灭亡,一起加油学习,珍惜现在来之不易的学习时光吧,等工作之后,你就会发现,想学习真的需要挤时间,厚积薄发啦! 我们知道Java是面向对象的静态型编程语言,

    2024年02月02日
    浏览(40)
  • tensor的不同维度种类

    0维标量(scalar),1维向量(vector),二维矩阵(matrix),3维以上n维张量

    2024年02月08日
    浏览(39)
  • 【python基础】复杂数据类型-列表类型(数值列表)

    视频讲解 列表非常适合用于存储数字集合,而Python提供了很多工具,可帮助我们高速地处理数字列表。 Python的range函数能够轻松的生成连续一系列数字。 其语法格式:range(起始值,终止值) 我们通过之前学习的for循环输出range函数生成的连续数字,编写程序如下所示: 我们通

    2024年02月07日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包