Pytorch常用函数用法归纳:创建tensor张量

1.torch.arange()

(1)函数原型

torch.arange(start,end,step,*,out,dtype,layout=,device,requires_grad)

(2)参数说明:

参数名称参数类型参数说明
startNumber起始值,默认值为0
endNumber结束值,取不到,为开区间
stepNumber步长值,默认为1
outTensor输出的张量,,表明创建后tensor赋予哪个变量,通常情况下不会设置该参数
dtypetorch.dtype

期望返回的张量的数据类型,如果是None,则使用全局默认值,如果未给出dtype,则从其他输入参数推断数据类型,如果start、end或stop中的任何一个是浮点数,则dtype被推断为默认值,否则被推断为torch.int64

layouttorch.layout返回张量的期望 layout,默认值为torch.strided
devicetorch.device返回张量的期望设备。如果是默认值None,则使用当前设备作为默认张量类型,对于CPU类型的张量,则device是CPU;若是CUDA 类型的张量,则device是当前的CUDA 设备
requires_gradboolautograd是否记录返回张量上的梯度。默认值为False,表示不记录

(3)函数功能:

返回大小为[(end-start)/step]的一维张量,其值为区间[start,end)中给定步长为step的等间隔取值

2.torch.range()

(1)函数原型:

torch.range(start,end,step,*,out,dtype,layout,device=None,requires_grad)

(2)参数说明:

参数名称参数类型参数说明
startNumber起始值,默认值为0
endNumber结束值,可以取到,为闭区间
stepNumber步长值,默认为1
outTensor输出的张量,表明创建后tensor赋予哪个变量,通常情况下不会设置该参数
dtypetorch.dtype

期望返回的张量的数据类型,如果是None,则使用全局默认值;如果未给出dtype,则从其他输入参数推断数据类型;如果start、end或stop中的任何一个是浮点数,则dtype被推断为默认值;否则被推断为torch.int64

layouttorch.layout返回张量的期望layout,默认值为torch.strided,对性能影响不大
devicetorch.device返回张量的设备。默认值None表示使用当前设备作为默认张量类型;对于CPU类型的张量则device是CPU;若是CUDA 类型的张量则device是当前的CUDA 设备
requires_gradboolautograd是否记录返回张量上的梯度。默认值为False,表示不记录

(3)函数功能:

返回大小为[(end-start)/step]的一维张量,其值为区间[start,end]中给定步长为step的等间隔取值

3.生成随机数组成的Tensor张量:

(1)函数原型:

1.torch.rand(*size,generator,out,dtype,layout,device,requires_grad)
2.torch.randn(*size,generator,out,dtype,layout,device,requires_grad)
3.torch.randint(low,high,*size,generator,out,dtype,layout,device,requires_grad)
4.torch.randperm(n,generator,out,dtype,layout,device,requires_grad)
5.torch.normal(mean,std,size,generator,out)

(2)参数说明:

参数名称参数类型参数说明
sizeint/list/tuple生成tensor的维度大小,可以是int类型的数或者是一个由int类型数组成的list或tuple,若为int则表示此时生成的tensor是一维的
generatortorch.Generator,optional用于控制生成随机数的种子,是可选参数
lowint,optional生成的随机tensor所属整数区间的下界,默认值为0
highint生成的随机tensor所属整数区间的上界
nint生成随机整数排列的区间上界,即这些整数排列中最大值+1
meanTensor生成的随机tensor服从的正态分布的均值向量
stdTensor生成的随机tensor数服从的正态分布的标准差向量
outTensor输出的张量,表明创建后tensor赋予哪个变量,通常情况下不会设置该参数
dtypetorch.dtype

期望返回的张量的数据类型,对于torch.randint()和torch.randperm()来说默认值为torch.int64,而对于其他函数如果是None则使用全局默认值

layouttorch.layout返回张量的期望layout,默认值为torch.strided,对性能影响不大
devicetorch.device返回张量的设备。默认值None表示使用当前设备作为默认张量类型;对于CPU类型的张量则device是CPU;若是CUDA 类型的张量则device是当前的CUDA 设备
requires_gradboolautograd是否记录返回张量上的梯度。默认值为False表示不记录

