@frozen
public struct BatchNorm<Scalar> : Layer where Scalar : TensorFlowFloatingPoint
Une couche de normalisation par lots.
Normalise les activations de la couche précédente à chaque lot, c'est à dire applique une transformation qui maintient l'activation moyenne proche de 0
et l'écart type d'activation proche de 1
.
Référence : Normalisation par lots : accélérer la formation approfondie du réseau en réduisant le décalage des covariables internes .
La dimension des fonctionnalités.
Déclaration
@noDerivative public let axis: Int
L'élan pour la moyenne courante et la variance courante.
Déclaration
@noDerivative public let momentum: Scalar
La valeur de décalage, également appelée bêta.
Déclaration
public var offset: Tensor<Scalar>
La valeur d'échelle, également connue sous le nom de gamma.
Déclaration
public var scale: Tensor<Scalar>
La valeur epsilon de la variance.
Déclaration
@noDerivative public let epsilon: Scalar
La moyenne courante.
Déclaration
@noDerivative public var runningMean: Parameter<Scalar>
La variance courante.
Déclaration
@noDerivative public var runningVariance: Parameter<Scalar>
Crée une couche de normalisation par lots.
Déclaration
Paramètres
axis
L'axe qui ne doit pas être normalisé (généralement l'axe des caractéristiques).
momentum
L'élan de la moyenne mobile.
offset
Le décalage à ajouter au tenseur normalisé.
scale
L'échelle par laquelle multiplier le tenseur normalisé.
epsilon
Un petit scalaire ajouté au dénominateur pour améliorer la stabilité numérique.
runningMean
La moyenne courante.
runningVariance
La variance courante.
Crée une couche de normalisation par lots.
Déclaration
public init( featureCount: Int, axis: Int = -1, momentum: Scalar = 0.99, epsilon: Scalar = 0.001 )
Paramètres
featureCount
Le nombre de fonctionnalités.
axis
L'axe qui doit être normalisé (généralement l'axe des caractéristiques).
momentum
L'élan de la moyenne mobile.
epsilon
Un petit scalaire ajouté au dénominateur pour améliorer la stabilité numérique.