optimization

Deep Learning

[DL] 학습 관련 기술들 - SGD, Momentum, AdaGrad, Adam, optimization, Xavier, He, Batch Normalization

매개변수 갱신 확률적 경사 하강법(SGD) 신경망 학습의 목적은 손실 함수의 값을 가능한 한 낮추는 매개변수를 찾는 것으로 이는 곧 매개변수의 최적값을 찾는 문제이며, 이러한 문제를 푸는 것을 `최적화(optimization)`이라고 한다. 최적의 매개변수 값을 찾기 위한 단서로 매개변수의 기울기(미분)를 이용하는데, 매개변수의 기울기를 구해 기울어진 방향으로 매개변수 값을 갱신하는 일을 반복해서 최적의 값을 향해 다가가는 것이 `확률적 경사 하강법(SGD)`이다. SGD는 다음과 같은 수식으로 표현이 가능하다. 결국 SGD는 기울어진 방향으로 일정 거리만 가겠다는 단순한 방법이다. SGD를 파이썬 코드로 구현하면 다음과 같다. class SGD: def __init__(self, lr=0.01): se..

Deep Learning

[DL] 신경망 학습 - model parameter, optimization, loss function, cost function, Gradient Descent, chain rule, backpropagation, minibatch, cross-entropy

신경망 학습의 의미 신경망에는 입력 데이터와 타깃 데이터가 제공될 뿐, 추론을 위한 규칙은 제공되지 않는다. 신경망을 `학습(learning)`한다는 것은 이 규칙을 학습 데이터를 이용해서 스스로 찾는 것이다. 이는 학습 데이터에 기대하는 정답이 들어있기 때문에 가능하다. 신경망에 입력 데이터가 들어왔을 때 어떤 출력 데이터를 만들어야 할지를 정하는 규칙은 함수적 매핑 관계로 표현된다. 가중 합산과 활성 함수가 연결되어 뉴런을 구성하고, 뉴런이 모여 계층을 구성하며, 계층이 쌓여서 신경망의 계층 구조가 정의된다. 이러한 복잡한 신경망의 계층 구조 자체가 신경망의 함수적 매핑 관계를 표현하는 것이다. 신경망의 학습 과정에서 함수적 매핑 관계를 표현하는 전체 계층 구조를 찾아야 하는 것은 아니다. 신경망의 ..

Junyeong Son
'optimization' 태그의 글 목록