(3)函数功能:

1.生成由[0, 1)之间均匀分布的随机数组成的给定size大小的tensor张量;
2.生成由从标准正态分布(均值为0,标准差为1)中采样的随机数组成的指定size大小的tensor张量;
3.生成由指定范围[low,high)内的随机整数组成的指定size大小的tensor张量
4.生成一个从[0,n)的随机整数排列的tensor张量
5.生成由服从给定均值mean和标准差std的正态分布的随机数组成的指定size大小的tensor张量;
size参数不是必须的,当省略size参数时生成的tensor大小由mean和std决定

4.生成由固定值组成的Tensor张量 

(1)函数原型:

1.torch.ones(*size,out,dtype,layout,device,requires_grad)
2.torch.ones_like(input,dtype,layout,device,requires_grad)
3.torch.zeros(*size,out,dtype,layout,device,requires_grad)
4.torch.zeros_like(input,dtype,layout,device,requires_grad)
5.torch.fill(*size,fill_value,out,dtype,layout,device,requires_grad)
6.torch.eye(n,m,out,dtype,layout,device,requires_grad)
7.torch.empty(*size,out,dtype,layout,device,requires_grad)
8.torch.empty_like(input,out,dtype,layout,device,requires_grad)

(2)参数说明:

参数名称参数类型参数说明
sizeint/list/tuple生成tensor的维度大小,可以是int类型的数或者是一个由int类型数组成的list或tuple,若为int则表示此时生成的tensor是一维的
inputtorch.Tensor输入张量,新张量的大小将与此张量相同
dtypetorch.dtype

期望返回的张量的数据类型;

对于torch.zeros_like()和torch.ones_like()来说默认值为None,如果是None则使用和张量input一致的类型;而对其他函数来说如果为None使用全局默认类型

outTensor输出的张量,表明创建后tensor赋予哪个变量,通常情况下不会设置该参数
layouttorch.layout返回张量的期望layout,默认值为torch.strided,对性能影响不大
devicetorch.device

返回张量的设备,默认值None表示使用当前设备作为默认张量类型;

对于CPU类型的张量则device是CPU;若是CUDA 类型的张量则device是当前的CUDA 设备

requires_gradboolautograd是否记录返回张量上的梯度。默认值为False表示不记录
fill_valueNumber指定填充到生成Tensor张量中的值
nint生成的单位矩阵的行数
mint,optional生成的单位矩阵的列数,默认情况下省略m,此时生成的是一个方阵

(3)函数功能:

1.生成给定size大小的一个全为1的Tensor张量
2.生成和输入张量input大小一致的一个全为1的Tensor张量
3.生成给定size大小的一个全为0的Tensor张量
4.生成和输入张量input大小一致的一个全为0的Tensor张量
5.生成给定size大小并且全为给定值fill_value的一个Tensor张量
6.生成大小为n*n的单位矩阵,是一个二维Tensor张量,默认情况下为方阵
7.生成给定size大小的一个填满未初始化数据的Tensor张量
8.生成和输入张量input大小一致的一个填满未初始化数据的Tensor张量

4.生成由现有数据值组成的Tensor张量 

(1)函数原型:

1.torch.tensor(data,dtype,device,requires_grad)
2.torch.from_numpy(ndarray)

(2)参数说明:

参数名称参数类型参数说明
datalist/Numpy数组/tuple/scalar表示用于创建张量的数据,生成的Tensor维度和data一致
dtypetorch.dtype,optional期望返回的张量的数据类型;默认值None表示和给定的内容的类型保持一致
devicetorch.device,optional

返回张量的设备,默认值None表示使用当前设备为默认张量类型;

对于CPU类型的张量则device是CPU;若是CUDA 类型的张量则device是当前的CUDA 设备

requires_gradbool,optionalautograd操作是否记录返回张量上的梯度,默认值为False表示不记录
ndarraynumpy.ndarray用于创建张量的numpy数组,生成的Tensor维度和data一致

(3)函数功能:

