Norme de lots

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

  • axe

    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

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

    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.

  • Renvoie le résultat obtenu en appliquant le calque à l’entrée donnée.

    Déclaration

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

    Paramètres

    input

    L'entrée dans le calque.

    Valeur de retour

    Le résultat.

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