浅谈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操作列表的常用方法分享
Feb 13 Python
Windows下为Python安装Matplotlib模块
Nov 06 Python
python直接访问私有属性的简单方法
Jul 25 Python
python打包压缩、读取指定目录下的指定类型文件
Apr 12 Python
浅析PHP与Python进行数据交互
May 15 Python
使用PM2+nginx部署python项目的方法示例
Nov 07 Python
新年快乐! python实现绚烂的烟花绽放效果
Jan 30 Python
Django Docker容器化部署之Django-Docker本地部署
Oct 09 Python
Tensorflow的梯度异步更新示例
Jan 23 Python
python将字典内容写入json文件的实例代码
Aug 12 Python
Python3如何使用range函数替代xrange函数
Oct 05 Python
基于Python实现粒子滤波效果
Dec 01 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/10/09 PHP
php 随机排序广告的实现代码
2011/05/09 PHP
解析php通过cookies获取远程网页的指定代码
2013/06/25 PHP
PHP里8个鲜为人知的安全函数分析
2014/12/09 PHP
Yii2中添加全局函数的方法分析
2017/05/04 PHP
PHP Socket网络操作类定义与用法示例
2017/08/30 PHP
Laravel框架实现利用监听器进行sql语句记录功能
2018/06/06 PHP
IE与FireFox的兼容性问题分析
2007/04/22 Javascript
jQuery dialog 异步调用ashx,webservice数据的代码
2010/08/03 Javascript
jquery禁止输入数字以外的字符的示例(纯数字验证码)
2014/04/10 Javascript
Javascript 高阶函数使用介绍
2015/06/15 Javascript
jqGrid用法汇总(全经典)
2016/06/28 Javascript
最佳的JavaScript错误处理实践
2016/07/16 Javascript
Bootstrap实现input控件失去焦点时验证
2016/08/04 Javascript
javascript设置文本框光标的方法实例小结
2016/11/04 Javascript
JavaScript中Array对象用法实例总结
2016/11/29 Javascript
JS实现多张图片预览同步上传功能
2017/06/23 Javascript
vue-cli2与vue-cli3在一台电脑共存的实现方法
2019/09/25 Javascript
原生js实现碰撞检测
2020/03/12 Javascript
Vue实现图片轮播组件思路及实例解析
2020/05/11 Javascript
JavaScript隐式类型转换代码实例
2020/05/29 Javascript
[42:32]VP vs RNG 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.21.mp4
2020/07/19 DOTA
Python的Tornado框架异步编程入门实例
2015/04/24 Python
Python和JavaScript间代码转换的4个工具
2016/02/22 Python
利用python Selenium实现自动登陆京东签到领金币功能
2019/10/31 Python
北美个性化礼品商店:Things Remembered
2018/06/12 全球购物
绘画设计学生的个人自我评价
2013/09/20 职场文书
文秘自荐信
2013/10/20 职场文书
课堂教学改革实施方案
2014/03/17 职场文书
党校学习党性分析材料
2014/12/19 职场文书
办公室禁烟通知
2015/04/23 职场文书
幼儿园班级管理心得体会
2016/01/07 职场文书
导游词之云南丽江古城
2019/09/17 职场文书
matplotlib画混淆矩阵与正确率曲线的实例代码
2021/06/01 Python
Mysql 设置boolean类型的操作
2021/06/04 MySQL
解决Mysql的left join无效及使用的注意事项说明
2021/07/01 MySQL