Python 二维张量中的Pyrotch值指数
给定以下张量(或任意二维随机张量),我想得到'101'的索引:Python 二维张量中的Pyrotch值指数,python,pytorch,tensor,Python,Pytorch,Tensor,给定以下张量(或任意二维随机张量),我想得到'101'的索引: tens=张量([[101146176218061116110518621119102,0, 0, 0, 0], [ 101, 1192, 1132, 1136, 1184, 146, 1354, 1128, 1127, 117, 1463, 119, 102], [ 101, 6816, 1905, 1132, 14918, 119, 102, 0,
tens=张量([[101146176218061116110518621119102,0,
0, 0, 0],
[ 101, 1192, 1132, 1136, 1184, 146, 1354, 1128, 1127, 117,
1463, 119, 102],
[ 101, 6816, 1905, 1132, 14918, 119, 102, 0, 0, 0,
0, 0, 0]])
从相关的答案中,我知道我可以做这样的事情:
idxs=torch.tensor([(i==101).nonzero()表示十位数中的i])
但这看起来很混乱,而且可能相当缓慢。有没有更好的方法可以做到这一点,即快速和更火炬-y
仅讨论一维张量的相关问题:
(十位数=101)如何。非零()[:,1]
In [20]: from torch import tensor
In [21]: tens = torch.tensor([[ 101, 146, 1176, 21806, 1116, 1105, 18621, 119, 102, 0,
...: 0, 0, 0],
...: [ 101, 1192, 1132, 1136, 1184, 146, 1354, 1128, 1127, 117,
...: 1463, 119, 102],
...: [ 101, 6816, 1905, 1132, 14918, 119, 102, 0, 0, 0,
...: 0, 0, 0]])
In [22]: (tens == 101).nonzero()[:, 1]
Out[22]: tensor([0, 0, 0])