浅谈tensorflow1.0 池化层(pooling)和全连接层(dense)


Posted in Python onApril 27, 2018

池化层定义在tensorflow/python/layers/pooling.py.

有最大值池化和均值池化。

1、tf.layers.max_pooling2d

max_pooling2d(
  inputs,
  pool_size,
  strides,
  padding='valid',
  data_format='channels_last',
  name=None
)
  1. inputs: 进行池化的数据。
  2. pool_size: 池化的核大小(pool_height, pool_width),如[3,3]. 如果长宽相等,也可以直接设置为一个数,如pool_size=3.
  3. strides: 池化的滑动步长。可以设置为[1,1]这样的两个整数. 也可以直接设置为一个数,如strides=2
  4. padding: 边缘填充,'same' 和'valid‘选其一。默认为valid
  5. data_format: 输入数据格式,默认为channels_last ,即 (batch, height, width, channels),也可以设置为channels_first 对应 (batch, channels, height, width).
  6. name: 层的名字。

例:

pool1=tf.layers.max_pooling2d(inputs=x, pool_size=[2, 2], strides=2)

一般是放在卷积层之后,如:

conv=tf.layers.conv2d(
   inputs=x,
   filters=32,
   kernel_size=[5, 5],
   padding="same",
   activation=tf.nn.relu)
pool=tf.layers.max_pooling2d(inputs=conv, pool_size=[2, 2], strides=2)

2.tf.layers.average_pooling2d

average_pooling2d(
  inputs,
  pool_size,
  strides,
  padding='valid',
  data_format='channels_last',
  name=None
)

参数和前面的最大值池化一样。

全连接dense层定义在 tensorflow/python/layers/core.py.

3、tf.layers.dense

dense(
  inputs,
  units,
  activation=None,
  use_bias=True,
  kernel_initializer=None,
  bias_initializer=tf.zeros_initializer(),
  kernel_regularizer=None,
  bias_regularizer=None,
  activity_regularizer=None,
  trainable=True,
  name=None,
  reuse=None
)
  1. inputs: 输入数据,2维tensor.
  2. units: 该层的神经单元结点数。
  3. activation: 激活函数.
  4. use_bias: Boolean型,是否使用偏置项.
  5. kernel_initializer: 卷积核的初始化器.
  6. bias_initializer: 偏置项的初始化器,默认初始化为0.
  7. kernel_regularizer: 卷积核化的正则化,可选.
  8. bias_regularizer: 偏置项的正则化,可选.
  9. activity_regularizer: 输出的正则化函数.
  10. trainable: Boolean型,表明该层的参数是否参与训练。如果为真则变量加入到图集合中 GraphKeys.TRAINABLE_VARIABLES (see tf.Variable).
  11. name: 层的名字.
  12. reuse: Boolean型, 是否重复使用参数.

全连接层执行操作 outputs = activation(inputs.kernel + bias)

如果执行结果不想进行激活操作,则设置activation=None。

例:

#全连接层
dense1 = tf.layers.dense(inputs=pool3, units=1024, activation=tf.nn.relu)
dense2= tf.layers.dense(inputs=dense1, units=512, activation=tf.nn.relu)
logits= tf.layers.dense(inputs=dense2, units=10, activation=None)

也可以对全连接层的参数进行正则化约束:

dense1 = tf.layers.dense(inputs=pool3, units=1024, activation=tf.nn.relu,kernel_regularizer=tf.contrib.layers.l2_regularizer(0.003))

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python基础教程之python消息摘要算法使用示例
Feb 10 Python
Python正则表达式的使用范例详解
Aug 08 Python
Python使用Flask框架获取当前查询参数的方法
Mar 21 Python
Python加密方法小结【md5,base64,sha1】
Jul 13 Python
python批量获取html内body内容的实例
Jan 02 Python
Python利用sqlacodegen自动生成ORM实体类示例
Jun 04 Python
Django如何实现上传图片功能
Aug 16 Python
Python中xml和dict格式转换的示例代码
Nov 07 Python
tensorflow基于CNN实战mnist手写识别(小白必看)
Jul 20 Python
Python 使用双重循环打印图形菱形操作
Aug 09 Python
详解python内置模块urllib
Sep 09 Python
Python 实现二叉查找树的示例代码
Dec 21 Python
python线程中同步锁详解
Apr 27 #Python
python数字图像处理之高级形态学处理
Apr 27 #Python
python线程池threadpool实现篇
Apr 27 #Python
python数字图像处理之骨架提取与分水岭算法
Apr 27 #Python
python多线程之事件Event的使用详解
Apr 27 #Python
python线程池threadpool使用篇
Apr 27 #Python
Python实现删除时保留特定文件夹和文件的示例
Apr 27 #Python
You might like
上传多个文件的PHP脚本
2006/11/26 PHP
分享PHP函数实现数字与文字分页代码
2015/07/28 PHP
yii通过小物件生成view的方法
2016/10/08 PHP
PHP三种方式实现链式操作详解
2017/01/21 PHP
PHP中TP5 上传文件的实例详解
2017/07/31 PHP
Textbox控件注册回车事件及触发按钮提交事件具体实现
2013/03/04 Javascript
Microsfot .NET Framework4.0框架 安装失败的解决方法
2013/08/14 Javascript
被遗忘的javascript的slice() 方法
2015/04/20 Javascript
玩转JavaScript OOP - 类的实现详解
2016/06/08 Javascript
jQuery  ready方法实现原理详解
2016/10/19 Javascript
jQuery中的siblings()是什么意思(推荐)
2016/12/29 Javascript
vue组件jsx语法的具体使用
2018/05/21 Javascript
vue 图片裁剪上传组件的实现
2020/11/12 Javascript
python迭代器与生成器详解
2016/03/10 Python
Python使用matplotlib填充图形指定区域代码示例
2018/01/16 Python
python如何在列表、字典中筛选数据
2018/03/19 Python
tensorflow: 查看 tensor详细数值方法
2018/06/13 Python
Python 对输入的数字进行排序的方法
2018/06/23 Python
matplotlib实现区域颜色填充
2019/03/18 Python
Python深拷贝与浅拷贝用法实例分析
2019/05/05 Python
对python特殊函数 __call__()的使用详解
2019/07/02 Python
Python的垃圾回收机制详解
2019/08/28 Python
详解Django配置优化方法
2019/11/18 Python
python 如何去除字符串头尾的多余符号
2019/11/19 Python
基于pandas中expand的作用详解
2019/12/17 Python
jupyter notebook 写代码自动补全的实现
2020/11/02 Python
python正则表达式re.match()匹配多个字符方法的实现
2021/01/27 Python
微信小程序之html5 canvas绘图并保存到系统相册
2019/06/20 HTML / CSS
介绍一下sql server的安全性
2014/08/10 面试题
工程造价专业大学生职业生涯规划书
2014/01/18 职场文书
爱情保证书大全
2014/04/29 职场文书
大班上学期幼儿评语
2014/04/30 职场文书
企业法人授权委托书范本
2014/09/23 职场文书
2014大学班主任工作总结
2014/11/08 职场文书
超级实用!五步法则,教你写好年终工作总结
2019/12/05 职场文书
浅谈如何提高PHP代码的质量
2021/05/28 PHP