전환 1일

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

1차원 컨볼루션 계층(예: 시계열에 대한 시간적 컨볼루션).

이 레이어는 레이어 입력과 컨볼루션되어 출력 텐서를 생성하는 컨볼루션 필터를 생성합니다.

  • 3차원 컨볼루션 필터.

    선언

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

    선언

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

    선언

    @noDerivative
    public let activation: Activation
  • 시간적 차원에 대한 슬라이딩 윈도우의 보폭입니다.

    선언

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

    선언

    @noDerivative
    public let padding: Padding
  • 시간 차원의 확장 인자입니다.

    선언

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

    선언

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

    선언

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

    매개변수

    filter

    [필터 폭, 입력 채널 수, 출력 채널 수] 모양의 3D 컨벌루션 필터입니다.

    bias

    [출력 채널 수] 모양의 바이어스 벡터입니다.

    activation

    요소별 활성화 함수.

    stride

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

    padding

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

    dilation

    시간 차원의 확장 인자입니다.

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

    출력 너비는 다음과 같이 계산됩니다.

    출력 너비 = (입력 너비 + 2 * 패딩 크기 - (팽창 * (필터 너비 - 1) + 1)) / 보폭 + 1

    패딩 크기는 패딩 방식에 따라 결정됩니다.

    메모

    .valid 사용할 때 패딩 크기는 0입니다.

    선언

    @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

    (필터 폭, 입력 채널 수, 출력 채널 수)를 나타내는 필터의 3D 모양입니다.

    stride

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

    padding

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

    dilation

    시간 차원의 확장 인자입니다.

    activation

    요소별 활성화 함수.

    filterInitializer

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

    biasInitializer

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