SlideShare une entreprise Scribd logo
1  sur  33
Télécharger pour lire hors ligne
IDS Lab
Adaptive Gradient Methods with
Dynamic Bound of Learning Rate
Liangchen Luo, Yuanhao Xiong, Yan Liu, Xu San

Peking, Zhejiang, USC, Peking

ICLR2019(open review)
presentedby Jamie Seol
IDS Lab
Jamie Seol
Summary
• 일명 "AdaBound"

• PyTorch 코드도 있음

• https://github.com/Luolc/AdaBound

• 파라미터별 learning rate가 다른 경우

• 너무 크거나 너무 작으면 안되고

• 적절해야한다

• 놀랍게도 너무나 당연한 소리 같지만 은근히 다들 신경 안쓰던 부분

• 오늘도 재밌는 제이미 세미나
출처: http://intelliz.co.kr/?p=196
IDS Lab
Jamie Seol
Summary
• 일명 "AdaBound"
• PyTorch 코드도 있음
• https://github.com/Luolc/AdaBound
• 파라미터별 learning rate가 다른 경우
• 너무 크거나 너무 작으면 안되고
• 적절해야한다
• 놀랍게도 너무나 당연한 소리 같지만 은근히 다들 신경 안쓰던 부분
• 오늘도 재밌는 제이미 세미나
IDS Lab
Jamie Seol
Summary
• 파라미터별 learning rate가 같은 경우
• 그러니까 SGD (혹은 mini-batch, momentum을 섞은 경우 일명
heavy-ball) 계열은 generalization이 잘 되지만 학습이 느림
• 파라미터별 learning rate를 따로 주는 경우
• 다들 쓰는 AdaGrad, RMSProp, Adam이 해당
• 학습이 빠르지만 generalization이 잘 안될때가 있음
• learning rate가 너무 크거나 작기 때문
• 너무 큰걸 방지하기 위해 AMSGrad가 탄생
• 그러나 너무 작은 경우가 여전히 문제다
• 따라서 AdaBound에선 위 아래 모두 제한을 두는것으로 해결
• (광고) SGD보다 빠르고 Adam보다 좋다!
IDS Lab
Jamie Seol
복습해봅시다 2017 봄 제이미 세미나
세미나 내용 요약: 우리가 알고 있던 regularization method들이 정말로
그 역할을 하고 있는지 다시 생각해봅시다
IDS Lab
Jamie Seol
복습해봅시다 2017 여름 제이미 세미나
세미나 내용 요약: adaptive gradient descent 계열은 아무래도
generalization을 잘 못하는거 같다
IDS Lab
Jamie Seol
복습해봅시다 2017 여름 제이미 세미나
세미나 내용 요약: adaptive gradient descent 계열은 아무래도
generalization을 잘 못하는거 같다
IDS Lab
Jamie Seol
복습해봅시다 2017 여름 제이미 세미나
세미나 내용 요약: adaptive gradient descent 계열은 아무래도
generalization을 잘 못하는거 같다
즉 오늘의 세미나는 제이미의 optimizer 시리즈 제 3편입니다 시청해주셔서 감사합니다 구독 좋아요 그리고 알림설정까지
IDS Lab
Jamie Seol
Notation
• dot product 빼고는 max, min을 포함해서 대부분의 벡터 연산이
element-wise입니다
• 벡터 a, 그리고 positive definite이고 nonsingular인 행렬 M에 대해
서
• a/M은 M-1a 인거고 M1/2은 M1/2M1/2 = M 이 되는 행렬인데
positivie definite이면 이런 행렬이 존재 할 수 있음 (왜그럴까요?
숙제)
• 를 모든 d x d positive definite 행렬의 집합이라 합시다
IDS Lab
Jamie Seol
잠깐! 제이미의 수학 교양 시간
• 2017 겨울 제이미 세미나 참고
IDS Lab
Jamie Seol
잠깐! 제이미의 수학 교양 시간
• positive definite nonsingular matrix A에 대해서, 아래 d는 metric
이 됨
• 여러가지 방식으로 좀 더 일반화도 가능합니다
• semidefinite 혹은 singular로는 일반화가 왜 안될까요? 숙제
• 읽을거리
• A-1가 covariant matrix일땐 이 d를 Mahalanobis metric이라
고 부르고 metric-learning image retrieval 논문에서 쓰임
• 이걸로 공간을 만들면 pseudo-Euclidean space라고 함
• quadratic form의 일종 (왜 PSD, quadratic form 같은걸 공부
해야하는지 알려주는 챕터)
IDS Lab
Jamie Seol
• 그러니까 이 projection은, 우리가 잘 아는 그냥 그 projection이 맞음
• 이 mathcal F는 x들, 그러니까 파라미터가 "살아야하는" 공간을
의미
다시 Notation
IDS Lab
Jamie Seol
• 최적화 문제를 조금 다른 시점에서 바라봅시다
• mathcal F가 bounded diameter를 가지고 ft 가 convex고
gradient가 bounded일때
• 어떤 step t 에서
• 내가 를 고르면
• 악마가 와서 를 골라줌
• 이걸 t = 1부터 t = T 까지 진행했을때, 다음의 값 (일명 regret)이
최소가 되게 하는 전략을 짜는것이 목표
• greedy하게 하나씩 선택 vs global하게 하나만 선택
Online Optimization Problem
IDS Lab
Jamie Seol
• 정확히는, 저 regret이 그냥 작기만 하면 되는게 아니라
• , 즉 RT/T 가 T 가 커짐에 따라서 0으로 수렴해야함
• 이게 우리가 말하는 그 학습이 수렴했다 라는 것
• 이 세팅에서 regret의 평균이 0으로 수렴하도록 전략을 짜면,
• 그게 (induces, →) stochastic optimization의 해가 됨이 알려져있음
• 어렵게 말했지만 결국 악마의 선택이란건 mini-batch를 뜻하고
• regret이란 개념을 도입해서 좀 더 global하게 일반화 시킨것임
Online Optimization Problem
IDS Lab
Jamie Seol
• 현재 인류(?)가 이 문제를 어떻게 풀고 있냐면:
Online Optimization Problem
IDS Lab
Jamie Seol
• 현재 인류(?)가 이 문제를 어떻게 풀고 있냐면:
Online Optimization Problem
이게 뭘까?
IDS Lab
Jamie Seol
• 우린 별로 만날 일이 없지만, 세상에는 다양한 최적화 문제가 있고..
• 그 중에는 파라미터가 특정한 공간 안에 있기를 바라는 경우가 있음
• 아까 말한 mathcal F, 즉 파라미터가 "살아야하는" 공간
• 예) 매우 극단적으로 파라미터가 행렬인데 nuclear norm
(singular value의 절대값의 합)이 1 이하인 경우 내에서만 찾아야
한다면?
• low-rank matrix completion with conditional gradient 문제
• 고급인공지능 과제로 나옴..
• 문제는, 실제로 projection을 수행하는거 자체가 또다른
optimization 문제고 이는 그닥 쉬운 문제가 아님
• 근데 이렇게 step 밟은 후에 projection 하는건 말이 되긴 하나?
• global optima는 아니고 local optima를 찾는 heuristic
읽을거리
IDS Lab
Jamie Seol
• 이렇게 projection을 해야하는 경우, Frank-Wolfe 알고리즘이 유용
• 이마저도 아주 빠르진 않지만, 그래도 적당한 속도에 적당한 근사를
제공
읽을거리
IDS Lab
Jamie Seol
• 다시 돌아가서
• AMSGrad는 좀 더 복잡함 (요약: 파라미터를 너무 키우진 않음)
Online Optimization Problem
IDS Lab
Jamie Seol
복습해봅시다 2017 여름 제이미 세미나
IDS Lab
Jamie Seol
• Adam과 친구들은 learning rate가 파라미터에 따라선 너무 크거나
작을 수 있어서 문제가 됨
• AMSGrad는 너무 크지 않도록 조절했으나 성능이 나아지진않음
• 얼마나 극단적이길래?
• ResNet-34, CIFAR-10, Adam에서 CNN 3 x 3 filter랑 bias를 조사
• 로그스케일임
Extreme Learning Rate
IDS Lab
Jamie Seol
• 근데 크거나 작은게 문제가 되나?
• 큰건 확실히 문제가 됨. 수렴은 커녕 발산할수도 있음
• 잘 따져봅시다.
• Q1. 작은 learning rate는 정말로 Adam에게 해가 되나?
• Q2. learning rate의 초기값을 크게 설정하면 해결 되는거 아닌가?
Extreme Learning Rate
IDS Lab
Jamie Seol
• learning rate의 초기값과 관계 없이, 문제가 되는 경우가 항상 존재한다
• 물론 이렇게 따지기 시작하면 SGD도 문제 있는 경우가 많긴 할텐데..
• 그럼 베타를 조절해서 해결하는건?
Extreme Learning Rate
IDS Lab
Jamie Seol
• 엄청 재밌지는 않은 예시 (Adam은 안되고 SGD는 됨)
• Adam이 자꾸 learninge rate를 줄여버려서 생긴 문제
Extreme Learning Rate
-100 -100
시작(t=1)에서 망함
IDS Lab
Jamie Seol
• 그래서 learning rate를 제한시켜야 합니다~
• 너무 작으면 문제가 된다는것을 (convex 한정이지만) 증명 + 예시
• 단순한 clipping을 하려는게 아니라
• 시작은 Adam처럼 (빠르고)
• 끝은 SGD처럼 (generalization이 잘 되고)
제안: Dynamic Bound
upper bound
lower bound
inital final
Adamst SGDst
IDS Lab
Jamie Seol
• 약간 어이없을수도 있지만 결국 clipping threshold를 점점 줄이는게 다임
제안: Dynamic Bound
이게 은근 중요
IDS Lab
Jamie Seol
• 그렇지만 이렇게 갈수록 좁아지는 bound가 있고 inverse root로 줄
어드는 조건 등등등을 모아서 다음을 증명함
• 중요한건 라는 부분, 즉 regret의 평균은 제곱근의
역수 속도로 수렴하고, 이건 상당히 좋은 결과임
• clipping 할때 inverse root 부분이 있기 때문에 이런 결과가 나옴
• 증명은 죄다 대입해서 3 페이지 동안 부등식 정리하면 나옴..
제안: Dynamic Bound
IDS Lab
Jamie Seol
• Baselines: SGDM, AdaGrad, Adam, AMSGrad
• Datasets: MNIST, CIFAR-10, Penn Treebank LM
• baseline들은 하이퍼파라미터를 열심히 찾았으며 (넓게 시작 - 세심하
게 fine tune), optimizer랑 관련 없는 하이퍼파라미터들은 '많이들 쓰
는' 설정으로 했다고 함
• dropout rate 같은거
• AdaBound는 논문에서 제시한 하이퍼파라미터 기본값 하나로만 실험
• 실제로는 더 하지 않았을까?¿
실험
IDS Lab
Jamie Seol
• Adam이 generalization 잘 못한다는것만 재확인 하는 정도의 결과
실험 / MNIST
IDS Lab
Jamie Seol
• 원하던대로, 초반엔 빠르고 후반엔 좋고 (SGD보다도 좋은 결과?)
실험 / CIFAR-10 * epoch 150에서 learning rate를 한번 확 1/10로 줄여줌
IDS Lab
Jamie Seol
• 딱히 초반이 빠르진 않지만, SGD보단 smooth하고 성능은 준수함
실험 / CIFAR-10 * epoch 75에서 learning rate를 한번 확 1/10로 줄여주는것으로 추정,
논문엔 언급이 없음
* 그 와중에 layer 수에 따라서 최종
성능이 달라짐. layer가 많으면 더
좋음 (물론 overfit 되기도 쉽고)
IDS Lab
Jamie Seol
• 느낌이지만, 레이어별로 역할이 보통 다르다보니 learning rate의
extremeness가 모델이 복잡하면 더 많이 나타나는것 같다 (별다른
reasoning 언급 없었음)
• 왜 SGD가 아직도 그렇게나 (성능 면에서) 좋은지 잘 모르겠습니다..
• 결론은, adaptive method들은 learning rate를 너무 작게 혹은 크게
만드는 경향이 있고 이는 문제가 되며, 우리의 방법이 그걸 막아준다
• 그래서 다소 빠르게 출발하면서도 다소 좋은 결과를 얻을 수 있다
Discussion
IDS Lab
Jamie Seol
References
• Wilson,Ashia C., et al. "The Marginal Value ofAdaptive Gradient Methods in Machine Learning." arXiv
preprint arXiv:1705.08292 (2017).
• Zhang, Jian, Ioannis Mitliagkas, and Christopher Ré. "YellowFin and theArt of Momentum Tuning."
arXiv preprint arXiv:1706.03471 (2017).
• Zhang, Chiyuan, et al. "Understanding deep learning requires rethinking generalization." arXiv preprint
arXiv:1611.03530 (2016).
• Polyak, Boris T. "Some methods of speeding up the convergence of iteration methods." USSR
Computational Mathematics and Mathematical Physics 4.5 (1964): 1-17.
• Goh, "Why Momentum Really Works", Distill, 2017. http://doi.org/ 10.23915/distill.00006
• Luo, Liangchen, et al. "Adaptive gradient methods with dynamic bound of learning rate." arXiv preprint
arXiv:1902.09843 (2019).

