卷积函数是卷积神经网络(CNN)非常核心和重要的函数,在搭建CNN时经常会用到,因此较为详细和深入的理解卷积函数具有十分重要的意义。

tf.nn.conv2d(input, filter, strides, padding, use_cudnn_on_gpu=None, name=None):在给定4维的输入和过滤器的张量时,计算一个2维卷积。

参数详解:

input:输入的参数或者说是图像tenors,input=[batch,in_height,in_width,in_channels],batch为图像数量,in_height和in_width分别为图像的长和宽,in_channels为图像的颜色通道(彩色为3,黑白为1)。一般我们在定义图像信息时,x都是1维的,比如x= tf.placeholder(tf.float32,[None,784]),None表示不限制输入数量,784表示一个784维的向量;在x传入conv2d之前需要对x进行变形,即将x变为input的形式,比如说x_image=tf.reshape(x,[-1,28,28,1]),其中-1代表样本数不确定,经过变形后x_image就可以被conv2d函数使用了。

filter:卷积核(滤波器),filter应该输入的是卷积的参数,filter=[filter_height, filter_width, in_channels, out_channels],其中filter_height和filter_width表示卷积核的尺寸,这里的in_channels与input中in_channels的含义一致,因此它们俩也相等,out_channels代表卷积核的数量,也就是该卷积层会提取多少类特征(一个卷积核提取一类特征),out_channels也会作为下一层卷积层中卷积核的in_channels

strides:代表卷积核移动的步长,是一个四维的数,[1,1,1,1],中间的两个参数表示水平和垂直的移动步长,第1和4的参数与batch和通道数有关(这一点不确定,希望有大佬指点一下)。

padding:代表边界处理的方式,string类型,只能是"SAME","VALID"其中之一,具体区别如下:

use_cudnn_on_gpu:bool类型,是否使用cudnn加速,默认为true。

name:给输出的feature map起个名字。

最新文章

  1. php glob()函数实现目录文件遍历与寻找与模式匹配的文件路径
  2. CSS各类标签用法——选择器
  3. 【转】 Android经验: proguard 阻碍 webview 正常工作
  4. Web网站架构设计
  5. Linq 数据合并,比较,连接,交叉 维恩图工具
  6. docker registry 搭建
  7. Java实现断点下载Demo
  8. MySQL数据库配置主从服务器实现双机热备
  9. IOS 第三方库之-MBProgressHUD的使用详解
  10. js盒子模型
  11. 在IIS上部署你的ASP.NET Core项目
  12. Ubuntu系统下的实用软件推荐
  13. Python笔记·第五章—— 列表(List) 的增删改查及其他方法
  14. ios7对于NSString对象进行了的变更
  15. python一(字符串,字典)
  16. shell join详解
  17. 【Django】ModuleNotFoundError: No module named 'books_ordersschool'
  18. hdu1257 dp(最长上升子序列)
  19. Sublime遇见中文乱码问题?
  20. pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

热门文章

  1. nrm 工具的使用
  2. oracle执行计划(一)----概述
  3. java验证邮件正则
  4. php导出数据到csv
  5. Grafana+Prometheus实现Ceph监控和钉钉告警-转载(云栖社区)
  6. Kotlin函数与Lambda表达式深入
  7. Centos7-ssh免密登录
  8. Python 利用函数、列表来实现计算天数
  9. K-means:如何选择K(cluster的数目)
  10. JAVA项目部署到云服务器