栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Tensorflow大步迈进

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Tensorflow大步迈进

池化和卷积运算在输入张量上滑动一个“窗口”。使用

tf.nn.conv2d
作为一个例子:如果输入张量有4个方面:
[batch, height, width, channels]
,则卷积在二维窗口上操作
height, width
的尺寸。

strides
确定窗口在每个维度上的移动量。典型用法是将第一个(批次)和最后一个(深度)步幅设置为1。

让我们使用一个非常具体的示例:在32x32灰度输入图像上运行2-d卷积。我说灰度是因为输入图像的深度为1,这有助于使其简单。让该图像看起来像这样:

00 01 02 03 04 ...10 11 12 13 14 ...20 21 22 23 24 ...30 31 32 33 34 ......

让我们在一个示例(批次大小= 1)上运行2x2卷积窗口。我们给卷积的输出通道深度为8。

卷积的输入为

shape=[1, 32, 32, 1]

如果指定

strides=[1,1,1,1]
padding=SAME
,则滤波器的输出将是[1,32,32,8]。

过滤器将首先为以下内容创建输出:

F(00 01  10 11)

然后针对:

F(01 02  11 12)

等等。然后它将移至第二行,计算:

F(10, 11  20, 21)

然后

F(11, 12  21, 22)

如果将步幅指定为[1、2、2、1],则不会重叠窗口。它将计算:

F(00, 01  10, 11)

接着

F(02, 03  12, 13)

跨步操作对于池化操作员类似。

问题2:为何大步走向[1,x,y,1]

前一个是批处理:您通常不想跳过批处理中的示例,否则您不应该首先将它们包括在内。:)

最后一个是卷积的深度:出于相同的原因,您通常不想跳过输入。

conv2d运算符比较笼统,因此您 可以 创建卷积以使窗口沿其他尺寸滑动,但这在卷积网络中并不常见。典型用途是在空间上使用它们。

为什么要重塑为-1
-1是一个占位符,它表示“根据需要进行调整以匹配整个张量所需的大小”。这是使代码独立于输入批处理大小的一种方法,因此您可以更改管道,而不必在代码中的任何地方调整批处理大小。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/653586.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号