Konv1D yang Dapat Dipisahkan

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

Lapisan konvolusi 1-D yang dapat dipisahkan.

Lapisan ini melakukan konvolusi mendalam yang bekerja secara terpisah pada saluran diikuti dengan konvolusi titik yang mencampurkan saluran.

  • Kernel konvolusi mendalam 3-D.

    Pernyataan

    public var depthwiseFilter: Tensor<Scalar>
  • Kernel konvolusi titik 3-D.

    Pernyataan

    public var pointwiseFilter: Tensor<Scalar>
  • Vektor bias.

    Pernyataan

    public var bias: Tensor<Scalar>
  • Fungsi aktivasi berdasarkan elemen.

    Pernyataan

    @noDerivative
    public let activation: Activation
  • Langkah jendela geser untuk dimensi spasial.

    Pernyataan

    @noDerivative
    public let stride: Int
  • Algoritma padding untuk konvolusi.

    Pernyataan

    @noDerivative
    public let padding: Padding
  • Jenis fungsi aktivasi berdasarkan elemen.

    Pernyataan

    public typealias Activation = @differentiable (Tensor<Scalar>) -> Tensor<Scalar>
  • Membuat lapisan SeparableConv1D dengan filter, bias, fungsi aktivasi, langkah, dan bantalan yang ditentukan secara mendalam dan tepat.

    Pernyataan

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

    Parameter

    depthwiseFilter

    Kernel konvolusi mendalam 3-D [filter width, input channels count, channel multiplier] .

    pointwiseFilter

    Kernel konvolusi titik 3-D [1, channel multiplier * input channels count, output channels count] .

    bias

    Vektor bias.

    activation

    Fungsi aktivasi berdasarkan elemen.

    strides

    Langkah jendela geser untuk dimensi spasial.

    padding

    Algoritma padding untuk konvolusi.

  • Mengembalikan keluaran yang diperoleh dari penerapan lapisan ke masukan yang diberikan.

    Pernyataan

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

    Parameter

    input

    Masukan ke lapisan.

    Nilai Pengembalian

    Hasil.

  • Membuat lapisan SeparableConv1D dengan bentuk filter, langkah, padding, dan fungsi aktivasi berdasarkan elemen yang ditentukan secara mendalam dan tepat.

    Pernyataan

    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()
    )

    Parameter

    depthwiseFilterShape

    Bentuk kernel konvolusi mendalam 3-D.

    pointwiseFilterShape

    Bentuk kernel konvolusi titik 3-D.

    strides

    Langkah jendela geser untuk dimensi temporal.

    padding

    Algoritma padding untuk konvolusi.

    activation

    Fungsi aktivasi berdasarkan elemen.

    filterInitializer

    Inisialisasi yang digunakan untuk parameter filter.

    biasInitializer

    Inisialisasi yang akan digunakan untuk parameter bias.