tensorflow中输入X的张量存储于卷积核Kenel的存储的区别

对于多个三维的输入X于多个三维卷积核运用tensorflow中张量的表示,都是用四维张量存储:

x.shape = (None,高度,宽度,深度)      其中None表示输出数据的个数;

k.shape = (高度,宽度,深度,个数)

所以说,K的存储格式与X的存储格式不同,主要在,X的个数在第一维上表示,而K的个数在第四维上表示。而X的深度在第四维上表示,K的深度在第三维上表示。

例如对于如下的两个2x2x2的卷积核进行存储:

代码如下:

其中为一行是一个三维张量,一维张量(最内部的张量,划横线的)内元素的个数,表示K的数量,即第四维的数值。例如这里的【3,1】,【1,2】元素的个数都为2,表示K的数量为2。

我们再来看看X的存储:

对于2个3x3x2的张量:

代码如下:

对于X而言,每一行是一个二维张量,一维张量(最内部的张量)内的元素个数,表示X的深度。例如这里的【1,4】,【9,3】等,元素内的个数为2,代表深度为2。

 

总的来说,导致这种差异的根本原因是因为:X的shape的第一维表示数据的个数,而第四维表示每一个数据的深度;K的shape的第四维表示卷积核的个数。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值