Pytorch常用函数用法归纳:创建tensor张量
1.torch.arange()
(1)函数原型
torch.arange(start,end,step,*,out,dtype,layout=,device,requires_grad)
(2)参数说明:
参数名称 | 参数类型 | 参数说明 |
start | Number | 起始值,默认值为0 |
end | Number | 结束值,取不到,为开区间 |
step | Number | 步长值,默认为1 |
out | Tensor | 输出的张量,,表明创建后tensor赋予哪个变量,通常情况下不会设置该参数 |
dtype | torch.dtype | 期望返回的张量的数据类型,如果是None,则使用全局默认值,如果未给出dtype,则从其他输入参数推断数据类型,如果start、end或stop中的任何一个是浮点数,则dtype被推断为默认值,否则被推断为torch.int64 |
layout | torch.layout | 返回张量的期望 layout,默认值为torch.strided |
device | torch.device | 返回张量的期望设备。如果是默认值None,则使用当前设备作为默认张量类型,对于CPU类型的张量,则device是CPU;若是CUDA 类型的张量,则device是当前的CUDA 设备 |
requires_grad | bool | autograd是否记录返回张量上的梯度。默认值为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)参数说明:
参数名称 | 参数类型 | 参数说明 |
start | Number | 起始值,默认值为0 |
end | Number | 结束值,可以取到,为闭区间 |
step | Number | 步长值,默认为1 |
out | Tensor | 输出的张量,表明创建后tensor赋予哪个变量,通常情况下不会设置该参数 |
dtype | torch.dtype | 期望返回的张量的数据类型,如果是None,则使用全局默认值;如果未给出dtype,则从其他输入参数推断数据类型;如果start、end或stop中的任何一个是浮点数,则dtype被推断为默认值;否则被推断为torch.int64 |
layout | torch.layout | 返回张量的期望layout,默认值为torch.strided,对性能影响不大 |
device | torch.device | 返回张量的设备。默认值None表示使用当前设备作为默认张量类型;对于CPU类型的张量则device是CPU;若是CUDA 类型的张量则device是当前的CUDA 设备 |
requires_grad | bool | autograd是否记录返回张量上的梯度。默认值为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)参数说明:
参数名称 | 参数类型 | 参数说明 |
size | int/list/tuple | 生成tensor的维度大小,可以是int类型的数或者是一个由int类型数组成的list或tuple,若为int则表示此时生成的tensor是一维的 |
generator | torch.Generator,optional | 用于控制生成随机数的种子,是可选参数 |
low | int,optional | 生成的随机tensor所属整数区间的下界,默认值为0 |
high | int | 生成的随机tensor所属整数区间的上界 |
n | int | 生成随机整数排列的区间上界,即这些整数排列中最大值+1 |
mean | Tensor | 生成的随机tensor服从的正态分布的均值向量 |
std | Tensor | 生成的随机tensor数服从的正态分布的标准差向量 |
out | Tensor | 输出的张量,表明创建后tensor赋予哪个变量,通常情况下不会设置该参数 |
dtype | torch.dtype | 期望返回的张量的数据类型,对于torch.randint()和torch.randperm()来说默认值为torch.int64,而对于其他函数如果是None则使用全局默认值 |
layout | torch.layout | 返回张量的期望layout,默认值为torch.strided,对性能影响不大 |
device | torch.device | 返回张量的设备。默认值None表示使用当前设备作为默认张量类型;对于CPU类型的张量则device是CPU;若是CUDA 类型的张量则device是当前的CUDA 设备 |
requires_grad | bool | autograd是否记录返回张量上的梯度。默认值为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)参数说明:
参数名称 | 参数类型 | 参数说明 |
size | int/list/tuple | 生成tensor的维度大小,可以是int类型的数或者是一个由int类型数组成的list或tuple,若为int则表示此时生成的tensor是一维的 |
input | torch.Tensor | 输入张量,新张量的大小将与此张量相同 |
dtype | torch.dtype | 期望返回的张量的数据类型; 对于torch.zeros_like()和torch.ones_like()来说默认值为None,如果是None则使用和张量input一致的类型;而对其他函数来说如果为None使用全局默认类型 |
out | Tensor | 输出的张量,表明创建后tensor赋予哪个变量,通常情况下不会设置该参数 |
layout | torch.layout | 返回张量的期望layout,默认值为torch.strided,对性能影响不大 |
device | torch.device | 返回张量的设备,默认值None表示使用当前设备作为默认张量类型; 对于CPU类型的张量则device是CPU;若是CUDA 类型的张量则device是当前的CUDA 设备 |
requires_grad | bool | autograd是否记录返回张量上的梯度。默认值为False表示不记录 |
fill_value | Number | 指定填充到生成Tensor张量中的值 |
n | int | 生成的单位矩阵的行数 |
m | int,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)参数说明:
参数名称 | 参数类型 | 参数说明 |
data | list/Numpy数组/tuple/scalar | 表示用于创建张量的数据,生成的Tensor维度和data一致 |
dtype | torch.dtype,optional | 期望返回的张量的数据类型;默认值None表示和给定的内容的类型保持一致 |
device | torch.device,optional | 返回张量的设备,默认值None表示使用当前设备为默认张量类型; 对于CPU类型的张量则device是CPU;若是CUDA 类型的张量则device是当前的CUDA 设备 |
requires_grad | bool,optional | autograd操作是否记录返回张量上的梯度,默认值为False表示不记录 |
ndarray | numpy.ndarray | 用于创建张量的numpy数组,生成的Tensor维度和data一致 |
(3)函数功能:
1.根据给定的输入数据data创建一个指定大小的Tensor张量
2.根据给定的输入numpy数组创建一个指定大小的Tensor张量
相关文章:
Pytorch常用函数用法归纳:创建tensor张量
1.torch.arange() (1)函数原型 torch.arange(start,end,step,*,out,dtype,layout,device,requires_grad) (2)参数说明: 参数名称参数类型参数说明startNumber起始值,默认值为0endNumber结束值,取不到,为开区间stepNumber步长值࿰…...

