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