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实现图片拼接的代码
Jul 02 Python
Python Django给admin添加Action的方法实例详解
Apr 29 Python
flask框架url与重定向操作实例详解
Jan 25 Python
Python3.7实现验证码登录方式代码实例
Feb 14 Python
利用Tensorboard绘制网络识别准确率和loss曲线实例
Feb 15 Python
Python计算IV值的示例讲解
Feb 28 Python
Anaconda的安装及其环境变量的配置详解
Apr 22 Python
使用matplotlib动态刷新指定曲线实例
Apr 23 Python
Python可以实现栈的结构吗
May 27 Python
pytorch判断是否cuda 判断变量类型方式
Jun 23 Python
Python 读取位于包中的数据文件
Aug 07 Python
python 30行代码实现蚂蚁森林自动偷能量
Feb 08 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
dedecms 制作模板中使用的全局标记图文教程
2007/03/11 PHP
PHP采用自定义函数实现遍历目录下所有文件的方法
2014/08/19 PHP
php使用正则表达式获取图片url的方法
2015/01/16 PHP
php获取网页里所有图片并存入数组的方法
2015/04/06 PHP
php fread读取文件注意事项
2016/09/24 PHP
thinkPHP引入类的方法详解
2016/12/08 PHP
javascript获得CheckBoxList选中的数量
2009/10/27 Javascript
jQuery 过滤not()与filter()实例代码
2012/05/10 Javascript
Javascript的各种节点操作实例演示代码
2012/06/27 Javascript
基于jquery实现图片上传本地预览功能
2016/01/08 Javascript
js计算时间差代码【包括计算,天,时,分,秒】
2016/04/26 Javascript
分享一个插件实现水珠自动下落效果
2016/06/01 Javascript
详解如何使用webpack在vue项目中写jsx语法
2017/11/08 Javascript
详解js获取video任意时间的画面截图
2019/04/17 Javascript
JS实现简单的表格增删
2020/01/16 Javascript
vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作
2020/11/09 Javascript
[52:00]2018DOTA2亚洲邀请赛 4.1 小组赛 A组加赛 LGD vs Optic
2018/04/02 DOTA
python实现带错误处理功能的远程文件读取方法
2015/04/29 Python
python线程池(threadpool)模块使用笔记详解
2017/11/17 Python
CentOS7.3编译安装Python3.6.2的方法
2018/01/22 Python
Django中如何防范CSRF跨站点请求伪造攻击的实现
2019/04/28 Python
python 中Arduino串口传输数据到电脑并保存至excel表格
2019/10/14 Python
Python填充任意颜色,不同算法时间差异分析说明
2020/05/16 Python
浅谈Python中的模块
2020/06/10 Python
如何基于python把文字图片写入word文档
2020/07/31 Python
捷克家居装饰及图书音像购物网站:Velký košík
2018/04/16 全球购物
香港家用健身器材、运动器材及健康美容仪器专门店:FitBoxx
2019/12/05 全球购物
什么是触发器(trigger)? 触发器有什么作用?
2013/09/18 面试题
linux面试题参考答案(9)
2015/01/07 面试题
业务经理的岗位职责
2013/11/16 职场文书
办公室秘书自我鉴定
2014/01/18 职场文书
安全演讲稿大全
2014/05/09 职场文书
优秀团员主要事迹材料
2015/11/05 职场文书
PhpSpreadsheet中文文档 | Spreadsheet操作教程实例
2021/04/01 PHP
详解JavaScript的计时器和按钮效果设置
2022/02/18 Javascript
Python学习之包与模块详解
2022/03/19 Python