Channels first vs Channels last——这是什么意思?

Channels first vs Channels last - what do these mean?

https://software.intel.com/en-us/forums/computer-vision/topic/785538

"The problem has been resolved. It's because the model I use uses channels_first as default for GPU training, while OPENVINO requires channels_last for TF models."

这些是什么意思?

我该如何更改它们?

我在网上找不到任何关于此的进一步参考。

通道首先意味着在特定的张量中(考虑一张照片),您将有 (Number_Of_Channels, Height , Width)

Channels last 表示通道位于张量(n-dimensional 数组)的最后位置。

示例:

    (3,360,720) --- Channels first

    (360,720,3) --- Channels last

其中 3 来自 RGB(彩色图像)。

TensorFlow 默认在配置中有通道最后设置。

这个问题是因为一些现在已经过时的框架(比如Theano)有一个channels-first方法;移植对于新手来说尤其是个问题。

您的问题的解决方案是 re-train 您的模型采用“Channels_Last”格式。

您可以使用 --disable_nhwc_to_nchw 和模型优化器将具有 NCHW 布局的 TF 模型转换为 IR。

NCHW - 频道优先
NHWC - 最后一个频道

N:batch_size, C:no.of.channels, H:input_img_height, W:input_img_width

默认情况下,MKLDNN 插件使用 NCHW 数据布局。