tensorflow之获取tensor的shape作为max_pool的ksize实例


Posted in Python onJanuary 04, 2020

实验发现,tensorflow的tensor张量的shape不支持直接作为tf.max_pool的参数,比如下面这种情况(一个错误的示范):

self.max_pooling1 = tf.nn.max_pool(self.l_6, ksize = [1, tf.shape(self.F1)[0], 1, 1], strides = [1, 1, 1, 1], padding = 'VALID', name = 'maxpool1')

我在max_pool的过程中想对特征每一列进行max_pooling,但因为tensor F1张量没有值,而ksize此处需要一个int类型的常量,所以tf.shape(self.F1)[0]无法作为ksize的参数。

一些人的做法是固定行数,比如pointnet固定为2048个点,但这样做需要重新采样,过于麻烦。

而既然tensorflow不提供标准的max_pool层实现,其实可以自己实现每一列取最大值的操作,充当自己的max_pool。如下图所示:

def max_pooling(self, NC):
    out = tf.reduce_max(NC, reduction_indices=[0])
    return out

利用reduce_max刚好能实现这个操作,其中reduction_indices可以指定取哪一维的最大值。这个函数的详细功能可以参考官方文档。

这种情况和tf.reshape不同,tf.reshape是可以使用tf.shape(tensor)[i]的,可能两者对参数的要求不一样。

以上这篇tensorflow之获取tensor的shape作为max_pool的ksize实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
linux 下实现python多版本安装实践
Nov 18 Python
Python使用shelve模块实现简单数据存储的方法
May 20 Python
Python实现的简单dns查询功能示例
May 24 Python
Python 内置函数进制转换的用法(十进制转二进制、八进制、十六进制)
Apr 30 Python
Python绘制并保存指定大小图像的方法
Jan 10 Python
Python实现合并excel表格的方法分析
Apr 13 Python
python ChainMap 合并字典的实现步骤
Jun 11 Python
python GUI库图形界面开发之PyQt5窗口背景与不规则窗口实例
Feb 25 Python
python实现图像拼接功能
Mar 23 Python
TensorFlow2.1.0安装过程中setuptools、wrapt等相关错误指南
Apr 08 Python
如何解决cmd运行python提示不是内部命令
Jul 01 Python
解决pycharm下载库时出现Failed to install package的问题
Sep 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
pytorch中torch.max和Tensor.view函数用法详解
Jan 03 #Python
pytorch逐元素比较tensor大小实例
Jan 03 #Python
You might like
php 计算两个时间戳相隔的时间的函数(小时)
2009/12/18 PHP
php 归并排序 数组交集
2011/05/10 PHP
php中使用Akismet防止垃圾评论的代码
2011/06/10 PHP
PHP连接MySQL数据的操作要点
2015/03/20 PHP
phpStudy访问速度慢和启动失败的解决办法
2015/11/19 PHP
php连接oracle数据库的核心步骤
2016/05/26 PHP
优化javascript的执行速度
2010/01/23 Javascript
Jquery 最近浏览过的商品的功能实现代码
2010/05/14 Javascript
js 遍历对象的属性的代码
2011/12/29 Javascript
js中用window.open()打开多个窗口的name问题
2014/03/13 Javascript
JavaScript中this关键词的使用技巧、工作原理以及注意事项
2014/05/20 Javascript
jquery动态调整div大小使其宽度始终为浏览器宽度
2014/06/06 Javascript
Bootstrap入门书籍之(五)导航条、分页导航
2016/02/17 Javascript
微信小程序 动画的简单实例
2017/10/12 Javascript
JS开发中基本数据类型具体有哪几种
2017/10/19 Javascript
使用vue-cli+webpack搭建vue开发环境的方法
2017/12/22 Javascript
js 实现在2d平面上画8的方法
2018/10/10 Javascript
layui 实现二级弹窗弹出之后 关闭一级弹窗的方法
2019/09/18 Javascript
node.js Promise对象的使用方法实例分析
2019/12/26 Javascript
js实现select下拉框选择
2020/01/11 Javascript
js实现简单放大镜效果
2020/03/07 Javascript
[01:01:24]LGD vs Fnatic 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
[52:52]完美世界DOTA2联赛PWL S3 LBZS vs access 第一场 12.10
2020/12/13 DOTA
python Django编写接口并用Jmeter测试的方法
2019/07/31 Python
如何基于Python + requests实现发送HTTP请求
2020/01/13 Python
Python执行时间的几种计算方法
2020/07/31 Python
伊芙丽官方旗舰店:中国淑女一线品牌
2017/12/01 全球购物
一家外企的面试题目(C/C++面试题,C语言面试题)
2014/03/24 面试题
外企财务年会演讲稿
2014/01/03 职场文书
银行职员个人的工作自我评价
2014/02/15 职场文书
医院节能减排方案
2014/06/13 职场文书
事业单位年度考核个人总结
2015/02/12 职场文书
大学生党员个人总结
2015/02/13 职场文书
酒店优秀员工推荐信
2015/03/24 职场文书
2016年母亲节寄语
2015/12/04 职场文书
详解缓存穿透击穿雪崩解决方案
2021/05/28 Redis