PyTorch torch.eig 函数
torch.eig 是 PyTorch 中用于计算方阵特征值和特征向量的函数。它返回矩阵的所有特征值和右特征向量。
函数定义
torch.eig(A, eigenvectors=False, out=None)
参数:
A(Tensor): 输入方阵。eigenvectors(bool, 可选): 如果为 True,同时计算特征向量。默认为 False。out(tuple, 可选): 输出元组。
返回值:
tuple: 返回 (特征值, 特征向量) 的元组。
使用示例
实例
import torch
# 创建方阵
A = torch.tensor([[1.0, 2.0], [3.0, 4.0]])
# 计算特征值
eigenvalues, eigenvectors = torch.eig(A, eigenvectors=True)
print("矩阵 A:")
print(A)
print("n特征值:")
print(eigenvalues)
print("n特征向量:")
print(eigenvectors)
# 创建方阵
A = torch.tensor([[1.0, 2.0], [3.0, 4.0]])
# 计算特征值
eigenvalues, eigenvectors = torch.eig(A, eigenvectors=True)
print("矩阵 A:")
print(A)
print("n特征值:")
print(eigenvalues)
print("n特征向量:")
print(eigenvectors)
输出结果为:
矩阵 A:
tensor([[1., 2.],
[3., 4.]])
特征值:
tensor([[-0.3723, 0.0000],
[ 5.3723, 0.0000]])
特征向量:
tensor([[-0.8246, -0.4159],
[ 0.5658, -0.9094]])

Pytorch torch 参考手册