[Andrew Ng] 5-1. Using an Appropriate Scale
Using an Appropriate Scale
- 하이퍼파라미터나 값들을 탐색할 때 적절한 단위(스케일)를 선택해야 한다.
- 왜 스케일이 중요한가?
- 값의 범위가 크거나 작을 때 균등하게 탐색하면 비효율이 된다.
- 이 범위를 선형(linear) 기준으로 sampling하면
range=[0.0001,1]
- 1 과 0.0001 사이의 값중에 균일하게 무작위 값을 고르게 되면, 90%의 값이 1 과 0.1 사이에 존재하기 때문에, 공평하지 않음.
-
적절한 스케일 예시: Log Scale
- 적절한 방법은 로그 스케일(log scale)로 샘플링하는 것이다.
- 먼저 로그 변환 범위를 계산
a=log10(i1),b=log10(i2)
- i1 = 하이퍼파라미터의 최소값
- i2 = 하이퍼파라미터의 최대값
- 그 범위에서 균등하게 난수 생성:
r=(b−a)⋅rand()
- 지수 변환
α=10rr∈[−4,0]
- 그러면 α는 균등한 로그 스케일 분포를 따름
-
learning rate 스케일 예시
- η 범위가 [10−4,100]이고 log 스케일로 샘플하면:
α=10r,r∈[−4,0]
- 이는 10−4,10−3,10−2,10−1,100 사이 적절히 분포된 값 생성
출처 및 참고 자료
- Andrew Ng, Improving Deep Neural Network, DeepLearningAI