pytorch 使用tensor混合:进行index操作
(Pdb) tmp = torch.randn(3,5)
(Pdb) indx = torch.tensor([1,0]).long()
(Pdb) temp(indx)
*** NameError: name ‘temp’ is not defined
(Pdb) tmp(indx)
*** TypeError: ‘Tensor’ object is not callable
(Pdb) tmp[indx]
tensor([[ 0.1633, 0.9389, 1.2806, -0.2525, 0.2817],
[ 0.6204, 0.5973, -1.7741, 0.3721, -0.5338]])
(Pdb) tmp
tensor([[ 0.6204, 0.5973, -1.7741, 0.3721, -0.5338],
[ 0.1633, 0.9389, 1.2806, -0.2525, 0.2817],
[ 0.4279, -0.2156, 2.4653, 0.3173, -0.0719]])
(Pdb) indx
tensor([1, 0])
(Pdb) indx2= torch.tensor([[1,0]]).long()
(Pdb) index2
*** NameError: name ‘index2’ is not defined
(Pdb) indx2
tensor([[1, 0]])
(Pdb) indx2.shape
torch.Size([1, 2])
(Pdb) tmp[indx2]
tensor([[[ 0.1633, 0.9389, 1.2806, -0.2525, 0.2817],
[ 0.6204, 0.5973, -1.7741, 0.3721, -0.5338]]])
(Pdb) tmp[indx2].shape
torch.Size([1, 2, 5])
(Pdb) tmp[:,indx2].shape
torch.Size([3, 1, 2])
(Pdb) tmp[:,indx2]
tensor([[[ 0.5973, 0.6204]],
[[ 0.9389, 0.1633]],
[[-0.2156, 0.4279]]])
(Pdb) t=torch.arange(10)
(Pdb) t
tensor([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
(Pdb) sp=torch.randn(200,300)
(Pdb) sp[:,t:t+3]
*** TypeError: only integer tensors of a single element can be converted to an index
(Pdb) t:t+3
(Pdb) print(t:t+3)
*** SyntaxError: invalid syntax
(Pdb) sp[:,t]
tensor([[ 0.8808, 1.0081, -1.0811, …, 1.8065, 0.8156, 1.3579],
[-0.5902, 0.0588, 0.4373, …, -1.4304, -0.4398, -1.6143],
[-0.9567, -0.6260, 0.8671, …, 0.3011, -0.1352, -1.7263],
…,
[ 0.7137, -0.0028, -1.8195, …, 1.0860, 0.5901, -0.9922],
[-0.9040, -0.2345, -1.1723, …, -1.3859, -1.2003, -0.3777],
[-0.2986, -0.6276, -0.5059, …, 2.4101, 0.0195, -1.7069]])
(Pdb) t2=torch.arange(2,12)
(Pdb) tw
*** NameError: name ‘tw’ is not defined
(Pdb) t2
tensor([ 2, 3, 4, 5, 6, 7, 8, 9, 10, 11])
(Pdb) t3 = torch.cat(t,t2)
*** TypeError: cat() received an invalid combination of arguments - got (Tensor, Tensor), but expected one of:
- (tuple of Tensors tensors, int dim, *, Tensor out)
- (tuple of Tensors tensors, name dim, *, Tensor out)
(Pdb) t3 = torch.cat([t,t2])
(Pdb) t3
tensor([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 2, 3, 4, 5, 6, 7, 8, 9,
10, 11])
(Pdb) t3=torch.hstack([t,t2])
(Pdb) t3
tensor([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 2, 3, 4, 5, 6, 7, 8, 9,
10, 11])
(Pdb) t3=torch.vstack([t,t2])
(Pdb) t3
tensor([[ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
[ 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]])
(Pdb) t3.shape
torch.Size([2, 10])
(Pdb) sp[:,t3]
tensor([[[ 0.8808, 1.0081, -1.0811, …, 1.8065, 0.8156, 1.3579],
[-1.0811, 0.0215, -0.0749, …, 1.3579, 0.5030, -0.6049]],
[[-0.5902, 0.0588, 0.4373, …, -1.4304, -0.4398, -1.6143],
[ 0.4373, -0.4506, 1.2061, …, -1.6143, 1.0399, -0.9514]],
[[-0.9567, -0.6260, 0.8671, …, 0.3011, -0.1352, -1.7263],
[ 0.8671, -0.2235, -0.1658, …, -1.7263, -0.3991, -1.3480]],
…,[[ 0.7137, -0.0028, -1.8195, …, 1.0860, 0.5901, -0.9922],
[-1.8195, 0.7648, -1.2249, …, -0.9922, -1.9712, 1.7941]],
[[-0.9040, -0.2345, -1.1723, …, -1.3859, -1.2003, -0.3777],
[-1.1723, -0.8177, -0.5682, …, -0.3777, 0.6858, 0.0616]],
[[-0.2986, -0.6276, -0.5059, …, 2.4101, 0.0195, -1.7069],
[-0.5059, 0.3183, -1.1891, …, -1.7069, 0.6224, 0.2936]]])
(Pdb) sp[:,t3].shape
torch.Size([200, 2, 10])
还是很方便的
相关文章:
pytorch 使用tensor混合:进行index操作
(Pdb) tmp torch.randn(3,5) (Pdb) indx torch.tensor([1,0]).long() (Pdb) temp(indx) *** NameError: name ‘temp’ is not defined (Pdb) tmp(indx) *** TypeError: ‘Tensor’ object is not callable (Pdb) tmp[indx] tensor([[ 0.1633, 0.9389, 1.2806, -0.2525, 0.28…...

Threejs(WebGL)绘制线段优化:Shader修改gl.LINES模式为gl.LINE_STRIP
目录 背景 思路 Threejs实现 记录每条线的点数 封装原始裁剪索引数据 封装合并几何体的缓冲数据:由裁剪索引组成的 IntArray 守住该有的线段! 修改顶点着色器 修改片元着色器 完整代码 WebGL实现类似功能(简易版,便于测…...

继承-进阶
父子类成员共享 普通成员对象/父子间不共享, 成员独立 函数成员共享(函数不存储在对象中) 子类由两部分构成:父类中继承的成员和子类中新定义成员 继承方式 子类中存在父类private成员但不可直接访问(及时在类中&am…...

探索k8s集群的配置资源(secret和configmap)
目录 ConfigMap ConfigMap(主要是将配置目录或者文件挂载到k8s里面使用) 与Secret类似,区别在于ConfigMap保存的是不需要加密配置的信息。(例如:配置文件) ConfigMap 功能在 Kubernetes1.2 版本中引入&…...

如何设置vue3项目中默认的背景为白色
方法1:通过CSS全局样式 在全局CSS文件中设置: 如果你的项目中有全局的CSS文件(如App.vue或专门的CSS文件),你可以直接设置body或html标签的背景颜色。 在src/assets文件夹中(或者任何你存放CSS文件的地方&a…...

MS1112驱动开发
作者简介: 一个平凡而乐于分享的小比特,中南民族大学通信工程专业研究生在读,研究方向无线联邦学习 擅长领域:驱动开发,嵌入式软件开发,BSP开发 作者主页:一个平凡而乐于分享的小比特的个人主页…...

K8s存储对象的使用
背景和概念 容器中的文件在磁盘上是临时存放的,这给在容器中运行较重要的应用带来一些问题: 当容器崩溃或停止时,此时容器状态未保存, 因此在容器生命周期内创建或修改的所有文件都将丢失。另外 在崩溃期间,kubelet 会…...

构建自动化API数据抓取系统
构建一个自动化API数据抓取系统是一个涉及多个技术领域的复杂任务。这样的系统不仅要求高效的数据获取能力,还需要有稳定的数据处理、存储和错误处理机制。 1. 需求分析 在开始构建之前,明确你的需求至关重要。你需要确定要抓取的API、数据的频率、数据的…...

【Qt知识】部分QWidget属性表格
QWidget是Qt库中所有图形用户界面组件的基类,它提供了大量属性以供自定义和配置控件的行为和外观。下面列出了一些主要的QWidget属性及其作用。 属性 作用 accessibleName 控件的辅助技术名称,用于无障碍访问。 accessibleDescription 控件的辅助技…...
【ARM64 常见汇编指令学习 19.1 -- ARM64 跳转指令 b.pl 详细介绍】
文章目录 ARM64 跳转指令 b.pl使用场景语法示例总结 ARM64 跳转指令 b.pl 在 ARMv8 架构中,b.pl 是一条条件分支(Branch)指令,它根据当前的状态寄存器中的条件标志执行跳转。b.pl 的全称是 Branch if Plus,即如果条件…...

WWDC24即将到来,ios18放大招
苹果公司即将在下周开全球开发者大会(WWDC),大会上将展示其人工智能技术整合到设备和软件中的重大进展,包括与OpenAI的历史性合作。随着大会的临近,有关iOS 18及其据称采用AI技术支持的应用程序和功能的各种泄露信息已经浮出水面。 据报道,苹果将利用其自主研发的大…...
C#中的空合并运算符与空合并赋值运算符:简化空值处理
在C#编程中,处理可能为null的值是一项常见的任务,尤其是在涉及数据库查询、Web服务调用或任何可能返回缺失数据的场景中。为了简化这类操作并提高代码的可读性,C# 8 引入了两个非常实用的运算符:空合并运算符 (??) 和 空合并赋值…...
数据结构:哈夫曼树及其哈夫曼编码
目录 1.哈夫曼树是什么? 2.哈夫曼编码是什么? 3.哈夫曼编码的应用 4.包含头文件 5.结点设计 6.接口函数定义 7.接口函数实现 8.哈夫曼编码测试案列 哈夫曼树是什么? 哈夫曼树(Huffman Tree)是一种特殊的二叉树…...

微信如何防止被对方拉黑删除?一招教你解决!文末附软件!
你一定不知道,微信可以防止被对方拉黑删除,秒变无敌。只需一招就能解决!赶快来学!文末有惊喜! 惹到某些重要人物(比如女朋友),被删除拉黑一条龙,那真的是太令人沮丧了&a…...
jar增量打包
jar增量打包 Linux环境下: 1.解压缩 jar -xvf jarname.jar(解压)2.打包 这时可以把要替换的lib包的内容粘帖进去,然后重新打jar包 jar -cvf0M jarname.jar .(重新压缩,-0是主要的)jar命令: …...

智慧医院物联网建设-统一管理物联网终端及应用
近年来,国家卫健委相继出台的政策和评估标准体系中,都涵盖了强化物联网建设的内容。物联网建设已成为智慧医院建设的核心议题之一。 作为医院高质量发展的关键驱动力,物联网的顶层设计与网络架构设计规划,既需要结合现代信息技术的…...
Debian的常用命令
Debian作为一个稳定、安全且高效的Linux发行版,被广泛应用于服务器和桌面操作系统中。对于系统管理员和开发者来说,熟练掌握Debian的常用命令能够大大提升工作的效率和系统的管理水平。本文将详细介绍一些常见且实用的Debian命令,帮助新手更好地管理和操作Debian系统。 系统…...
矩阵1-范数与二重求和的求和可交换
矩阵1-范数与二重求和的求和可交换 1、矩阵1-范数 A [ a 11 a 12 ⋯ a 1 n a 21 a 22 ⋯ a 2 n ⋮ ⋮ ⋱ ⋮ a n 1 a n 2 ⋯ a n n ] A \begin{bmatrix} a_{11} &a_{12} &\cdots &a_{1n} \\ a_{21} &a_{22} &\cdots &a_{2n} \\ \vdots &\vdots …...
Python笔记 - *args和**kwargs
探索Python的*args和**kwargs 在Python中,函数可以接受任意数量的参数,而这要归功于*args和**kwargs的强大功能。这两个特性使得函数在处理不同数量的输入时变得更加灵活和高效。在这篇博客中,我们将详细介绍*args和**kwargs,并展…...
微信小程序实现图片转base64
在微信小程序中,图片转base63可以引入第三方插件; 也可以通过下边的方法转base64。 转换方法: imgToBase64(filePath) {return new Promise((resolve, reject) > {let baseFormat data:image/png;base64,let base64 wx.getFileSystem…...
【算法训练营Day07】字符串part1
文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接:344. 反转字符串 双指针法,两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战
“🤖手搓TuyaAI语音指令 😍秒变表情包大师,让萌系Otto机器人🔥玩出智能新花样!开整!” 🤖 Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制(TuyaAI…...

Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)
参考官方文档:https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java(供 Kotlin 使用) 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...
Java 二维码
Java 二维码 **技术:**谷歌 ZXing 实现 首先添加依赖 <!-- 二维码依赖 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><de…...
Python Einops库:深度学习中的张量操作革命
Einops(爱因斯坦操作库)就像给张量操作戴上了一副"语义眼镜"——让你用人类能理解的方式告诉计算机如何操作多维数组。这个基于爱因斯坦求和约定的库,用类似自然语言的表达式替代了晦涩的API调用,彻底改变了深度学习工程…...
MySQL 部分重点知识篇
一、数据库对象 1. 主键 定义 :主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 :确保数据的完整性,便于数据的查询和管理。 示例 :在学生信息表中,学号可以作为主键ÿ…...

android RelativeLayout布局
<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...
LCTF液晶可调谐滤波器在多光谱相机捕捉无人机目标检测中的作用
中达瑞和自2005年成立以来,一直在光谱成像领域深度钻研和发展,始终致力于研发高性能、高可靠性的光谱成像相机,为科研院校提供更优的产品和服务。在《低空背景下无人机目标的光谱特征研究及目标检测应用》这篇论文中提到中达瑞和 LCTF 作为多…...

VisualXML全新升级 | 新增数据库编辑功能
VisualXML是一个功能强大的网络总线设计工具,专注于简化汽车电子系统中复杂的网络数据设计操作。它支持多种主流总线网络格式的数据编辑(如DBC、LDF、ARXML、HEX等),并能够基于Excel表格的方式生成和转换多种数据库文件。由此&…...