首页 > 代码库 > TensorFlow 中 conv2d 的确切含义
TensorFlow 中 conv2d 的确切含义
在读:
《TensorFlow:实战Google深度学习框架》 才云科技Caicloud, 郑泽宇, 顾思宇【摘要 书评 试读】图书
https://www.amazon.cn/gp/product/B06WGP12TV
结合:
【TensorFlow】tf.nn.conv2d是怎样实现卷积的? - xf__mao的博客 - 博客频道 - CSDN.NET
http://blog.csdn.net/mao_xiao_feng/article/details/53444333
neural network - What does tf.nn.conv2d do in tensorflow? - Stack Overflow
http://stackoverflow.com/questions/34619177/what-does-tf-nn-conv2d-do-in-tensorflow
现在总结出两个例子:
1. 尺寸的压缩:
input: [1,3,3,1] # 3*3 的图,通道数 1
[[[[1],[2],[3]],
[[4],[5],[6]],
[[7],[8],[9]]]]
fitler: [2,2,1,1] # 2*2 的卷积核,输入通道 1,输出通道 1
[
[[[1]], [[100]]],
[[[10000]],[[1000000]]]
]
result:
[[[[ 5040201.] [ 6050302.]]
[[ 8070504.] [ 9080605.]]]]
可见卷积是怎么进行的。
2. 通道的压缩
input: [1,3,3,2] # 3*3 的图,通道数 2
[[[[1, 11],[2, 22],[3, 33]],
[[4, 44],[5, 55],[6, 66]],
[[7, 77],[8, 88],[9, 99]]]]
fitler: [1,1,2,1] # 1*1 的卷积核,输入通道 2,输出通道 1
[[[[10],[1000]]]]
result:
[[[[ 11010.], [ 22020.], [ 33030.]],
[[ 44040.], [ 55050.], [ 66060.]],
[[ 77070.], [ 88080.], [ 99090.]]]]
可以看出通道压缩是怎么进行的。
使用 tf.const 注入可示踪的测试数据,比用 random_normal 构造数据要好懂的多。
TensorFlow 中 conv2d 的确切含义