lottery ticket을 찾는 방법들로 제안된 방법들 살펴보기
1. iterative magnitude pruning
최초 논문에서 제안한 lottery ticket를 찾는 방법
초기 W0로 parameter initialization을 수행하고 T번 training을 수행
이 때 magnitude pruning을 수행하여 mask m1을 찾는 것임
magnitude는 weight의 크기를 기준으로 적은 크기를 가지는 weight를 제거함
그러면 이제 이게 lottery ticket인지 확인하기 위해 초기 W0에 mask m1을 씌운 뒤 T번 training을 시켜 검증을 하는거지
아니라면 다른 pruning을 수행하여 mask m2를 얻고 위 과정을 계속 반복해서 lottery ticket를 찾겠다 이거임
2. iterative magnitude pruning with rewinding
초기 W0로 initialization한 parameter를 가지는 network를 k번 training시켜 Wk를 얻음
이후 training을 계속 시켜 convergence 시키고 pruning을 수행하여 mask m1을 얻음
이제 Wk를 마치 초기 initialization network라고 생각하고 이것을 초기 parameter로 가져와 m1을 씌우고 lottery ticket인지 검증
아니라면 새로운 mask m2를 얻은 뒤 Wk를 이용해서 반복 검증
W0를 쓰는 것보다 어느정도 training된 Wk를 사용해서 convergence 시키기까지 training 비용이 기존보다 어느 정도 감소함
3. 구체적인 rewinding 알고리즘
먼저 W0로 network의 parameter를 초기화하고
1로 가득찬 mask를 초기화하여 생성
그림에 k번 training할 때 noise를 섞은 data를 이용하여 k번 training한다고 하는데 사실 큰 의미는 없을듯?
가지고 있는 데이터 자체가 noise가 섞여있으니까 가지고 있는 데이터로 k번 training하면 된다고 생각함
Wk를 얻고 나서 mask m을 씌운 m * Wk network를 convergence 시키는데
noise를 섞은 데이터 set으로 training을 하여 m * WT를 얻어
그리고 magnitude가 가장 낮은 weight를 pruning하여 새로운 mask를 획득
새로운 mask를 Wk에 씌우고 새로운 noise를 섞은 데이터 set으로 lottery ticket인지 반복해서 검증해나감
여기서 noise는 데이터의 순서를 바꿔주는 noise라고 설명하고 있음
데이터 순서가 달라지면서 training하고 난 뒤의 weight가 달라지게 하는데 목적을 두나봄…
이게 noise를 안하면 Wk를 rewinding시켜도 동일한 결과가 나오니까 그런다는데 mask때문에 동일한 결과가 안나오지 않나...
왜 하는지 논문을 봤는데 stability라고 설명하면서 무슨 distance 뭐라뭐라하면서 무슨말인지는 도저히 모르겠음..
noise를 섞으니까 W0로 시작할때보다 Wk로 시작할 수 있게 만들면서 아무튼 결과가 좋았다 이런 느낌임
4. formalization iterative rewinding pruning
f(x;W0)의 random하게 initialize된 dense network를 생각하자.
이것은 T * iteration training을 하면 accuracy가 a *가 된다.
Wt가 t iteration으로 training하여 얻은 weight라고 한다면
충분히 작은 k (<< T *) iteration으로 training하여 original 정확도 a * 보다 크거나 같은
a 정확도를 가지는 subnetwork m * Wk를 만들어주는 pruning mask가 존재한다.
이 때 T <= T * - k를 만족한다
T <= T* - k 이게 무슨 의미인가 기존에는 완전한 초기 parameter W0를 썼는데 알고리즘을 약간 바꾸면서
T* - k가 어떤 상수 T보다 크거나 같다고 제한을 두면서, 여기서 T* - k는 lottery ticket를 검증하기위한 초기 parameter에서 convergence까지 거리인데
k가 0에 가깝지만 약간 거리감은 있는, 그러면서 cost를 감소시킨 Wk 로 lottery ticket을 찾을 수 있게 되었다는 것으로
논문에서는 noise를 섞은 것이 하나의 큰 이유라고 설명하는 것 같음
'딥러닝 > light weight modeling' 카테고리의 다른 글
quantization의 종류들 구체적으로 살펴보기(quantization aware, post training ... ) (0) | 2024.11.27 |
---|---|
hardware optimization이 일어나는 원리 locality of reference (0) | 2024.11.26 |
neural network에서의 low rank approximation은 무엇이 있는가 (0) | 2024.11.20 |
가장 좋은 augmentation을 찾기 위한 시도들 - AutoML, Rand augmentation (0) | 2024.10.01 |
hinton의 knowledge distillation이후에 발명된 knowledge distillation들 알아보기 (0) | 2024.09.26 |