Conv2D

@frozen
public struct Conv2D<Scalar> : Layer where Scalar : TensorFlowFloatingPoint

Uno strato di convoluzione 2D (ad esempio, convoluzione spaziale sulle immagini).

Questo livello crea un filtro di convoluzione che viene convoluto con l'input del livello per produrre un tensore di output.

  • Il filtro di convoluzione 4-D.

    Dichiarazione

    public var filter: Tensor<Scalar>
  • Il vettore di polarizzazione.

    Dichiarazione

    public var bias: Tensor<Scalar>
  • La funzione di attivazione per elemento.

    Dichiarazione

    @noDerivative
    public let activation: Activation
  • I passi avanti della finestra scorrevole per le dimensioni spaziali.

    Dichiarazione

    @noDerivative
    public let strides: (Int, Int)
  • L'algoritmo di riempimento per la convoluzione.

    Dichiarazione

    @noDerivative
    public let padding: Padding
  • Il fattore di dilatazione per le dimensioni spaziali.

    Dichiarazione

    @noDerivative
    public let dilations: (Int, Int)
  • Il tipo di funzione di attivazione per elemento.

    Dichiarazione

    public typealias Activation = @differentiable (Tensor<Scalar>) -> Tensor<Scalar>
  • Crea un layer Conv2D con il filtro, il bias, la funzione di attivazione, i passi, le dilatazioni e il riempimento specificati.

    Dichiarazione

    public init(
      filter: Tensor<Scalar>,
      bias: Tensor<Scalar>? = nil,
      activation: @escaping Activation = identity,
      strides: (Int, Int) = (1, 1),
      padding: Padding = .valid,
      dilations: (Int, Int) = (1, 1)
    )

    Parametri

    filter

    Il filtro di convoluzione 4-D della forma [altezza del filtro, larghezza del filtro, conteggio dei canali di input, conteggio dei canali di output].

    bias

    Il vettore di polarizzazione della forma [conteggio dei canali di uscita].

    activation

    La funzione di attivazione per elemento.

    strides

    I passi della finestra scorrevole per le dimensioni spaziali, ovvero (altezza del passo, larghezza del passo).

    padding

    L'algoritmo di riempimento per la convoluzione.

    dilations

    I fattori di dilatazione per le dimensioni spaziali, ovvero (altezza di dilatazione, larghezza di dilatazione).

  • Restituisce l'output ottenuto dall'applicazione del livello all'input specificato.

    Le dimensioni spaziali di output sono calcolate come:

    altezza output = (altezza input + 2 * altezza imbottitura - (altezza dilatazione * (altezza filtro - 1) + 1)) / altezza passo + 1

    larghezza output = (larghezza input + 2 * larghezza imbottitura - (larghezza dilatazione * (larghezza filtro - 1) + 1)) / larghezza passo + 1

    e le dimensioni del riempimento sono determinate dallo schema di riempimento.

    Nota

    La dimensione del riempimento è uguale a zero quando si utilizza .valid .

    Dichiarazione

    @differentiable
    public func forward(_ input: Tensor<Scalar>) -> Tensor<Scalar>

    Parametri

    input

    L'input al livello della forma [dimensione batch, altezza input, larghezza input, conteggio canali input].

    Valore restituito

    L'output della forma [conteggio batch, altezza di output, larghezza di output, conteggio dei canali di output].

  • Crea un livello Conv2D con la forma del filtro, i passi, il riempimento, le dilatazioni e la funzione di attivazione per elemento specificati.

    Dichiarazione

    public init(
      filterShape: (Int, Int, Int, Int),
      strides: (Int, Int) = (1, 1),
      padding: Padding = .valid,
      dilations: (Int, Int) = (1, 1),
      activation: @escaping Activation = identity,
      useBias: Bool = true,
      filterInitializer: ParameterInitializer<Scalar> = glorotUniform(),
      biasInitializer: ParameterInitializer<Scalar> = zeros()
    )

    Parametri

    filterShape

    La forma del filtro di convoluzione 4-D, che rappresenta (altezza del filtro, larghezza del filtro, conteggio dei canali di input, conteggio dei canali di output).

    strides

    I passi della finestra scorrevole per le dimensioni spaziali, ovvero (altezza del passo, larghezza del passo).

    padding

    L'algoritmo di riempimento per la convoluzione.

    dilations

    I fattori di dilatazione per le dimensioni spaziali, ovvero (altezza di dilatazione, larghezza di dilatazione).

    activation

    La funzione di attivazione per elemento.

    filterInitializer

    Inizializzatore da utilizzare per i parametri del filtro.

    biasInitializer

    Inizializzatore da utilizzare per i parametri di bias.