Функция torch.bincount в PyTorch
Справочное руководство Pytorch torch
torch.bincountЭто функция в PyTorch, используемая для подсчёта вхождений каждого неотрицательного целого значения. Она возвращает новый одномерный тензор, где i-й элемент представляет количество раз, которое значение i встречается во входных данных. Обычно используется для вычисления гистограмм и групповой статистики.
Определение функции
torch.bincount(input, weights=None, minlength=0)
Примеры использования
Пример
import torch
# Базовое использование: подсчёт вхождений каждого значения
x = torch.tensor([0, 1, 1, 2, 2, 2, 3, 3, 4])
counts = torch.bincount(x)
print("Вход:", x)
print("Результат подсчёта:", counts)
# Вывод: tensor([1, 2, 3, 2, 1])
# Использование параметра weights
x = torch.tensor([0, 1, 1, 2, 2, 2])
weights = torch.tensor([1.0, 2.0, 3.0, 1.0, 2.0, 3.0])
weighted_counts = torch.bincount(x, weights=weights)
print("Взвешенное количество:", weighted_counts)
# Вывод: tensor([1., 5., 6.])
# Задать минимальную длину
x = torch.tensor([0])
counts = torch.bincount(x, minlength=5)
print("Минимальная длина 5:", counts)
# Вывод: tensor([1, 0, 0, 0, 0])
# Базовое использование: подсчёт вхождений каждого значения
x = torch.tensor([0, 1, 1, 2, 2, 2, 3, 3, 4])
counts = torch.bincount(x)
print("Вход:", x)
print("Результат подсчёта:", counts)
# Вывод: tensor([1, 2, 3, 2, 1])
# Использование параметра weights
x = torch.tensor([0, 1, 1, 2, 2, 2])
weights = torch.tensor([1.0, 2.0, 3.0, 1.0, 2.0, 3.0])
weighted_counts = torch.bincount(x, weights=weights)
print("Взвешенное количество:", weighted_counts)
# Вывод: tensor([1., 5., 6.])
# Задать минимальную длину
x = torch.tensor([0])
counts = torch.bincount(x, minlength=5)
print("Минимальная длина 5:", counts)
# Вывод: tensor([1, 0, 0, 0, 0])
Другие расширения