首页 文章

彩色图像卷积核的张量权重?

提问于
浏览
4

目前,我有一些网络使用灰度图像进行分类 . 我想继续彩色(RGB)图像 .

在Tensorflow的CIFAR-10教程中,我对卷积内核的权重感到困惑 . 第一个卷积看起来像这样:

kernel = _variable_with_weight_decay('weights', shape=[5, 5, 3, 64],
                                         stddev=1e-4, wd=0.0)
conv = tf.nn.conv2d(images, kernel, [1, 1, 1, 1], padding='SAME')

所以它是一个输入为3的卷积(每个颜色通道一个:红色,绿色和蓝色图像信息),它生成64个特征映射 .

但是,第二个卷积层输入64个特征映射:

kernel = _variable_with_weight_decay('weights', shape=[5, 5, 64, 64],
                                         stddev=1e-4, wd=0.0)
conv = tf.nn.conv2d(norm1, kernel, [1, 1, 1, 1], padding='SAME')

...那么,这是如何处理颜色信息的呢?这是否意味着不同的颜色通道以某种方式在卷积层1的64个特征图上展开?

我认为转换层1为每个颜色通道生成64个特征映射,因此最终得到3 * 64 = 196个特征映射......但显然我错了 .

如何在转换层1中混合颜色信息?

1 回答

  • 5

    参见CuDNN描述中的等式3 here

    基本上对于单个示例( n ),单行( p )和单列( q ),空间卷积的结果将是 5x5x3 值的加权和 . 因此每次激活都将包含来自所有3种颜色的信息 .

相关问题