PyTorch torch.tril_indices-Funktion
PyTorch torch-Referenzhandbuch
torch.tril_indicesEs ist eine Funktion in PyTorch, die dazu dient, Indizes der unteren Dreiecksmatrix zu erzeugen. Sie gibt die Zeilenindizes und Spaltenindizes des unteren Dreiecksbereichs (einschließlich der Diagonalen) zurück.
Funktionsdefinition
torch.tril_indices(row, column, offset=0, dtype=torch.long, device='cpu')
Parameterbeschreibung:
row: Anzahl der Zeilencolumn: Anzahl der Spaltenoffset: Diagonalversatzdtype: Datentyp des zurückgegebenen Wertsdevice: Gerät
Anwendungsbeispiel
Beispiel
import torch
# Erzeuge untere Dreiecksindizes für eine 3x3-Matrix
row, col = torch.tril_indices(3, 3)
print("row:", row)
print("col:", col)
# Erzeuge untere Dreiecksindizes für eine 3x3-Matrix
row, col = torch.tril_indices(3, 3)
print("row:", row)
print("col:", col)
Das Ausgabeergebnis ist:
row: tensor([0, 1, 1, 2, 2, 2]) col: tensor([0, 0, 1, 0, 1, 2])
Beispiel
import torch
# Indizes generieren und sie für Indexierungsoperationen verwenden
row, col = torch.tril_indices(3, 3, offset=1)
# Erstelle eine 3x3-Matrix
a = torch.ones(3, 3)
# Die Indizes verwenden, um den unteren Dreiecksteil zu setzen
a[row, col] = 0
print(a)
# Indizes generieren und sie für Indexierungsoperationen verwenden
row, col = torch.tril_indices(3, 3, offset=1)
# Erstelle eine 3x3-Matrix
a = torch.ones(3, 3)
# Die Indizes verwenden, um den unteren Dreiecksteil zu setzen
a[row, col] = 0
print(a)
Das Ausgabeergebnis ist:
tensor([[1., 0., 0.],
[1., 1., 0.],
[1., 1., 1.]])
Beispiel
import torch
# Fall einer nichtquadratischen Matrix
row, col = torch.tril_indices(3, 4)
print("row:", row)
print("col:", col)
# Fall einer nichtquadratischen Matrix
row, col = torch.tril_indices(3, 4)
print("row:", row)
print("col:", col)
Das Ausgabeergebnis ist:
row: tensor([0, 1, 1, 2, 2, 2]) col: tensor([0, 0, 1, 0, 1, 2])
Andere Erweiterungen