tensorflow实现tensor中满足某一条件的数值取出组成新的tensor


Posted in Python onJanuary 04, 2020

首先使用tf.where()将满足条件的数值索引取出来,在numpy中,可以直接用矩阵引用索引将满足条件的数值取出来,但是在tensorflow中这样是不行的。所幸,tensorflow提供了tf.gather()和tf.gather_nd()函数。

看下面这一段代码:

import tensorflow as tf
sess = tf.Session()
def get_tensor():
  x = tf.random_uniform((5, 4))
  ind = tf.where(x>0.5)
  y = tf.gather_nd(x, ind)
  return x, ind, y

在上述代码中,输出分别是原始的tensor x,x中满足特定条件(此处为>0.5)的数值的索引,以及x中满足特定条件的数值。执行以下步骤,观察三个tensor对应的数值:

x, ind, y = get_tensor()
x_, ind_, y_ = sess.run([x, ind, y])

可以得到如下结果:

tensorflow实现tensor中满足某一条件的数值取出组成新的tensor

tensorflow实现tensor中满足某一条件的数值取出组成新的tensor

可以看到,上述结果中将tensor x中大于0.5的数值取出来组成了一个新的tensor y。

如果我们将代码中的tf.gather_nd替换成tf.gather会发生什么呢?由于结果不方便展示,这里不放结果了,tf.gather适用于index为一维的情况,在本例中,index为2维,如果选用tf.gather的话,对应的x, ind, y的维数分别如下:

x.shape = (5, 4)
ind.shape = (9, 2)
y.shape = (9, 2, 4)

以上这篇tensorflow实现tensor中满足某一条件的数值取出组成新的tensor就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python读写文本文件及编写简单的文本编辑器
Mar 11 Python
Python实现修改IE注册表功能示例
May 10 Python
python3实现逐字输出的方法
Jan 23 Python
Python利用pandas处理Excel数据的应用详解
Jun 18 Python
Python中遍历列表的方法总结
Jun 27 Python
Python字符串对象实现原理详解
Jul 01 Python
python实现一个函数版的名片管理系统过程解析
Aug 27 Python
使用OpenCV实现仿射变换—缩放功能
Aug 29 Python
详解Django配置JWT认证方式
May 09 Python
django正续或者倒序查库实例
May 19 Python
Python使用Selenium模拟浏览器自动操作功能
Sep 08 Python
Python如何使用ConfigParser读取配置文件
Nov 12 Python
对tensorflow中的strides参数使用详解
Jan 04 #Python
tensorflow之获取tensor的shape作为max_pool的ksize实例
Jan 04 #Python
TensorFlow tf.nn.max_pool实现池化操作方式
Jan 04 #Python
TensorFlow tf.nn.conv2d实现卷积的方式
Jan 03 #Python
Python调用钉钉自定义机器人的实现
Jan 03 #Python
pytorch中的上采样以及各种反操作,求逆操作详解
Jan 03 #Python
pytorch 获取tensor维度信息示例
Jan 03 #Python
You might like
php Smarty模板生成html文档的方法
2010/04/12 PHP
PHP编程中的常见漏洞和代码实例
2014/08/06 PHP
php删除txt文件指定行及按行读取txt文档数据的方法
2017/01/30 PHP
php 可变函数使用小结
2018/06/12 PHP
php 使用 __call实现重载功能示例
2019/11/18 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
2020/04/04 PHP
PHP7 参数处理机制修改
2021/03/09 PHP
js调用后台、后台调用前台等方法总结
2014/04/17 Javascript
js键盘事件的keyCode
2014/07/29 Javascript
Vue组件BootPage实现简单的分页功能
2016/09/12 Javascript
微信公众号 摇一摇周边功能开发
2016/12/08 Javascript
纯JavaScript实现实时反馈系统时间
2017/10/26 Javascript
探索Vue高阶组件的使用
2018/01/08 Javascript
vue-scroller记录滚动位置的示例代码
2018/01/17 Javascript
jQuery实现的淡入淡出图片轮播效果示例
2018/08/29 jQuery
vue-loader中引入模板预处理器的实现
2019/09/04 Javascript
jQuery实现获取多选框的值示例
2020/02/07 jQuery
vue如何搭建多页面多系统应用
2020/06/17 Javascript
[03:41]DOTA2上海特锦赛小组赛第三日recap精彩回顾
2016/02/28 DOTA
python数据类型_字符串常用操作(详解)
2017/05/30 Python
python直接获取API传递回来的参数方法
2018/12/17 Python
python交易记录链的实现过程详解
2019/07/03 Python
Python利用requests模块下载图片实例代码
2019/08/12 Python
使用Python的Turtle绘制哆啦A梦实例
2019/11/21 Python
Ubuntu18.04安装 PyCharm并使用 Anaconda 管理的Python环境
2020/04/08 Python
谈谈python垃圾回收机制
2020/09/27 Python
Html5 页面适配iPhoneX(就是那么简单)
2019/09/05 HTML / CSS
美国著名手表网站:Timepiece
2017/11/15 全球购物
无畏的旅行:Intrepid Travel
2017/12/20 全球购物
私有程序集与共享程序集有什么区别
2013/04/05 面试题
小学生运动会通讯稿
2014/09/23 职场文书
活动总结书怎么写
2015/05/11 职场文书
教师远程培训心得体会
2016/01/09 职场文书
领导激励员工的演讲稿,各种会上用得到,建议收藏
2019/08/13 职场文书
八年级作文之感悟亲情
2019/11/20 职场文书
Python将CSV文件转化为HTML文件的操作方法
2021/06/30 Python