Pytorch变换张量为一热

问题描述 投票:0回答:1

将填充n值的形状张量(batch_size,n,高度,宽度)转换为形状张量(batch_size,n,高度,宽度)的最简单方法是什么?我在下面创建了解决方案,但是看起来有更简便,更快捷的方法来进行此操作


def batch_tensor_to_onehot(tnsr, classes):
    tnsr = tnsr.unsqueeze(1)
    res = []
    for cls in range(classes):
        res.append((tnsr == cls).long())
    return torch.cat(res, dim=1)
python pytorch tensor one-hot-encoding
1个回答
0
投票

您可以使用tf.one_hot

tf.one_hot(tnsr, depth=classes, axis=1)

希望有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.