Spec-Zone.ru › PyTorch 2

torch.addr

torch.addr(input, vec1, vec2, *, beta=1, alpha=1, out=None) → Tensor

Выполняет внешнее произведение векторов vec1 и vec2 и добавляет его к матрице input.

Необязательные значения beta и alpha являются масштабирующими множителями внешнего произведения между vec1 и vec2 и добавляемой матрицей input соответственно.

out=β input+α(vec1⊗vec2)\text{out} = \beta\ \text{input} + \alpha\ (\text{vec1} \otimes \text{vec2})

Если beta равно 0, то input будет проигнорировано, и nan и inf в нём не будут переданы.

Если vec1 — это вектор размера n и vec2 — это вектор размера m, то input должен быть совместимым с операцией с матрицей размера (n×m)(n \times m), и out будет матрицей размера (n×m)(n \times m).

Параметры
  • input (Тензор) – матрица, к которой добавляется значение
  • vec1 (Тензор) – первый вектор внешнего произведения
  • vec2 (Тензор) – второй вектор внешнего произведения
Ключевые аргументы
  • beta (Число, необязательно) – множитель для input (β\beta)
  • alpha (Число, необязательно) – множитель для vec1⊗vec2\text{vec1} \otimes \text{vec2} (α\alpha)
  • out (Тензор, необязательно) – выходной тензор.

Пример:

>>> vec1 = torch.arange(1., 4.)
>>> vec2 = torch.arange(1., 3.)
>>> M = torch.zeros(3, 2)
>>> torch.addr(M, vec1, vec2)
tensor([[ 1.,  2.],
        [ 2.,  4.],
        [ 3.,  6.]])

© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.addr.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API