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)
ส่งคืนเอาต์พุตการอนุมานและฟังก์ชัน backpropagation ที่ได้รับจากการใช้เลเยอร์กับอินพุตที่กำหนด
คำประกาศ
public func appliedForBackpropagation(to input: Input) -> (output: Output, backpropagator: Backpropagator)
พารามิเตอร์
input
อินพุตไปยังเลเยอร์
ค่าส่งคืน
สิ่งอันดับที่มีเอาต์พุตและฟังก์ชัน backpropagation ฟังก์ชัน backpropagation (aka backpropagator) ใช้เวกเตอร์ทิศทางและส่งกลับการไล่ระดับสีที่เลเยอร์และที่อินพุตตามลำดับ
การใช้งานเริ่มต้น
คำประกาศ
@differentiable(wrt: self) @differentiable public func callAsFunction(_ input: Input) -> Output