Norma de lote

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

Una capa de normalización por lotes.

Normaliza las activaciones de la capa anterior en cada lote, es decir, aplica una transformación que mantiene la activación media cercana a 0 y la desviación estándar de activación cercana a 1 .

Referencia: Normalización de lotes: aceleración del entrenamiento profundo de la red reduciendo el cambio de covariables interno .

  • eje

    La dimensión característica.

    Declaración

    @noDerivative
    public let axis: Int
  • El impulso para la media móvil y la varianza móvil.

    Declaración

    @noDerivative
    public let momentum: Scalar
  • El valor de compensación, también conocido como beta.

    Declaración

    public var offset: Tensor<Scalar>
  • El valor de escala, también conocido como gamma.

    Declaración

    public var scale: Tensor<Scalar>
  • El valor épsilon de varianza.

    Declaración

    @noDerivative
    public let epsilon: Scalar
  • El medio corriendo.

    Declaración

    @noDerivative
    public var runningMean: Parameter<Scalar>
  • La variación en ejecución.

    Declaración

    @noDerivative
    public var runningVariance: Parameter<Scalar>
  • Crea una capa de normalización por lotes.

    Declaración

    public init(
      axis: Int,
      momentum: Scalar,
      offset: Tensor<Scalar>,
      scale: Tensor<Scalar>,
      epsilon: Scalar,
      runningMean: Tensor<Scalar>,
      runningVariance: Tensor<Scalar>
    )

    Parámetros

    axis

    El eje que no debe normalizarse (normalmente el eje de características).

    momentum

    El impulso de la media móvil.

    offset

    El desplazamiento que se agregará al tensor normalizado.

    scale

    La escala por la que multiplicar el tensor normalizado.

    epsilon

    Un pequeño escalar agregado al denominador para mejorar la estabilidad numérica.

    runningMean

    El medio corriendo.

    runningVariance

    La variación en ejecución.

  • Devuelve el resultado obtenido al aplicar la capa a la entrada dada.

    Declaración

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

    Parámetros

    input

    La entrada a la capa.

    Valor de retorno

    La salida.

  • Crea una capa de normalización por lotes.

    Declaración

    public init(
      featureCount: Int,
      axis: Int = -1,
      momentum: Scalar = 0.99,
      epsilon: Scalar = 0.001
    )

    Parámetros

    featureCount

    El número de características.

    axis

    El eje que debe normalizarse (normalmente el eje de características).

    momentum

    El impulso de la media móvil.

    epsilon

    Un pequeño escalar agregado al denominador para mejorar la estabilidad numérica.