Image 从Torch张量可视化CNN权重

Image 从Torch张量可视化CNN权重,image,image-processing,machine-learning,neural-network,torch,Image,Image Processing,Machine Learning,Neural Network,Torch,我有一个尺寸为64x64x3x3的火炬Cuda张量,我想将给定层的重量可视化如下: local layer = model:get(3) local weights = layer.weight local imgDisplay = image.toDisplayTensor{input=weights, padding=2, scaleeach=80} 这会产生一个错误: 'packed must be a HxW or KxHxW or Kx3xHxW tensor, or a list

我有一个尺寸为64x64x3x3的火炬Cuda张量,我想将给定层的重量可视化如下:

local layer = model:get(3)
local weights = layer.weight
local imgDisplay = image.toDisplayTensor{input=weights, padding=2, scaleeach=80}
这会产生一个错误:

'packed must be a HxW or KxHxW or Kx3xHxW tensor, or a list of tensors

如何调整张量大小以使用toDisplayTensor?谢谢。

错误似乎非常简单-您应该以以下形式提供数据:

  • HxW-高度x重量,2维张量,每个内核/通道对一个
  • KxHxW-内核x高度x重量,3维张量,每个通道一个(例如,如果数据为灰度)
  • Kx3xHxW-内核x通道x高度x重量,4维张量,每个网络层一个(对于3通道颜色数据,第二个维将映射到RGB比例)

在您的情况下,我假设您的图像是64x64(或者在当前卷积之后)?然后你需要3x3x64x64张量,其中第一个维度是在内核上迭代,第二个维度是在颜色上迭代,第三个维度是在图像本身上迭代。

谢谢,我需要知道如何更改张量的维度:最后,我使用了[Tensor]转置(dim1,dim2)。