본문 바로가기

Artificial Intelligence/Machine Learning7

경사하강법(Gradient Descent) 손실(Loss) 함수를 정의하는 이유는 손실의 변화 정도를 살피기 위해서이다. 손실을 최소화하는 방향으로 목적 함수의 파라미터를 조절해나가야 한다는 목적을 갖고있기 때문에 손실의 변화 정도를 살피기 위하여 손실 함수를 정의하고 미분하여 기울기의 크기와 방향을 살피게 된다. 게다가 L2 손실로 손실 함수를 정의한다면, convex optimization problem이 되기 때문에 손쉽게 solution을 구할 수 있게 된다. 손실이 줄어드는 방향으로 model param이 이동한다. 이 때 이동 보폭은 정하기 나름이다. 특성이 많아서 차원이 높은 모델일 경우 똑같은 보폭이라 할지라도 발산할 가능성이 있다. 따라서 보폭을 줄여야 한다. 참고로 신경망은 그릇이 아니라 계란판처럼 생겼다. 따라서 초기값이 무엇.. 2018. 12. 23.
기울기 어떤 함수의 기울기를 얘기할 때 대상이 되는 함수는 보통 여러 개의 특성을 갖고 있을 것이다. 즉 다변수 함수다. 따라서 어떤 함수의 기울기는 벡터다. 각각의 특성에 대한 기울기를 한 번에 나타내는 좋은 표기법이기 때문이다. 즉 기울기는 모든 독립 변수에 대한 편미분의 벡터라고 할 수 있으며 다음과 같이 표기한다. 어떤 함수가 다음과 같고, 그 기울기도 다음과 같이 주어져 있다고 해보자. 위 함수가 손실 함수라고 할 때, 손실을 줄이는 방향으로 기울기값이 감소하려면 어떤 (x,y)의 방향으로 이동해야 할까? 미분을 해야 알 수 있다. 미분은 방향성과 크기를 알려주는 좋은 척도이기 때문이다. 이 기울기를 이용하여 손실을 줄여나가는 방법이 경사하강법(Gradient Descent)이다. 기울기는 벡터다. 벡.. 2018. 12. 23.
손실(Loss) 모델을 학습시킨다는 것은 단순히 말하자면 라벨이 있는 데이터로부터 올바른 가중치와 편향값을 학습(결정)하는 것이다. 지도 학습에서 머신러닝 알고리즘은 다양한 예를 검토하고 손실을 최소화 하는 모델을 찾아봄으로써 모델을 만들어내는데, 이 과정을 경험적 위험 최소화라고 한다. 손실은 잘못된 예측에 대한 벌점이다. 즉, 손실은 한 가지 예에서 모델의 예측이 얼마나 잘못되었는지를 나타내는 수다. 모델의 예측이 완벽하면 손실은 0이고 그렇지 않으면 손실은 그보다 커진다. 모델 학습의 목표는 모든 예에서 평균적으로 작은 손실을 갖는 가중치와 편향의 집합을 찾는 것이다. 예를 들어 그림 3에서 왼쪽은 손실이 큰 모델이고 오른쪽은 손실이 작은 모델이다. 그림에 관해 다음 사항을 참고한다. 빨간색 화살표는 손실을 나타낸.. 2018. 12. 23.
머신러닝을 위한 수학 머신러닝에서 수학이 중요한 이유는 다양하며 그 중 몇 가지는 다음과 같다: 정확도, 트레이닝 시간, 모델 복잡도, 파라미터 수 및 피쳐 (features) 수에 대한 고려를 포함하는 올바른 알고리즘 선택 파라미터 설정과 검증 (validation) 전략 선택 편향 분산 (bias-variance)의 트레이드오프의 이해를 기반으로한 언더피팅 (underfitting)과 오버피팅 (overfitting)의 식별 올바른 신뢰 구간과 불확실성 추정 어느 수준의 수학적 지식이 필요한가? 선형대수학 (Linear Algebra): 나의 동료중 한 명인 Skyler Speakman은 최근에 “선형대수학은 21세기의 수학이다”라고 말한적이 있는데 나는 이 말에 전적으로 동의한다. 머신러닝에서 선형대수학은 모든 곳에서 .. 2018. 12. 23.