그룹표준

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

입력의 미니 배치에 대해 그룹 정규화를 적용하는 레이어입니다.

참조: 그룹 정규화 .

  • 베타라고도 하는 오프셋 값입니다.

    선언

    public var offset: Tensor<Scalar>
  • 감마라고도 하는 배율 값입니다.

    선언

    public var scale: Tensor<Scalar>
  • 그룹 수.

    선언

    @noDerivative
    public let groupCount: Int
  • 특징이 있는 축입니다.

    선언

    @noDerivative
    public let axis: Int
  • 분산 엡실론 값입니다.

    선언

    @noDerivative
    public let epsilon: Scalar
  • 그룹 정규화 계층을 만듭니다.

    전제조건

    축은 일괄 축이 될 수 없습니다.

    전제조건

    오프셋의 순위는 1이어야 합니다.

    전제조건

    오프셋의 요소 수는 그룹으로 나눌 수 있어야 합니다.

    전제조건

    오프셋과 눈금의 모양은 동일해야 합니다.

    선언

    public init(
      offset: Tensor<Scalar>,
      scale: Tensor<Scalar>,
      groupCount: Int,
      axis: Int,
      epsilon: Scalar
    )

    매개변수

    offset

    초기 오프셋 값입니다.

    scale

    초기 배율 값입니다.

    groupCount

    그룹 수.

    axis

    특징이 있는 축입니다.

    epsilon

    분산 엡실론 값입니다.

  • 그룹 정규화 계층을 만듭니다.

    전제조건

    축은 일괄 축이 될 수 없습니다.

    전제조건

    기능 수는 그룹으로 나눌 수 있어야 합니다.

    선언

    public init(
      featureCount: Int,
      groupCount: Int,
      axis: Int = -1,
      epsilon: Scalar = 1e-3
    )

    매개변수

    featureCount

    기능의 수.

    groupCount

    그룹 수.

    axis

    특징이 있는 축입니다. 기본값은 -1입니다.

    epsilon

    분산에 작은 스칼라가 추가되었습니다. 기본값은 0.001입니다.

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

    전제조건

    축은 일괄 축이 될 수 없습니다.

    전제조건

    입력의 특징 개수와 오프셋의 개수는 동일해야 합니다.

    선언

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

    매개변수

    input

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

    반환 값

    출력.