gradient 4

[Books] 신경망 학습하기 (loss function, gradient descent)

밑바닥부터 시작하는 딥러닝1을 리뷰합니다. 이전 글에서 선형으로 분리가 되는 문제의 경우 데이터로부터 자동으로 학습할 수 있다. 하지만 비선형 분리의 문제의 경우 자동으로 학습하는 것이 불가능하기 때문에 비선형 문제에서는 손실 함수(loss function)라는 개념이 나오게 된다. 본 책에서는 신경망 학습에서는 현재의 상태를 '하나의 지표'로 표현한다고 언급했다. '지표'를 가장 좋게 만들어주는 가중치를 탐색하는 것이 목표라고 할 수 있다. 여기서 '지표'는 바로 손실 함수이다. 손실함수는 다양한 함수들이 존재하지만, 일반적으로 오차제곱합(Sum of Squares for Error, SSE), 교차 엔트로피(Cross Entropy)를 많이 사용한다. 손실함수(loss function) 오차제곱합(S..

[Recommender System] Neighborhood based method(CF)

K-Neighborhood based method(KNN)은 k개의 군집으로 clustering을 하는 머신러닝 기법 중 하나이다. 추천시스템에서 KNN이라 함은 Explicit Data 즉, 유저가 자신의 선호도를 직접 표현한 데이터를 가지고 새로 유입된 사용자 혹은 상품에 대해서 선호도를 예측하는 기법이라고 볼 수 있다. User Based Collaborative Filtering 사용자 간 유사도를 측정해 사용자가 아이템에 해당하는 평점을 직접 입력하지 않더라도, 해당 사용자와 유사한 사용자의 평점을 가지고 사용자에 대한 아이템의 선호도를 예측하는 기법이다. 주로 코사인 유사도, 피어슨 유사도를 사용하여 유사도를 계산하여 측정한다. 주의해야할 점은 해당 사용자가 측정한 평점에 bias가 들어갈 수..

[CS231N] Optimization의 종류 - SGD부터 Adam까지

Contents Mini-batch SGD 1. Sample a batch of data 2. Forward prop it through the graph, get loss 3. Backprop to calculate the gradients 4. Update the parameters using the gradient 이런 경우에는 몇천만개의 데이터들을 learning rate($\eta$) 하나로 고정을 시키고 최적화를 시키는 것이 과연 좋은 것인가? 라는 물음을 할 수 있다. 아래와 같은 SGD의 약점은 시작을 해서 flatten 지점에서 넘어가지 못하고 local minimum에 빠져버린다. Momentum GD와 Momentum의 다른점은 어떤 것인가? gradient descent의 경우 $ ..

[CS231N] Loss function & Optimization (2)

앞 내용에 이어서 이번에는 Loss function 중에서 softmax를 다뤄볼 것이다. 각 score를 확률값으로 바라볼 수 있을 것이다. $P(Y\ =\ k\ |X\ =\ x_{i})$ 는 $X=x_{i}$일 때 $Y = k$로 k라는 class에 속할 확률값을 찾는 것이며, 이러한 값이 Likelihood가 된다. $\Sigma_{j}e^{sj}$ = 모든 score의 합 $e^{sk}$ 는 k class 의 score Maximize loglikelihood는 가장 최대가 되는 값을 찾는 것이기 때문에 그 값에 대해 -1 을 곱해줘서 최솟값을 찾는 loss function 으로 만들 수 있다. 그리고 MLE는 각 확률값을 곱하여 도출하는데 이 부분에서 log를 취해주면 곱을 덧셈으로 바꿀 수 있..

반응형