Contenu connexe

Tendances

딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기NAVER D2
 
[2017 PYCON 튜토리얼]OpenAI Gym을 이용한 강화학습 에이전트 만들기
[2017 PYCON 튜토리얼]OpenAI Gym을 이용한 강화학습 에이전트 만들기[2017 PYCON 튜토리얼]OpenAI Gym을 이용한 강화학습 에이전트 만들기
[2017 PYCON 튜토리얼]OpenAI Gym을 이용한 강화학습 에이전트 만들기이 의령
 
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)Euijin Jeong
 
파이썬으로 나만의 강화학습 환경 만들기
파이썬으로 나만의 강화학습 환경 만들기파이썬으로 나만의 강화학습 환경 만들기
파이썬으로 나만의 강화학습 환경 만들기정주 김
 
[NeuralIPS 2020]filter in filter pruning
[NeuralIPS 2020]filter in filter pruning[NeuralIPS 2020]filter in filter pruning
[NeuralIPS 2020]filter in filter pruningKIMMINHA3
 
[DL輪読会]Towards End-to-End Prosody Transfer for Expressive Speech Synthesis wi...
[DL輪読会]Towards End-to-End Prosody Transfer for Expressive Speech Synthesis wi...[DL輪読会]Towards End-to-End Prosody Transfer for Expressive Speech Synthesis wi...
[DL輪読会]Towards End-to-End Prosody Transfer for Expressive Speech Synthesis wi...Deep Learning JP
 
