Ich bin auf der Suche nach einer Möglichkeit, eine Funktion zu schreiben, die zwei Theano Ausdrücke a
und b
und tut elementweise Operation (sagen wir Addition) auf ihnen, so dass dimensions(a + b) = dimensions(a) + dimenisons(b)
.Operation in theano, die immer Dimensionen hinzufügt
In meinem Fall wird a
eine Dimension haben und b
wird zwei oder drei haben.
Ich dachte über etwas wie a.dimshuffle('x', 'x', 0) + a.dimshuffle(0, 1, 'x')
für 2 dimensionale b
, aber ich weiß nicht, wie man die Anzahl der Dimensionen davon bekommen. b.shape
ist ein Theano-Ausdruck und unterstützt len()
nicht.
End Ziel, dies ist ein Abstand von Linienzug an mehreren Punkten zu berechnen, wird diese Technik mehrfach verwendet werden, wo a
Form haben (number_of_control_points,)
und b
werden die 2D- oder 3D-Raster Abtastpunkte sein, bei der Koordinaten ich werde beurteile die Entfernung.
Kann ich die Anzahl der Dimensionen eines Ausdrucks als regulären Python-Wert abrufen, ohne den Ausdruck zu bewerten?
Alternative Frage: Gibt es eine Möglichkeit, die Operation direkt ohne explizite Dim-Swuffle durchzuführen?