SeparableConv1D

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

یک لایه پیچشی قابل جداسازی 1 بعدی.

این لایه یک پیچیدگی عمیق را انجام می دهد که به طور جداگانه روی کانال ها عمل می کند و به دنبال آن یک پیچش نقطه ای که کانال ها را مخلوط می کند.

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

    اعلام

    public var depthwiseFilter: Tensor<Scalar>
  • هسته کانولوشن 3 بعدی نقطه ای.

    اعلام

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

    اعلام

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

    اعلام

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

    اعلام

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

    اعلام

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

    اعلام

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

    اعلام

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

    مولفه های

    depthwiseFilter

    هسته کانولوشن عمقی سه بعدی [filter width, input channels count, channel multiplier] .

    pointwiseFilter

    هسته کانولوشن سه بعدی نقطه ای [1, channel multiplier * input channels count, output channels count] .

    bias

    بردار تعصب.

    activation

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

    strides

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

    padding

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

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

    اعلام

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

    مولفه های

    input

    ورودی لایه

    ارزش بازگشتی

    خروجی.

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

    اعلام

    public init(
      depthwiseFilterShape: (Int, Int, Int),
      pointwiseFilterShape: (Int, Int, Int),
      stride: Int = 1,
      padding: Padding = .valid,
      activation: @escaping Activation = identity,
      useBias: Bool = true,
      depthwiseFilterInitializer: ParameterInitializer<Scalar> = glorotUniform(),
      pointwiseFilterInitializer: ParameterInitializer<Scalar> = glorotUniform(),
      biasInitializer: ParameterInitializer<Scalar> = zeros()
    )

    مولفه های

    depthwiseFilterShape

    شکل هسته کانولوشن 3 بعدی عمقی.

    pointwiseFilterShape

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

    strides

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

    padding

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

    activation

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

    filterInitializer

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

    biasInitializer

    Initializer برای استفاده برای پارامترهای بایاس.