Ai 그까이거
Ai 그까이거Ai 그까이거
Ai 그까이거도형 임
 
기계학습 / 딥러닝이란 무엇인가
기계학습 / 딥러닝이란 무엇인가기계학습 / 딥러닝이란 무엇인가
기계학습 / 딥러닝이란 무엇인가Yongha Kim
 
책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017
책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017
책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017Taehoon Kim
 
Pixel RNN to Pixel CNN++
Pixel RNN to Pixel CNN++Pixel RNN to Pixel CNN++
Pixel RNN to Pixel CNN++Dongheon Lee
 
알아두면 쓸데있는 신기한 강화학습 NAVER 2017
알아두면 쓸데있는 신기한 강화학습 NAVER 2017알아두면 쓸데있는 신기한 강화학습 NAVER 2017
알아두면 쓸데있는 신기한 강화학습 NAVER 2017Taehoon Kim
 
diffusion 모델부터 DALLE2까지.pdf
diffusion 모델부터 DALLE2까지.pdfdiffusion 모델부터 DALLE2까지.pdf
diffusion 모델부터 DALLE2까지.pdf수철 박
 
Focal loss의 응용(Detection & Classification)
Focal loss의 응용(Detection & Classification)Focal loss의 응용(Detection & Classification)
Focal loss의 응용(Detection & Classification)홍배 김
 
