为什么置换层因就地操作而失败?

时间:2019-03-08 08:36:12

标签: caffe

我尝试将Permute层与intel caffe一起使用,就地操作的代码因错误的top斑点形状而失败:

layer {
  name: "conv4_3_norm_mbox_conf_perm"
  type: "Permute"
  bottom: "per_blob"
  top: "per_blob"
  permute_param {
    order: 0
    order: 2
    order: 3
    order: 1
  }
}

以不同的bottomtop名称成功。

为什么就地操作会失败?

1 个答案:

答案 0 :(得分:0)

很明显,在排列过程中值被弄乱了。要交换两个变量,您需要一个临时缓冲区(除非您使用XOR技巧)。