BLOG 썸네일형 리스트형 Drop-out 【1】Deep Learning 시작하기_규제하라는 게 있다 Drop-out 드롭 아웃은 노드를 임의로 끄면서 학습하는 기법이다. 은닉층에 배치된 노드 중 일부를 임의로 끄면서 학습을 한다. 꺼진 노드는 신호를 전달하지 않으므로 지나친 학습을 방지하는 효과를 주는 것이다. 왼쪽의 그림은 일반적인 신경망이고 오른쪽의 그림은 드롭 아웃을 적용한 신경망의 모습이다. 일부 노드들이 꺼지고 남은 노드들로 신호가 연결되는 신경망의 형태를 볼 수 있다. 어떤 노드를 끌 지는 학습할 때마다 무작위로 선정이 되며, 시험 데이터로 평가할 때는 노드들을 전부 사용해 출력하되 노드 삭제비율(드롭아웃 비율이라고 한다)을 곱해 성능을 평가한다. 작성자 홍다혜 ghdek11@gmail.com / 이원재 wonway333@gmail... 더보기 L1 Norm, L2 Norm 【1】Deep Learning 시작하기_규제화라는 게 있다 L1 Norm, L2 Norm 정확하게 말하면 규제화(regularization)는 일부 미지수의 값을 아주 작게 만들어 그 영향을 줄임으로써 마치 미지수의 개수가 적어진 효과를 가져온다. 가중치 값이 커지는 것을 막는다는 제한, 규제의 의미가 있데 이런 규제화의 종류에는 L1 norm(노름)과 L2 norm이 존재한다. 각 각의 설명을 위해 두 종류를 비교해 보도록 하겠다. 다음의 표에 기재된 수식을 한번 보자. 먼저 λ (람다)는 규제화의 세기를 조절하는 변수이며 의 값을 크게 주면 강한 규제를, 값을 작게 주면 약한 규제를 줄 수 있다. 수식을 보면 입력 feature가 d개가 있을 때 바이어스(b)를 w0으로 표현해 총 d+1개의 w가 있.. 더보기 Overfitting 해결하기 【1】Deep Learning 시작하기_규제화라는 게 있다 Overfitting 해결하기 Input feature 수 = 파라미터의 수 = 가중치의 수 = 미지수의 개수-1 (bias) Train data의 양 = (가중치를 풀) 방정식의 수 상대적으로, 방정식 보다 미지수가 많으면 오버피팅이 발생! 작성자 홍다혜 ghdek11@gmail.com / 이원재 ondslee0808@gmail.com 더보기 Overfitting이 무엇일까? 【1】Deep Learning 시작하기_규제화라는 게 있다 Overfitting이 무엇일까? 우리는 지금까지 신경망의 학습 성능을 높이기 위한 기술들을 알아보았다. 신경망은 데이터를 기반으로 학습을 시키는데 이 때 학습한 결과를 평가하는 과정이 반드시 필요하다. 일종의 시험을 통해 신경망의 학습 결과를 확인하는 것이다. 학습에 사용되는 데이터를 학습 데이터(Trainset)라고 하고 평가에 사용되는 데이터를 시험 데이터(Testset)라고 하는데 신경망을 충분히 학습시키다 보면 학습데이터를 너무 ‘완벽 학습’ 하여 학습에 등장하지 않은 데이터는 맞추지 못하는 상황이 발생하게 된다. 이를 오버피팅(혹은 과적합, Overfitting) 상태라고 부른다. 즉, 오버피팅이란 주어진 데이터를 지나치게 학습한 나머.. 더보기 Adam Optimizer (Adaptive Moment Estimation) 【1】Deep Learning 시작하기_최적화가 가장 중요하다! Adam Optimizer (Adaptive Moment Estimation) “Momentum+RMSProp의 장점을 다 가질거야! ” 작성자 홍다혜 ghdek11@gmail.com / 이원재 ondslee0808@gmail.com 더보기 Adadelta Optimizer (Adaptive Delta) 【1】Deep Learning 시작하기_최적화가 가장 중요하다! Adadelta Optimizer (Adaptive Delta) “아다그라드, 아직 갈 길이 먼데 보폭이 점점 작아지네? 가중치의 변화량을 고려해서 학습률을 변화시키자!” 작성자 홍다혜 ghdek11@gmail.com / 이원재 ondslee0808@gmail.com 더보기 RMSProp 【1】Deep Learning 시작하기_최적화가 가장 중요하다! RMSProp “아다그라드, 아직 갈 길이 먼데 보폭이 점점 작아지네? 상황을 보면서 줄여야지!” RMSProp은 딥러닝의 아버지라 불리는 제프리 힌튼이 소개한 방법으로 아다그라드의 단점을 해결하기 위해 등장했다. RMSProp은 모든 기울기를 단순히 더하는 것이 아니라 최신 기울기 정보를 더 크게 반영하는 원리이다. 과거의 정보는 약하게 반영하고 최신의 정보를 크게 반영하기 위해 지수이동평균(Exponential Moving Average, EMA)을 사용했다. 이를 수식으로 나타내면 다음과 같다. 새로운 변수 γ을 추가하여 G(t) 값이 무한히 커지는 것을 방지하면서 γ가 작을수록 최신의 정보(기울기)를 더 크게 반영한다. 작성자 홍다혜.. 더보기 Adagrad Optimizer (Adaptive Gradient) 【1】Deep Learning 시작하기_최적화가 가장 중요하다! Adagrad Optimizer (Adaptive Gradient) “SGD의 탐색 거리를 개선해보자! 처음엔 크게, 나중엔 작게! 맞춤형 학습률 주겠어!“ 이번에는 탐색 거리에 대한 문제를 해결하고자 등장한 Adagrad(Adaptive Gradient, Adagrad) 최적화에 대해서 설명하겠다. 수식에서 α라고 표시하는 학습률은 가중치의 최적 값을 탐색할 때 얼만큼 이동할지 결정하는 중요한 변수이다. 학습률이 너무 작으면 시간이 오래 걸리고, 너무 크면 최적 값을 찾지 못하고 치솟게 된다(발산한다고 말한다). 학습률 값은 초반에 큰 값을 주다가 점차 값을 줄이는데 이는 최적 값에 근접할 시 이동거리를 짧게 해 지나치지 않으려는 것이다... 더보기 Momentum Optimizer 【1】Deep Learning 시작하기_최적화가 가장 중요하다! Momentum Optimizer “SGD는 너무 지그재그로 가네? 진행 하던 방향으로 계속 가 보자!“ 작성자 홍다혜 ghdek11@gmail.com / 이원재 ondslee0808@gmail.com 더보기 최적화(Optimizer)가 뭐였지? 확률적 경사 하강법(SGD) 【1】Deep Learning 시작하기_최적화가 가장 중요하다! 최적화(Optimizer)가 뭐였지? 확률적 경사 하강법(SGD) 여러분은 1.2 경사 하강법이 기억나는가? 경사 하강법은 오차를 가장 작게 만드는 방향으로 가중치를 업데이트 하면서 최적 값을 찾는 방법이다. 이렇게 파라미터의 최적 값을 찾는 문제를 최적화(optimizer)라고 하며 최적화는 정답에 가까운 출력을 만드는 신경망의 목표인만큼 중요하지만 어려운 문제다. 앞에서 최적화의 방법으로 경사 하강법을 언급했는데 시간이 지나면서 더욱 발전된 기술들이 등장하기 시작했다. 지금부터 그 종류를 하나씩 살펴보겠다. 확률적 경사 하강법(SGD) “GD보다 조금 보되 빠르게 찾자!“ 우리가 앞에서 다룬 경사 하강법(Gradient Descent)은.. 더보기 이전 1 ··· 14 15 16 17 18 19 20 ··· 39 다음