1.根据给定的输入数据data创建一个指定大小的Tensor张量
2.根据给定的输入numpy数组创建一个指定大小的Tensor张量

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/24286.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蓝桥云课第12届强者挑战赛

第一题&#xff1a;字符串加法 其实本质上就是一个高精度问题&#xff0c;可以使用同余定理的推论 &#xff08;ab&#xff09;%n((a%n)(b%n))%n; #include <iostream> using namespace std; const int mod1e97; int main() {string a,b;cin>>a>>b;ab;int …

CentOS上安装Ollama

要在CentOS上安装Ollama&#xff0c;请按照以下步骤操作&#xff1a; 下载安装脚本:curl -fsSL https://ollama.com/install.sh | sh(sadtalker) [rootiZ0jl0y9289xkrzfhm4p2wZ ollama]# curl -fsSL https://ollama.com/install.sh | sh >>> Downloading ollama... #…

开发PlugLink插件:自动生成并发布博客文章

开发PlugLink插件&#xff1a;自动生成并发布博客文章 引言 博客已经成为个人和企业分享信息、推广产品的重要工具。然而&#xff0c;手动运营博客不仅耗时&#xff0c;而且容易出错。本文将介绍如何利用PlugLink开发一个全自动博客运营程序&#xff0c;通过API链接大模型&am…

第九篇——冗余量:《史记》和《圣经》那个信息量大?

目录 一、背景介绍二、思路&方案三、过程1.思维导图2.文章中经典的句子理解3.学习之后对于投资市场的理解4.通过这篇文章结合我知道的东西我能想到什么&#xff1f; 四、总结五、升华 一、背景介绍 通过信息量的对比&#xff0c;引出来冗余度的概念&#xff0c;又深入浅出…

java static 如何理解

在Java中&#xff0c;static关键字是一个重要的概念&#xff0c;它用于定义类的静态成员&#xff0c;包括静态变量&#xff08;也称作类变量&#xff09;、静态方法和静态代码块。static关键字的主要作用是创建独立于对象的成员&#xff0c;这些成员属于类本身&#xff0c;而不…

【传知代码】基于曲率的图重新布线(论文复现)

前言&#xff1a;在图形处理中&#xff0c;一个至关重要的问题是图形的重新布线&#xff0c;即在不改变图形基本结构的前提下&#xff0c;通过调整节点间的连接关系&#xff0c;使图形具有更好的性质&#xff0c;如更低的复杂度、更高的可视化效果或更强的鲁棒性。传统的图形重…

【ARM64 常见汇编指令学习 19.3 -- ARMv8 三目运算指令 csel 详细介绍】

文章目录 三目运算指令 csel地址获取条件选择用途 三目运算指令 csel 本篇文章以下面汇编代码介绍三目运算指令csel&#xff1a; adr x0, pass_messageadr x1, fail_messagecsel x1, x0, x1, pl下面是对这几行代码的详解&#xff1a; 地址获取 adr x0, pass_mes…

VMware 三种网络模式

