tensoreflusso:: ops:: Conv2D

#include <nn_ops.h>

Calcola una convoluzione 2D dato input 4D e tensori filter .

Riepilogo

Dato un tensore di input di forma [batch, in_height, in_width, in_channels] e un tensore di forma filtro/kernel [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 patch di immagini 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 del 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 . Per il caso più comune degli stessi passi orizzontali e vertici, strides = [1, stride, stride, 1] .

Argomenti:

  • scope: un oggetto Scope
  • input: un tensore 4-D. L'ordine delle dimensioni viene interpretato in base al valore di data_format , vedere di seguito per i dettagli.
  • filter: un tensore di forma 4-D [filter_height, filter_width, in_channels, out_channels]
  • passi: tensore 1-D di lunghezza 4. Il passo della finestra scorrevole per ogni dimensione di input . L'ordine delle dimensioni è determinato dal valore di data_format , vedi sotto per i dettagli.
  • riempimento: il tipo di algoritmo di riempimento da utilizzare.

Attributi facoltativi (vedi Attrs ):

  • esplicitamente_paddings: se padding è "EXPLICIT" , l'elenco degli importi di riempimento espliciti. Per la i-esima dimensione, la quantità di riempimento 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 di: [lotto, altezza, larghezza, canali]. In alternativa, il formato potrebbe essere "NCHW", l'ordine di archiviazione dei dati di: [batch, canali, altezza, larghezza].
  • dilatazioni: tensore 1-D di lunghezza 4. Il fattore di dilatazione per ciascuna dimensione di input . Se impostato su k > 1, ci saranno k-1 celle saltate tra ciascun elemento filtro su quella dimensione. L'ordine delle dimensioni è determinato dal valore di data_format , vedi sopra per i dettagli. Le dilatazioni delle dimensioni del lotto e della profondità devono essere pari a 1.

Ritorna:

  • Output : un tensore 4-D. 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 pubbliche statiche

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

Strutture

tensorflow:: ops:: Conv2D:: Attrs

Setter di attributi facoltativi 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::tensorflow::Output

 operator::tensorflow::Output() const 

Funzioni pubbliche statiche

Formato dei dati

Attrs DataFormat(
  StringPiece x
)

Dilatazioni

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

Imbottiture esplicite

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

Utilizzare CudnnOnGpu

Attrs UseCudnnOnGpu(
  bool x
)