【问题标题】:Visualizing CNN weights from Torch Tensor从 Torch Tensor 可视化 CNN 权重
【发布时间】:2016-05-13 12:48:40
【问题描述】:

我有一个大小为 64x64x3x3 的 Torch 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?谢谢。

【问题讨论】:

  • 谢谢,我需要知道如何改变张量的尺寸:最后,我使用了 [Tensor] transpose(dim1, dim2)。

标签: image image-processing machine-learning neural-network torch


【解决方案1】:

错误似乎非常直接 - 您应该以以下任一形式提供数据:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-02-20
    • 1970-01-01
    • 1970-01-01
    • 2018-05-18
    • 2017-01-06
    • 2020-12-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多