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]])
その他の拡張