tensorflow:: ops:: Conv2D

#include <nn_ops.h>

Esegue una convoluzione 2D a partire da tensori input e filter 4D.

Riepilogo

Dato un tensore di input di forma [batch, in_height, in_width, in_channels] e un tensore di filtro/kernel di forma [filter_height, filter_width, in_channels, out_channels] , questa operazione esegue quanto segue:

  1. Appiattisce il filtro in una matrice 2D con forma [filter_height * filter_width * in_channels, output_channels] .
  2. Estrae porzioni di immagine dal tensore di input per formare un tensore virtuale di forma [batch, out_height, out_width, filter_height * filter_width * in_channels] .
  3. Per ogni patch, moltiplica a destra la matrice del filtro e il vettore della patch dell'immagine.

Nel dettaglio, con il formato NHWC predefinito,

output[b, i, j, k] =
    sum_{di, dj, q} input[b, strides[1] * i + di, strides[2] * j + dj, q] *
                    filter[di, dj, q, k]

Deve avere strides[0] = strides[3] = 1 Nel caso più comune di strides orizzontali e dei vertici uguali, strides = [1, stride, stride, 1] .

Argomentazioni:

  • ambito: un oggetto Scope
  • Input: un tensore 4D. L'ordine delle dimensioni viene interpretato in base al valore di data_format , vedi sotto per i dettagli.
  • filtro: un tensore 4D di forma [filter_height, filter_width, in_channels, out_channels]
  • strides: tensore 1D di lunghezza 4. Lo stride della finestra scorrevole per ciascuna dimensione input . L'ordine delle dimensioni è determinato dal valore di data_format , vedere di seguito per i dettagli.
  • padding: Il tipo di algoritmo di padding da utilizzare.

Attributi opzionali (vedere Attrs ):

  • explicit_paddings: Se padding è "EXPLICIT" , l'elenco delle quantità di padding esplicito. Per la i-esima dimensione, la quantità di padding inserita prima e dopo la dimensione è rispettivamente explicit_paddings[2 * i] e explicit_paddings[2 * i + 1] . Se padding non è "EXPLICIT" , explicit_paddings deve essere vuoto.
  • data_format: Specifica il formato dei dati di input e output. Con il formato predefinito "NHWC", i dati vengono memorizzati nell'ordine: [batch, altezza, larghezza, canali]. In alternativa, il formato potrebbe essere "NCHW", con un ordine di memorizzazione dei dati pari a: [batch, canali, altezza, larghezza].
  • dilatazioni: tensore 1-D di lunghezza 4. Il fattore di dilatazione per ogni dimensione input . Se impostato su k > 1, ci saranno k-1 celle saltate tra ogni elemento del filtro su quella dimensione. L'ordine delle dimensioni è determinato dal valore di data_format , vedere sopra per i dettagli. Le dilatazioni nelle dimensioni batch e depth devono essere 1.

Resi:

  • Output : Un tensore 4D. L'ordine delle dimensioni è determinato dal valore di data_format , vedi sotto per i dettagli.

Costruttori e distruttori

Conv2D (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input filter, const gtl::ArraySlice< int > & strides, StringPiece padding)
Conv2D (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input filter, const gtl::ArraySlice< int > & strides, StringPiece padding, const Conv2D::Attrs & attrs)

attributi pubblici

operation
output

Funzioni pubbliche

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

Funzioni statiche pubbliche

DataFormat (StringPiece x)
Dilations (const gtl::ArraySlice< int > & x)
ExplicitPaddings (const gtl::ArraySlice< int > & x)
UseCudnnOnGpu (bool x)

Strutture

tensorflow::ops::Conv2D::Attrs

Impostatori di attributi opzionali per Conv2D .

attributi pubblici

operazione

Operation operation

produzione

::tensorflow::Output output

Funzioni pubbliche

Conv2D

 Conv2D(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input filter,
  const gtl::ArraySlice< int > & strides,
  StringPiece padding
)

Conv2D

 Conv2D(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input filter,
  const gtl::ArraySlice< int > & strides,
  StringPiece padding,
  const Conv2D::Attrs & attrs
)

nodo

::tensorflow::Node * node() const 

operatore::tensorflow::Input

 operator::tensorflow::Input() const 

operatore::tensoreflusso::output

 operator::tensorflow::Output() const 

Funzioni statiche pubbliche

Formato dati

Attrs DataFormat(
  StringPiece x
)

Dilatazioni

Attrs Dilations(
  const gtl::ArraySlice< int > & x
)

ExplicitPaddings

Attrs ExplicitPaddings(
  const gtl::ArraySlice< int > & x
)

UseCudnnOnGpu

Attrs UseCudnnOnGpu(
  bool x
)