ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 선형회귀모델 2 파라미터 추정(최소제곱법)
    Study/머신러닝 2020. 3. 24. 19:36

    파라미터 추정
    실제 Y값과 예측값간의 차이가 d라고 할 때 $d_1 + d_2+ d_3+ ... + d_n = 0$이다. 왜냐하면 어떤 점은 실제점보다 크고 어떤 점은 작기 때문에 서로 상쇄가 된다.
    실제값과의 차이가 중요하기 때문에 제곱을 취하여 minus effect를 없애준다. $d^2_1 +d^2_2 + d^2_3 + ... + d^2_n >=0$

    하나의 점 d1에 대해서 설명을 하자면 실제 Y값과 직선위의 Y값과의 차이다.

    $$d_1 = Y_1 -E(Y_1) = Y_1 - (β_0 + β_1*X_1)$$

    $$\sum_{i=1}^{n} d^2_i = \sum_{i=1}^{n} \{Y_i - (\beta_0 + \beta_1 X_i)\}^2$$

    $$\min_{\beta_0, \beta_1} \sum_{i=i}^{n} \{Y_i - (\beta_0 + \beta_1 X_i)\}^2$$

    d값의 제곱의 합은 시그마 1부터 n까지 실제값에서 기대값을 빼준 것의 제곱이다.
    d^2i = 시그마1부터 N까지 {Yi - (β0 + β1*Xi)}
    즉 내가 만들려고 하는 직선 시그마1부터 N까지 {Yi - (β0 + β1*Xi)}^2가 최소가 되는 β0과 β1을 찾는 것이다.
    위 식을 Cost function 비용함수라 한다.
    Cost function가 최소가 되는 β0과 β1을 찾는 것이다.

    비용함수를 최소화 시키는 베타0과 베타1을 찾는 것이다.
    $$\min_{\beta_0, \beta_1} \sum_{i=i}^{n} \{Y_i - (\beta_0 + \beta_1 X_i)\}^2$$

    그래서 이 최적화된 식을 찾는 것을 모델링이라 한다.
    Cost function is convex이면 전역 최적해 존재한다.
    지역해가 존재하면 얘기가 달라진다.
    선형회귀 모델에서 비용함수는 전역 최적해가 존재하기 때문에 쉽게 찾을 수 있다.
    각 점에서 기울기(미분값)를 계속 구해서 기울기가 0이 되는 값을 구하면 된다.
    미분값이 0이 되는 베타0과 베타1을 찾으면 결국 우리는 비용함수를 최소화 시키는 파라미터를 찾는 문제가 된다.

    베타0 그리고 베타1 두가지이기 때문에 편미분을 해야한다.

    $${\delta C(\beta_0, \beta_1) / \delta \beta_0}= -2 \sum_{i=1}^n Y_i - (\beta_0, + \beta_1 X_i) = 0$$

    $${\delta C(\beta_0, \beta_1) / \delta \beta_1}= -2 \sum_{i=1}^n Y_i X_i - (\beta_0, + \beta_1 X_i) X_i = 0$$

    식이 두개고 미지수가 두개이니까 연립방정식으로 풀 수 있다.
    $$\hat{\beta_0} = \bar{Y} - \hat{\beta_1}\bar{X}$$

    $$\hat{\beta_1} = \sum_{i=1}^{n} (X_i - \bar{X}) (Y_i - \bar{Y}) /  \sum_{i=1}^{n} (X_i - \bar{X}) ^ 2$$

    $$f(X) = \hat{Y} = \hat{\beta_0} + \hat{\beta_1} X$$

    알고리즘은 문제가 있으면 그 문제를 풀기 위한 체계적인 방법론이다.

    이 알고리즘을 Least Squares Estimation Algorithm 이라고 한다.(최소제곱법, 최소자승법)

    https://terms.naver.com/entry.nhn?docId=3569970&cid=58944&categoryId=58970
    잔차(Residual)
    오차항과 잔차는 다르다. 확률오차는 베타0가 베타1이 파라미터의 상태이기 때문에 오차항은 확률 분포를 따르지만
    잔차는 화률 분포가 아니라 정해진 값이다. 잔차는 확률오차가 실제로 구현된 값이다.


    댓글

Designed by Tistory.