Función torch.tril_indices de PyTorch
Manual de referencia de Pytorch torch
torch.tril_indicesEs una función en PyTorch utilizada para generar índices de matrices triangulares inferiores. Devuelve los índices de fila y columna de la parte triangular inferior (incluyendo la diagonal).
Definición de la función
torch.tril_indices(row, column, offset=0, dtype=torch.long, device='cpu')
Descripción de parámetros:
row: número de filascolumn: número de columnasoffset: desplazamiento de la diagonaldtype: tipo de datos devueltodevice: dispositivo
Ejemplo de uso
Ejemplo
import torch
# Generar los índices triangulares inferiores de una matriz 3x3
row, col = torch.tril_indices(3, 3)
print("row:", row)
print("col:", col)
# Generar los índices triangulares inferiores de una matriz 3x3
row, col = torch.tril_indices(3, 3)
print("row:", row)
print("col:", col)
El resultado de salida es:
row: tensor([0, 1, 1, 2, 2, 2]) col: tensor([0, 0, 1, 0, 1, 2])
Ejemplo
import torch
# Generar índices y usarlos en operaciones de indexación
row, col = torch.tril_indices(3, 3, offset=1)
# Crear una matriz 3x3
a = torch.ones(3, 3)
# Usar los índices para establecer la parte triangular inferior
a[row, col] = 0
print(a)
# Generar índices y usarlos en operaciones de indexación
row, col = torch.tril_indices(3, 3, offset=1)
# Crear una matriz 3x3
a = torch.ones(3, 3)
# Usar los índices para establecer la parte triangular inferior
a[row, col] = 0
print(a)
El resultado de salida es:
tensor([[1., 0., 0.],
[1., 1., 0.],
[1., 1., 1.]])
Ejemplo
import torch
# Caso de matriz no cuadrada
row, col = torch.tril_indices(3, 4)
print("row:", row)
print("col:", col)
# Caso de matriz no cuadrada
row, col = torch.tril_indices(3, 4)
print("row:", row)
print("col:", col)
El resultado de salida es:
row: tensor([0, 1, 1, 2, 2, 2]) col: tensor([0, 0, 1, 0, 1, 2])
Otras extensiones