书中(pytorch入门实战)讲:index_select(input, dim, index),指定维度dim上选取,未有示例。

查到相关资料后,

import torch as t  # 导入torch模块
c = t.randn(3, 6) # 定义tensor
print(c)
b = t.index_select(c, 0, t.tensor([0, 2]))
"""
第一个参数c为被引用tensor,
第二个参数0表示按行索引,1表示按列索引
第三个参数是一个tensor,表示tensor索引的序号,eg:b里面tensor[0, 2]表示第0行和第2行
"""
print(b)
print(c.index_select(0, t.tensor([0, 2]))) # 从输出结果看,此用法与b中方法等价
c = t.index_select(c, 1, t.tensor([1, 3])) # 按列索引,第1列到第3列
print(c) 输出:

tensor([[-1.3710, 0.0348, -0.0733, 0.1358, 1.2035, -0.5978],
            [ 0.4770, -0.0906, -0.7095, 0.3073, 0.2640, 1.9909],
            [-1.3719, -0.4406, 1.3095, -0.4160, 0.0700, 1.2667]])

tensor([[-1.3710, 0.0348, -0.0733, 0.1358, 1.2035, -0.5978],
            [-1.3719, -0.4406, 1.3095, -0.4160, 0.0700, 1.2667]])

tensor([[-1.3710, 0.0348, -0.0733, 0.1358, 1.2035, -0.5978],
            [-1.3719, -0.4406, 1.3095, -0.4160, 0.0700, 1.2667]])

tensor([[ 0.0348, 0.1358],
            [-0.0906, 0.3073],
            [-0.4406, -0.4160]])

选择函数index_select的更多相关文章

  1. Tensor索引操作

    #Tensor索引操作 ''''' Tensor支持与numpy.ndarray类似的索引操作,语法上也类似 如无特殊说明,索引出来的结果与原tensor共享内存,即修改一个,另一个会跟着修改 ''' ...

  2. 理解pytorch几个高级选择函数(如gather)

    目录 1. 引言 2. 维度的理解 3. gather函数 4. index_select函数 5. masked_select函数 6. nonzero函数 1. 引言   最近在刷开源的Pytor ...

  3. index_select ,clamp,detach

    1.torch.clamp(input,min,max,out=None)-> Tensor 将input中的元素限制在[min,max]范围内并返回一个Tensor 2.index_selec ...

  4. bootstrap-datepicker 时间范围选择函数封装

    bootstrap-datepicker 时间范围选择函数封装 官网 https://bootstrap-datepicker.readthedocs.io/en/latest/index.html ...

  5. 小白学习之pytorch框架(2)-动手学深度学习(begin-random.shuffle()、torch.index_select()、nn.Module、nn.Sequential())

    在这向大家推荐一本书-花书-动手学深度学习pytorch版,原书用的深度学习框架是MXNet,这个框架经过Gluon重新再封装,使用风格非常接近pytorch,但是由于pytorch越来越火,个人又比 ...

  6. 深度学习框架PyTorch一书的学习-第三章-Tensor和autograd-1-Tensor

    参考https://github.com/chenyuntc/pytorch-book/tree/v1.0 希望大家直接到上面的网址去查看代码,下面是本人的笔记 Tensor Tensor可以是一个数 ...

  7. 从头学pytorch(一):数据操作

    跟着Dive-into-DL-PyTorch.pdf从头开始学pytorch,夯实基础. Tensor创建 创建未初始化的tensor import torch x = torch.empty(5,3 ...

  8. pytorch 数据操作

    数据操作 在深度学习中,我们通常会频繁地对数据进行操作.作为动手学深度学习的基础,本节将介绍如何对内存中的数据进行操作. 在PyTorch中,torch.Tensor是存储和变换数据的主要工具.如果你 ...

  9. 05_pytorch的Tensor操作

    05_pytorch的Tensor操作 目录 一.引言 二.tensor的基础操作 2.1 创建tensor 2.2 常用tensor操作 2.2.1 调整tensor的形状 2.2.2 添加或压缩t ...

随机推荐

  1. PHP出现SSL certificate:unable to get local issuer certificate的解决办法

    当本地curl需要访问https时,如果没有配置证书,会出现SSL certificate: unable to get local issuer certificate错误信息. 解决办法: 1.下 ...

  2. python 进阶篇 python 的值传递

    值传递和引用传递 值传递,通常就是拷贝参数的值,然后传递给函数里的新变量,这样,原变量和新变量之间互相独立,互不影响. 引用传递,通常是指把参数的引用传给新的变量,这样,原变量和新变量就会指向同一块内 ...

  3. 支付宝开源非侵入式 Android 自动化测试工具 Soloπ

    Soloπ(SoloPi)是支付宝开源的一个无线化.非侵入式的Android自动化测试工具,公测版拥有录制回放.性能测试.一机多控三项主要功能,能为测试开发人员节省宝贵时间. 本文是SoloPi团队关 ...

  4. Ansible Facts 变量详解

    Ansible Facts 变量详解与使用案例 主机规划 添加用户账号 说明: 1. 运维人员使用的登录账号: 2. 所有的业务都放在 /app/ 下「yun用户的家目录」,避免业务数据乱放: 3. ...

  5. JasperReports入门教程(一):快速入门

    JasperReports入门教程(一):快速入门 背景 现在公司的项目需要实现一个可以配置的报表,以便快速的适应客户的需求变化.后来在网上查资料发现可以使用JasperReports + Jaspe ...

  6. 关于go的通信通道channel——chan的一些问题

    go版本 1.8 chan类型的声明,有以下几种: var c chan int c := make(chan int) //slice.map.chan都可以通过用make来初始化,其中map.ch ...

  7. thinkphp5 --接口实例

    这是我自己构思的案例,写的不好请多多指教. 后台接口的代码: public function index() { $res = array(); header("Access-Control ...

  8. python学习21之高级特性

    '''''''''1.切片(1)谁可以进行切片操作?——列表,元组,字符串(2)切片有以下几种操作'''#[a:b]:取从下标为a的元素开始,到下标为b-1的元素结束L=['aa','bb','cc' ...

  9. 关于XSS弹窗的小姿势

    最近快比赛了想刷刷题,做合天XSS进阶的时候遇到了过滤了alert然后还要弹窗效果的题目,这让我这个JS只学了一点点的菜鸡倍感无力.     在百度了其他资料后,发现confirm('xss')和pr ...

  10. python学习11函数

    '''''''''函数:1.定义:指通过专门的代码组织,用来实现特定的功能的代码段,具有相对独立性,可供其他代码重复调用2.语法:def 函数名([参数]): 函数体[return 返回值]3.函数名 ...