torch.addmm
-
torch.addmm(input, mat1, mat2, *, beta=1, alpha=1, out=None) → Tensor -
Выполняет умножение матриц
mat1иmat2. Матрицаinputдобавляется к конечному результату.Если
mat1— тензор ,mat2— тензор , тоinputдолжен быть совместим по правилам трансляции с тензором , иoutбудет тензором .alphaиbetaявляются коэффициентами масштабирования для умножения матрицы на вектор междуmat1иmat2и добавляемой матрицыinputсоответственно.Если
betaравно 0, тоinputбудет проигнорировано, иnanиinfв нём не будут распространяться.Для входных данных типа
FloatTensorилиDoubleTensor, аргументыbetaиalphaдолжны быть вещественными числами, в противном случае они должны быть целыми.Эта операция поддерживает аргументы с разреженными макетами. Если
inputразрежен, результат будет иметь тот же макет, и еслиoutпредоставлен, он должен иметь тот же макет, что иinput.Предупреждение
Поддержка разреженных данных — это бета-функция, и некоторые макеты/типы данных/комбинации устройств могут не поддерживаться или не иметь поддержки автоградиента. Если вы обнаружите недостающую функциональность, откройте запрос на новую функцию.
Этот оператор поддерживает TensorFloat32.
На некоторых устройствах ROCm, при использовании входных данных типа float16, этот модуль будет использовать разную точность для обратного распространения.
- Параметры
- Ключевые аргументы
-
-
beta (Число, необязательно) – множитель для
input() - alpha (Число, необязательно) – множитель для ()
- out (Tensor, необязательно) – выходной тензор.
-
beta (Число, необязательно) – множитель для
Пример:
>>> M = torch.randn(2, 3) >>> mat1 = torch.randn(2, 3) >>> mat2 = torch.randn(3, 3) >>> torch.addmm(M, mat1, mat2) tensor([[-4.8716, 1.4671, -1.3746], [ 0.7573, -3.9555, -2.8681]])
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.addmm.html