SeparableConv1D

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

1차원 분리 가능한 컨볼루션 레이어.

이 레이어는 채널에 대해 개별적으로 작동하는 깊이별 컨볼루션을 수행한 다음 채널을 혼합하는 포인트별 컨볼루션을 수행합니다.

  • 3D 깊이별 컨볼루션 커널.

    선언

    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
  • 컨볼루션을 위한 패딩 알고리즘입니다.

    선언

    @noDerivative
    public let padding: Padding
  • 요소별 활성화 함수 유형입니다.

    선언

    public typealias Activation = @differentiable (Tensor<Scalar>) -> Tensor<Scalar>
  • 지정된 깊이별 및 점별 필터, 바이어스, 활성화 함수, 보폭 및 패딩을 사용하여 SeparableConv1D 레이어를 생성합니다.

    선언

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

    매개변수

    depthwiseFilter

    3D 깊이별 컨벌루션 커널 [filter width, input channels count, channel multiplier] .

    pointwiseFilter

    3차원 점별 컨벌루션 커널 [1, channel multiplier * input channels count, output channels count] .

    bias

    바이어스 벡터.

    activation

    요소별 활성화 함수.

    strides

    공간적 차원을 위한 슬라이딩 윈도우의 발전.

    padding

    컨볼루션을 위한 패딩 알고리즘입니다.

  • 주어진 입력에 레이어를 적용하여 얻은 출력을 반환합니다.

    선언

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

    매개변수

    input

    레이어에 대한 입력입니다.

    반환 값

    출력.

  • 지정된 깊이별 및 점별 필터 모양, 보폭, 패딩 및 요소별 활성화 함수를 사용하여 SeparableConv1D 레이어를 만듭니다.

    선언

    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

    3차원 점별 컨벌루션 커널의 모양입니다.

    strides

    시간적 차원에 대한 슬라이딩 윈도우의 보폭입니다.

    padding

    컨볼루션을 위한 패딩 알고리즘입니다.

    activation

    요소별 활성화 함수.

    filterInitializer

    필터 매개변수에 사용할 초기화 프로그램입니다.

    biasInitializer

    바이어스 매개변수에 사용할 초기화 프로그램입니다.