Pytorch-张量的创建

🌈个人主页: 羽晨同学

💫个人格言:"成为自己未来的主人~"

简介:

一个Python深度学习框架,它将数据封装成张量(Tensor)进行处理,Python中的张量就是元素为同一种数据类型的多维矩阵,在Python中,张量以"类"的形式封装起来,对张量的一些运算,处理的方法被封装在类中.

安装:

python 复制代码
pip install torch==2.0.1 -i https://pypi.tuna.tsinghua.edu.cn/simple

张量的创建

张量的基本创建方法

torch.tensor根据指定数据创建张量

torch.Tensor根据形状创建张量,其也可用来创建指定数据的张量

torch.tensor()根据指定数据创建张量

python 复制代码
import torch
import numpy as np
# 1.创建张量标量
data=torch.tensor(10)
print(data)
# 2. numpy 数组,由于data 为float64,下面代码也使用该类型
data=np.random.randn(2,3)
data=torch.tensor(data)
print(data)
# 3.列表,下面代码使用默认元素类型 float32
data=[[10.,20.,30.],[40.,50.,60.]]
data=torch.tensor(data)
print(data)

torch.Tensor()根据指定形状创建张量,也可以用来创建指定数据的张量

python 复制代码
# 1.创建2行3列的张量,默认dtype为float32
data=torch.Tensor(2,3)
print(data)
# 2.注意:如果传递列表,则创建包含指定元素张量
data=torch.Tensor([10])
print(data)
data=torch.Tensor([10,20])
print(data)

创建线性和随机张量

torch.arange和torch.linspace创建线性张量

torch.randn创建随机张量

torch.arange()、torch.linspace()创建线性张量

python 复制代码
# 1. 在指定区间按照步长生成元素【start,end,step】
data=torch.arange(0,10,2)
print(data)
# 2. 在指定区间按照元素个数生成[start,end,num]
data=torch.linspace(0,11,10)
print(data)

torch.randn()创建随机张量

python 复制代码
# 1.创建随机张量
data=torch.randn(2,3) # 创建2行3列张量
print(data)

创建0-1张量

torch.ones 创建全1张量

torch.zeros 创建全0张量

torch.full 创建全为指定值张量

创建全0张量

python 复制代码
# 1.创建指定形状全0张量
data=torch.zeros(2,3)
print(data)

创建全1张量

python 复制代码
# 2.创建全1张量
data=torch.ones(2,3)
print(data)

创建全为指定值张量

python 复制代码
# 3.创建指定形状指定值的张量
data=torch.full([2,3],10)
print(data)

张量的类型转换

data.type(torch.DoubleTensor)

data.double()

data.type(torch.DoubleTensor)

python 复制代码
data=torch.full([2,3],10)
print(data.dtype)
# 将data元素类型转换为float64类型
data=data.type(torch.DoubleTensor)
print(data.dtype)
# 转换成其他类型
data=data.type(torch.IntTensor)
print(data.dtype)
data=data.type(torch.LongTensor)
print(data.dtype)
data=data.type(torch.FloatTensor)
print(data.dtype)

data.double()

python 复制代码
data=torch.full([2,3],10)
print(data.dtype)
# 将data元素类型转换为 float64类型
data=data.double()
print(data.dtype)
# 转换成其他类型
data=data.int()
data=data.long()
data=data.float()
相关推荐
成富1 小时前
文本转SQL(Text-to-SQL),场景介绍与 Spring AI 实现
数据库·人工智能·sql·spring·oracle
CSDN云计算1 小时前
如何以开源加速AI企业落地,红帽带来新解法
人工智能·开源·openshift·红帽·instructlab
艾派森1 小时前
大数据分析案例-基于随机森林算法的智能手机价格预测模型
人工智能·python·随机森林·机器学习·数据挖掘
hairenjing11231 小时前
在 Android 手机上从SD 卡恢复数据的 6 个有效应用程序
android·人工智能·windows·macos·智能手机
小蜗子1 小时前
Multi‐modal knowledge graph inference via media convergenceand logic rule
人工智能·知识图谱
SpikeKing2 小时前
LLM - 使用 LLaMA-Factory 微调大模型 环境配置与训练推理 教程 (1)
人工智能·llm·大语言模型·llama·环境配置·llamafactory·训练框架
黄焖鸡能干四碗2 小时前
信息化运维方案,实施方案,开发方案,信息中心安全运维资料(软件资料word)
大数据·人工智能·软件需求·设计规范·规格说明书
2 小时前
开源竞争-数据驱动成长-11/05-大专生的思考
人工智能·笔记·学习·算法·机器学习
ctrey_2 小时前
2024-11-4 学习人工智能的Day21 openCV(3)
人工智能·opencv·学习
攻城狮_Dream2 小时前
“探索未来医疗:生成式人工智能在医疗领域的革命性应用“
人工智能·设计·医疗·毕业