WPF前端:一个纯Xaml的水平导航栏
效果图: 代码: 1、样式代码,可以写在窗体资源处或者样式资源文件中 <Style x:Key"MenuRadioButtonStyle" TargetType"{x:Type RadioButton}"><Setter Property"FontSize" Value"16" />…...

谷粒商城实战(033 业务-秒杀功能4-高并发问题解决方案sentinel 1)
Java项目《谷粒商城》架构师级Java项目实战,对标阿里P6-P7,全网最强 总时长 104:45:00 共408P 此文章包含第326p-第p331的内容 关注的问题 sentinel(哨兵) sentinel来实现熔断、降级、限流等操作 腾讯开源的tendis,…...

STM32项目分享:智能家居(机智云)系统
目录 一、前言 二、项目简介 1.功能详解 2.主要器件 三、原理图设计 四、PCB硬件设计 1.PCB图 2.PCB板及元器件图 五、程序设计 六、实验效果 七、资料内容 项目分享 一、前言 项目成品图片: 哔哩哔哩视频链接: https://www.bilibili.c…...

游戏盾之应用加速,何为应用加速
在数字化时代,用户对于应用程序的防护要求以及速度和性能要求越来越高。为了满足用户的期望并提高业务效率,应用加速成为了不可忽视的关键。 应用加速是新一代的智能分布式云接入系统,采用创新级SD-WAN跨域技术,针对高防机房痛点进…...
Java 基础面试题
文章目录 重载与重写抽象类与接口面向对象a a b 与 a b 的区别final、finalize、finallyString、StringBuild、StringBuffer位运算反射 重载与重写 重载:是在同一个类中,方法名相同,方法参数类型,个数不同,返回类型…...

Nginx 1.26.0 爆 HTTP/3 QUIC 漏洞,建议升级更新到 1.27.0
据悉,Nginx 1.25.0-1.26.0 主线版本中涉及四个与 NGINX HTTP/3 QUIC 模块相关的中级数据面 CVE 漏洞,其中三个为 DoS 攻击类型风险,一个为随机信息泄漏风险,影响皆为允许未经身份认证的用户通过构造请求实施攻击。目前已经紧急发布…...

uniadmin引入iconfont报错
当在uniadmin中引入iconfont后,出现错误: [plugin:vite:css] [postcss] Cannot find module ‘E:/UniAdmin/uniAdmin/static/fonts/iconfont.woff2?t1673083050786’ from ‘E:\UniAdmin\uniAdmin\static\fonts\iconfont.css’ 这是需要更改为绝对路径…...

