/ DEEPLEARNING

Deep Learning - Deep Feedforward Neural Network(2)

기울기 기반 학습

신경망은 비선형성이기 때문에 볼록함수를 손실함수로 사용하기가 적합하지 않ㅇ르 때가 많은것이 선형모형과 신경망의 가장 큰 차이점이다. 일반적으로 신경망에는 선형회귀 모형의 훈련에 쓰이는 연립방정식 해법이나 로지스틱 회귀 또는 SVM의 훈련에 쓰이는 전역 수렴을 보장하는 볼록함수 최적화 알고리즘 대신, 비용함수를 아주 낮은 값으로 이끄는 역할만 하는 반복적인 기울기 기반 최적화 절차를 사용한다. 볼록함수 최적화는 이론적으로 임의의 초기 매개변수들에서 시작해서 반드시 수렴한다. 비볼록 손실함수에 확률적 경사하강법을 적용할 때는 그러한 수렴이 보장되지 않으며, 결과가 초기 매개변수들에 민감하게 변한다. 순방향 신경망에서는 모든 가중치를 작은 난수들로 초기화하는 것이 중요하다.

Cost Function

Cost function의 선택은 심층 신경망 설계의 매우 중요한 측면 중 하나이다. 대부분의 경우 매개변수적 모형은 하나의 분포 $p(y|x;\theta)$를 정의한다. 그리고 최대가능도 원리를 적용해서 훈련을 진행한다. 이 경우 훈련 자료와 모형의 예측 사이의 교차 엔트로피를 비용함수로 사용하면 된다. 하지만 $y$에 관한 전체 확률 분포를 예측하는 대신 $x$를 조건으로 한 $y$의 어떤 통계량을 예측하는 좀 더 단순한 접근 방식이 바람직할 때도 있다. 이 경우, 특화된 손실함수를 이용하면 추정량을 예측하는 모형을 훈련할 수 있다.

최대가능도를 이용한 조건부 확률 학습

대부분의 신경망은 최대가능도를 사용해서 훈련한다. 이는 비용함수가 음의 로그가능도라는 뜻인데, 훈련 자료와 모형 분포 사이의 교차 엔트로피로도 동등하게 서술할 수 있다. 이 경우 비용함수는

$J(\theta) = -E_{x,y \sim \hat{p}자료}\log p_{모형}(y|x)$

이다. 비용함수의 구체적인 형태는 모형마다 다르며, 특히 $\log p_{모형}$의 구체적인 형태에 의존한다. 최대가능도에서 비용함수를 유도하는 방식의 장점은, 모형마다 매번 비용함수를 설계하는 부담이 없다는 것이다. 모형 $p(y|x)$를 결정하기만 하면 비용함수 $\log p(y|x)$가 자동으로 결정된다. 최대가능도 추정을 수행하는 데 쓰이는 교차 엔트로피 비용함수의 한 가지 독특한 성질은, 실제 응용에 흔히 쓰이는 모형들에서 이 함수에 최솟값이 없을 때가 많다는 것이다. 이산 출력 변수의 경우, 대부분의 모형은 정확히 확률값 0과 1을 표현하지 못하며 그 두 극단에 얼마든지 가까워질 수 있는 방식으로 매개변수화 된다. 실숫값 출력 변수의 경우에는, 만일 모형이 출력 분포의 밀도를 제어할 수 있다면, 정확한 훈련 집합 출력들에 극도로 높은 밀도를 배정할 여지가 생간다. 그러면 교차 엔트로피는 음의 무한대에 접근하게 된다.

참고 : 이안 굿펠로, 요수아 벤지오, 에런 쿠빌, 심층학습, Jpub(2018), p194-210