[PYTHON] [Pytorch] Verwendung von einsum zur Erleichterung des Matrixprodukts (Tensor)

Wenn Sie den Artikel lesen und Vorschläge haben, können Sie sich gerne an uns wenden. Es wird ermutigend sein, wenn Sie ein "Gefällt mir" bekommen können.

Was ist einsum?

--einsum ist Einsteins Abkürzungsnotation, die in numpy und pytorch implementiert ist. (Ich wusste nicht, wie ich es auf Japanisch so nennen sollte.) ――Es ermöglicht es, komplizierte Tensorproduktoperationen sehr absichtlich durchzuführen.

Hintergrund

Kommentar

Muster 1

Berechnungen, die dazu neigen, tief zu lernen

import torch as t
X = t.rand(3,10,5)
Y = t.rand(3,20,5)

--Mini Batch ist $ 3 $

In einem solchen Fall möchte ich das Produkt jeder Matrix in der Mini-Charge berechnen und die Matrix mit der Größe von $ 10 \ times20 $ berechnen. Und Sie können es als Stapel zurückgeben.

t.einsum('bnm,bkm->bnk',X,Y).size()                      
>> torch.Size([3, 10, 20])
t.einsum('bnm,bkm->bkn',X,Y).size()                      
>> torch.Size([3, 20, 10])

Muster 2

Sie können auch das Produkt einer Matrix und eines Vektors berechnen. einfach.

X = t.rand(3,10,5)                                       
Y = t.rand(3,5)                                          
t.einsum('bnm,bm->bn',X,Y).size()                        
>> torch.Size([3, 10])

Zusammenfassung

Recommended Posts

[Pytorch] Verwendung von einsum zur Erleichterung des Matrixprodukts (Tensor)
Berechnen Sie das Produkt von Matrizen mit einem Zeichenausdruck?
[Pytorch] Ich möchte die Trainingsparameter des Modells manuell zuweisen
Ergänzung zur Erklärung von vscode
Die Geschichte des Versuchs, den Client wieder zu verbinden
Skript zum Ändern der Beschreibung von Fasta
10 Methoden zur Verbesserung der Genauigkeit von BERT
So überprüfen Sie die Version von Django
Die Geschichte, MeCab in Ubuntu 16.04 zu setzen
Grundlagen von PyTorch (1) - Verwendung von Tensor-
Ich möchte PyTorch verwenden, um so etwas wie den Text von Japari Park zu generieren
Ändern Sie den Datenrahmen der Pandas-Kaufdaten (ID x Produkt) in ein Wörterbuch