PyTorch torch.meshgrid 関数
torch.meshgridは、PyTorch において座標ベクトルからグリッドを作成するための関数です。複数の1次元座標ベクトルから座標テンソルを生成します。
関数定義
torch.meshgrid(*tensors, indexing='xy')
パラメータの説明:
*tensors: 入力の1次元テンソルindexing: インデックス方式、'xy'(デカルト)または 'ij'(行列)
使用例
例
import torch
# 座標ベクトルを作成
x = torch.tensor([1, 2, 3])
y = torch.tensor([4, 5])
# グリッドを作成(デカルトインデックス)
grid_x, grid_y = torch.meshgrid(x, y, indexing='xy')
print("grid_x:")
print(grid_x)
print("grid_y:")
print(grid_y)
# 座標ベクトルを作成
x = torch.tensor([1, 2, 3])
y = torch.tensor([4, 5])
# グリッドを作成(デカルトインデックス)
grid_x, grid_y = torch.meshgrid(x, y, indexing='xy')
print("grid_x:")
print(grid_x)
print("grid_y:")
print(grid_y)
出力結果は:
grid_x:
tensor([[1, 2, 3],
[1, 2, 3]])
grid_y:
tensor([[4, 4, 4],
[5, 5, 5]])
例
import torch
# 座標ベクトルを作成
x = torch.tensor([1, 2, 3])
y = torch.tensor([4, 5])
# グリッドを作成(行列インデックス)
grid_x, grid_y = torch.meshgrid(x, y, indexing='ij')
print("grid_x:")
print(grid_x)
print("grid_y:")
print(grid_y)
# 座標ベクトルを作成
x = torch.tensor([1, 2, 3])
y = torch.tensor([4, 5])
# グリッドを作成(行列インデックス)
grid_x, grid_y = torch.meshgrid(x, y, indexing='ij')
print("grid_x:")
print(grid_x)
print("grid_y:")
print(grid_y)
出力結果は:
grid_x:
tensor([[1, 1],
[2, 2],
[3, 3]])
grid_y:
tensor([[4, 5],
[4, 5],
[4, 5]])
その他の拡張
Pytorch torch リファレンスマニュアル