我终于想明白这个函数的意思啦!!!

scatter的意思:服务组件架构

data.scatter_(dim,index,src)

将src中数据根据index中的索引按照dim的方向填进data。

import torch
x=torch.tensor([[7, 2, 3,4, 5],[1.1, 2.2, 3.3, 4.4, 5.5]])
y=torch.tensor([[0,1,2,0,0],[2,0,0,1,2]])
print(x)
z=torch.zeros(3,5).scatter_(0,y,x)
print(z)
#输出
'''
tensor([[7.0000, 2.0000, 3.0000, 4.0000, 5.0000],[1.1000, 2.2000, 3.3000, 4.4000, 5.5000]])
tensor([[7.0000, 2.2000, 3.3000, 4.0000, 5.0000],[0.0000, 2.0000, 0.0000, 4.4000, 0.0000],[1.1000, 0.0000, 3.0000, 0.0000, 5.5000]])'''

y=torch.zeros(3,5).scatter_(0,y,x)

这句话的意思是:

首先:创建一个(3,5)的〇为z,然后,将x中的值补充到〇中。

根据z进行补充,如果若干个数字填充到相同的位置,则按顺序,看最后是什么,则确定是什么。

[[0,1,2,0,0],[2,0,0,1,2]]

(0,0),(0,1),(0,2),(0,3),(0,4)

(1,0),(1,1),(1,2),(1,3),(1,4)

这是x数据的位置,这时候,要x数据的位置坐标,根据y更改,由于dim=0,即更改第0维度

(0,0),(1,1),(2,2),(0,3),(0,4)

(2,0),(0,1),(0,2),(1,3),(2,4)

x数据在z中位置就是上面坐标。如果有几个数据对应的坐标相同,则一层层覆盖,显示最后一个数据。

import torch
x=torch.tensor([[7, 2, 3,4, 5],[1.1, 2.2, 3.3, 4.4, 5.5]])
y=torch.tensor([[0,1,2,0,0],[2,0,0,1,2]])
print(x)
z=torch.zeros(3,5).scatter_(1,y,x)
print(z)
#输出
'''
tensor([[7.0000, 2.0000, 3.0000, 4.0000, 5.0000],[1.1000, 2.2000, 3.3000, 4.4000, 5.5000]])
tensor([[5.0000, 2.0000, 3.0000, 0.0000, 0.0000],[3.3000, 4.4000, 5.5000, 0.0000, 0.0000],[0.0000, 0.0000, 0.0000, 0.0000, 0.0000]])
'''

(0,0),(0,1),(0,2),(0,3),(0,4)

(1,0),(1,1),(1,2),(1,3),(1,4)

这是x数据的位置,这时候,要x数据的位置坐标,根据y=[[0,1,2,0,0],[2,0,0,1,2]]更改,由于dim=1,即更改第1维度

(0,0),(0,1),(0,2),(0,0),(0,0)

(1,2),(1,0),(1,0),(1,1),(1,2)

三个数字的新坐标都是(0,0),则以最后一次也就是x中数据5占领此位置。

pytorch:scatter_相关推荐

  1. pytorch与keras_Keras vs PyTorch:如何通过迁移学习区分外星人与掠食者

    pytorch与keras by Patryk Miziuła 通过PatrykMiziuła Keras vs PyTorch:如何通过迁移学习区分外星人与掠食者 (Keras vs PyTorch ...

  2. Keras vs PyTorch:谁是第一深度学习框架?

    「第一个深度学习框架该怎么选」对于初学者而言一直是个头疼的问题.本文中,来自 deepsense.ai 的研究员给出了他们在高级框架上的答案.在 Keras 与 PyTorch 的对比中,作者还给出了 ...

  3. Pytorch:深度学习中pytorch/torchvision版本和CUDA版本最正确版本匹配、对应版本安装之详细攻略

    Pytorch:深度学习中pytorch/torchvision版本和CUDA版本最正确版本匹配.对应版本安装之详细攻略 目录 深度学习中pytorch/torchvision版本和CUDA版本最正确 ...

  4. PyTorch:采用sklearn 工具生成这样的合成数据集+利用PyTorch实现简单合成数据集上的线性回归进行数据分析

    PyTorch:采用sklearn 工具生成这样的合成数据集+利用PyTorch实现简单合成数据集上的线性回归进行数据分析 目录 输出结果 核心代码 输出结果 核心代码 #PyTorch:采用skle ...

  5. DL框架之PyTorch:深度学习框架PyTorch的简介、安装、使用方法之详细攻略

    DL框架之PyTorch:PyTorch的简介.安装.使用方法之详细攻略 DL框架之PyTorch:深度学习框架PyTorch的简介.安装.使用方法之详细攻略 目录 PyTorch的简介 1.pyto ...

  6. Pytorch:NLP 迁移学习、NLP中的标准数据集、NLP中的常用预训练模型、加载和使用预训练模型、huggingface的transfomers微调脚本文件

    日萌社 人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新) run_glue.py微调脚本代码 python命令执行run ...

  7. Pytorch:RNN、LSTM、GRU 构建人名分类器(one-hot版本、Embedding嵌入层版本)

    日萌社 人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新) 2. RNN经典案例 2.1 使用RNN模型构建人名分类器 学 ...

  8. PyTorch:生态简介

    PyTorch生态简介 PyTorch的强大并不仅局限于自身的易用性,更在于开源社区围绕PyTorch所产生的一系列工具包(一般是Python package)和程序,这些优秀的工具包极大地方便了Py ...

  9. YDOOK AI : Pytorch :使用 tensor.zeros() tensor.zeros_like() 生成定义 全零数组 全0数组

    YDOOK AI : Pytorch :使用 tensor.zeros() tensor.zeros_like() 生成定义 全零数组 全0数组 1_1. tensor.zeros() 函数: tor ...

最新文章

  1. Project evaluation failed including an error in afterEvaluate {}. Run with --stacktrace for details
  2. Transformer模型总结
  3. 实验 2 关键字驱动测试(2 学时)实验报告--软件功能测试与性能测试实验
  4. ORACLE Dataguard安装
  5. [转】Python--遍历列表时删除元素的正确做法
  6. 想买个这样的笔记本电脑
  7. spss安装后 python_python从入门到入土教程(7)——用python实现SPSS的各种功能
  8. jdbc连接timesten_采用java链接timesten内存数据库
  9. 解决 谷歌chrome浏览器开启麦克风
  10. ftp客户端上传文件步骤
  11. python df 合并_pandas两个df数据如何合并?
  12. PaddleClas-SSLD知识蒸馏方法梳理(82.4%ResNet50系列模型养成之路)
  13. ATT格式汇编命令集合
  14. weblogic修改密码
  15. Android为App签名(为apk签名)
  16. Date日期——格式化日期时分秒
  17. windows局域网传输文件
  18. JavaScript里面实现12小时制的时分秒转化成24小时制的时分秒
  19. 网站建设入门技术导航
  20. Python金额大写转换

热门文章

  1. PHP递归法因式分解,[分治算法]因式分解
  2. libpcap库学习
  3. 跨海直播,如何解决“水土不服”?
  4. linux程序多人聊天室,【linux】多人聊天室实现
  5. 通过Ajax批量上传图片(springboot)
  6. 抖音上如何拓展企业的品牌影响力和销售渠道?抖音企业号了解一下
  7. 关于炉石的奥弹打死精灵龙的分析
  8. ubuntu注销用户
  9. iconfont添加新图标_添加自定义图标(iconfont)
  10. 引发类型为“System.ComponentModel.Design.ExceptionCollection”的异常