public protocol Layer : Module where Self.Input : Differentiable
שכבת רשת עצבית.
סוגים התואמים Layer
מייצגים פונקציות הממפות קלט לפלטים. ייתכן שיש להם מצב פנימי המיוצג על ידי פרמטרים, כגון טנסור משקל.
מופעי Layer
מגדירים שיטת callAsFunction(_:)
הניתנת להפרדה למיפוי קלט ליציאות.
מחזירה את הפלט המתקבל מהחלת השכבה על הקלט הנתון.
הַצהָרָה
@differentiable func callAsFunction(_ input: Input) -> Output
פרמטרים
input
הקלט לשכבה.
ערך החזרה
הפלט.
יישום ברירת מחדל
הַצהָרָה
@differentiable func forward(_ input: Input) -> Output
מחזירה את פלט ההסקה המתקבל מהחלת השכבה על הקלט הנתון.
הַצהָרָה
public func inferring(from input: Input) -> Output
פרמטרים
input
הקלט לשכבה.
ערך החזרה
פלט ההסקה.
הַצהָרָה
public typealias Backpropagator = (_ direction: Output.TangentVector) -> (layerGradient: TangentVector, inputGradient: Input.TangentVector)
מחזירה את פלט ההסקה ואת פונקציית ההפצה האחורית המתקבלת מהחלת השכבה על הקלט הנתון.
הַצהָרָה
public func appliedForBackpropagation(to input: Input) -> (output: Output, backpropagator: Backpropagator)
פרמטרים
input
הקלט לשכבה.
ערך החזרה
טופל המכיל את הפלט ואת פונקציית ההפצה לאחור. פונקציית ההפצה האחורית (הידוע גם בפיגור חוזר) לוקחת וקטור כיוון ומחזירה את ההדרגות בשכבה ובקלט, בהתאמה.
יישום ברירת מחדל
הַצהָרָה
@differentiable(wrt: self) @differentiable public func callAsFunction(_ input: Input) -> Output