PyTorch を押し込む

Barbara Streisand
リリース: 2025-01-01 05:02:09
オリジナル
125 人が閲覧しました

squeeze in PyTorch

コーヒー買ってきて☕

*私の投稿では unsqueeze() について説明しています。

squeeze() は、以下に示すように、0 個以上の要素の 0D 以上の D テンソルから、サイズが 1 の場合に 0 個以上の次元が削除された 0 個以上の要素の 0D 以上の D テンソルを取得できます。

*メモ:

  • squeeze() は torch または tensor と一緒に使用できます。
  • トーチまたはテンソル (必須タイプ: int、float、complex、または bool のテンソル) を使用する 1 番目の引数 (入力)。
  • torch の 2 番目の引数、または tensor の 1 つ以上の引数は dim(Optional-Type:int, tuple of int or list of int) です。 *メモ:
    • 各番号は一意である必要があります。
    • サイズが 1 である特定の 0 個以上の次元を削除できます。
    • サイズが 1 以外の場合、0 個以上の次元を設定しても削除されません。
import torch

my_tensor = torch.tensor([[[[0], [1]],
                           [[2], [3]],
                           [[4], [5]]]])
torch.squeeze(input=my_tensor)
my_tensor.squeeze()
torch.squeeze(input=my_tensor, dim=(0, 3))
my_tensor.squeeze(dim=(0, 3))
my_tensor.squeeze(0, 3)
torch.squeeze(input=my_tensor, dim=(0, 1, 3))
my_tensor.squeeze(dim=(0, 1, 3))
my_tensor.squeeze(0, 1, 3)
etc.
torch.squeeze(input=my_tensor, dim=(0, 1, 2, 3))
my_tensor.squeeze(dim=(0, 1, 2, 3))
my_tensor.squeeze(0, 1, 2, 3)
etc.
# tensor([[0, 1],
#         [2, 3],
#         [4, 5]])

torch.squeeze(input=my_tensor, dim=0)
torch.squeeze(input=my_tensor, dim=-4)
torch.squeeze(input=my_tensor, dim=(0,))
torch.squeeze(input=my_tensor, dim=(-4,))
torch.squeeze(input=my_tensor, dim=(0, 1))
torch.squeeze(input=my_tensor, dim=(0, 2))
torch.squeeze(input=my_tensor, dim=(0, -2))
torch.squeeze(input=my_tensor, dim=(0, -3))
torch.squeeze(input=my_tensor, dim=(1, 0))
etc.
torch.squeeze(input=my_tensor, dim=(0, 1, 2))
etc.
# tensor([[[0], [1]],
#         [[2], [3]],
#         [[4], [5]]])

torch.squeeze(input=my_tensor, dim=1)
torch.squeeze(input=my_tensor, dim=2)
torch.squeeze(input=my_tensor, dim=-2)
torch.squeeze(input=my_tensor, dim=-3)
torch.squeeze(input=my_tensor, dim=())
torch.squeeze(input=my_tensor, dim=(1,))
torch.squeeze(input=my_tensor, dim=(2,))
torch.squeeze(input=my_tensor, dim=(-2,))
torch.squeeze(input=my_tensor, dim=(-3,))
torch.squeeze(input=my_tensor, dim=(1, 2))
etc.
# tensor([[[[0], [1]],
#          [[2], [3]],
#          [[4], [5]]]])

torch.squeeze(input=my_tensor, dim=3)
torch.squeeze(input=my_tensor, dim=-1)
torch.squeeze(input=my_tensor, dim=(3,))
torch.squeeze(input=my_tensor, dim=(-1,))
torch.squeeze(input=my_tensor, dim=(1, 3))
torch.squeeze(input=my_tensor, dim=(1, -1))
torch.squeeze(input=my_tensor, dim=(2, 3))
torch.squeeze(input=my_tensor, dim=(2, -1))
torch.squeeze(input=my_tensor, dim=(3, 1))
etc.
torch.squeeze(input=my_tensor, dim=(1, 2, 3))
etc.
# tensor([[[0, 1],
#          [2, 3],
#          [4, 5]]])

my_tensor = torch.tensor([[[[0.], [1.]],
                           [[2.], [3.]],
                           [[4.], [5.]]]])
torch.squeeze(input=my_tensor)
# tensor([[0., 1.],
#         [2., 3.],
#         [4., 5.]])

my_tensor = torch.tensor([[[[0.+0.j], [1.+0.j]],
                           [[2.+0.j], [3.+0.j]],
                           [[4.+0.j], [5.+0.j]]]])
torch.squeeze(input=my_tensor)
# tensor([[0.+0.j, 1.+0.j],
#         [2.+0.j, 3.+0.j],
#         [4.+0.j, 5.+0.j]])

my_tensor = torch.tensor([[[[True], [False]],
                           [[False], [True]],
                           [[True], [False]]]])
torch.squeeze(input=my_tensor)
# tensor([[True, False],
#         [False, True],
#         [True, False]])
ログイン後にコピー

以上がPyTorch を押し込むの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート