EuklidischDifferenzierbar

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
public protocol EuclideanDifferentiable : Differentiable

Ein Typ, der im euklidischen Raum differenzierbar ist. Der Typ kann einen Vektorraum darstellen oder aus einem Vektorraum und einer anderen nicht differenzierbaren Komponente bestehen.

Mathematisch stellt dies einen Produktverteiler dar, der aus einem differenzierbaren Vektorraum und einem beliebigen Verteiler besteht, wobei das Tangentenbündel des gesamten Produktverteilers gleich der Vektorraumkomponente ist.

Diese Abstraktion ist nützlich, um gemeinsame differenzierbare Datenstrukturen darzustellen, die sowohl differenzierbare Vektoreigenschaften als auch andere gespeicherte Eigenschaften enthalten, die keine Ableitung haben, z

struct Perceptron: @memberwise EuclideanDifferentiable {
    var weight: SIMD16<Float>
    var bias: Float
    @noDerivative var useBias: Bool
}

Hinweis

Konformieren Sie einen Typ mit EuclideanDifferentiable wenn er nur in Bezug auf seine Vektorraumkomponente TangentVector ist und wenn sein TangentVector gleich seiner Vektorraumkomponente ist.
  • Die differenzierbare Vektorkomponente des self .

    Erklärung

    var differentiableVectorView: TangentVector { get }