Katman

public protocol Layer : Module where Self.Input : Differentiable

Bir sinir ağı katmanı.

Layer uygun türler, girdileri çıktılarla eşleyen işlevleri temsil eder. Ağırlık tensörleri gibi parametrelerle temsil edilen bir iç duruma sahip olabilirler.

Layer örnekleri, girişleri çıkışlarla eşlemek için ayırt edilebilir bir callAsFunction(_:) yöntemini tanımlar.

  • Katmanın verilen girişe uygulanmasıyla elde edilen çıktıyı döndürür.

    beyan

    @differentiable
    func callAsFunction(_ input: Input) -> Output

    Parametreler

    input

    Katmanın girişi.

    Dönüş Değeri

    Çıktı.

  • ileri(_:) Varsayılan uygulama

    Varsayılan Uygulama

    beyan

    @differentiable
    func forward(_ input: Input) -> Output
  • çıkarsama (dan:) Uzatma yöntemi

    Katmanın verilen girişe uygulanmasıyla elde edilen çıkarım çıktısını döndürür.

    beyan

    public func inferring(from input: Input) -> Output

    Parametreler

    input

    Katmanın girişi.

    Dönüş Değeri

    Çıkarım çıktısı.

  • Geri yayılımcı Uzatma yöntemi

    beyan

    public typealias Backpropagator = (_ direction: Output.TangentVector)
      -> (layerGradient: TangentVector, inputGradient: Input.TangentVector)
  • Katmanın verilen girişe uygulanmasıyla elde edilen çıkarım çıktısını ve geri yayılım fonksiyonunu döndürür.

    beyan

    public func appliedForBackpropagation(to input: Input)
      -> (output: Output, backpropagator: Backpropagator)

    Parametreler

    input

    Katmanın girişi.

    Dönüş Değeri

    Çıktıyı ve geri yayılım fonksiyonunu içeren bir tanımlama grubu. Geri yayılım işlevi (diğer adıyla geri yayılımcı) bir yön vektörü alır ve sırasıyla katmandaki ve girişteki gradyanları döndürür.

`Giriş`: `FarklıTensorProtokol`, `Çıkış`: `FarklıTensorProtokol` olduğu yerde kullanılabilir
  • callAsFunction(_:) Varsayılan uygulama

    Varsayılan Uygulama

    beyan

    @differentiable(wrt: self)
    @differentiable
    public func callAsFunction(_ input: Input) -> Output