Tensorflow Google NASNet(一种神经网络)参数计数错误

Tensorflow Google NASNet(一种神经网络)参数计数错误,tensorflow,neural-network,Tensorflow,Neural Network,我试图详细了解NASNet-A体系结构,但无法与论文中的参数计数相匹配 例如,文章说CIFAR-10 NASNet-A“6@768”模型有3.3百万个参数,但根据我的计算,最后一个单元格中的单个“sep 5x5”原语应该只有2.9百万个参数……这不可能是正确的 下面是我如何推导出这个计数 “6@768”表示法意味着“网络倒数第二层中的过滤器数量”是768,我假设这意味着单元中每个基本操作中的过滤器数量是768,因此concat操作的输出深度(有5个块输入)是5*768。由于形状仅由还原单元更改,

我试图详细了解NASNet-A体系结构,但无法与论文中的参数计数相匹配

例如,文章说CIFAR-10 NASNet-A“6@768”模型有3.3百万个参数,但根据我的计算,最后一个单元格中的单个“sep 5x5”原语应该只有2.9百万个参数……这不可能是正确的

下面是我如何推导出这个计数

“6@768”表示法意味着“网络倒数第二层中的过滤器数量”是768,我假设这意味着单元中每个基本操作中的过滤器数量是768,因此concat操作的输出深度(有5个块输入)是5*768。由于形状仅由还原单元更改,因此最终单元的输入(先前正常单元的concat输出)深度也将为5*768

因此,对于5*768个输入通道和768个输出通道的5x5可分离卷积,参数数量为:

5x5x1*(5*768)=96,00个参数,用于5x5深度过滤器,加上

1x1点式过滤器的1x1x(5*768)x768=2949128个参数


我哪里出错了

单元格块每次操作的输出通道数量取决于定义的
num\u conv\u过滤器。例如,对于CIFAR NASNet-A,它是32,在每个
还原单元之后,它会加倍

虽然他们提到他们有B=5个块,没有剩余连接,但他们似乎有6个串联的过滤器块,最后一个似乎来自上一层。 见:

例如,这就是为什么第一个单元格中有192个特征深度: 6*32=192. 您可以在此处查看预期深度:

例如,对于最后一个
5x5可分离卷积
,您可以得到: 5x5*768+768*128=117504参数

有关可分离卷积的更多信息: