torch.linalg.matrix_exp
-
torch.linalg.matrix_exp(A) → Tensor -
Вычисляет матричную экспоненту квадратной матрицы.
Пусть является или , эта функция вычисляет матричную экспоненту от , которая определяется как
Если у матрицы есть собственные значения , у матрицы есть собственные значения .
Поддерживает входные данные типов bfloat16, float, double, cfloat и cdouble. Также поддерживает пакеты матриц, и если
Aявляется пакетом матриц, то выходные данные имеют те же размерности пакета.- Параметры
-
A (Tensor) – тензор формы
(*, n, n)где*— это ноль или более размерностей пакета.
Пример:
>>> A = torch.empty(2, 2, 2) >>> A[0, :, :] = torch.eye(2, 2) >>> A[1, :, :] = 2 * torch.eye(2, 2) >>> A tensor([[[1., 0.], [0., 1.]], [[2., 0.], [0., 2.]]]) >>> torch.linalg.matrix_exp(A) tensor([[[2.7183, 0.0000], [0.0000, 2.7183]], [[7.3891, 0.0000], [0.0000, 7.3891]]]) >>> import math >>> A = torch.tensor([[0, math.pi/3], [-math.pi/3, 0]]) # A is skew-symmetric >>> torch.linalg.matrix_exp(A) # matrix_exp(A) = [[cos(pi/3), sin(pi/3)], [-sin(pi/3), cos(pi/3)]] tensor([[ 0.5000, 0.8660], [-0.8660, 0.5000]])
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.linalg.matrix_exp.html