Función torch.add de PyTorch


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

torch.addEs una función en PyTorch que se utiliza para realizar la suma elemento a elemento. Suma dos tensores o un tensor y un escalar.

Es una de las operaciones matemáticas más básicas, y se utiliza en varios escenarios de cálculo en el aprendizaje profundo.

Definición de la función

torch.add(input, other, alpha=1, out=None)

Parámetros:

  • input(Tensor): El primer tensor de entrada.
  • other(Tensor o float): El segundo tensor de entrada o escalar.
  • alpha(float, opcional): factor de escala,otherSe multiplica por este valor y luego se suma ainput..., por defecto es 1.
  • out(Tensor, opcional): El tensor de salida.

Valor de retorno:

  • torch.Tensor: Devuelve el tensor resultante de la suma.

Ejemplos de uso

Ejemplo 1: Sumar dos tensores

Ejemplo

import torch

# Crear dos tensores
a = torch.tensor([1, 2, 3])
b = torch.tensor([4, 5, 6])

# Sumar
c = torch.add(a, b)

print(c)

El resultado de salida es:

tensor([5, 7, 9])

Ejemplo 2: Sumar un escalar a un tensor

Ejemplo

import torch

# Crear un tensor
a = torch.tensor([1, 2, 3])

# Sumar el escalar
b = torch.add(a, 10)

print(b)

El resultado de salida es:

tensor([11, 12, 13])

Ejemplo 3: Usar el parámetro alpha

Ejemplo

import torch

# Crear dos tensores
a = torch.tensor([1.0, 2.0, 3.0])
b = torch.tensor([1.0, 2.0, 3.0])

# Calcular a + 2 * b
c = torch.add(a, b, alpha=2)

print(c)

El resultado de salida es:

tensor([3., 6., 9.])

alphaEl parámetro es útil al implementar ciertos algoritmos, por ejemplo al calcularinput + alpha * other。

Ejemplo 4: Mecanismo de broadcasting

Ejemplo

import torch

# Sumar tensores de diferentes formas (broadcasting)
a = torch.tensor([[1, 2, 3], [4, 5, 6]])
b = torch.tensor([1, 2, 3])

c = torch.add(a, b)

print(c)

El resultado de salida es:

tensor([[2, 4, 6],
        [5, 7, 9])

PyTorch admite el mecanismo de broadcasting, que permite operar tensores de diferentes formas.


Usar el operador más

Además de usar la funcióntorch.add(), también se puede usar directamente el operador+, el efecto de ambos es el mismo:

Ejemplo

import torch

a = torch.tensor([1, 2, 3])
b = torch.tensor([4, 5, 6])

# Las dos formas son equivalentes
c1 = torch.add(a, b)
c2 = a + b

print(c1)
print(c2)
print(torch.equal(c1, c2))

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

Otras extensiones