Conv1D

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

یک لایه پیچیدگی 1 بعدی (به عنوان مثال پیچیدگی زمانی در یک سری زمانی).

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

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

    اعلامیه

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

    اعلامیه

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

    اعلامیه

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

    اعلامیه

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

    اعلامیه

    @noDerivative
    public let padding: Padding
  • عامل اتساع برای بعد زمانی.

    اعلامیه

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

    اعلامیه

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

    اعلامیه

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

    پارامترها

    filter

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

    bias

    بردار بایاس شکل [تعداد کانال خروجی].

    activation

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

    stride

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

    padding

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

    dilation

    عامل اتساع برای بعد زمانی.

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

    عرض خروجی به صورت زیر محاسبه می شود:

    عرض خروجی = (عرض ورودی + 2 * اندازه بالشتک - (اتساع * (عرض فیلتر - 1) + 1)) / گام + 1

    و اندازه بالشتک با طرح padding تعیین می شود.

    توجه داشته باشید

    اندازه پد هنگام استفاده از .valid برابر با صفر است.

    اعلامیه

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

    پارامترها

    input

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

    ارزش بازگشتی

    خروجی شکل [اندازه دسته، عرض خروجی، تعداد کانال خروجی].

موجود در جایی که 'Scalar.RawSignificand': 'FixedWidthInteger'
  • یک لایه Conv1D با شکل فیلتر مشخص شده، گام برداشتن، بالشتک، اتساع و عملکرد فعال سازی از نظر عنصر ایجاد می کند.

    اعلامیه

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

    پارامترها

    filterShape

    شکل 3 بعدی فیلتر، نشان دهنده (عرض فیلتر، تعداد کانال ورودی، تعداد کانال های خروجی).

    stride

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

    padding

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

    dilation

    عامل اتساع برای بعد زمانی.

    activation

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

    filterInitializer

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

    biasInitializer

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