pytorch tensor创建tensor

目录

一、使用torch.Tensor创建

二、直接生成特殊的tensor

三、仿造其他tensor生成

四、从numpy生成

五、tensor中的to方法


一、使用torch.Tensor创建

python 复制代码
import torch
data=[[1,2],[3,4]]
x_data=torch.tensor(data)  # 将列表和数组传给tensor会自动转成tensor类型
x_data1=torch.tensor((1,2,3,4)) # 使用元组创建
print(x_data1)

二、直接生成特殊的tensor

python 复制代码
import torch
data1=torch.ones(1,2,3) # 创建一个维度为(1,2,3)的元素全为1的tensor
data2=torch.zeros(1,2,3) # 创建一个维度为(1,2,3)的元素全为0的tensor
data3=torch.randn(3,4,5) # 创建一个维度为(3,4,5)的符合正态分布的tensor
data4=torch.eye(4,5) # 创建一个维度为(4,5)的单位矩阵
data5=torch.randint(5,(5,8)) # 创建一个5一下的随机整数维度为(5,8)的tensot
print(type(data4))
print(data4)

三、仿造其他tensor生成

python 复制代码
import torch

data0=torch.Tensor([1,2,3,4])   
data1=torch.ones_like(data0)  # 仿造传入tensor生成相同形式的全为1的tensor
data2=torch.empty_like(data1)  # 生成全为0的tensor
print(data2)

四、从numpy生成

python 复制代码
import torch
import numpy as np

arr=np.array([1,2,3,4])
tensor0=torch.from_numpy(arr)  # 对arr进行了浅拷贝
tensor1=torch.Tensor(arr) # 对arr进行了深拷贝
arr[0]=100
data_numpy=tensor0.numpy() # 将tensor转成numpy
print(tensor0) # 和arr数组一起改变
print(tensor1)

五、tensor中的to方法

1.数据类型转换

python 复制代码
tensor0=torch.ones(4,5)
    tensor1=tensor0.to(torch.int64)  # 将数据类型转换成传入的数据类型
    tensor2=tensor0.to(tensor1)   # 将数据类型转换乘传入的tensor的类型
    print(tensor2)

2.device转化

python 复制代码
def tensor_device_demo():
    if torch.cuda.is_available():
        device=torch.device('cuda:0')
    else:
        device=torch.device('cpu')

    # 将数据转到gpu中运行
    tensor0=torch.randn(4,5)
    tensor1=tensor0.to(device)
相关推荐
东风西巷4 小时前
Balabolka:免费高效的文字转语音软件
前端·人工智能·学习·语音识别·软件需求
非门由也4 小时前
《sklearn机器学习——管道和复合估计器》联合特征(FeatureUnion)
人工智能·机器学习·sklearn
l12345sy4 小时前
Day21_【机器学习—决策树(1)—信息增益、信息增益率、基尼系数】
人工智能·决策树·机器学习·信息增益·信息增益率·基尼指数
非门由也4 小时前
《sklearn机器学习——管道和复合估算器》异构数据的列转换器
人工智能·机器学习·sklearn
计算机毕业设计指导5 小时前
基于ResNet50的智能垃圾分类系统
人工智能·分类·数据挖掘
飞哥数智坊5 小时前
终端里用 Claude Code 太难受?我把它接进 TRAE,真香!
人工智能·claude·trae
java1234_小锋5 小时前
Scikit-learn Python机器学习 - 特征降维 压缩数据 - 特征提取 - 主成分分析 (PCA)
python·机器学习·scikit-learn
java1234_小锋5 小时前
Scikit-learn Python机器学习 - 特征降维 压缩数据 - 特征提取 - 线性判别分析 (LDA)
python·机器学习·scikit-learn
小王爱学人工智能5 小时前
OpenCV的阈值处理
人工智能·opencv·计算机视觉
新智元6 小时前
刚刚,光刻机巨头 ASML 杀入 AI!豪掷 15 亿押注「欧版 OpenAI」,成最大股东
人工智能·openai