다음을 통해 공유


Pooling

Pooling (input,
         poolKind, # "max" or "average"
         {kernel dimensions}, 
         stride = {stride dimensions}, 
         autoPadding = {padding flags (boolean)},
         lowerPad = {lower padding (int)},
         upperPad = {upper padding (int)})

풀링 작업은 풀링 입력에서 최대(최대 풀링) 또는 평균 값을 선택하여 새 행렬을 계산합니다. 평균 풀링의 경우 평균 개수에는 패딩된 값이 포함되지 않습니다.

N차원 풀링을 사용하면 모든 차원, 보폭 또는 패딩의 최대 또는 평균 풀링을 만들 수 있습니다. 구문은 다음과 같습니다.

여기서

  • input - 풀링 입력
  • poolKind - "max" 또는 "average"
  • {kernel dimensions} - 브레인스크립트 벡터로 풀링 창의 차원(예: (4:4).
  • stride - [named, optional, default is 1] strides.
  • autoPadding - 각 입력 차원에 대한 자동 안쪽 여백 플래그 [named, optional, default is true]입니다.
  • lowerPad - [명명됨, 선택 사항, 기본값: 0] 각 입력 차원에 대한 정확한 하한 여백
  • upperPad - [named, optional, default is 0] precise upper padding for each input dimension

모든 차원 배열은 콜론으로 구분됩니다. 참고: 사용되지 NDLNetworkBuilder않는 항목을 사용하는 경우 쉼표로 구분하여 대신 묶 { } 어야 합니다.

풀링 창에는 임의 차원이 있을 수 있으므로 다양한 풀링 구성(예: "Maxout" 계층)을 빌드할 수 있습니다(자세한 내용은 Goodfellow 등 참조).

MaxOutPool (inp, kW, kH, kC, hStride, vStride) =
    Pooling (inp, "max", (kW:kH:kC), stride=(hStride:vStride:kC), true:true:false))

2D 풀링에 대한 간소화된 구문

2D 풀링에 대한 간단한 구문이 있습니다.

MaxPooling(m, windowWidth, windowHeight, stepW, stepH, imageLayout="cudnn" /* or "HWC"*/ )
AveragePooling(m, windowWidth, windowHeight, stepW, stepH, imageLayout="cudnn" /* or "HWC"*/ )

다음 매개 변수 사용:

  • m - 입력 행렬입니다.
  • windowWidth - 풀링 창의 너비
  • windowHeight - 풀링 창의 높이
  • stepW - 너비 방향으로 사용되는 단계(또는 보폭)
  • stepH - 높이 방향으로 사용되는 단계(또는 보폭)
  • imageLayout - [명명된 선택 사항] 각 이미지의 스토리지 형식입니다. 이 옵션은 필요하지 않을 가능성이 높은 레거시 옵션입니다. 기본적으로 HWC각 이미지가 열 주 표기법으로 [channel, width, height] 저장됨을 의미합니다. 성능을 향상시키려면 cuDNN을 사용하는 것이 좋습니다. 이 경우 설정해야 합니다 cudnn. 즉, 각 이미지가 열 주 표기법에서 [너비, 높이, 채널]로 저장됩니다. 형식은 cudnn GPU와 CPU 모두에서 작동합니다.

예제(ConvReLULayer NDL 매크로):

# pool2
pool2W = 2
pool2H = 2
pool2hStride = 2
pool2vStride = 2
pool2 = MaxPooling (conv2, pool2W, pool2H, pool2hStride, pool2vStride, imageLayout="$imageLayout$")

참고: 사용되지 NDLNetworkBuilder않는 매개 변수를 사용하는 경우 선택적 imageLayout 매개 변수가 기본값으로 설정됩니다 "HWC" .