tf.gather( )的详细解析
tf.gather()函数
tf.gather()
该接口的作用:就是抽取出params的第axis维度上在indices里面所有的indextf.gather(params,indices,validate_indices=None,name=None,axis=0
)'''
Args:params: A Tensor. The tensor from which to gather values. Must be at least rank axis + 1.indices: A Tensor. Must be one of the following types: int32, int64. Index tensor. Must be in range [0, params.shape[axis]).axis: A Tensor. Must be one of the following types: int32, int64. The axis in params to gather indices from. Defaults to the first dimension. Supports negative indexes.name: A name for the operation (optional).
Returns:A Tensor. Has the same type as params.
'''
参数说明:
params: A Tensor.
indices: A Tensor. types必须是: int32, int64. 里面的每一个元素大小必须在 [0, params.shape[axis])范围内.
axis: 维度。沿着params的哪一个维度进行抽取indices
返回的是一个tensor
示例
1.当axis参数省略时,即axis默认为axis=0
temp=np.arange(7)*7*2+tf.constant(1,shape=[7])
print(temp) #temp是一个tf张量,直接打印只显示形状和类型,需要创建会话机制temp1=tf.gather(temp,[0,2,4]) #取temp一维张量中第0,第2,第4的值形成一个tf张量with tf.Session() as sess:print(sess.run(temp))print(sess.run(temp1))
结果:
Tensor("add:0", shape=(7,), dtype=int32)
[ 1 15 29 43 57 71 85]
[ 1 29 57]
2.当temp为多维时,这里是4维张量,indices=[0,2],axis=0
input =[ [[[1, 1, 1], [2, 2, 2]],[[3, 3, 3], [4, 4, 4]],[[5, 5, 5], [6, 6, 6]]],[[[7, 7, 7], [8, 8, 8]],[[9, 9, 9], [10, 10, 10]],[[11, 11, 11], [12, 12, 12]]],[[[13, 13, 13], [14, 14, 14]],[[15, 15, 15], [16, 16, 16]],[[17, 17, 17], [18, 18, 18]]]]print(tf.shape(input))
with tf.Session() as sess:output=tf.gather(input, [0,2],axis=0)#其实默认axis=0print(sess.run(output))
结果:
Tensor("Shape:0", shape=(4,), dtype=int32)
[[[[ 1 1 1][ 2 2 2]][[ 3 3 3][ 4 4 4]][[ 5 5 5][ 6 6 6]]][[[13 13 13][14 14 14]][[15 15 15][16 16 16]][[17 17 17][18 18 18]]]]
解释:
第一个[ 是列表语法需要的括号,剩下的最里面的三个[[[是axis=0需要搜寻的中括号。这里一共有3个[[[。
indices的[0,2]即取第0个[[[和第2个[[[,也就是第0个和第2个三维立体。
3.当indices=[0,2],axis=1
input =[ [[[1, 1, 1], [2, 2, 2]],[[3, 3, 3], [4, 4, 4]],[[5, 5, 5], [6, 6, 6]]],[[[7, 7, 7], [8, 8, 8]],[[9, 9, 9], [10, 10, 10]],[[11, 11, 11], [12, 12, 12]]],[[[13, 13, 13], [14, 14, 14]],[[15, 15, 15], [16, 16, 16]],[[17, 17, 17], [18, 18, 18]]]]
print(tf.shape(input))
with tf.Session() as sess:output=tf.gather(input, [0,2],axis=1)#默认axis=0print(sess.run(output))
结果:
Tensor("Shape:0", shape=(4,), dtype=int32)
[[[[ 1 1 1][ 2 2 2]][[ 5 5 5][ 6 6 6]]][[[ 7 7 7][ 8 8 8]][[11 11 11][12 12 12]]][[[13 13 13][14 14 14]][[17 17 17][18 18 18]]]]
解释:
第一个[ 是列表语法需要的括号,先把这个干扰去掉,剩下的每个[[[中所有内侧的 [[ 是axis=1搜索的中括号。
然后[0,2]即再取每个[[[体内的第0个[[和第2个[[,也就是去每个三维体的第0个面和第2个面
tf.gather( )的详细解析相关推荐
- TF之TF flags:TF flags(命令行解析)的简介、安装、使用方法之详细攻略
TF之TF flags:TF flags(命令行解析)的简介.安装.使用方法之详细攻略 目录 TF flags的简介 TF flags的安装 TF flags的使用方法 TF flags的简介 1.f ...
- yolo算法的优缺点分析_YOLO算法详细解析(一)
目标检测和目标分类 图像识别算法是计算机视觉的基础算法,例如VGG,GoogLeNet,ResNet等,这类算法主要是判断图片中目标的种类. 目标检测算法和图像识别算法类似,但是目标检测算法不仅要识别 ...
- PointNet网络结构详细解析
PointNet网络结构详细解析 一.重要知识点 Transforming point clouds data to regular 3D voxel grids or collections of ...
- 【二】gym初次入门一学就会---代码详细解析简明教程----平衡杆案例
相关文章: [一]gym环境安装以及安装遇到的错误解决 [二]gym初次入门一学就会-简明教程 [三]gym简单画图 [四]gym搭建自己的环境,全网最详细版本,3分钟你就学会了! [五]gym搭建自 ...
- Pytorch的nn.DataParallel详细解析
前言 pytorch中的GPU操作默认是异步的,当调用一个使用GPU的函数时,这些操作会在特定设备上排队但不一定在稍后执行.这就使得pytorch可以进行并行计算.但是pytorch异步计算的效果对调 ...
- OpenCL编程详细解析与实例
OpenCL编程详细解析与实例 C语言与OpenCL的编程示例比较 参考链接: https://www.zhihu.com/people/wujianming_110117/posts 先以图像旋转的 ...
- 深度学习目标检测详细解析以及Mask R-CNN示例
深度学习目标检测详细解析以及Mask R-CNN示例 本文详细介绍了R-CNN走到端到端模型的Faster R-CNN的进化流程,以及典型的示例算法Mask R-CNN模型.算法如何变得更快,更强! ...
- celery的使用(最新详细解析)
celery的使用(最新详细解析) 一. Celery简介 Celery是一个简单.灵活且可靠的,处理大量消息的分布式系统,专注于实时处理的异步任务队列,同时也支持任务调度. Celery的架构由三部 ...
- 汇编语言 第3版 王爽 检测点习题部分—答案及详细解析
第一章 基础知识 检测点1.1 (1)1个CPU的寻址能力为8KB,那么它的地址总线的宽度为()位. (2)1KB的存储器有() 个存储单元,存储单元的编号从()到() . (3)1KB的存储器可以存 ...
最新文章
- Java IO编程全解(五)——AIO编程
- 大理石在哪儿_如何创建用户体验写作课程而又不失大理石
- Spring和JSF集成:MVC螺母和螺栓
- mysql cmd grep_通过 mysqlbinlog 和 grep 命令定位binlog文件中指定操作
- 光伏项目用地政策解析
- R语言页游渠道分析(转)
- 该来的终于来了:“第一起”基于 IPv6 的 DDoS 攻击
- ITIL是什么意思?ITIL是什么?
- 网站视频很卡怎么办?有没有免费的视频平台?使用阿里云OSS对象云存储+下行流量包解决网站文件/视频访问慢问题
- Excel如何按照颜色排序
- iphone游戏开发(转)
- 恭喜 李星鹏 成为 Layotto Committer!
- MD5 32位加密
- PWM脉冲宽度调制技术控制LED亮度
- SPI协议主机verilog
- 使用python开发的图形界面的pdf拆分合并工具
- SRS4.0源码分析-RTMP入口
- 软件智能:aaas系统的AI众生-一个脑力原型
- CorelDraw安装时,安装界面显示不全的解决方法,
- 年薪50W,字节、腾讯抢着要,转行数据分析岗真香!
热门文章
- boost::parameter::deduced相关的测试程序
- boost::mp11::mp_similar相关用法的测试程序
- boost::mp11::mp_pairwise_fold相关用法的测试程序
- boost::lexical_cast用法的测试程序
- boost::hof::rotate用法的测试程序
- boost::graph模块实现dijkstra算法的测试程序
- boost::rational用法的测试程序
- boost::geometry::detail::overlay::select_rings用法的测试程序
- GDCM:解析XPATH文件的测试程序
- ITK:在签名图像中找到零交叉点