【问题标题】:PyTorch: apply mask with different shapePyTorch:应用不同形状的遮罩
【发布时间】:2021-07-20 08:49:17
【问题描述】:

我有一个形状为 (60, 3, 32, 32) 的张量和一个形状为 (60, 32, 32) 的布尔掩码。我想将此蒙版应用于张量。输出张量的形状应为(60, 3, 32, 32),如果掩码为 1,则保留值,否则为 0。 我怎样才能做到这么快?

【问题讨论】:

  • 它是一个布尔掩码,您想使用它来过滤张量中的值吗?
  • 是的,它是一个布尔掩码。
  • 预期输出是什么?与原始张量相同的形状,在掩码为假的情况下为零,或者在掩码为真的情况下只有值的较小张量?
  • 是的,前者:输出与输入张量具有相同的形状,在其他地方保留掩码为 1 和 0 的值。

标签: pytorch


【解决方案1】:

t 为张量,m 为掩码。您可以使用:

t * m.unsqueeze(1)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-10
    • 2014-11-17
    • 1970-01-01
    • 2012-12-30
    • 2021-10-25
    • 1970-01-01
    • 2012-07-08
    相关资源
    最近更新 更多