Tensorflow :: ops :: FusedResizeAndPadConv2D
#include <nn_ops.h>
Führt während einer Faltung eine Größenänderung und ein Auffüllen als Vorprozess durch.
Zusammenfassung
Es ist oft möglich, räumliche Transformationen als Teil der Packungsphase einer Faltung effizienter durchzuführen, sodass diese Operation eine optimierte Implementierung ermöglicht, bei der diese Phasen miteinander verschmolzen sind. Dies verhindert, dass die Zwischenergebnisse als ganze Tensoren geschrieben werden müssen, wodurch der Speicherdruck verringert wird, und wir können durch Zusammenführen der Transformationsberechnungen einige Latenzgewinne erzielen. Das Attribut data_format für Conv2D wird von dieser Operation nicht unterstützt und ist standardmäßig in der Reihenfolge 'NHWC'. Intern verwendet diese Operation einen einzelnen Scratch-Puffer pro Grafik, was bedeutet, dass sie blockiert wird, wenn mehrere Versionen gleichzeitig ausgeführt werden. Dies liegt daran, dass dieser Operator in erster Linie eine Optimierung zur Minimierung der Speichernutzung darstellt.
Argumente:
- scope: Ein Scope- Objekt
- Eingabe: 4-D mit Form
[batch, in_height, in_width, in_channels]
. - Größe: Ein 1-D int32 Tensor mit 2 Elementen:
new_height, new_width
. Die neue Größe für die Bilder. - Auffüllungen: Eine zweispaltige Matrix, die die Auffüllgrößen angibt. Die Anzahl der Zeilen muss dem Rang der
input
. - Filter: 4-D mit Form
[filter_height, filter_width, in_channels, out_channels]
. - Schritte: 1-D der Länge 4. Der Schritt des Schiebefensters für jede
input
. Muss in derselben Reihenfolge wie die mit dem Format angegebene Dimension sein. - padding: Die Art des zu verwendenden Auffüllalgorithmus.
Optionale Attribute (siehe Attrs
):
- resize_align_corners: Wenn true, werden die Zentren der 4 Eckpixel der Eingangs- und Ausgangstensoren ausgerichtet, wobei die Werte an den Eckpixeln erhalten bleiben. Der Standardwert ist false.
Kehrt zurück:
-
Output
: Der Ausgangstensor.
Konstruktoren und Destruktoren | |
---|---|
FusedResizeAndPadConv2D (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input size, :: tensorflow::Input paddings, :: tensorflow::Input filter, StringPiece mode, const gtl::ArraySlice< int > & strides, StringPiece padding) | |
FusedResizeAndPadConv2D (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input size, :: tensorflow::Input paddings, :: tensorflow::Input filter, StringPiece mode, const gtl::ArraySlice< int > & strides, StringPiece padding, const FusedResizeAndPadConv2D::Attrs & attrs) |
Öffentliche Attribute | |
---|---|
operation | |
output |
Öffentliche Funktionen | |
---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const |
Öffentliche statische Funktionen | |
---|---|
ResizeAlignCorners (bool x) |
Strukturen | |
---|---|
tensorflow :: ops :: FusedResizeAndPadConv2D :: Attrs | Optionale Attributsetzer für FusedResizeAndPadConv2D . |
Öffentliche Attribute
Operation
Operation operation
Ausgabe
::tensorflow::Output output
Öffentliche Funktionen
FusedResizeAndPadConv2D
FusedResizeAndPadConv2D( const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input size, ::tensorflow::Input paddings, ::tensorflow::Input filter, StringPiece mode, const gtl::ArraySlice< int > & strides, StringPiece padding )
FusedResizeAndPadConv2D
FusedResizeAndPadConv2D( const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input size, ::tensorflow::Input paddings, ::tensorflow::Input filter, StringPiece mode, const gtl::ArraySlice< int > & strides, StringPiece padding, const FusedResizeAndPadConv2D::Attrs & attrs )
Knoten
::tensorflow::Node * node() const
operator :: tensorflow :: Input
operator::tensorflow::Input() const
operator :: tensorflow :: Output
operator::tensorflow::Output() const
Öffentliche statische Funktionen
ResizeAlignCorners
Attrs ResizeAlignCorners( bool x )