pytorch中torch.gather()简单理解
1.作用
从输入张量中按照指定维度进行索引采集操作,返回值是一个新的张量,形状与 index 张量相同,根据指定的索引从输入张量中采集对应的元素。
2.问题
该函数的主要问题主要在dim维度上,dim=0 表示沿着第一个维度(行)进行索引采集,而 dim=1 表示沿着第二个维度(列)进行索引采集。
简单讲:dim=0,将在行上进行采集,行数不变,在列上取值,如下图中的例子torch.gather(input, dim=0, index=index),当dim=0时,[0,1]中0对应第一行第一列也就是1,1对应着第2行第2列(1在index的坐标为(1,2),dim=0,所以不用看index的行坐标的,只管纵坐标,也就是第2列。而此时值为1代表值input的行【需要+1,下标是从0开始的】,也就是第2行,值为4)也就是4;[1,0]中的1代表第2行第1列也就是3,0也就是第2列的第一行数据(此时index的0的坐标为(2,2),因为dim=0,也就不用看横坐标,也就是第二列。所以此时的0代表源input的行坐标,也就是第一行)也就是2
input = torch.tensor([[1, 2], [3, 4], [5, 6]])
index = torch.tensor([[0, 1], [1, 0]])result = torch.gather(input, dim=0, index=index)
result_colum = torch.gather(input, dim=1, index=index)
print("result:",result)
print("result_colum:",result_colum)
结果如下:

