DepthwiseConv2D

@frozen
public struct DepthwiseConv2D<Scalar> : Layer where Scalar : TensorFlowFloatingPoint

یک لایه کانولوشن 2 بعدی در جهت عمق.

این لایه فیلترهای کانولوشن قابل جداسازی را ایجاد می کند که با ورودی لایه پیچیده می شود تا یک تانسور خروجی تولید کند.

  • هسته کانولوشن 4 بعدی.

    اعلامیه

    public var filter: Tensor<Scalar>
  • بردار تعصب.

    اعلامیه

    public var bias: Tensor<Scalar>
  • تابع فعال سازی از نظر عنصر.

    اعلامیه

    @noDerivative
    public let activation: Activation
  • گام های پنجره کشویی برای ابعاد فضایی.

    اعلامیه

    @noDerivative
    public let strides: (Int, Int)
  • الگوریتم padding برای کانولوشن.

    اعلامیه

    @noDerivative
    public let padding: Padding
  • نوع تابع فعال سازی از نظر عنصر.

    اعلامیه

    public typealias Activation = @differentiable (Tensor<Scalar>) -> Tensor<Scalar>
  • یک لایه DepthwiseConv2D با فیلتر مشخص شده، بایاس، تابع فعال‌سازی، گام‌ها و padding ایجاد می‌کند.

    اعلامیه

    public init(
      filter: Tensor<Scalar>,
      bias: Tensor<Scalar>? = nil,
      activation: @escaping Activation = identity,
      strides: (Int, Int) = (1, 1),
      padding: Padding = .valid
    )

    پارامترها

    filter

    هسته کانولوشن 4 بعدی.

    bias

    بردار تعصب.

    activation

    تابع فعال سازی از نظر عنصر.

    strides

    گام های پنجره کشویی برای ابعاد فضایی.

    padding

    الگوریتم padding برای کانولوشن.

  • خروجی به دست آمده از اعمال لایه به ورودی داده شده را برمی گرداند.

    اعلامیه

    @differentiable
    public func forward(_ input: Tensor<Scalar>) -> Tensor<Scalar>

    پارامترها

    input

    ورودی لایه شکل، [تعداد دسته ای، ارتفاع ورودی، عرض ورودی، تعداد کانال ورودی]

    ارزش بازگشتی

    خروجی شکل، [تعداد دسته ای، ارتفاع خروجی، عرض خروجی، تعداد کانال ورودی * ضرب کانال]

  • یک لایه DepthwiseConv2D با شکل فیلتر مشخص شده، گام‌ها، padding و تابع فعال‌سازی عنصری ایجاد می‌کند.

    اعلامیه

    public init(
      filterShape: (Int, Int, Int, Int),
      strides: (Int, Int) = (1, 1),
      padding: Padding = .valid,
      activation: @escaping Activation = identity,
      useBias: Bool = true,
      filterInitializer: ParameterInitializer<Scalar> = glorotUniform(),
      biasInitializer: ParameterInitializer<Scalar> = zeros()
    )

    پارامترها

    filterShape

    شکل هسته کانولوشن 4 بعدی با فرم، [عرض فیلتر، ارتفاع فیلتر، تعداد کانال ورودی، ضرب کننده کانال].

    strides

    گام های پنجره کشویی برای ابعاد مکانی/فضایی-زمانی.

    padding

    الگوریتم padding برای کانولوشن.

    activation

    تابع فعال سازی از نظر عنصر.

    filterInitializer

    آغازگر برای استفاده برای پارامترهای فیلتر.

    biasInitializer

    آغازگر برای استفاده برای پارامترهای بایاس.