PyTorch torch.bucketize Funktion
PyTorch torch Referenzhandbuch
torch.bucketizeEs ist eine PyTorch-Funktion, die für die Bucket-Indizierung verwendet wird. Sie ordnet Eingabewerte den entsprechenden Bucket-Indizes zu und führt eine binäre Suche basierend auf einem Grenzen-Array durch. Sie wird häufig verwendet, um kontinuierliche Werte zu diskretisieren oder für Binning-Operationen.
Funktionsdefinition
torch.bucketize(input, boundaries, right=False, out_int32=False, **kwargs)
Anwendungsbeispiel
Beispiel
import torch
# Grundlegende Verwendung: Bucket-Indizierung
boundaries = torch.tensor([0, 1, 2, 3, 4])
values = torch.tensor([0.5, 1.5, 2.5, 3.5, 0.2, 2.0])
result = torch.bucketize(values, boundaries)
print("Grenzen:", boundaries)
print("Werte:", values)
print("Bucket-Indizes:", result)
# Ausgabe: tensor([1, 2, 3, 4, 0, 2])
# right=True bedeutet, dass die Grenzen rechtsgeschlossene Intervalle sind
result_right = torch.bucketize(values, boundaries, right=True)
print("right=True Bucket-Indizes:", result_right)
# Ausgabe: tensor([0, 1, 2, 3, 0, 1])
# Mehrdimensionale Eingabe
values = torch.tensor([[0.5, 1.5], [2.5, 3.5]])
result = torch.bucketize(values, boundaries)
print("Ergebnis der mehrdimensionalen Eingabe:", result)
# Grundlegende Verwendung: Bucket-Indizierung
boundaries = torch.tensor([0, 1, 2, 3, 4])
values = torch.tensor([0.5, 1.5, 2.5, 3.5, 0.2, 2.0])
result = torch.bucketize(values, boundaries)
print("Grenzen:", boundaries)
print("Werte:", values)
print("Bucket-Indizes:", result)
# Ausgabe: tensor([1, 2, 3, 4, 0, 2])
# right=True bedeutet, dass die Grenzen rechtsgeschlossene Intervalle sind
result_right = torch.bucketize(values, boundaries, right=True)
print("right=True Bucket-Indizes:", result_right)
# Ausgabe: tensor([0, 1, 2, 3, 0, 1])
# Mehrdimensionale Eingabe
values = torch.tensor([[0.5, 1.5], [2.5, 3.5]])
result = torch.bucketize(values, boundaries)
print("Ergebnis der mehrdimensionalen Eingabe:", result)
Andere Erweiterungen