Я выполнил приведенный ниже код. Но ненулевая () функция очень медленная (возьмите 0,1 с c). что не так мой код?
torch::Tensor a = torch::randn({30000, 80}); torch::Tensor b = a.select(1, 4) > 0.2; const torch::Tensor c = torch::nonzero(b); . . .
Ваш код не является неправильным. torch::nonzero должен проверять каждую запись в указанном вами тензоре, в этом случае 30000*80=2.4e+6. Это займет некоторое время.
torch::nonzero
30000*80=2.4e+6