Función torch.repeat_interleave de PyTorch


Pytorch torch 参考手册Manual de referencia de torch de Pytorch

torch.repeat_interleaveEs una función en PyTorch que se utiliza para repetir elementos a lo largo de una dimensión especificada.

Definición de la función

torch.repeat_interleave(input, repeats, dim=None, *, output_size=None)

Ejemplo de uso

Ejemplo

import torch

# Sin especificar dim, repite todos los elementos
x = torch.tensor([1, 2, 3])
result = torch.repeat_interleave(x, 2)
print("Cada elemento se repite 2 veces:")
print(result)

# Repetir según dim=0
y = torch.tensor([[1, 2], [3, 4]])
print("nTensor original:")
print(y)

result = torch.repeat_interleave(y, 2, dim=0)
print("Repetir 2 veces a lo largo de dim=0:")
print(result)

# Cada elemento tiene un número diferente de repeticiones
result = torch.repeat_interleave(y, torch.tensor([1, 2]), dim=0)
print("nDiferentes números de repetición a lo largo de dim=0 [1, 2]:")
print(result)

# Repetir según dim=1
result = torch.repeat_interleave(y, 3, dim=1)
print("nRepetir 3 veces a lo largo de dim=1:")
print(result)

# Devolver output_size
result = torch.repeat_interleave(x, 2, output_size=9)
print("nEspecificar output_size=9:")
print(result)

El resultado de salida es:

每个元素重复 2 次:
tensor([1, 1, 2, 2, 3, 3])

原始张量:
tensor([[1, 2],
        [3, 4]])
沿 dim=0 重复 2 次:
tensor([[1, 2],
        [1, 2],
        [3, 4],
        [3, 4]])

沿 dim=0 不同重复次数 [1, 2]:
tensor([[1, 2],
        [3, 4],
        [3, 4]])

沿 dim=1 重复 3 次:
tensor([[1, 1, 1, 2, 2, 2],
        [3, 3, 3, 4, 4, 4]])

指定 output_size=9:
tensor([1, 1, 2, 2, 3, 3, 1, 2, 3])

Pytorch torch 参考手册Manual de referencia de torch de Pytorch

Otras extensiones