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ı.
Varsayılan Uygulama
beyan
@differentiable func forward(_ input: Input) -> Output
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ı.
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.
Varsayılan Uygulama
beyan
@differentiable(wrt: self) @differentiable public func callAsFunction(_ input: Input) -> Output