浅谈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实现的简单文本类游戏实例
Apr 28 Python
Python中的hypot()方法使用简介
May 18 Python
Python使用tablib生成excel文件的简单实现方法
Mar 16 Python
python自动发邮件库yagmail的示例代码
Feb 23 Python
djang常用查询SQL语句的使用代码
Feb 15 Python
在Django admin中编辑ManyToManyField的实现方法
Aug 09 Python
python requests证书问题解决
Sep 05 Python
在tensorflow中设置保存checkpoint的最大数量实例
Jan 21 Python
Python pexpect模块及shell脚本except原理解析
Aug 03 Python
关于Kotlin中SAM转换的那些事
Sep 15 Python
详解Python中openpyxl模块基本用法
Feb 23 Python
python unittest单元测试的步骤分析
Aug 02 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学习资料汇总与网址
2007/03/16 PHP
PHP用mysql数据库存储session的代码
2010/03/05 PHP
JS与PHP向函数传递可变参数的区别实例代码
2011/05/18 PHP
9个PHP开发常用功能函数小结
2011/07/15 PHP
跟我学Laravel之路由
2014/10/15 PHP
php类常量用法实例分析
2015/07/09 PHP
自动更新作用
2006/10/08 Javascript
javascript下IE与FF兼容函数收集
2008/09/17 Javascript
下拉菜单点击实现连接跳转功能的js代码
2013/05/19 Javascript
浅谈JSON中stringify 函数、toJosn函数和parse函数
2015/01/26 Javascript
javascript框架设计之类工厂
2015/06/23 Javascript
深入解析JavaScript编程中的this关键字使用
2015/11/09 Javascript
jQuery插件实现表格隔行变色及鼠标滑过高亮显示效果代码
2016/02/25 Javascript
javascript中arguments,callee,caller详解
2016/03/16 Javascript
js省市县三级联动效果实例
2020/04/15 Javascript
利用jQuery插件imgAreaSelect实现图片上传裁剪(同步显示图像位置信息)
2016/12/02 Javascript
JavaScript使用正则表达式获取全部分组内容的方法示例
2017/01/17 Javascript
一篇看懂vuejs的状态管理神器 vuex状态管理模式
2017/04/20 Javascript
Vue2.0 组件传值通讯的示例代码
2017/08/01 Javascript
React根据宽度自适应高度的示例代码
2017/10/11 Javascript
JavaScript实现获取select下拉框中第一个值的方法
2018/02/06 Javascript
vue组件name的作用小结
2018/05/23 Javascript
webpack打包react项目的实现方法
2018/06/21 Javascript
axios向后台传递数组作为参数的方法
2018/08/11 Javascript
小程序实现悬浮搜索框
2019/07/12 Javascript
python计算一个序列的平均值的方法
2015/07/11 Python
12步教你理解Python装饰器
2016/02/25 Python
Python实现批量检测HTTP服务的状态
2016/10/27 Python
Python英文文本分词(无空格)模块wordninja的使用实例
2019/02/20 Python
pyside+pyqt实现鼠标右键菜单功能
2020/12/08 Python
python字符串替换第一个字符串的方法
2019/06/26 Python
python爬虫 urllib模块反爬虫机制UA详解
2019/08/20 Python
python中加背景音乐如何操作
2020/07/19 Python
六月份红领巾广播稿
2014/02/03 职场文书
期终自我鉴定
2014/02/17 职场文书
详解MySQL中的pid与socket
2021/06/15 MySQL