Norma de lote

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

Uma camada de normalização em lote.

Normaliza as ativações da camada anterior a cada lote, ou seja, aplica uma transformação que mantém a ativação média próxima de 0 e o desvio padrão de ativação próximo de 1 .

Referência: Normalização em lote: acelerando o treinamento profundo da rede reduzindo o deslocamento interno de covariáveis ​​.

  • A dimensão do recurso.

    Declaração

    @noDerivative
    public let axis: Int
  • O impulso para a média e a variância contínua.

    Declaração

    @noDerivative
    public let momentum: Scalar
  • O valor de deslocamento, também conhecido como beta.

    Declaração

    public var offset: Tensor<Scalar>
  • O valor da escala, também conhecido como gama.

    Declaração

    public var scale: Tensor<Scalar>
  • O valor épsilon da variância.

    Declaração

    @noDerivative
    public let epsilon: Scalar
  • A média de corrida.

    Declaração

    @noDerivative
    public var runningMean: Parameter<Scalar>
  • A variação em execução.

    Declaração

    @noDerivative
    public var runningVariance: Parameter<Scalar>
  • Cria uma camada de normalização em lote.

    Declaração

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

    Parâmetros

    axis

    O eixo que não deve ser normalizado (normalmente o eixo do recurso).

    momentum

    O impulso para a média móvel.

    offset

    O deslocamento a ser adicionado ao tensor normalizado.

    scale

    A escala pela qual multiplicar o tensor normalizado.

    epsilon

    Um pequeno escalar adicionado ao denominador para melhorar a estabilidade numérica.

    runningMean

    A média de corrida.

    runningVariance

    A variação em execução.

  • Retorna a saída obtida ao aplicar a camada à entrada fornecida.

    Declaração

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

    Parâmetros

    input

    A entrada para a camada.

    Valor de retorno

    A saída.

  • Cria uma camada de normalização em lote.

    Declaração

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

    Parâmetros

    featureCount

    O número de recursos.

    axis

    O eixo que deve ser normalizado (normalmente o eixo dos recursos).

    momentum

    O impulso para a média móvel.

    epsilon

    Um pequeno escalar adicionado ao denominador para melhorar a estabilidade numérica.