00. 논문 리뷰
Review - The lottery ticket hypothesis: Finding sparse, trainable neural networks
amadeus-system
2025. 1. 4. 23:54
- Date: 2025-01-04-Saturday
- Last modified date: 2025-01-04-Saturday
Review - The lottery ticket hypothesis: Finding sparse, trainable neural networks
- [References](#references)
논문의 문제 상황 및 기여(Contribution) 요약
문제 상황 및 배경
- 딥러닝 모델은 일반적으로 매우 큰 규모의 신경망 사용, 많은 계산자원과 메모리 필요함
- 이런 대규모 모델은 학습, 추론 과정에서 비효율적일 수 있음. 특히 자원이 제한된 환경(매우 자주 있음...)에서는 사용이 어려울 수 있음.
- 따라서 모델 경량화와 효율성 높이는 연구 분야가 발달되고 있음.
기여(Contribution)
- 이 논문은 Lottery Ticket Hypothesis (로또 티켓 가설)을 제안함.
- 초기화된 대규모 신경망 안에 특정한 작은 서브네트워크('당첨 티켓', winning ticket)가 존재하며, 이 서브네트워크는 전체 모델과 유사한 수준의 성능 학습 가능함을 보여줌.
- 서브네트워크의 발견
초기화된 신경망에서 특정 가중치 패턴을 가진 서브네트워크를 찾아내어, 이 서브네트워크만으로도 효과적인 학습이 가능함을 보여줌. - 초기화의 중요성 강조
서브네트워크가 효과적으로 학습하기 위해서는 초기 가중치가 중요한 역할을 함을 강조
기존의 가중치 초기화 방법에 대한 새로운 시각 제공 - 모델 압축과 효율성
불필요한 매개변수 줄이고, 모델 효율성 높일 수 있는 새로운 접근 방법 제시
모델 경량화와 관련된 연구에 중요한 방향성 제공
단점 또는 한계
1. 확장성(Scalability)의 한계
- 작은 규모의 모델 및 데이터셋에 국한됨
논문에서 비교적 작은 신경망과 제한된 데이터셋을 대상으로 실험 진행함.
대규모 최신 모델이나 복잡한 데이터셋에 대해서도 동일한 접근 방식을 적용했을 때 성능이나 효율성이 어떻게 변할지 명확하지 않음 - 대형 모델에의 적용 어려움
요즘 딥러닝 모델은 대부분 수백만 ~ 수십억개의 매개변수 가지는 대규모 모델
이런 대규모 모델에서 Lottery ticket을 찾는 과정이 어려울 수 있음 (연산자원이 많이 필요)
2. 서브네트워크 발견의 높은 비용
- 반복적인 가지치기(Iterative pruning)과 재학습(Fine-tuning?) 필요
Lottery ticket 찾기 위해 신경망을 반복적으로 가지치기하고 재학습해야 함
계산 자원과 시간 많이 소모됨
실제 적용시 부담스러울 수 있음 - 효율성 문제
논문의 초기 목표는 모델 경량화와 효율성 향상이지만, 실제로 서브네트워크를 찾는 문제 상황의 풀이 자체가 비효율적
초기화 의존성
- 특정 초기화에 대한 의존성
Lottery ticket hypothesis는 초기 가중치의 중요성 강조함. 그러나 실제로 효과적인 초기화를 찾는 것이 쉽지 않을 수 있음. 초기화 방식이 결과에 큰 영향을 미치는 것으로 보임 - 일반화 문제
특정 초기화 방식에서만 효과적으로 로또 티켓을 찾을 수 있을 가능성이 있음. 일반적인 상황에서의 적용 제한될 수 있음
재현 방법?
- 초기화된 신경망 준비: 대규모 신경망을 무작위로 초기화. 이때 초기화 가중치는 후속 단계에서 중요한 역할을 함
- 전체 신경망 학습: 초기화된 전체 신경망을 일반적인 방법으로 학습시킴. 모든 가중치 업데이트됨
- 가지치기(Pruning):
- 가중치 중요도 평가: 학습된 신경망에서 가중치 절대값이 작은 것들을 기준으로 중요하지 않다고 판단하고, 제거함
- 가지치기 비율 설정: 예를 들면, 전체 가중치의 20% 제거하는 식으로 가지치기함.
- 초기화된 가중치로 재설정
- 원래의 초기화 값 복원: 가지치기된 신경망의 남은 가중치들을 원래 초기화된 값으로 되돌림. 즉, 학습 초기 단계의 가중치를 유지함.
- 재학습 및 반복
- 재학습: 초기화된 상태로 돌린 서브네트워크를 재학습시킴
- 반복: 가지치기, 재설정 과정 여러번 반복하여 점차적으로 서브네트워크 찾아냄
결과
- 성능 유지: 전체 신경망의 절반 수준 또는 그 이하로 줄여도, 원래 성능을 거의 유지 또는 약간의 손실만 있음.
- 초기화의 중요성: 초기화된 가중치를 유지하는 것이 재학습 시 성능 유지에 중요한 역할을 한다는 것을 발견 -> (음.. 이것은 아마도 가지치기된 노드의 계층, 또는 위치정보와 샘플링된 가중치 값이 서로 연관된 것 같기도 하다??)
- 서브네트워크의 존재: 모든 무작위 초기화된 서브네트워크 내에 성능을 유지할 수 있는 서브네트워크가 존재함을 입증. (-> 그러나 항상 존재하는가? Transformer에도? GNN에도?)
개인적 감상
- 거의 90%에 가까운 모델 압축을 하면서도, 1~2% 정도의 테스트 성능 감소만이 있다는 것이 놀랍다.
- 신경망 학습 결과 최종적으로 중요한 계산 그래프의 규모는 초기의 dense한 그래프에서 아주 일부의 서브집합인 것 같다. 하지만, 최종 결과에서 중요하지 않은 노드들도 학습 과정에서 다른 중요 노드의 학습을 도와주는 역할로 보인다. -> 이것은 꽤 흥미롭다. 뇌에서도 유사한 현상이 있을까? 즉, 학습의 최종 결과로 활성화되는 뉴런과 학습 과정에서 중요 뉴런의 학습을 보조해주는 뉴런이 따로 존재할까?..
- 뉴럴 네트워크의 근본적 원리에 관한 내용이라서 굉장히 흥미롭다. 예전에 자주 나오던... 대규모 데이터로 대규모 뉴럴네트워크를 학습해서 SOTA 성능을 달성했다는 식의 논문은 솔직히 별 재미가 없었는데, 이것은 대규모 계산 그래프의 근본원리를 향한 느낌의 연구라서 상당히 흥미롭다.
- 우연히 이쪽 분야의 논문을 보게 되었는데, 엄청난 꿀잼 느낌..
- 오늘날에는 ONNX, Triton 같은 도구들을 이용하면 사실 최적화에 대한 지식이 거의 없어도, 임의의 네트워크에 대해 일정 수준의 경량화를 달성할 수 있기는 하다. 하지만, 확실히 이런 논문을 읽어야 제대로 활용할 수 있을 것 같은 느낌.
- Lottery Ticket Hypothesis는 딥러닝 모델의 효율성, 경량화에 근본적인 연구를 함
- 모델 압축, 신경망의 구조 최적화, 학습 초기화 등 다양한 분야에서 생각할 거리를 준다.
- 특히 산업현장에서 제한된 계산자원을 써야 하는 상황에서 이 분야에 대한 깊은 지식이 있으면 좋을 듯?
References
- Frankle, J. and Carbin, M., 2018. The lottery ticket hypothesis: Finding sparse, trainable neural networks. arXiv preprint arXiv:1803.03635.
- The Lottery Ticket Hypothesis와 그 후속 연구들 리뷰
- Lottery ticket hypothesis 와 후속 연구 정리
- A simple introduction to MIT’s Lottery Ticket Hypothesis