4.1 선형회귀
- 선형 모델은 입력 특성의 가중치 합과 편항을 더해 예측한다.
- 모델의 학습 -> 모델이 훈련 세트에 가장 잘 맞도록 모델 파라미터를 설정하는 것
- 모델의 측정 -> 평균 제곱근 오차를 사용하여 측정 (RMSE)
4.1.1 정규방정식
■ 정규방정식
- 비용함수를 최소화하는 값을 찾기위한 방법
-
• y는 y(1)부터 y(m)까지 포함하는 타깃 벡터이다.
4.2 경사 하강법
■ 경사하강법, Gradient Descent (GD)
- 비용 함수를 최소화하기 위해 반복적으로 파라미터를 조정하는 방법
- 파라미터 백터 Θ에 대한 비용 함수의 현재 gradient를 계산해서 감소하는 방향으로 진행한다.
• gradient가 0이 되는 곳이 최솟값이다.
- 학습률, learning rate: 학습 스텝의 크기
• 학습률이 너무 작으면 알고리즘의 반복이 많이 필요하다.
• 학습률이 너무 크면 최솟값을 지나 반대편 으로 넘어가게된다.
- 비용함수가 여러개의 변곡점을 가지는 경우 전역 최솟값을 찾지 못하고 지역 최솟값에 수렴할 수 있다.
• 전역 최솟값, global minimum
• 지역 최솟값, local minumum
- 선형회귀의 MSE 비용함수는 볼록함수, convex function이기에 지역 최솟값 문제 없음
※ 경사하강법에서 모든 특성은 같은 스케일을 가져야한다. 그렇지 않으면 최솟값에 수렴하는데 오랜 시간이 걸린다.
4.2.1 배치 경사 하강법
■ 편도함수, partial detivative
- θ가 바뀌었을 때 비용 함수가 얼마나 바뀌었는지를 계산
■ 배치 경사 하강법
- 매 경사 하강법 스텝에서 전체 훈련 세트 X에 대해 편도함수 계산
- 매 스텝 전체 세트를 사용하기 때문에 시간이 오래 걸린다.
- 반복횟수 제한
• 학습률의 그리드 탐색이 너무 오래걸리는 것을 방지하기 위해서 반복횟수를 제한한다.
• 허용오차, tolerance에 도달하면 반복을 멈추도록 한다.
4.2.2 확률적 경사 하강법
■ 확률적 경사 하강법
- 매 스텝에서 한 개의 샘플을 무작위로 선택하고 그 하나의 샘플에 대한 경사도 계산
- 배치 경사 하강법보다 빠르지만 확률적으로 샘플을 선택하기 때문에 불안정하다.
- 최솟값을 찾지 못할 확률이 높다
• 학습률을 점진적으로 감소시켜 알고리즘이 전역 최솟값에 도달하도록 한다.
- 학습 스케줄, learning schedule: 매 반복에서 학습률을 결정하는 함수
• 학습 스케줄을 통해서 학습률을 변동시키면서 학습 진행한다.
4.2.3 미니배치 경사 하강법
■ 미니배치 경사 하강법, mini-batch gradient descent
- 학습시에 미니배치라 부르는 임의의 작은 샘플 세트에 대한 경사도를 계산한다.
- 미니배치의 크기를 어느정도 크게 하면 SGD보다 덜 불규칙하게 움직이며 최솟값에 더 가까이 도달하게 될 수 있다.
- 반면, 지역 최솟값에서 더 빠져 나오기 힘들수도 있다.
'AI > 머신러닝' 카테고리의 다른 글
Ch4. 모델 훈련(4.6) (0) | 2021.03.13 |
---|---|
Ch4. 모델 훈련(4.3~4.5) (0) | 2021.03.11 |
Ch3. 분류 (3.5~3.7) (0) | 2021.03.06 |
Ch3. 분류 (3.1~3.4) (0) | 2021.03.04 |
Ch2. 머신러닝 프로젝트 처음부터 끝까지 (2.4 ~ 2.8) (0) | 2021.03.01 |