PreNorm, NormFormer, L2Norm

About_work·2023년 11월 22일
0

딥러닝

목록 보기
7/16

들어가기 전에: normalization 쓰는 이유?

  1. 학습 과정의 가속화: 정규화는 각 레이어의 입력을 조정하여, 학습 과정을 더 빠르고 효율적으로 만듭니다. 레이어마다 입력 분포가 일정하게 유지되면, 학습률을 높일 수 있고, 이는 전체적인 학습 시간을 단축시킵니다.

  2. 내부 공변량 변화 감소 (Internal Covariate Shift): 딥러닝 모델, 특히 심층 신경망에서 각 레이어의 입력 분포가 학습 과정 중에 변하는 현상을 '내부 공변량 변화'라고 합니다. 정규화는 이러한 변화를 줄여, 각 레이어가 더 안정적으로 학습될 수 있도록 도와줍니다.

  3. 그래디언트 소실/폭발 문제 완화: 심층 신경망에서는 그래디언트가 네트워크를 통과하면서 점차 소실되거나 폭발하는 문제가 발생할 수 있습니다. 정규화는 각 레이어의 입력을 안정화시켜, 그래디언트의 효과적인 전파를 돕습니다.

  4. 일반화 능력 향상: 정규화는 모델의 과적합(overfitting)을 방지하는 데 도움을 줄 수 있습니다. 특히, 데이터셋이 제한적일 때 정규화는 모델이 학습 데이터에 지나치게 최적화되는 것을 방지하고, 새로운 데이터에 대한 일반화 능력을 향상시킵니다.

  5. 모델 복잡도 관리: 정규화는 모델의 복잡도를 간접적으로 제어할 수 있도록 도와줍니다. 이는 모델이 데이터의 중요한 특성에 집중하도록 하여 성능을 향상시키는 데 기여합니다.


  • "PreNorm", "NormFormer", 그리고 "L2Norm"은 모두 딥러닝, 특히 Transformer 아키텍처와 관련된 정규화 기법과 변형에 해당합니다. 이들 각각의 개념을 이해하고 비교해보겠습니다.

1. PreNorm (Pre-Layer Normalization)

  • 개념: PreNorm은 Transformer 모델에서 사용되는 레이어 정규화(layer normalization)의 한 형태입니다. 이 방식에서 정규화는 각 서브 레이어(예: 셀프 어텐션, 피드포워드 네트워크)의 입력에 적용됩니다. 즉, 각 서브 레이어의 연산 전에 레이어 정규화가 수행됩니다.
  • 목적: PreNorm은 학습 중에 발생할 수 있는 수치적 불안정성을 줄이고, 더 깊은 네트워크의 효율적인 학습을 가능하게 합니다.
  • 적용 예: 많은 최신 Transformer 모델들, 특히 BERT와 같은 모델들에서 사용됩니다.

2. NormFormer

  • 개념: NormFormer는 최근 제안된 Transformer 변형 중 하나로, 표준 Transformer 아키텍처에 추가적인 정규화 메커니즘을 도입합니다. 기본적으로, NormFormer는 어텐션과 피드포워드 네트워크에 대한 추가적인 레이어 정규화를 적용합니다.
  • 목적: 이는 기존의 Transformer 모델들에서 발생할 수 있는 학습 불안정성을 해결하고, 더 빠른 수렴과 개선된 성능을 목표로 함.
  • 특징: NormFormer는 특히 어텐션 메커니즘의 출력에 적용되는 추가적인 정규화 레이어를 포함하는 것이 특징입니다.

3. L2Norm

  • 개념: L2Norm은 일반적으로 벡터의 각 요소를 벡터의 L2 노름(유클리드 길이)으로 나누어 벡터의 길이를 1로 만드는 정규화 방법입니다. 이는 딥러닝에서 특성 벡터를 정규화하는 데 사용됩니다.
  • 목적: 이 방법은 특히 특성 벡터 간의 거리를 비교하는 데 유용하며, 데이터의 스케일을 통일하여 수치적 안정성을 증가시키고, 모델의 일반화 능력을 향상시킵니다.
  • 적용 예: L2Norm은 이미지 또는 텍스트 분류, 객체 탐지, 얼굴 인식 등에서 사용됩니다.

비교

  • 적용 범위: PreNorm과 NormFormer는 Transformer 아키텍처의 정규화 전략에 속하는 반면, L2Norm은 벡터 정규화에 관련된 일반적인 기법입니다.
  • 목적: PreNorm과 NormFormer는 모두 Transformer 모델의 학습 안정성과 성능을 향상시키는 것을 목적으로 하지만, NormFormer는 추가적인 정규화 레이어를 통해 더 나아가는 방식을 채택합니다. L2Norm은 데이터 스케일링과 안정성 향상에 초점을 맞춥니다.
  • 적용 방식: PreNorm은 서브 레이어의 입력에 정규화를 적용하는 반면, NormFormer는 서브 레이어의 출력에도 정규화를 추가합니다. L2Norm은 특성 벡터의 길이를 조절하는 데 사용됩니다.

profile
새로운 것이 들어오면 이미 있는 것과 충돌을 시도하라.

0개의 댓글