لایه

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

    ورودی لایه

    ارزش بازگشتی

    یک تاپل حاوی خروجی و تابع پس انتشار. تابع backpropagation (معروف به backpropagator) یک بردار جهت می گیرد و گرادیان ها را به ترتیب در لایه و در ورودی برمی گرداند.

در دسترس است که در آن "ورودی": "DifferentiableTensorProtocol"، "Output": "DifferentiableTensorProtocol"
  • callAsFunction(_:) اجرای پیش فرض

    پیاده سازی پیش فرض

    اعلام

    @differentiable(wrt: self)
    @differentiable
    public func callAsFunction(_ input: Input) -> Output
،
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

    ورودی لایه

    ارزش بازگشتی

    یک تاپل حاوی خروجی و تابع پس انتشار. تابع backpropagation (معروف به backpropagator) یک بردار جهت می گیرد و گرادیان ها را به ترتیب در لایه و در ورودی برمی گرداند.

در دسترس است که در آن "ورودی": "DifferentiableTensorProtocol"، "Output": "DifferentiableTensorProtocol"
  • callAsFunction(_:) اجرای پیش فرض

    پیاده سازی پیش فرض

    اعلام

    @differentiable(wrt: self)
    @differentiable
    public func callAsFunction(_ input: Input) -> Output