[PYTHON] PyTorch-Memo (Dimensionsverwaltung)

Einführung

Der Herr ist ein Anfänger im tiefen Lernen. Wenn Sie einen Fehler machen, lassen Sie es mich bitte wissen.

Definition des Tensors

>>> import torch
>>> tensor = torch.randn(2, 3, 3)
tensor([[[ 1.5399, -0.8363,  0.3968],
         [ 0.0699,  1.1410,  0.7154],
         [ 0.4368,  0.9433, -0.8077]],

        [[ 1.1562, -1.3698,  0.6734],
         [-0.6762,  0.1539, -0.1286],
         [-0.4542,  0.3858, -1.6197]]])

Manipulieren Sie den Tensor Dimension für Dimension

Finden Sie die Summe der n-ten Dimension (komprimieren Sie die Dimension)

>>> sum_tensor = tensor.sum(2, keepdim=False)
tensor([[ 1.1004,  1.9262,  0.5725],
        [ 0.4599, -0.6509, -1.6881]])

torch.Size([2, 3])

Suchen Sie die Summe in der n-ten Dimension (komprimieren Sie die Dimension nicht)

>>> sum_tensor = tensor.sum(2, keepdim=True)
tensor([[[ 1.1004],
         [ 1.9262],
         [ 0.5725]],

        [[ 0.4599],
         [-0.6509],
         [-1.6881]]])

torch.Size([2, 3, 1])

Erweitern Sie die Dimension

Wenn Sie eine GPU verwenden, können Sie Folgendes beschleunigen

>>> tensor.sum(2, keepdim=True).expand([3, 2, 3, 1])

tensor([[[[ 1.1004],
          [ 1.9262],
          [ 0.5725]],

         [[ 0.4599],
          [-0.6509],
          [-1.6881]]],


        [[[ 1.1004],
          [ 1.9262],
          [ 0.5725]],

         [[ 0.4599],
          [-0.6509],
          [-1.6881]]],


        [[[ 1.1004],
          [ 1.9262],
          [ 0.5725]],

         [[ 0.4599],
          [-0.6509],
          [-1.6881]]]])

Zusammenfassung

Ich denke, ich werde es noch einmal hinzufügen, wenn der Herr in Schwierigkeiten ist

Recommended Posts

PyTorch-Memo (Dimensionsverwaltung)
[Pytorch] Memo über Dataset / DataLoader
Tensorflow-GPU Einführungsnotiz
H2O.ai Einführungsnotiz
Gedichteinführungsnotiz (ubuntu18.04)
PyTorch-Memo (Dimensionsverwaltung)
Mehrere Versionen und Hinweise zur Bibliotheksverwaltung in Pythonbrew