我在PyTorch中有二维张量,表示模型的信任。我要:
。
简单的办法是:
F 215。
然而,这是低效的。有没有一种矢量化/张力化的方法来做到这一点?
发布于 2020-07-15 13:43:28
我首先要构造一个新的零矩阵,然后根据需要将项目从矩阵移到零矩阵。复制第二个元素低于阈值的行中的所有行。对于所有其他行,只复制第二个元素。
import torch
threshold = .2
X = torch.rand((100, 10))
new = torch.zeros_like(X)
mask = X[:, 2] <= threshold
new[mask] = X[mask]
new[~mask, 2] = X[~mask, 2]发布于 2020-07-15 16:34:49
尝尝这个
import numpy as np
x[(x[:,1] >= 0.5).nonzero(), np.r_[0, 2:x.shape[1]]] = 0.0首先,使用(x[:,1] >= 0.5).nonzero()获取行索引,
然后取除第二列外的列索引np.r_[0, 2:x.shape[1]]。
https://stackoverflow.com/questions/62915838
复制相似问题