딥 러닝 자연어 처리를 학습을 위한 파워포인트. (Deep Learning for Natural Language Processing)
딥 러닝 자연어 처리를 학습을 위한 파워포인트. (Deep Learning for Natural Language Processing)딥 러닝 자연어 처리를 학습을 위한 파워포인트. (Deep Learning for Natural Language Processing)
딥 러닝 자연어 처리를 학습을 위한 파워포인트. (Deep Learning for Natural Language Processing)WON JOON YOO
 
Particles Swarm Optimization
Particles Swarm OptimizationParticles Swarm Optimization
Particles Swarm OptimizationBrian Raafiu
 
딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초Hyungsoo Ryoo
 
내가 이해하는 SVM(왜, 어떻게를 중심으로)
내가 이해하는 SVM(왜, 어떻게를 중심으로)내가 이해하는 SVM(왜, 어떻게를 중심으로)
내가 이해하는 SVM(왜, 어떻게를 중심으로)SANG WON PARK
 
딥러닝 기반의 자연어처리 최근 연구 동향
딥러닝 기반의 자연어처리 최근 연구 동향딥러닝 기반의 자연어처리 최근 연구 동향
딥러닝 기반의 자연어처리 최근 연구 동향LGCNSairesearch
 

Tendances (20)

딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기
 
[2017 PYCON 튜토리얼]OpenAI Gym을 이용한 강화학습 에이전트 만들기
[2017 PYCON 튜토리얼]OpenAI Gym을 이용한 강화학습 에이전트 만들기[2017 PYCON 튜토리얼]OpenAI Gym을 이용한 강화학습 에이전트 만들기
[2017 PYCON 튜토리얼]OpenAI Gym을 이용한 강화학습 에이전트 만들기
 
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
 
파이썬으로 나만의 강화학습 환경 만들기
파이썬으로 나만의 강화학습 환경 만들기파이썬으로 나만의 강화학습 환경 만들기
파이썬으로 나만의 강화학습 환경 만들기
 
[NeuralIPS 2020]filter in filter pruning
[NeuralIPS 2020]filter in filter pruning[NeuralIPS 2020]filter in filter pruning
[NeuralIPS 2020]filter in filter pruning
 
[DL輪読会]Towards End-to-End Prosody Transfer for Expressive Speech Synthesis wi...
[DL輪読会]Towards End-to-End Prosody Transfer for Expressive Speech Synthesis wi...[DL輪読会]Towards End-to-End Prosody Transfer for Expressive Speech Synthesis wi...
[DL輪読会]Towards End-to-End Prosody Transfer for Expressive Speech Synthesis wi...
 
Ai 그까이거
Ai 그까이거Ai 그까이거
Ai 그까이거
 
기계학습 / 딥러닝이란 무엇인가
기계학습 / 딥러닝이란 무엇인가기계학습 / 딥러닝이란 무엇인가
기계학습 / 딥러닝이란 무엇인가
 
책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017
책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017
책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017
 
Pixel RNN to Pixel CNN++
Pixel RNN to Pixel CNN++Pixel RNN to Pixel CNN++
Pixel RNN to Pixel CNN++
 
알아두면 쓸데있는 신기한 강화학습 NAVER 2017
알아두면 쓸데있는 신기한 강화학습 NAVER 2017알아두면 쓸데있는 신기한 강화학습 NAVER 2017
알아두면 쓸데있는 신기한 강화학습 NAVER 2017
 
diffusion 모델부터 DALLE2까지.pdf
diffusion 모델부터 DALLE2까지.pdfdiffusion 모델부터 DALLE2까지.pdf
diffusion 모델부터 DALLE2까지.pdf
 
Focal loss의 응용(Detection & Classification)
Focal loss의 응용(Detection & Classification)Focal loss의 응용(Detection & Classification)
Focal loss의 응용(Detection & Classification)
 
딥 러닝 자연어 처리를 학습을 위한 파워포인트. (Deep Learning for Natural Language Processing)
딥 러닝 자연어 처리를 학습을 위한 파워포인트. (Deep Learning for Natural Language Processing)딥 러닝 자연어 처리를 학습을 위한 파워포인트. (Deep Learning for Natural Language Processing)
딥 러닝 자연어 처리를 학습을 위한 파워포인트. (Deep Learning for Natural Language Processing)
 
