Conv3D

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

Una capa de convolución 3-D para convolución espacial / espacio-temporal sobre imágenes.

Esta capa crea un filtro de convolución que se convoluciona con la entrada de la capa para producir un tensor de salidas.

  • El filtro de convolución 5-D.

    Declaración

    public var filter: Tensor<Scalar>
  • El vector de sesgo.

    Declaración

    public var bias: Tensor<Scalar>
  • La función de activación por elementos.

    Declaración

    @noDerivative
    public let activation: Activation
  • Los pasos de la ventana deslizante para dimensiones espaciales.

    Declaración

    @noDerivative
    public let strides: (Int, Int, Int)
  • El algoritmo de relleno para convolución.

    Declaración

    @noDerivative
    public let padding: Padding
  • El factor de dilatación para las dimensiones espaciales / espaciotemporales.

    Declaración

    @noDerivative
    public let dilations: (Int, Int, Int)
  • El tipo de función de activación por elementos.

    Declaración

    public typealias Activation = @differentiable (Tensor<Scalar>) -> Tensor<Scalar>
  • Crea un Conv3D capa con el filtro especificado, el sesgo, la función de activación, zancadas, y el relleno.

    Declaración

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

    Parámetros

    filter

    El filtro de convolución 5-D de forma [profundidad del filtro, altura del filtro, ancho del filtro, recuento del canal de entrada, recuento del canal de salida].

    bias

    El vector de polarización de la forma [recuento de canales de salida].

    activation

    La función de activación por elementos.

    strides

    Las zancadas de la ventana deslizante para las dimensiones espaciales, es decir (profundidad de zancada, altura de zancada, ancho de zancada)

    padding

    El algoritmo de relleno para convolución.

    dilations

    El factor de dilatación de las dimensiones espaciales / espaciotemporales.

  • Devuelve la salida obtenida al aplicar la capa a la entrada dada.

    Las dimensiones espaciales de salida se calculan como:

    profundidad de salida = (profundidad de entrada + 2 * profundidad de relleno - (profundidad de dilatación * (profundidad de filtro - 1) + 1)) / profundidad de zancada + 1

    altura de salida = (altura de entrada + 2 * altura de relleno - (altura de dilatación * (altura de filtro - 1) + 1)) / altura de zancada + 1

    ancho de salida = (ancho de entrada + 2 * ancho de relleno - (ancho de dilatación * (ancho de filtro - 1) + 1)) / ancho de zancada + 1

    y los tamaños de acolchado están determinados por el esquema de acolchado.

    Nota

    Relleno tamaño es igual a cero cuando se utiliza .valid .

    Declaración

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

    Parámetros

    input

    La entrada a la capa de forma [recuento de lotes, profundidad de entrada, altura de entrada, ancho de entrada, recuento de canales de entrada].

    Valor devuelto

    La salida de forma [recuento de lotes, profundidad de salida, altura de salida, ancho de salida, recuento de canales de salida].

  • Crea un Conv3D capa con el filtro de forma, zancadas, relleno, dilataciones especificados y la función de activación de elemento a elemento. El tensor del filtro se inicializa mediante la inicialización uniforme de Glorot con la semilla especificada. El vector de sesgo se inicializa con ceros.

    Declaración

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

    Parámetros

    filterShape

    La forma del filtro de convolución 5-D, que representa (profundidad del filtro, altura del filtro, ancho del filtro, recuento de canales de entrada, recuento de canales de salida).

    strides

    Las zancadas de la ventana deslizante para las dimensiones espaciales, es decir (profundidad de zancada, altura de zancada, ancho de zancada)

    padding

    El algoritmo de relleno para convolución.

    dilations

    El factor de dilatación de las dimensiones espaciales / espaciotemporales.

    activation

    La función de activación por elementos.

    filterInitializer

    Inicializador que se utilizará para los parámetros del filtro.

    biasInitializer

    Inicializador que se utilizará para los parámetros de polarización.