tensorflow 实现自定义layer并添加到计算图中


Posted in Python onFebruary 04, 2020

目的

将用户自定义的layer结合tensorflow自带的layer组成多层layer的计算图。

实现功能

对2D图像进行滑动窗口平均,并通过自定义的操作layer返回结果。

import tensorflow as tf
import numpy as np
sess = tf.Session()

#将size设为[1, 4, 4, 1]是因为tf中图像函数是处理四维图片的。
#这四维依次是: 图片数量,高度, 宽度, 颜色通道
x_shape = [1,4,4,1]
x_val = np.random.uniform(size = x_shape)


#tf.nn.conv2d中name表明该layer命名为“Moving_Avg_Window”
#该卷积核为[[0.25,0.25],[0.25,0.25]],所以是一个求平均操作
x_data = tf.placeholder(tf.float32, shape = x_shape)
my_filter = tf.constant(0.25, shape = [2,2,1,1])
my_strides = [1,2,2,1]
mov_avg_layer = tf.nn.conv2d(x_data, my_filter, my_strides, padding = 'SAME', name = 'Moving_Avg_Window')


#自定义layer,对卷积操作之后的输出做操作
def custom_layer(input_matrix):
  input_matrix_sqeeze = tf.squeeze(input_matrix)
  A = tf.constant([1.,2.],[-1.,3.])
  b = tf.constant(1., shape = [2,2])
  temp1 = tf.matmul(A, input_matrix_sqeeze)
  temp2 = tf.add(temp1, b)
  return(tf.sigmod(temp2))
#把刚刚自定义的layer加入到计算图中,并给予自定义的命名(利用tf.name_scope())
with tf.name_scope('Custom_Layer') as scope:
  custom_layer1 = custom_layer(mov_avg_layer)


#为占位符传入4*4图片,并执行计算图
print(sess.run(custom_layer, feed_dict= {x_data: x_val}))

以上这篇tensorflow 实现自定义layer并添加到计算图中就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用python获取CPU和内存信息的思路与实现(linux系统)
Jan 03 Python
Python发送Email方法实例
Aug 21 Python
python中MethodType方法介绍与使用示例
Aug 03 Python
Python二叉树的遍历操作示例【前序遍历,中序遍历,后序遍历,层序遍历】
Dec 24 Python
在numpy矩阵中令小于0的元素改为0的实例
Jan 26 Python
python设置环境变量的原因和方法
Jun 24 Python
Python 3 实现定义跨模块的全局变量和使用教程
Jul 07 Python
Python socket非阻塞模块应用示例
Sep 12 Python
Python检查图片是否损坏及图片类型是否正确过程详解
Sep 30 Python
什么是python的自省
Jun 21 Python
用pandas划分数据集实现训练集和测试集
Jul 20 Python
Python爬虫爬取糗事百科段子实例分享
Jul 31 Python
TensorFlow实现自定义Op方式
Feb 04 #Python
tensorflow使用指定gpu的方法
Feb 04 #Python
TensorFlow梯度求解tf.gradients实例
Feb 04 #Python
基于TensorFlow中自定义梯度的2种方式
Feb 04 #Python
tensorflow 查看梯度方式
Feb 04 #Python
opencv python图像梯度实例详解
Feb 04 #Python
TensorFlow设置日志级别的几种方式小结
Feb 04 #Python
You might like
PHP编码规范之注释和文件结构说明
2010/07/09 PHP
PHP5中新增stdClass 内部保留类
2011/06/13 PHP
PHP生成唯一订单号的方法汇总
2015/04/16 PHP
PHP基于工厂模式实现的计算器实例
2015/07/16 PHP
Smarty变量用法详解
2016/05/11 PHP
thinkphp制作404跳转页的简单实现方法
2016/09/22 PHP
完美解决thinkphp唯一索引重复时出错的问题
2017/03/31 PHP
Javascript UrlDecode函数代码
2010/01/09 Javascript
jQuery实现form表单reset按钮重置清空表单功能
2012/12/18 Javascript
Javascript变量作用域详解
2013/12/06 Javascript
JavaScript中的逻辑判断符&&、||与!介绍
2014/12/31 Javascript
JS JQUERY实现滚动条自动滚到底的方法
2015/01/09 Javascript
JavaScript中DOM详解
2015/04/13 Javascript
基于JavaScript怎么实现让歌词滚动播放
2015/11/03 Javascript
jQuery实现鼠标选文字发新浪微博的方法
2016/04/02 Javascript
BootStrap智能表单实战系列(六)表单编辑页面的数据绑定
2016/06/13 Javascript
JS创建对象的写法示例
2016/11/04 Javascript
layer弹出层中H5播放器全屏出错的解决方法
2017/02/21 Javascript
element-ui如何防止重复提交的方法步骤
2019/12/09 Javascript
JavaScript多种滤镜算法实现代码实例
2019/12/10 Javascript
小程序实现录音功能
2020/09/22 Javascript
用Python进行基础的函数式编程的教程
2015/03/31 Python
Python遍历指定文件及文件夹的方法
2015/05/09 Python
全面了解python中的类,对象,方法,属性
2016/09/11 Python
python操作列表的函数使用代码详解
2017/12/28 Python
对pyqt5之menu和action的使用详解
2019/06/20 Python
python破解同事的压缩包密码
2020/10/14 Python
大学生的自我鉴定范文
2014/01/21 职场文书
应届毕业生简历自我评价
2014/01/31 职场文书
成龙洗发水广告词
2014/03/14 职场文书
公司委托书怎么写
2014/08/02 职场文书
2015年部门工作总结范文
2015/03/31 职场文书
2015年大学教师工作总结
2015/05/20 职场文书
创业计划书之o2o水果店
2019/08/30 职场文书
详解JS数组方法
2021/11/20 Javascript
Linux7.6二进制安装Mysql8.0.27详细操作步骤
2021/11/27 MySQL