GoogLenet
GoogLenetGoogLenet
GoogLenet
 
Particles Swarm Optimization
Particles Swarm OptimizationParticles Swarm Optimization
Particles Swarm Optimization
 
딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초
 
내가 이해하는 SVM(왜, 어떻게를 중심으로)
내가 이해하는 SVM(왜, 어떻게를 중심으로)내가 이해하는 SVM(왜, 어떻게를 중심으로)
내가 이해하는 SVM(왜, 어떻게를 중심으로)
 
Soft Actor Critic 解説
Soft Actor Critic 解説Soft Actor Critic 解説
Soft Actor Critic 解説
 
딥러닝 기반의 자연어처리 최근 연구 동향
딥러닝 기반의 자연어처리 최근 연구 동향딥러닝 기반의 자연어처리 최근 연구 동향
딥러닝 기반의 자연어처리 최근 연구 동향
 

Similaire à AdaBound 설명

[유쉘] 4.활성화 함수
[유쉘] 4.활성화 함수[유쉘] 4.활성화 함수
[유쉘] 4.활성화 함수lee yuseong
 
두 번째 startlink.live: 박성원 (ntopia) - PS가 이렇게 해롭습니다. 여러분!
두 번째 startlink.live: 박성원 (ntopia) - PS가 이렇게 해롭습니다. 여러분!두 번째 startlink.live: 박성원 (ntopia) - PS가 이렇게 해롭습니다. 여러분!
두 번째 startlink.live: 박성원 (ntopia) - PS가 이렇게 해롭습니다. 여러분!Startlink
 
학생 개발자, 인턴십으로 성장하기
학생 개발자, 인턴십으로 성장하기학생 개발자, 인턴십으로 성장하기
학생 개발자, 인턴십으로 성장하기재원 최
 
현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점
현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점
현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점Wonha Ryu
 
애자일 도입과 사례 공유
애자일 도입과 사례 공유애자일 도입과 사례 공유
애자일 도입과 사례 공유agilekorea
 
Understanding deep learning requires rethinking generalization (2017) 1/2
Understanding deep learning requires rethinking generalization (2017) 1/2Understanding deep learning requires rethinking generalization (2017) 1/2
Understanding deep learning requires rethinking generalization (2017) 1/2정훈 서
 
두 번째 startlink.live: 김재홍 (xhark) - 알고리즘 문제 출제 전략
두 번째 startlink.live: 김재홍 (xhark) - 알고리즘 문제 출제 전략두 번째 startlink.live: 김재홍 (xhark) - 알고리즘 문제 출제 전략
두 번째 startlink.live: 김재홍 (xhark) - 알고리즘 문제 출제 전략Startlink
 
겜돌이에서 앱 개발자로 (Tommy)
겜돌이에서 앱 개발자로 (Tommy)겜돌이에서 앱 개발자로 (Tommy)
겜돌이에서 앱 개발자로 (Tommy)kyejusung
 
2.성길제 좌충우돌 컴즈인 적응기
2.성길제  좌충우돌 컴즈인 적응기2.성길제  좌충우돌 컴즈인 적응기
2.성길제 좌충우돌 컴즈인 적응기Jinho Jung
 
[컴퓨터비전과 인공지능] 10. 신경망 학습하기 파트 1 - 1. 활성화 함수
[컴퓨터비전과 인공지능] 10. 신경망 학습하기 파트 1 - 1. 활성화 함수[컴퓨터비전과 인공지능] 10. 신경망 학습하기 파트 1 - 1. 활성화 함수
[컴퓨터비전과 인공지능] 10. 신경망 학습하기 파트 1 - 1. 활성화 함수jdo
 
Ml for 정형데이터
Ml for 정형데이터Ml for 정형데이터
Ml for 정형데이터JEEHYUN PAIK
 

Similaire à AdaBound 설명 (12)

[유쉘] 4.활성화 함수
[유쉘] 4.활성화 함수[유쉘] 4.활성화 함수
[유쉘] 4.활성화 함수
 
두 번째 startlink.live: 박성원 (ntopia) - PS가 이렇게 해롭습니다. 여러분!
두 번째 startlink.live: 박성원 (ntopia) - PS가 이렇게 해롭습니다. 여러분!두 번째 startlink.live: 박성원 (ntopia) - PS가 이렇게 해롭습니다. 여러분!
두 번째 startlink.live: 박성원 (ntopia) - PS가 이렇게 해롭습니다. 여러분!
 
학생 개발자, 인턴십으로 성장하기
학생 개발자, 인턴십으로 성장하기학생 개발자, 인턴십으로 성장하기
학생 개발자, 인턴십으로 성장하기
 
현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점
현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점
현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점
 
애자일 도입과 사례 공유
애자일 도입과 사례 공유애자일 도입과 사례 공유
애자일 도입과 사례 공유
 
