IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> torch.gater()方法自己理解 -> 正文阅读

[人工智能]torch.gater()方法自己理解

import torch as t
a = t.arange(0, 16).view(4, 4)
print(a)
index = t.LongTensor([[0,2,2,3],[1,1,0,3]])
b=a.gather(0, index)
print('-----------------------')
print(b)
b=a.gather(1, index)
print('........................')
print(b)

刚看到gather这个方法,这里面比较懵的是 dim=0,dim=1,其实只要这么理解就好,记住:

dim=0代表行
dim=1代表列


接下来:

a =tensor([[ 0, ?1, ?2, ?3],
? ? ? ? ? ? ? ? ?[ 4, ?5, ?6, ?7],
? ? ? ? ? ? ? ? ?[ 8, ?9, 10, 11],
? ? ? ? ? ? ? ? ?[12, 13, 14, 15]])

index = t.LongTensor([[0, 2, 2, 3],
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? [1, 1, 0, 3]])

二维的数组取值:一般取值是先找第几行,再找第几列,好的,

b=a.gather(0, index) # 这里的dim=0,那么意思就是 index 里面的值代表行

比如 [0, 2, 2, 3] 就代表依次取第0行,第2行,第2行,第3行,那么列呢?它们取第几个,这里的列就根据其在第几列就取第几列,

[0, 2, 2, 3]中

0是第0列,则取第0列,

2是在第一列,则取第一列,

后面一个2是在第二列,则取第二列,

3是在第三列,则取第三列

所以[0,2,2,3]取值是:
????????????????????????????????a[0][0],
????????????????????????????????a[2][1],
????????????????????????????????a[2][2],
????????????????????????????????a[3][3]

dim=0,意思就是里面的值代表第几行,列就看对应的值在第几列,就是取第几列

接下来看dim=1

dim=1就是代表里面的值是取第几列,但是取第几行呢?这个行就默认其在第几行就取第几行,官网要求 input.size() == index.size(),这里要求的维度相同,所以
index = t.LongTensor([[0,2,2,3],[1,1,0,3]])
d=a.gather(1, index) ?

这里[[0,2,2,3],[1,1,0,3]]中[0,2,2,3]在第0行,所以都是在第0行取,第几列就按照里面的值,0代表第0列,2代表第2列,3代表第3列;[1,1,0,3]代表都是在第1行取值,
1代表第1列,0代表第0列,3代表第3列

所以:
????????dim=0,就代表index中的值是行,至于列,就看其在第几列就取第几列 ????????

????????dim=1,就代表index中的值是列,至于行,就看其在第几行就取第几行


上下两行对照看就比较容易理解了,要么有行,列就按照其所在的列,要么有列,行就按照整体在哪一行;以上解释是由结果推到的,看了很多人的博客和官网,都没有很好理解。

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-03-21 20:50:48  更:2022-03-21 20:53:40 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 13:35:00-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码