Google ML Bootcamp(181)
-
22. RMSprop
Momentum 말고도 RMSprop이라고 하는 알고리즘도 있다. - 지금은 경사 하강법 대신 더 빠르고 성능이 좋은 알고리즘을 소개중! Weight update 시 Momentum보다 정규화하는 과정이 추가됨. 우리가 원하는 것. W(수평방향)으로는 update 많이, b(수직방향)으로는 update 적게되길 원함. - S(dW)에서 dW는 현재 값이 작을 것이다. 왜냐하면 지금으로도 충분하고, 기울기값이 작기 때문 - S(db)에서 db는 현재 값이 클 것이다. 왜냐하면 지금으로 부족하여 기울기값이 크기 때문 따라서 작은 값으로 나눌 경우 그 값 자체는 상대적으로 크게 되고, W는 update를 많이하게 된다. 정리 1. Batch Gradient Descent보다 mini-batch Gradient..
2023.09.11 -
21. Gradient Descent with Momentum
Momentum : Gradient Descent 방식보다 빠른 알고리즘 - 기본 아이디어 : 지수 가중 평균을 산출하는 것 Gradient Descent보다 발전한 Momentum이라는 알고리즘을 배우기 위해 기본 개념인 지수 가중 평균을 배워온 것!! at each mini-batch : weight update - 이때 W[l] -= learning_rate * dW[l] 에서 W[l] -= learning_rate * V(dW[l])로 수정함을 볼 수 있다. - 이는 현재 input의 영향력을 조절하는 것으로 최저점에 도달하기 위한 가로,세로 이동량을 다르게 할 수 있다. - 왜? V(dW)를 통해 이전 W영향력을 반영하여 더 많이 update할 수도, V(db)를 통해 이전 b영향력을 반영하여 ..
2023.09.11 -
20. Bias Correction in Exponentially Weighted Averages
실제로 베타에 따른 분포도를 그려본다면 초록색 그래프보다는 보라색 그래프를 얻을 수 있다. 왼쪽 수식 전개를 살펴봄과 같이 V(0) = 0 으로 초기화하기 때문에 초반부 input v(1)=베타(1)에 대한 영향력이 매우 작은채로 그래프 상에서 실제보다 낮게 표시된다. 따라서 오른쪽 수식전개와 같은 항을 추가함으로써 초반부에 대한 bias를 수정할 수 있다 - 이때 t가 커짐에 따라 분모는 1에 근사해지므로 days가 증가할수록 기존의 그래프와 동일해진다 - 따라서 초반부에 발생하는 bias만 해결할 수 있게된다. 여전히 weight moving average이 무엇인지, 어떻게 구현하는지도 알아보았지만 어디에 어떻게 왜 사용되는지는 명확하지 않은 것 같다. 다음 비디오에서 알아보자.
2023.09.11 -
19. Understanding Exponentially Weighted Averages
V100에 대해 수식을 전개해보자. 1/e(자연 e) 가 될때까지 a(베타)를 몇번 곱해야되나 따져보면 a값에 따라 지수가 달라진다. - 1/e와 비슷한 수준이 될때까지의 평균을 의미하며, a=0.9일때는 number of averages = 10, a=0.98일때는 50이다. - 이는 a=0.9일 때, number of average가 10개 이상여야 평균값의 변화가 감소한다(=smooth 효과가 발생한다)는걸 의미한다. 구현과정 : V(a) = 0초기화 후 update(덮어쓰기) - 메모리 측면에서 굉장히 장점이지만 정확성에 있어서 좋은 방법은 아니다.
2023.09.11 -
18. Exponentially Weighted Averages
V(t) = a * V(t-1) + (1-a) * v(t) - V(t) : current output - V(t-1) : prev output - v(t) : current input 즉 현재 output을 결정할 때 prev의 영향력 a, current input의 영향력 1-a. - 이를 결국 가중치 이동 평균 (weight moving averages)라고 부르는데 a가 커질수록 V(t-1)의 영향력이 커지므로 그래프가 smooth해지는 경향이 있다. 근데 이걸 왜하나? 다음 동영상에서 알아보자.
2023.09.11 -
17. Understanding Mini-batch Gradient Descent
Batch Gradient Descent : m examples(total) Stochastic Gradient Descent : 1 exmaples(one) - Stochastic Gradient Descent : pick 1 examples randomly.(=확률적 경사 하강법) Mini-batch Gradient Descent : (1,m) 그 사이 어딘가 적절한 크기의 examples. - faster than Stocahstic - low iteration than Batch Tip: 1. small training set : use Batch Gradient Descent - less than 2,000 examples 2. typical : mini-batch size : 64, 128, ..
2023.09.11