PyTorch torch.eye 関数
torch.eyeは PyTorch において単位行列(対角要素が1で、それ以外は0の行列)を作成するために使用される関数です。
これは深層学習において、初期化やマスクの作成などの場面でよく使用されます。
関数定義
torch.eye(n, m, dtype, device, requires_grad)
パラメータ:
n(int): 行数。m(int, オプション): 列数。指定されていない場合、n×nの正方行列を作成します。dtype(torch.dtype, オプション): データ型。device(torch.device, オプション): デバイス。requires_grad(bool, オプション): 勾配を計算する必要があるかどうか。
戻り値:
torch.Tensor: 単位行列を返します。
使用例
例1: 正方行列の作成
例
import torch
# 3x3 単位行列を作成
I = torch.eye(3)
print(I)
# 3x3 単位行列を作成
I = torch.eye(3)
print(I)
出力結果は次のとおりです:
tensor([[1., 0., 0.],
[0., 1., 0.],
[0., 0., 1.]])
例2: 非正方行列の作成
例
import torch
# 3x4 の単位行列を作成
I = torch.eye(3, 4)
print(I)
# 3x4 の単位行列を作成
I = torch.eye(3, 4)
print(I)
出力結果は次のとおりです:
tensor([[1., 0., 0., 0.],
[0., 1., 0., 0.],
[0., 0., 1., 0.]])
その他の拡張
Pytorch torch リファレンスマニュアル