Understanding deep learning requires rethinking generalization (2017) 1/2
Understanding deep learning requires rethinking generalization (2017) 1/2Understanding deep learning requires rethinking generalization (2017) 1/2
Understanding deep learning requires rethinking generalization (2017) 1/2
 
두 번째 startlink.live: 김재홍 (xhark) - 알고리즘 문제 출제 전략
두 번째 startlink.live: 김재홍 (xhark) - 알고리즘 문제 출제 전략두 번째 startlink.live: 김재홍 (xhark) - 알고리즘 문제 출제 전략
두 번째 startlink.live: 김재홍 (xhark) - 알고리즘 문제 출제 전략
 
DebugIt/chapter5~8
DebugIt/chapter5~8DebugIt/chapter5~8
DebugIt/chapter5~8
 
겜돌이에서 앱 개발자로 (Tommy)
겜돌이에서 앱 개발자로 (Tommy)겜돌이에서 앱 개발자로 (Tommy)
겜돌이에서 앱 개발자로 (Tommy)
 
2.성길제 좌충우돌 컴즈인 적응기
2.성길제  좌충우돌 컴즈인 적응기2.성길제  좌충우돌 컴즈인 적응기
2.성길제 좌충우돌 컴즈인 적응기
 
[컴퓨터비전과 인공지능] 10. 신경망 학습하기 파트 1 - 1. 활성화 함수
[컴퓨터비전과 인공지능] 10. 신경망 학습하기 파트 1 - 1. 활성화 함수[컴퓨터비전과 인공지능] 10. 신경망 학습하기 파트 1 - 1. 활성화 함수
[컴퓨터비전과 인공지능] 10. 신경망 학습하기 파트 1 - 1. 활성화 함수
 
Ml for 정형데이터
Ml for 정형데이터Ml for 정형데이터
Ml for 정형데이터
 

