가중치 크기 기반 가지치기

IT 위키
인공무능 (토론 | 기여)님의 2025년 10월 9일 (목) 02:17 판 (새 문서: '''가중치 크기 기반 가지치기'''는 딥러닝 모델에서 중요도가 낮은 가중치를 제거하여 연산량과 모델 크기를 줄이는 대표적인 가지치기(pruning) 기법이다. 가지치기 대상은 일반적으로 절댓값이 작은 가중치로 간주되며, 이를 제거하여 희소성(sparsity)을 유도한다. ==개념== 가중치 크기 기반 가지치기는 학습이 완료된(또는 진행 중인) 신경망에서 각 가중치의 절댓값...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

가중치 크기 기반 가지치기는 딥러닝 모델에서 중요도가 낮은 가중치를 제거하여 연산량과 모델 크기를 줄이는 대표적인 가지치기(pruning) 기법이다. 가지치기 대상은 일반적으로 절댓값이 작은 가중치로 간주되며, 이를 제거하여 희소성(sparsity)을 유도한다.

개념[편집 | 원본 편집]

가중치 크기 기반 가지치기는 학습이 완료된(또는 진행 중인) 신경망에서 각 가중치의 절댓값을 기준으로 제거할 대상을 선정한다. 이때 절댓값이 작다는 것은 해당 가중치가 출력에 기여하는 영향이 적다고 가정한다. 이렇게 제거된 가중치는 0으로 설정되며, 연산량과 저장 공간이 줄어들게 된다.

가지치기 유형[편집 | 원본 편집]

  • 비구조적 가지치기 (Unstructured pruning)
    • 개별 가중치를 제거함
    • 희소성은 높지만, 실제 연산 속도 향상과는 직결되지 않을 수 있음
  • 구조적 가지치기 (Structured pruning)
    • 필터, 채널, 뉴런, 레이어 단위로 블록을 제거함
    • 하드웨어 최적화에 유리함
  • 글로벌 가지치기
    • 전체 네트워크의 모든 가중치를 기준으로 제거 대상 결정
  • 계층별 가지치기
    • 레이어별로 제거 비율을 따로 설정하여 적용

절차[편집 | 원본 편집]

가중치 크기 기반 가지치기는 일반적으로 다음과 같은 단계로 수행된다:

  1. 모델 학습 또는 예비 학습 수행
  2. 각 가중치의 절댓값을 기준으로 정렬
  3. 희소성 목표 또는 비율을 설정(e.g. sparsity: 0.60)
  4. 정해진 비율만큼 작은 가중치를 제거(0으로 설정하거나 마스크 적용)
  5. 제거 후 모델을 재학습(fine-tuning)하여 정확도 복원
  6. 필요 시 위 과정을 반복 수행

이러한 전략은 한 번에 제거하는 One-shot pruning과 여러 단계에 나누어 제거하는 Iterative pruning으로 구분된다.

장단점[편집 | 원본 편집]

장점[편집 | 원본 편집]

  • 단순하고 구현이 쉬움
  • 기존 모델을 그대로 유지하면서 압축 가능
  • 적절한 수준에서는 성능 손실 없이 파라미터 수를 크게 줄일 수 있음

단점[편집 | 원본 편집]

  • 절댓값이 작은 가중치도 중요한 역할을 할 수 있어 성능 저하 위험 있음
  • 비구조적 제거는 실제 연산 최적화와 연결되기 어려움
  • 재학습(fine-tuning) 과정을 반드시 거쳐야 성능을 유지할 수 있음

실제 사례[편집 | 원본 편집]

  • ResNet, VGG, BERT 등 다양한 구조에 적용 가능함
  • Global Magnitude Pruning은 Transformer 구조에 적용되어도 효과를 보임[1]
  • ADMM(Alternating Direction Method of Multipliers)를 적용한 최적화 기반 가지치기에서도 기본 기준으로 사용됨[2]
  • CIFAR-10, ImageNet 등의 벤치마크 데이터셋에서도 기본적인 baseline pruning 기법으로 채택됨[3]

같이 보기[편집 | 원본 편집]

참고 문헌[편집 | 원본 편집]

각주[편집 | 원본 편집]