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 相关文章推荐
详解Python 函数如何重载?
Apr 23 Python
python将视频转换为全字符视频
Apr 26 Python
Python正则表达式实现简易计算器功能示例
May 07 Python
Python超越函数积分运算以及绘图实现代码
Nov 20 Python
python创建子类的方法分析
Nov 28 Python
pytorch 模拟关系拟合——回归实例
Jan 14 Python
python_array[0][0]与array[0,0]的区别详解
Feb 18 Python
浅谈Python的方法解析顺序(MRO)
Mar 05 Python
python 发送邮件的示例代码(Python2/3都可以直接使用)
Dec 03 Python
Python中Qslider控件实操详解
Feb 20 Python
python数据分析之用sklearn预测糖尿病
Apr 22 Python
浅谈tf.train.Saver()与tf.train.import_meta_graph的要点
May 26 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
thinkphp控制器调度使用示例
2014/02/24 PHP
php中base_convert()进制数字转换函数实例
2014/11/20 PHP
PHP解析RSS的方法
2015/03/05 PHP
一个实用的php验证码类
2017/07/06 PHP
很全的显示阴历(农历)日期的js代码
2009/01/01 Javascript
javascript获取当前ip的代码
2009/05/10 Javascript
javascript dom 基本操作小结
2010/04/11 Javascript
javascript 折半查找字符在数组中的位置(有序列表)
2010/12/09 Javascript
新鲜出炉的js tips提示效果
2011/04/03 Javascript
用JS提交参数创建form表单在FireFox中遇到的问题
2013/01/16 Javascript
js控制web打印(局部打印)方法整理
2013/05/29 Javascript
js快速排序的实现代码
2013/12/08 Javascript
在css加载完毕后自动判断页面是否加入css或js文件
2014/09/10 Javascript
js实现微信分享代码
2020/10/11 Javascript
详解从Node.js的child_process模块来学习父子进程之间的通信
2017/03/27 Javascript
vue2.0与bootstrap3实现列表分页效果
2017/11/28 Javascript
vue+iview框架实现左侧动态菜单功能的示例代码
2020/07/23 Javascript
[01:06:07]2014 DOTA2国际邀请赛中国区预选赛5.21 DT VS CIS
2014/05/22 DOTA
[01:02:30]Mineski vs Secret 2019国际邀请赛淘汰赛 败者组 BO3 第三场 8.22
2019/09/05 DOTA
Python 流程控制实例代码
2009/09/25 Python
Python使用稀疏矩阵节省内存实例
2014/06/27 Python
Python实现的质因式分解算法示例
2018/05/03 Python
TensorFlow Session使用的两种方法小结
2018/07/30 Python
详解python tkinter教程-事件绑定
2019/03/28 Python
python银行系统实现源码
2019/10/25 Python
python 匿名函数与三元运算学习笔记
2020/10/23 Python
项目开发计划书
2014/01/09 职场文书
采购部部长岗位职责
2014/02/06 职场文书
高级工程师英文求职信
2014/03/19 职场文书
2014年终工作总结范本
2014/12/15 职场文书
初中作文评语
2014/12/25 职场文书
力克胡哲观后感
2015/06/10 职场文书
2015迎新晚会开场白
2015/07/17 职场文书
表扬稿表扬信的格式及范文
2019/06/24 职场文书
golang协程池模拟实现群发邮件功能
2021/05/02 Golang
使用Java去实现超市会员管理系统
2022/03/18 Java/Android