torch.nn.functional.one_hot
-
torch.nn.functional.one_hot(tensor, num_classes=-1) → LongTensor[исходный код] -
Принимает LongTensor со значениями индексов формы
(*)и возвращает тензор формы(*, num_classes), содержащий нули во всех позициях, кроме тех, где индекс последнего измерения совпадает с соответствующим значением входного тензора; в этом случае значение равно 1.См. также One-hot в Википедии .
- Параметры:
-
- tensor (LongTensor) – значения классов произвольной формы.
- num_classes (int, необязательно) – Общее количество классов. Если задано значение -1, количество классов будет определено как значение наибольшего класса во входном тензоре плюс один. По умолчанию: -1
- Возвращает:
-
LongTensor с дополнительным измерением, в котором указанный входными данными индекс последнего измерения содержит значение 1, а во всех остальных позициях — 0.
Примеры
>>> F.one_hot(torch.arange(0, 5) % 3) tensor([[1, 0, 0], [0, 1, 0], [0, 0, 1], [1, 0, 0], [0, 1, 0]]) >>> F.one_hot(torch.arange(0, 5) % 3, num_classes=5) tensor([[1, 0, 0, 0, 0], [0, 1, 0, 0, 0], [0, 0, 1, 0, 0], [1, 0, 0, 0, 0], [0, 1, 0, 0, 0]]) >>> F.one_hot(torch.arange(0, 6).view(3,2) % 3) tensor([[[1, 0, 0], [0, 1, 0]], [[0, 0, 1], [1, 0, 0]], [[0, 1, 0], [0, 0, 1]]])
© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.nn.functional.one_hot.html