SeparableConv2D

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

2D 분리 가능한 컨볼루션 레이어.

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

  • 4차원 깊이별 컨볼루션 커널.

    선언

    public var depthwiseFilter: Tensor<Scalar>
  • 4차원 점별 컨벌루션 커널.

    선언

    public var pointwiseFilter: Tensor<Scalar>
  • 바이어스 벡터.

    선언

    public var bias: Tensor<Scalar>
  • 요소별 활성화 함수.

    선언

    @noDerivative
    public let activation: Activation
  • 공간적 차원을 위한 슬라이딩 윈도우의 발전.

    선언

    @noDerivative
    public let strides: (Int, Int)
  • 컨볼루션을 위한 패딩 알고리즘입니다.

    선언

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

    선언

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

    선언

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

    매개변수

    depthwiseFilter

    4차원 깊이별 컨볼루션 커널 [filter height, filter width, input channels count, channel multiplier] .

    pointwiseFilter

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

    bias

    바이어스 벡터.

    activation

    요소별 활성화 함수.

    strides

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

    padding

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

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

    선언

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

    매개변수

    input

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

    반환 값

    출력.

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

    선언

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

    매개변수

    depthwiseFilterShape

    4차원 깊이별 컨볼루션 커널의 모양입니다.

    pointwiseFilterShape

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

    strides

    공간적/시공간적 차원에 대한 슬라이딩 윈도우의 보폭.

    padding

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

    activation

    요소별 활성화 함수.

    filterInitializer

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

    biasInitializer

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