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