相关文章:
pytorch中torch.gather()简单理解
1.作用 从输入张量中按照指定维度进行索引采集操作,返回值是一个新的张量,形状与 index 张量相同,根据指定的索引从输入张量中采集对应的元素。 2.问题 该函数的主要问题主要在dim维度上,dim0 表示沿着第一个维度(行…...
计算机网络安全的背景
虽然传统的计算机发展和当今的电子商务不同,但是不可否认网络已经成 为非常重要的信息和数据互换交换的平台。但是随着网络不断发展渗透到人们的日 常生活、手机终端、交易支付等环节时,网络安全已经成为一个焦点和不可逾越的 发展鸿沟。尽管目前网上…...
Linux(实操篇一)
Linux实操篇 Linux(实操篇一)1. 常用基本命令1.1 帮助命令1.1.1 man获得帮助信息1.1.2 help获得shell内置命令的帮助信息1.1.3 常用快捷键 1.2 文件目录类1.2.1 pwd显示当前 工作目录的绝对路径1.2.2 ls列出目录的内容1.2.3 cd切换目录1.2.4 mkdir创建一个新的目录1.2.5 rmdir删…...
如何做一个学术裁缝
水刊:SCI四区,部分三区 顶刊、顶会要看,但是别看多了,知道好的东西长什么样就行了 去水刊,多去看水刊论文,能发现新大陆 一个论文需要多个数据集(两个),绝大多数水刊只用…...
微服务系统面经之二: 以秒杀系统为例
16 微服务与集群部署 16.1 一个微服务一般会采用集群部署吗? 对于一个微服务是否采用集群部署,这完全取决于具体的业务需求和系统规模。如果一个微服务的访问压力较大,或者需要提供高可用性,那么采用集群部署是一种常见的策略。…...
73 # 发布自己的 http-server 到 npm
1、添加 .npmignore 文件,忽略不需要的文件 public2、去官网https://www.npmjs.com/检查自己的包名是否被占用 3、切换到官方源,然后检查确认 nrm use npm nrm ls4、登录 npm 账号 npm login5、发布 npm publish6、查看发布情况,发布成功…...
接口经典题目
White graces:个人主页 🙉专栏推荐:《Java入门知识》🙉 🙉 内容推荐:继承与组合:代码复用的两种策略🙉 🐹今日诗词:人似秋鸿来有信,事如春梦了无痕。🐹 目录 &…...
2023-8-28 n-皇后问题
题目链接:n-皇后问题 第一种搜索顺序 #include <iostream>using namespace std;const int N 20;int n; char g[N][N]; bool row[N], col[N], dg[N], udg[N];void dfs(int x, int y, int s) {if(y n) y 0, x ;if(x n){if(s n){for(int i 0; i < n;…...
基于Visual studio创建API项目
API(英文全称:Application Programming Interface,中文:应用程序编程接口) 为什么要 通过API接口可以与其他软件实现数据相互通信,API这项技术能够提高开发效率。 本文是基于vs2017 .net平台搭建API。希望可以帮助到学…...
leetcode做题笔记107. 二叉树的层序遍历 II
给你二叉树的根节点 root ,返回其节点值 自底向上的层序遍历 。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 思路一:递归调换顺序 int** levelOrderBottom(struct TreeNode* root, int* returnSize, i…...
cdq优化背包转移:GYM104531I
https://codeforces.com/gym/104531/problem/I 转化部分:关于 括号序列与问号 问题的一类处理方法 发现一个区间 [ i : j ] [i:j] [i:j] 合法要满足以下条件: 最后一个很好搞。前3个就是个cdq形式。 第一个拿来排序,后面对于黑白点分别以不…...
STL list基本用法
目录 list的使用构造函数和赋值重载迭代器(最重要)容量相关插入删除元素操作reversesortuniqueremovesplice list的底层实际是双向链表结构 list的使用 构造函数和赋值重载 构造函数说明list()无参构造list (size_type n, const value_type& val value_type())构造的li…...
【ArcGIS微课1000例】0073:ArcGIS探索性回归分析案例
一、探索性回归工具简介 “探索性回归”工具会对输入的候选解释变量的所有可能组合进行评估,以便根据用户所指定的指标来查找能够最好地对因变量做出解释的 OLS 模型。 给定一组候选解释变量,找出正确指定的 OLS 模型: 用法: 工具还会生成一个可选表,该表包括所有满足…...
docker使用安装教程
docker使用安装教程 一、docker安装及下载二、使用教程2.1 镜像2.2 容器2.3 docker安装Redis 一、docker安装及下载 一、安装 安装执行命令:curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun 二、启停常用命令 启动docker,执行命令…...
【SpringSecurity】五、UserDetails接口和UserDetailsService接口
文章目录 1、SpringSecurity原理2、UserDetails接口3、UserDetailService接口4、权限配置 1、SpringSecurity原理 Spring Security是做安全访问控制,对所有进入系统的请求进行拦截,并做校验,这可以通过Filter或者AOP实现,Spring …...
了解ET模式和LT模式:Linux网络编程中的事件触发方式
文章目录 概述摘要正文:介绍ET模式(边缘触发)LT模式(水平触发 默认) 总结 概述 当谈到Linux网络编程中的ET(边缘触发)模式和LT(水平触发)模式时,我们需要理解它们在事件…...
内部类和匿名类
目录 一、内部类 1.数据访问 2.静态内部类 二、内部类和外部类区别 1.访问修饰符: 2.static修饰: 3.使用: 三、匿名类 PS:小练习 一、内部类 内部类是指将一个类定义在另一个里面。 内部类分为static内部类和普通内部类。 public…...
RISC-V 中国峰会 | OpenMPL引人注目,RISC-V Summit China 2023圆满落幕
RISC-V中国峰会圆满落幕 2023年8月25日,为期三天的RISC-V中国峰会(RISC-V Summit China 2023)圆满落幕。本届峰会以“RISC-V生态共建”为主题,结合当下全球新形势,把握全球新时机,呈现RISC-V全球新观点、新…...
时空数据挖掘精选23篇论文解析【AAAI 2023】
今天和大家分享时空数据挖掘方向的资料。 时空数据挖掘是人工智能技术的重要分支,是一种采用人工智能和大数据技术对城市时空数据进行分析与挖掘的方法,旨在挖掘时空数据,理解城市本质,解决城市问题。 目前,时空数据…...
MySQL 存储过程和函数
目录 一、存储过程和函数概述 二、创建存储过程和函数 1、创建存储过程 2、创建存储函数 三、查看/调用储存过程和函数 1、查看储存过程/函数 2、调用储存过程/函数 四、修改/删除存储过程和函数 1、修改存储过程和函数 2、删除存储过程和函数 五、练习 一、存储过…...
Linux链表操作全解析
Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表?1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...
ubuntu搭建nfs服务centos挂载访问
在Ubuntu上设置NFS服务器 在Ubuntu上,你可以使用apt包管理器来安装NFS服务器。打开终端并运行: sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享,例如/shared: sudo mkdir /shared sud…...
Java 8 Stream API 入门到实践详解
一、告别 for 循环! 传统痛点: Java 8 之前,集合操作离不开冗长的 for 循环和匿名类。例如,过滤列表中的偶数: List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...
Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...
关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...
【2025年】解决Burpsuite抓不到https包的问题
环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...
HBuilderX安装(uni-app和小程序开发)
下载HBuilderX 访问官方网站:https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本: Windows版(推荐下载标准版) Windows系统安装步骤 运行安装程序: 双击下载的.exe安装文件 如果出现安全提示&…...
JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作
一、上下文切换 即使单核CPU也可以进行多线程执行代码,CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短,所以CPU会不断地切换线程执行,从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...
蓝桥杯3498 01串的熵
问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798, 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...