AdaBound 설명

  • 1. IDS Lab Adaptive Gradient Methods with Dynamic Bound of Learning Rate Liangchen Luo, Yuanhao Xiong, Yan Liu, Xu San Peking, Zhejiang, USC, Peking ICLR2019(open review) presentedby Jamie Seol
  • 2. IDS Lab Jamie Seol Summary • 일명 "AdaBound" • PyTorch 코드도 있음 • https://github.com/Luolc/AdaBound • 파라미터별 learning rate가 다른 경우 • 너무 크거나 너무 작으면 안되고 • 적절해야한다 • 놀랍게도 너무나 당연한 소리 같지만 은근히 다들 신경 안쓰던 부분 • 오늘도 재밌는 제이미 세미나 출처: http://intelliz.co.kr/?p=196
  • 3. IDS Lab Jamie Seol Summary • 일명 "AdaBound" • PyTorch 코드도 있음 • https://github.com/Luolc/AdaBound • 파라미터별 learning rate가 다른 경우 • 너무 크거나 너무 작으면 안되고 • 적절해야한다 • 놀랍게도 너무나 당연한 소리 같지만 은근히 다들 신경 안쓰던 부분 • 오늘도 재밌는 제이미 세미나
  • 4. IDS Lab Jamie Seol Summary • 파라미터별 learning rate가 같은 경우 • 그러니까 SGD (혹은 mini-batch, momentum을 섞은 경우 일명 heavy-ball) 계열은 generalization이 잘 되지만 학습이 느림 • 파라미터별 learning rate를 따로 주는 경우 • 다들 쓰는 AdaGrad, RMSProp, Adam이 해당 • 학습이 빠르지만 generalization이 잘 안될때가 있음 • learning rate가 너무 크거나 작기 때문 • 너무 큰걸 방지하기 위해 AMSGrad가 탄생 • 그러나 너무 작은 경우가 여전히 문제다 • 따라서 AdaBound에선 위 아래 모두 제한을 두는것으로 해결 • (광고) SGD보다 빠르고 Adam보다 좋다!
  • 5. IDS Lab Jamie Seol 복습해봅시다 2017 봄 제이미 세미나 세미나 내용 요약: 우리가 알고 있던 regularization method들이 정말로 그 역할을 하고 있는지 다시 생각해봅시다
  • 6. IDS Lab Jamie Seol 복습해봅시다 2017 여름 제이미 세미나 세미나 내용 요약: adaptive gradient descent 계열은 아무래도 generalization을 잘 못하는거 같다
  • 7. IDS Lab Jamie Seol 복습해봅시다 2017 여름 제이미 세미나 세미나 내용 요약: adaptive gradient descent 계열은 아무래도 generalization을 잘 못하는거 같다
  • 8. IDS Lab Jamie Seol 복습해봅시다 2017 여름 제이미 세미나 세미나 내용 요약: adaptive gradient descent 계열은 아무래도 generalization을 잘 못하는거 같다 즉 오늘의 세미나는 제이미의 optimizer 시리즈 제 3편입니다 시청해주셔서 감사합니다 구독 좋아요 그리고 알림설정까지
  • 9. IDS Lab Jamie Seol Notation • dot product 빼고는 max, min을 포함해서 대부분의 벡터 연산이 element-wise입니다 • 벡터 a, 그리고 positive definite이고 nonsingular인 행렬 M에 대해 서 • a/M은 M-1a 인거고 M1/2은 M1/2M1/2 = M 이 되는 행렬인데 positivie definite이면 이런 행렬이 존재 할 수 있음 (왜그럴까요? 숙제) • 를 모든 d x d positive definite 행렬의 집합이라 합시다
  • 10. IDS Lab Jamie Seol 잠깐! 제이미의 수학 교양 시간 • 2017 겨울 제이미 세미나 참고
  • 11. IDS Lab Jamie Seol 잠깐! 제이미의 수학 교양 시간 • positive definite nonsingular matrix A에 대해서, 아래 d는 metric 이 됨 • 여러가지 방식으로 좀 더 일반화도 가능합니다 • semidefinite 혹은 singular로는 일반화가 왜 안될까요? 숙제 • 읽을거리 • A-1가 covariant matrix일땐 이 d를 Mahalanobis metric이라 고 부르고 metric-learning image retrieval 논문에서 쓰임 • 이걸로 공간을 만들면 pseudo-Euclidean space라고 함 • quadratic form의 일종 (왜 PSD, quadratic form 같은걸 공부 해야하는지 알려주는 챕터)
  • 12. IDS Lab Jamie Seol • 그러니까 이 projection은, 우리가 잘 아는 그냥 그 projection이 맞음 • 이 mathcal F는 x들, 그러니까 파라미터가 "살아야하는" 공간을 의미 다시 Notation
  • 13. IDS Lab Jamie Seol • 최적화 문제를 조금 다른 시점에서 바라봅시다 • mathcal F가 bounded diameter를 가지고 ft 가 convex고 gradient가 bounded일때 • 어떤 step t 에서 • 내가 를 고르면 • 악마가 와서 를 골라줌 • 이걸 t = 1부터 t = T 까지 진행했을때, 다음의 값 (일명 regret)이 최소가 되게 하는 전략을 짜는것이 목표 • greedy하게 하나씩 선택 vs global하게 하나만 선택 Online Optimization Problem
  • 14. IDS Lab Jamie Seol • 정확히는, 저 regret이 그냥 작기만 하면 되는게 아니라 • , 즉 RT/T 가 T 가 커짐에 따라서 0으로 수렴해야함 • 이게 우리가 말하는 그 학습이 수렴했다 라는 것 • 이 세팅에서 regret의 평균이 0으로 수렴하도록 전략을 짜면, • 그게 (induces, →) stochastic optimization의 해가 됨이 알려져있음 • 어렵게 말했지만 결국 악마의 선택이란건 mini-batch를 뜻하고 • regret이란 개념을 도입해서 좀 더 global하게 일반화 시킨것임 Online Optimization Problem
  • 15. IDS Lab Jamie Seol • 현재 인류(?)가 이 문제를 어떻게 풀고 있냐면: Online Optimization Problem
  • 16. IDS Lab Jamie Seol • 현재 인류(?)가 이 문제를 어떻게 풀고 있냐면: Online Optimization Problem 이게 뭘까?
  • 17. IDS Lab Jamie Seol • 우린 별로 만날 일이 없지만, 세상에는 다양한 최적화 문제가 있고.. • 그 중에는 파라미터가 특정한 공간 안에 있기를 바라는 경우가 있음 • 아까 말한 mathcal F, 즉 파라미터가 "살아야하는" 공간 • 예) 매우 극단적으로 파라미터가 행렬인데 nuclear norm (singular value의 절대값의 합)이 1 이하인 경우 내에서만 찾아야 한다면? • low-rank matrix completion with conditional gradient 문제 • 고급인공지능 과제로 나옴.. • 문제는, 실제로 projection을 수행하는거 자체가 또다른 optimization 문제고 이는 그닥 쉬운 문제가 아님 • 근데 이렇게 step 밟은 후에 projection 하는건 말이 되긴 하나? • global optima는 아니고 local optima를 찾는 heuristic 읽을거리
  • 18. IDS Lab Jamie Seol • 이렇게 projection을 해야하는 경우, Frank-Wolfe 알고리즘이 유용 • 이마저도 아주 빠르진 않지만, 그래도 적당한 속도에 적당한 근사를 제공 읽을거리
  • 19. IDS Lab Jamie Seol • 다시 돌아가서 • AMSGrad는 좀 더 복잡함 (요약: 파라미터를 너무 키우진 않음) Online Optimization Problem
  • 20. IDS Lab Jamie Seol 복습해봅시다 2017 여름 제이미 세미나
  • 21. IDS Lab Jamie Seol • Adam과 친구들은 learning rate가 파라미터에 따라선 너무 크거나 작을 수 있어서 문제가 됨 • AMSGrad는 너무 크지 않도록 조절했으나 성능이 나아지진않음 • 얼마나 극단적이길래? • ResNet-34, CIFAR-10, Adam에서 CNN 3 x 3 filter랑 bias를 조사 • 로그스케일임 Extreme Learning Rate
  • 22. IDS Lab Jamie Seol • 근데 크거나 작은게 문제가 되나? • 큰건 확실히 문제가 됨. 수렴은 커녕 발산할수도 있음 • 잘 따져봅시다. • Q1. 작은 learning rate는 정말로 Adam에게 해가 되나? • Q2. learning rate의 초기값을 크게 설정하면 해결 되는거 아닌가? Extreme Learning Rate
  • 23. IDS Lab Jamie Seol • learning rate의 초기값과 관계 없이, 문제가 되는 경우가 항상 존재한다 • 물론 이렇게 따지기 시작하면 SGD도 문제 있는 경우가 많긴 할텐데.. • 그럼 베타를 조절해서 해결하는건? Extreme Learning Rate
  • 24. IDS Lab Jamie Seol • 엄청 재밌지는 않은 예시 (Adam은 안되고 SGD는 됨) • Adam이 자꾸 learninge rate를 줄여버려서 생긴 문제 Extreme Learning Rate -100 -100 시작(t=1)에서 망함
  • 25. IDS Lab Jamie Seol • 그래서 learning rate를 제한시켜야 합니다~ • 너무 작으면 문제가 된다는것을 (convex 한정이지만) 증명 + 예시 • 단순한 clipping을 하려는게 아니라 • 시작은 Adam처럼 (빠르고) • 끝은 SGD처럼 (generalization이 잘 되고) 제안: Dynamic Bound upper bound lower bound inital final Adamst SGDst
  • 26. IDS Lab Jamie Seol • 약간 어이없을수도 있지만 결국 clipping threshold를 점점 줄이는게 다임 제안: Dynamic Bound 이게 은근 중요
  • 27. IDS Lab Jamie Seol • 그렇지만 이렇게 갈수록 좁아지는 bound가 있고 inverse root로 줄 어드는 조건 등등등을 모아서 다음을 증명함 • 중요한건 라는 부분, 즉 regret의 평균은 제곱근의 역수 속도로 수렴하고, 이건 상당히 좋은 결과임 • clipping 할때 inverse root 부분이 있기 때문에 이런 결과가 나옴 • 증명은 죄다 대입해서 3 페이지 동안 부등식 정리하면 나옴.. 제안: Dynamic Bound
  • 28. IDS Lab Jamie Seol • Baselines: SGDM, AdaGrad, Adam, AMSGrad • Datasets: MNIST, CIFAR-10, Penn Treebank LM • baseline들은 하이퍼파라미터를 열심히 찾았으며 (넓게 시작 - 세심하 게 fine tune), optimizer랑 관련 없는 하이퍼파라미터들은 '많이들 쓰 는' 설정으로 했다고 함 • dropout rate 같은거 • AdaBound는 논문에서 제시한 하이퍼파라미터 기본값 하나로만 실험 • 실제로는 더 하지 않았을까?¿ 실험
  • 29. IDS Lab Jamie Seol • Adam이 generalization 잘 못한다는것만 재확인 하는 정도의 결과 실험 / MNIST
  • 30. IDS Lab Jamie Seol • 원하던대로, 초반엔 빠르고 후반엔 좋고 (SGD보다도 좋은 결과?) 실험 / CIFAR-10 * epoch 150에서 learning rate를 한번 확 1/10로 줄여줌
  • 31. IDS Lab Jamie Seol • 딱히 초반이 빠르진 않지만, SGD보단 smooth하고 성능은 준수함 실험 / CIFAR-10 * epoch 75에서 learning rate를 한번 확 1/10로 줄여주는것으로 추정, 논문엔 언급이 없음 * 그 와중에 layer 수에 따라서 최종 성능이 달라짐. layer가 많으면 더 좋음 (물론 overfit 되기도 쉽고)
  • 32. IDS Lab Jamie Seol • 느낌이지만, 레이어별로 역할이 보통 다르다보니 learning rate의 extremeness가 모델이 복잡하면 더 많이 나타나는것 같다 (별다른 reasoning 언급 없었음) • 왜 SGD가 아직도 그렇게나 (성능 면에서) 좋은지 잘 모르겠습니다.. • 결론은, adaptive method들은 learning rate를 너무 작게 혹은 크게 만드는 경향이 있고 이는 문제가 되며, 우리의 방법이 그걸 막아준다 • 그래서 다소 빠르게 출발하면서도 다소 좋은 결과를 얻을 수 있다 Discussion
  • 33. IDS Lab Jamie Seol References • Wilson,Ashia C., et al. "The Marginal Value ofAdaptive Gradient Methods in Machine Learning." arXiv preprint arXiv:1705.08292 (2017). • Zhang, Jian, Ioannis Mitliagkas, and Christopher Ré. "YellowFin and theArt of Momentum Tuning." arXiv preprint arXiv:1706.03471 (2017). • Zhang, Chiyuan, et al. "Understanding deep learning requires rethinking generalization." arXiv preprint arXiv:1611.03530 (2016). • Polyak, Boris T. "Some methods of speeding up the convergence of iteration methods." USSR Computational Mathematics and Mathematical Physics 4.5 (1964): 1-17. • Goh, "Why Momentum Really Works", Distill, 2017. http://doi.org/ 10.23915/distill.00006 • Luo, Liangchen, et al. "Adaptive gradient methods with dynamic bound of learning rate." arXiv preprint arXiv:1902.09843 (2019).