Vue3【三】 使用TS自己编写APP组件
Vue3【三】 使用TS自己编写APP组件 运行截图 目录结构 注意目录层级 文件源码 APP.vue <template><div class"app"><h1>你好世界!</h1></div> </template><script lang"ts"> export default {name:App //组…...

数字IC后端物理验证PV | TSMC 12nm Calibre Base Layer DRC案例解析
基于TSMC 12nm ARM A55 upf flow后端设计实现训练营将于6月中旬正式开班!小班教学!目前还有3个名额,招满为止!有需要可以私信小编 ic-backend2018报名。吾爱IC社区所有训练营课程均为直播课! 这个课程支持升级成双核A…...

Echarts 在指定部分做文字标记
文章目录 需求分析1. demo1样式调整2. demo22. demo3 定位解决需求 实现在Echarts的折线图中,相同Y值的两点之间显示’abc’ 分析 1. demo1 使用 ECharts 的 markLine 功能来在相邻两个点之间添加标记。其中,我们通过设置标记的 yAxis 和 label 来控制标记的位置和显示内…...
如何发布自己的npm插件包
随着JavaScript在前端和后端的广泛应用,npm(Node Package Manager)已成为JavaScript开发者不可或缺的工具之一。通过npm,开发者可以轻松共享和使用各种功能模块,极大地提高了开发效率。那么,如何将自己开发的功能模块发布为npm插件包,与全球的开发者共享呢?本文将进行全…...

AI和机器人引领新一轮农业革命
AI和机器人技术在农业领域的应用正在迅速发展,未来它们可能会实现厘米级精度的自主耕作。 精确种植:AI算法可以分析土壤条件、气候数据和作物生长周期,以决定最佳种植地点和时间。 土壤管理:利用传感器和机器学习,机器…...

【Kubernetes】三证集齐 Kubernetes实现资源超卖(附镜像包)
目录 插叙前言一、思考和原理二、实现步骤0. 资料包1. TLS证书签发2. 使用 certmanager 生成签发证书3. 获取secret的内容 并替换CA_BUNDLE4.部署svc deploy 三、测试验证1. 观察pod情况2. 给node 打上不需要超售的标签【可以让master节点资源不超卖】3. 资源实现超卖4. 删除还…...

国产Sora免费体验-快手旗下可灵大模型发布
自从OpenAI公布了Sora后,震爆了全世界,但由于其技术的不成熟和应用的局限性,未能大规模推广,只有零零散散的几个公布出来的一些视频。昨日,快手成立13周年,可灵(Kling)大模型发布&am…...

linux嵌入式设备测试wifi信号强度方法
首先我们要清楚设备具体链接在哪个wifi热点上 执行:nmcli dev wifi list rootubuntu:/home/ubuntu# nmcli dev wifi list IN-USE BSSID SSID MODE CHAN RATE SIGNAL BARS > * 14:EB:08:51:7D:20 wifi22222_5G Infr…...
【名词解释】Unity的Inputfield组件及其使用示例
Unity的InputField组件是一个UI元素,它允许用户在游戏或应用程序中输入文本。InputField通常用于创建表单、登录界面或任何需要用户输入文本的场景。它提供了多种功能,比如文本验证、占位符显示、输入限制等。 功能特点: 文本输入ÿ…...

Android 安装调试 TelephonyProvider不生效
直接安装TelephonyProvider的时候,(没有重启)发现数据库没有生效。 猜测应该是原本的数据库没有删除后重建更新。 解决方法:杀掉phone进程 adb shell am force-stop com.android.phone 查看device进程 adb shell ps | grep <…...

【C++】STL中List的基本功能的模拟实现
前言:在前面学习了STL中list的使用方法,现在我们就进一步的讲解List的一些基本功能的模拟实现,这一讲博主认为是最近比较难的一个地方,各位一起加油。 💖 博主CSDN主页:卫卫卫的个人主页 💞 👉 …...

C语言基础——函数
ʕ • ᴥ • ʔ づ♡ど 🎉 欢迎点赞支持🎉 个人主页:励志不掉头发的内向程序员; 专栏主页:C语言基础; 文章目录 前言 一、函数的概念 二、库函数 2.1 库函数和头文件 2.2 库函数的使用/…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现
目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

linux之kylin系统nginx的安装
一、nginx的作用 1.可做高性能的web服务器 直接处理静态资源(HTML/CSS/图片等),响应速度远超传统服务器类似apache支持高并发连接 2.反向代理服务器 隐藏后端服务器IP地址,提高安全性 3.负载均衡服务器 支持多种策略分发流量…...

超短脉冲激光自聚焦效应
前言与目录 强激光引起自聚焦效应机理 超短脉冲激光在脆性材料内部加工时引起的自聚焦效应,这是一种非线性光学现象,主要涉及光学克尔效应和材料的非线性光学特性。 自聚焦效应可以产生局部的强光场,对材料产生非线性响应,可能…...
【杂谈】-递归进化:人工智能的自我改进与监管挑战
递归进化:人工智能的自我改进与监管挑战 文章目录 递归进化:人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管?3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...
鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南
1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发,使用DevEco Studio作为开发工具,采用Java语言实现,包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...

C# 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
蓝桥杯 冶炼金属
原题目链接 🔧 冶炼金属转换率推测题解 📜 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V,是一个正整数,表示每 V V V 个普通金属 O O O 可以冶炼出 …...

保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...

免费PDF转图片工具
免费PDF转图片工具 一款简单易用的PDF转图片工具,可以将PDF文件快速转换为高质量PNG图片。无需安装复杂的软件,也不需要在线上传文件,保护您的隐私。 工具截图 主要特点 🚀 快速转换:本地转换,无需等待上…...

【C++进阶篇】智能指针
C内存管理终极指南:智能指针从入门到源码剖析 一. 智能指针1.1 auto_ptr1.2 unique_ptr1.3 shared_ptr1.4 make_shared 二. 原理三. shared_ptr循环引用问题三. 线程安全问题四. 内存泄漏4.1 什么是内存泄漏4.2 危害4.3 避免内存泄漏 五. 最后 一. 智能指针 智能指…...