目录 一、网卡、路由器、交换机 二、虚拟网络编辑器 三、网络模式 1.桥接模式 通信方式 特点 配置 连通情况 使用场景 2.NAT模式 通信方式 特点 配置 连通情况 使用场景 3.仅主机 通信方式 特点 配置 连通情况 使用场景 一、网卡、路由器、交换机 网卡(Ne…

局域网、城域网、广域网的ip

一、 广域网ip&#xff1a; 全球共享同一个广域网&#xff0c;所以广域网也被称为公网&#xff0c;所以广域网的ip也称为公网ip&#xff0c;全球公网ip必须是都是唯一的&#xff0c;不能冲突。 二、城域网、局域网ip&#xff1a; 可以有无数个局域网、城域网&#xff0c;虽然在…

大数据处理学习笔记

sudo tar -zxvf hadoop-1.1.2.tar.gz -C / #解压到/usr/local目录下 sudo mv hadoop-1.1.2 hadoop #重命名为hadoop sudo chown -R python ./hadoop #修改文件权限 //java安装同上给hadoop配置环境变量&#xff0c;将下面代…

webman中创建udp服务

webman是workerman的web开发框架 可以很容易的开启udp服务 tcp建议使用gatewayworker webman GatewayWorker插件 创建udp服务: config/process.php中加入: return [// File update detection and automatic reloadmonitor > [ ...........], udp > [handler > p…

WWDC24即将到来,ios18放大招

苹果公司即将在下周开全球开发者大会(WWDC)&#xff0c;大会上将展示其人工智能技术整合到设备和软件中的重大进展,包括与OpenAI的历史性合作。随着大会的临近,有关iOS 18及其据称采用AI技术支持的应用程序和功能的各种泄露信息已经浮出水面。 据报道,苹果将利用其自主研发的大…

力扣303. 区域和检索 - 数组不可变

Problem: 303. 区域和检索 - 数组不可变 文章目录 题目描述思路复杂度Code 题目描述 思路 创建前缀和数组preSum&#xff0c;其中preSum[i]处元素值为nums[0] - nums[i - 1]处元素值得和&#xff0c;当调用sumRange函数时直接返回preSum[right 1] - preSum[left] 复杂度 函数…

数据结构之ArrayList与顺序表(上)

找往期文章包括但不限于本期文章中不懂的知识点&#xff1a; 个人主页&#xff1a;我要学编程(ಥ_ಥ)-CSDN博客 所属专栏&#xff1a;数据结构&#xff08;Java版&#xff09; 顺序表的学习&#xff0c;点我 上面这篇博文是关于顺序表的基础知识&#xff0c;以及顺序表的实现。…

二维数组知识点

基本概念 二维数组是使用两个下标(索引)来确定元素的数组。 两个下标可以理解成行标和列标。 比如矩阵&#xff1a; 1 2 3 4 5 6 可以用二维数组int[2,3]表示&#xff0c;好比两行三列的数据集合。 二维数组的申明 //变量类型[,] 二维数组变量名; int[,] arr; //申明过后 …

CorelDRAW2024最新版本有哪些功能?揭秘设计界最新神器!

“设计”一词最早来源于拉丁语“designare”&#xff0c;意为计划&#xff0c;构思。随着时代的发展&#xff0c;人们将“设计”理解为一种创造性活动&#xff0c;通过这种活动&#xff0c;人们可以创造出新的产品、新的场景以及新的体验。 「CorelDRAW汉化版下载」&#xff0c…

优化财务管理制度提升企业经营效益—以审计代理记账为例

随着社会经济的快速发展&#xff0c;企业经营规模不断扩大&#xff0c;面临的财务管理问题也日益复杂&#xff0c;而作为其中的重要一环&#xff0c;审计代理记账已经成为了企业的必要组成部分&#xff0c;本文将重点探讨审计代理记账对于优化企业财务管理&#xff0c;提高经营…

Qt | QtBluetooth(蓝牙电脑当服务端+手机当客户端) 配对成功啦

01、前言 没有演示,因为穷,电脑没有带蓝牙,但是已在其他电脑进行演示,可以满足配对,后期再补充和手机进行聊天,如果有聊天的记得私聊我,好处大大滴。02、QtBlueTooth 简介 QtBluetooth 是一个跨平台的蓝牙库,它允许开发者创建在支持蓝牙的设备上运行的应用程序。这个库…

width: 100%和 width: 100vw这两种写法有什么区别

width: 100%; 和 width: 100vw; 是两种不同的 CSS 写法&#xff0c;它们在实际应用中会有不同的效果。以下是这两种写法的主要区别&#xff1a; width: 100%; 定义&#xff1a;将元素的宽度设置为其包含块&#xff08;通常是父元素&#xff09;宽度的 100%。效果&#xff1a;元…

网络实用技术答案

&#xff08; C &#xff09;不属于计算机网络四要素。A. 计算机系统 B. 传输介质C. 用户 D. 网络协议计算机网络中广域网和局域网的分类是以&#xff08; D &#xff09;来划分的。A. 信息交换方式 B&#xff0e;传输控制方法C. 网络使用习惯 D&#xff0e;网络覆盖范围计算机…