Tensorflow学习笔记——深入MNIST

TensorFlow的中文文档的深入MNIST中的【构建一个多层卷积网络】开始


个人理解:

1.    卷积

卷积层的四个参数:

F:滤波器尺寸

S:步长

K:滤波器个数(一般选择2的幂指数倍)

P:填补

 

a)      原文:【我们的卷积使用1步长(stride size),0边距(paddingsize)的模板,保证输出和输入是同一个大小。】

tensorflowconv2d"padding"参数可以设为两个值SAMEVALID

SAME: edge_row = (kernel_row - 1) / 2;  edge_cols = (kernel_cols - 1) / 2; 

VALID:edge_row = edge_cols = 0;  

edge_row就是边的行数,kernel_row就是卷积核的行数

Padding size选择为’SAME’就表示会用0填充。中文翻译为0边距,有点问题。所以当选择SAMEP=(5-1)/2=2

 

b)     原文:【卷积在每个5x5patch中算出32个特征。卷积的权重张量形状是[5, 5, 1, 32],前两个维度是patch的大小,接着是输入的通道数目,最后是输出的通道数目。】

 

表示卷积核大小是5x5,一共有32个这样的滤波器。

 

计算公式:

Input : W1*H1*D1  28*28*1

Output :W2*H2*D2 

W2=(W1-F+2P)/S+1 H2=(H1-F+2P)/S+1  D2=K

 

基本使用里提到Tensorflow使用tensor表示数据,Tensor是一个类型化的多维数组,相当于常规的程序数据。可以将一小组图像集表示为一个四维浮点数数组。这四个维度分别是[batch, height, width, channels]

所以这句

原文:【为了用这一层,我们把x变成一个4d向量,其第2、第3维对应图片的宽、高,最后一维代表图片的颜色通道数(因为是灰度图所以这里的通道数为1,如果是rgb彩色图,则为3)

x_image =tf.reshape(x, [-1,28,28,1])

中的-1会不会就对应batchbatch=-1又是什么意思暂时没搞明白【有网友回复说-1表示这个维度的值是根据其他几个维度值计算出来的】


2.池化

      大小2x2,步长2所以空间尺寸会在池化层减小一半

Max poolingoutput大小为14*14*32

 

输出图像的参数D只与滤波器个数K有关系,所以第二层卷积应该是采用了645*5大小的卷积核。

第二次池化后输出图像的大小为7*7*64


——————————————————2017.3.6更新—————————————————————————

最近买了一本《Tensorflow实战》,5.2小节提到:[-1,28,28,1]中的-1代表样本数量不固定,最后的1代表颜色通道数量。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值