2017-03-29 2 views
3

Ich möchte meine eigene Faltungsfunktion in Tensorflow verwenden. Ich habe das mit numpy implementiert. Wie würde ich den Code in Tensorflow-Format konvertieren (dynamische Eingaben in Computational Graph).benutzerdefinierte Faltungsfunktion in Tensorflow

Gegenwärtig nimmt meine Funktion ein 2d numpy Array als Eingabe und erzeugt ein 3d numpy Array (Höhe, Breite und Ausgangskanäle). Wie kann ich alle Eingabebilder durchlaufen?

+0

Haben Sie einen Weg finden, dies zu tun? Ich probiere etwas Ähnliches aus und bin auch an einer Stelle in meiner Kernel-Implementierung steckengeblieben. Ich würde gerne mehr wissen, wie du das gelöst hast. –

Antwort

0

Was Sie wollen, macht keinen Sinn. Faltung ist eine mathematical operation, die in einer bestimmten Weise definiert ist. Es wird leicht in N-Dimensionen erweitert und in einen diskreten Fall umgewandelt (durch Summieren statt Integration), deshalb hat TF conv1d, conv2d und allgemeine n-dim Faltung.

Es ist also unmöglich, my own convolution function auf die gleiche Weise zu definieren, wie Sie Ihre eigene Matrixmultiplikationsfunktion nicht definieren können, denn wenn es die Werte nicht genau auf die gleiche Weise berechnet, wird es keine Faltungsfunktion mehr sein.


Nun, wenn Sie Ihre eigenen Betrieb definieren möchten, sollten Sie einen Blick auf die official documentation how to define it nehmen. In wenigen Worten:

  • die op erstellen mit bereits geschriebenen Funktionen
  • Schreib Sachen in C++
Verwandte Themen