ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 선형회귀의 비용함수, 경사하강법, 학습률
    머신러닝 배우기 2023. 12. 5. 03:50

    머신러닝에서의 학습이란, 실제 정답과 예측값 사이의 오차(Loss, Cost, Error)를 줄여나가는 최적화 과정을 의미합니다. 오늘은 가장 기본적인 모델인 선형회귀에 대해 알아보겠습니다. 

     

    ▶︎ 선형회귀란?

    종속변수 y와 독립변수 x 사이의 선형 관계를 모델링하는 회귀 분석 기법.

     여기서 "선형"이라는 것은 독립 변수(특성)와 종속 변수(목표 변수) 사이의 관계가 선형적이라는 것을 나타냅니다.

    일반적인 선형회귀 형태 : y = a₁x + ax + a₃x₃ + ・・・ + b 

     

    ▶︎ 선형회귀의 목적

    x와 y의 관계를 가장 잘 설명하는 가중치를 찾는 것.

     이 관계를 통해 새로운 x 데이터들을 가지고 최대한 정확하게 y를 예측

     

    ▶︎ 가중치 찾는 방법은?

    cost function(예측값과 실제값의 차이를 기반으로 모델의 성능을 판단하기 위한 함수)을 최소화하는 방향으로 모델을 학습

     cost function = loss function = error function

    cost function를 "평가 지표"라고 이해하면 더 좋을 것 같다. 보통 목적을 최소화하는 목적함수를 cost function라고 하는데 목적을 평가지표라고 생각하면 이해하기 좋다.

     

    ▶︎ cost function 종류

     로지스틱 회귀에서는 크로스 엔트로피 손실 함수, 신경망 모델에서는 평균 제곱 오차나 크로스 엔트로피 손실 함수 주로 사용

    선형회귀에서 cost function으로는 MSE, MAE, MAPE, RMSE 등이 있다.

     선형회귀에서는 보통 cost function 으로 MSE를 많이 사용하고, MSE를 최소화하기 위해서 보통 경사하강법을 이용한다

     

     

     

     

    ▶︎ 경사하강법이란?

     비용 함수의 기울기(경사)를 활용하여 최소점을 찾아가는 과정

    방식 : 처음 세타를 임의로 설정하고, 그 위치에서 cost function의 기울기(편미분값)를 계산하고, 기울기의 반대 방향으로 일정 크기의 단계(학습률, learning rate)를 이동하여 최적의 지점을 찾아가는 방식.

          - learning rate 크게 했을 때 : 경사 하강법이 빠르게 수렴할 수 있지만, 진동 또는 발산할 수 있다.

          - learning rate 작게 했을 때 : 수렴이 느리게 일어나서 시간이 오래걸린다. 

          - learning rate 설정법 : 0.1, 0.01, 0.001 로 먼저 해보고 괜찮은 학습률을 가지고 일정 상수를 곱해서 보정하기

    예) x 축은 세타(변수), y축은 MSE 값. 세타에 대한 MSE의 값을 구했을 때, 기울기를 활용하여 세타값을 업데이트하면서 MSE의 global minimum을 찾아가기 

     

     

Designed by Tistory.