[PYTHON] Erzielen Sie mit Tensorflow eine Pytorch-Reflexionspolsterung

Es ist ein Memorandum, weil es gestaut ist. Ich habe es noch nicht verschoben. Wenn Sie also Fehler haben, lassen Sie es mich bitte wissen.

In pytorch verhält sich ReflectionPadding2D wie folgt. Weitere Informationen finden Sie in der offiziellen Dokumentation .

>>> m = nn.ReflectionPad2d(2)
>>> input = torch.arange(9, dtype=torch.float).reshape(1, 1, 3, 3)
>>> input
tensor([[[[0., 1., 2.],
          [3., 4., 5.],
          [6., 7., 8.]]]])
>>> m(input)
tensor([[[[8., 7., 6., 7., 8., 7., 6.],
          [5., 4., 3., 4., 5., 4., 3.],
          [2., 1., 0., 1., 2., 1., 0.],
          [5., 4., 3., 4., 5., 4., 3.],
          [8., 7., 6., 7., 8., 7., 6.],
          [5., 4., 3., 4., 5., 4., 3.],
          [2., 1., 0., 1., 2., 1., 0.]]]])
>>> # using different paddings for different sides
>>> m = nn.ReflectionPad2d((1, 1, 2, 0))
>>> m(input)
tensor([[[[7., 6., 7., 8., 7.],
          [4., 3., 4., 5., 4.],
          [1., 0., 1., 2., 1.],
          [4., 3., 4., 5., 4.],
          [7., 6., 7., 8., 7.]]]])

offizielle Dokumentation zu pytorch https://pytorch.org/docs/stable/nn.html

Wenn Sie versuchen, dies mit Tensorflow zu erreichen, verwenden Sie das Tensorflow-Pad. (Es ist in offizieller Dokumentation geschrieben ...) Ich habe einen Artikel geschrieben, weil ich ihn nicht aus dem Weg räumen konnte.

tf.pad(
    tensor,
    paddings,
    mode='REFLECT',
    constant_values=0,
    name=None
)

Ein Beispiel ist wie folgt.

t = tf.constant([[1, 2, 3], [4, 5, 6]])
paddings = tf.constant([[1, 1,], [2, 2]])
tf.pad(t, paddings, "REFLECT")  
# [[6, 5, 4, 5, 6, 5, 4],
#  [3, 2, 1, 2, 3, 2, 1],
#  [6, 5, 4, 5, 6, 5, 4],
#  [3, 2, 1, 2, 3, 2, 1]]

Aus den beiden oben genannten Beispielen offizielles Dokument https://www.tensorflow.org/api_docs/python/tf/pad

Recommended Posts

Erzielen Sie mit Tensorflow eine Pytorch-Reflexionspolsterung
Spiele mit PyTorch
Kreuzvalidierung mit PyTorch
Beginnend mit PyTorch
Zundokokiyoshi mit TensorFlow
Brechen Sie Blöcke mit Tensorflow
Verwenden Sie RTX 3090 mit PyTorch
Daten mit TensorFlow lesen
Bootsrennen Vorhersage mit TensorFlow
Installieren Sie Fackelstreuung mit PyTorch 1.7
Versuchen Sie eine Regression mit TensorFlow
Übersetzen Erste Schritte mit TensorFlow
Versuchen Sie es mit TensorFlow
Verwenden Sie TensorFlow mit Intellij IDEA
Ungefähre Sinusfunktion mit TensorFlow
Versuchen Sie Auto Encoder mit Pytorch
Versuchen Sie, XOR mit PyTorch zu implementieren
Implementieren Sie PyTorch + GPU mit Docker
Aktienkursprognose mit Tensorflow
Vorhersage des Nikkei-Durchschnitts mit Pytorch 2
Maschinelles Lernen Minesweeper mit PyTorch
Vorhersage des Nikkei-Durchschnitts mit Pytorch
Führen Sie mit PyTorch eine geschichtete Aufteilung durch
Ich habe Word2Vec mit Pytorch gemacht
Erreiche "Bals" mit Amazon Echo