03. 선형모델

maro·2023년 12월 30일

'단단한 머신러닝' 책과 스터디 내용을 기반으로 작성하였습니다.


3.1 기본 형식

  • 속성들의 선형조합을 통해 예측하는 함수를 학습하는 모델

    f(x)=wTx+bf(x) = w^{T}x + b
    y^=β0+β1x1+ϵ\hat {y} = \beta_{0}+\beta_{1}x_{1}+\epsilon

    • wwbb를 학습한 후 모델이 결정
  • ww는 각 속성의 중요도를 직관적으로 나타냅니다.(해석력이 뛰어납니다.)

  • 강력한 성능의 비선형 모델들은 선형 모델을 기반으로 만들어집니다.

    • 층을 쌓거나 고차원에 투영하는 방식으로 이루어집니다.
      (* 고차원에 투영된다는 의미는 선형대수를 공부하고 다시 살펴보아야 겠습니다...)

3.2 선형 회귀

1) 선형회귀란

  • 종속 변수 하나와 여러 개의 독립변수간의 관계를 모델링하는 통계적인 방법입니다.
  • 최대한 정확하게 실제 데이터를 예측하는 선형 모델을 학습하는 것을 목표로 합니다.

    선형이란?

    • 가산성 : f(x1+x2)=f(x1)+f(x2)f(x_{1}+x_{2}) = f(x_{1})+f(x_{2})
    • 동차성 : f(ku)=kf(u)f(ku) = kf(u)
      -> 따라서 선형의 형태를 보인다고 무조건 선형이라고 볼 수 없습니다.

    선형 회귀 가정

    • 선형성: 독립 변수와 종속 변수는 선형 관계여야 합니다.
    • 독립성 : 잔차끼리 상관관계가 없이 독립적이어야 합니다.
    • 정규성 : 잔차가 평균이 0, 분산이 1인 정규분포여야 합니다.
    • 등분산성 : 잔차의 분산은 입력 변수와 무관하게 일정해야 합니다.

    선형회귀 함수
    f(xi)=wxi+byif(x_{i}) = wx_{i}+b \simeq y_{i}

2) ww, bb 찾기

  • f(x)f(x)yy의 차이를 어떻게 측정하는지에 따라 달라집니다.
  • 가장 많이 사용하는 평균제곱 오차 MSE를 이용하여 오차를 최소화하는 방법은 다음과 같습니다.

    E(w,b)w=2(wi=1mxi2i=1m(yib)xi)\frac {\partial E(w, b)} {\partial w} = 2\Bigg(w \sum_{i=1}^{m} x_{i}^{2} - \sum_{i=1}^{m}(y_{i}-b)x_{i}\Bigg) ... 1
    E(w,b)b=2(mbi=1m(yiwxi))\frac {\partial E(w, b)} {\partial b} = 2\Bigg(mb - \sum_{i=1}^{m}(y_{i}-wx_{i})\Bigg) ... 2

    • 두 식은 wwbb를 각각 편미분한 결과입니다.
    • E(w, b)는 w와 b에 대한 convex 함수입니다.
    • 두 값을 0으로 만들어 최적의 해를 구합니다.
    • 볼록함수이기에 최저점이 최적의 해가 됩니다.

3) 다항 선형 회귀

  • 선형 회귀 모델을 확장하여 독립 변수의 고차항을 포함하여 더 복잡한 관계를 모델링할 수 있는 회귀 기법입니다.
  • 데이터가 단순한 1차 선형회귀 형태보다 복잡한 곡선 형태로 표현합니다.
  • y=b0+b1x+...+bnxny = b_{0}+b_{1}x+ ... +b_{n}x^{n}
  • f(x)=wTx+bf(x) = w^{T}x + byiy_{i}를 얻습니다.
  • 정규화(Regularization)를 통해 모델이 가지는 파라미터 값에 제약을 부여하여 과적합을 방지합니다.

4) 로그 선형 회귀

  • 비선형 함수를 선형으로 보이게 하며 비선형 문제를 선형으로 플어냅니다.

3.3 로지스틱 회귀

  • 종속변수가 범주형일 때 선형회귀를 확장한 모델
  • 단위 계단 함수는 불연속적입니다.
  • 따라서 미분이 가능한 대체 함수로 등장한 것이 로지스틱 함수 입니다.
    • 시그모이드 함수: y=11+exy = \frac {1} {1+e^{-x}}
      • odds(오즈)
        임의의 이벤트가 어떤 요인에 의해 발생하지 않을 확률 대비 발생할 확률 y/(1-y)
      • 일종의 시그모이드 함수로 선형 회귀모델의 예측 결과괎을 사용하여 실제 데이터의 로그 오즈에 근사한 결과를 도출합니다.
      • 회귀지만 일종의 분류 학습법 입니다.
  • 구하고자 하는 해의 목표 함수는 볼록 형태의 함수인데 이는 많은 수치 최적화 알고리즘의 최적해를 구하는데 사용이 가능합니다.

3.4 선형 판별분석

  • 전통적인 선형 학습법
  • 훈련 데이터 세트를 정하고 샘플을 하나의 직선 위에 투영
  • 같은 클래스의 경우 가깝게, 다른 클래스의 경우 멀게 투영점을 위치시킵니다.
    • 클래스 내 분산은 최소, 클래스 간 거리는 최대

3.5 클래스 불균형 문제

  • 분류 문제에서 서로 다른 클래스의 훈련 샘플 수에 큰 차이가 있는 상황
  • 편향이 없는 샘플링: 훈련 데이터가 실제 샘플 전체의 비율을 보존하고 있는 것
  • 훈련 데이터가 모집단의 분포를 따르고 있지 않다면 '리스케일링'을 사용합니다.
  • 모집단의 분포를 따른다고 가정한다면 3가지 방법이 있습니다.
    • 언더 샘플링
      • 다수 클래스의 샘플들을 중려 소수 클래스와 균형을 맞추는 방법
      • 오버 샘플링 보다 시간 비용이 적지만 정보 손실의 위험이 있습니다.
    • 오버 샘플링
      • 소수 클래스의 샘플을 증가시켜서 다수 클래스의 비율과 균형을 맞추는 방법
      • SMOTE, ADASYN, ...

0개의 댓글