Функция PyTorch torch.linalg.matrix_power
Справочное руководство Pytorch torch
torch.linalg.matrix_powerЭто функция в модуле линейной алгебры PyTorch, используемая для вычисления степеней матриц. Она вычисляет n-ю степень матрицы, A^n.
Определение функции
torch.linalg.matrix_power(A, n, out=None)
Parameters:
A(Tensor): Входная квадратная матрица.n(int): Степень, которая может быть целым числом, нулём или отрицательным числом.out(Tensor, необязательный): Выходной тензор.
Возвращаемое значение:
torch.Tensor: Возвращает n-ю степень матрицы.
Примеры использования
Пример
import torch
# Создать матрицу
A = torch.tensor([[1.0, 2.0],
[3.0, 4.0]])
# Вычислить A в степени 2
A_power_2 = torch.linalg.matrix_power(A, 2)
print("Матрица A:")
print(A)
print("nA^2:")
print(A_power_2)
print("n verification: A @ A =")
print(A @ A)
# Создать матрицу
A = torch.tensor([[1.0, 2.0],
[3.0, 4.0]])
# Вычислить A в степени 2
A_power_2 = torch.linalg.matrix_power(A, 2)
print("Матрица A:")
print(A)
print("nA^2:")
print(A_power_2)
print("n verification: A @ A =")
print(A @ A)
Результат вывода:
矩阵 A:
tensor([[1., 2.],
[3., 4.]])
A^2:
tensor([[ 7., 10.],
[15., 22.]])
验证: A @ A =
tensor([[ 7., 10.],
[15., 22.]])
Пример - A^0 и A^-1
import torch
A = torch.tensor([[1.0, 2.0],
[3.0, 4.0]], dtype=torch.float64)
# A^0 = I (единичная матрица)
print("A^0:")
print(torch.linalg.matrix_power(A, 0))
# A^-1 = матрица, обратная к A
print("nA^-1:")
print(torch.linalg.matrix_power(A, -1))
A = torch.tensor([[1.0, 2.0],
[3.0, 4.0]], dtype=torch.float64)
# A^0 = I (единичная матрица)
print("A^0:")
print(torch.linalg.matrix_power(A, 0))
# A^-1 = матрица, обратная к A
print("nA^-1:")
print(torch.linalg.matrix_power(A, -1))
Другие расширения