@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
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.
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.