Spline: linear, cubic, natural

November·2024년 12월 22일
post-thumbnail

Spline

Non-linear models

  • polynomial regression
  • step function
  • regression spline

polynomial regression

polynomial predictors 더해서 linear model 확장

special case of linear regression

계수(coeffiecient)는 stand least squares에 의해 추정됨

차수 K가 커지면 overfitting 발생함

overfitting 발생하는 경우

  • too many predictors
  • polynomial degree is too high
  • 너무 많은 cross term(교차항)이 고려되는 경우

n개의 데이터셋에서 n-1차의 polynomial model은 항상 fit한다. 하지만 대부분 오버피팅이 발생한다 !!

Step function

cut the variable into distinct regions

각 계수(beta)가 무엇을 의미하는지 알아야함

piecewise-constant functions의 문제점

Unless there are natural breakpoints in the predictors, piecewise-constant functions can miss the trend ⇒ 예측 변수에 자연스러운 분기점이 없으면, 구간별 상수 함수는 추세를 놓칠 수 있다.

그래서 나온게

Piecewise Polynomial

하나의 다항식 대신에 구간마다 차원이 낮은 다항식을 여러개!

Knots: where the coefficient change

불연속일 수 있음!

Continuous Piecewise Polynomial

스플라인 모델의 일반적인 원리: 각 구간에서 다항식을 사용하여 데이터를 설명하되, 구간들 간에 연속성을 보장

polynomial & piecewise-constant regression모델은 basis function approach(기저함수접근법) 의 특수한 경우이다.

Linear Spline (Continous Piecewise Linear)

각 knot에서 연속(직선이 매끄럽게 이어지도록), 하지만 반드시 smooth인건 아님.

연속 여부는 knot에서의 함숫값을 비교해봐야함

각 구간에서 직선(linear function)을 사용하여 단순하게 표현되며, 이는 직관적이고 해석하기 쉽지만 B-spline만큼 유연하지 않습니다.

Cubic Spline

knot에서 매끄럽게 연결(smooth)되고 연속(continuity)이다.

<3가지 제한조건>

  • Continuity ⇒ 각 knot에서 연속
  • First Derivative Continuity ⇒ smooth 보장
  • Second Derivative Continuity ⇒ curvature continuity 보장 (곡률의 연속성)

Degree of Freedom

k개의 knot ⇒ k+4 의 자유도

💡
  • 각각의 구간에서 coefficient 개수 : 4개
  • k개의 knot, 구간(segment) 개수 몇개? k+1개
  • 제한이 없다면 총 coefficient 개수: 4(k+1)개
  • 각 knot마다 3개의 제약 ⇒ 3k
  • 최종 4(k+1)-3k = k+4

큐빅 스플라인은 예측 변수의 외곽 범위에서 높은 분산(변동성)을 가질 수 있다

boundary region에서 신뢰 구간이 불안정하다

그래프의 양끝 경계에서 Cubic spline이 Natural Cubic spline보다 오차범위가 크다.

그래서 나온게

Natural Splines

Cubic Spline(3차 스플라인)의 일종

얘는 add constraints to the ends 조건을 추가한거. (양 끝 구간의 경계에서 선형 제약 조건)

Force function to be linear beyond boundary knots ⇒ 추가 조건으로 인해 일반적으로 경계에서 더 안정적인 추정치를 생성한다

각 구간에서 더 복잡한 다항식을 사용해 유연한 곡선을 표현할 수 있으며, 자연 스플라인은 끝 부분에서 더 안정적으로 처리(결절점들 사이에서는 곡선이지만, 양쪽 끝에서는 직선처럼 처리)

Natural Splines과 linear Spline 두 모델은 구간을 처리하는 방식함수의 복잡도가 다르다

  • 만약 데이터가 매우 단순하고 선형적이라면, 두 모델이 비슷한 예측 결과를 낼 수도 있습니다.
  • 그러나 대부분의 실제 데이터는 복잡한 패턴을 가지므로, B-spline은 더 나은 적합을 제공할 수 있고, 선형 스플라인은 상대적으로 덜 정확한 예측을 할 수 있습니다

knots을 어디에 두지? 몇개가 필요하지?

이상적으로 knot을 많이 두면 함수가 rapidly하게 변함 → 종종 percentiles에 둔다.(25th, 50th, 75th)

knot이 많아지면 모델의 유연성이 증가하지만, 너무 많으면 과적합의 위험이 커진다. 반대로 적은 수의 knot을 사용하면 모델이 더 간단하고 과적합의 위험이 줄어들지만, 데이터의 변화를 충분히 포착하지 못할 수 있다.

Spline의 장단점

  • 장점: 커브가 시각적인 직관에 딱 들어맞는다. 점진적으로 유연성을 추가할 수 있으며, linear regression의 모든 기법을 사용할 수 있다.
  • 단점: knot의 개수와 위치를 정해야됨, 스플라인의 차수를 정해야됨
    다변수 확장이 복잡함

Penalized Regression

계수에 제약을 추가해서 변수가 많을 때에도 모델이 안정적이게.

****Least-squares fitting은 여러 단점이 있음

  • 변수의 개수 p가 샘플의 수 n보다 크면 안됨.
  • Collinear predictors가 어려움을 유발함 (여러변수들이 서로 상관관계가 높은)
  • variable selection을 하기 위해 추가 단계가 필요함

Least-squares fitting에서 high dimension이면 발생하는 문제

covarient의 개수 p가 샘플의 수 n과 같으면(가까워지면) 오버피팅 이슈

→ 모든 데이터를 다 따라가니까.

Basic Idea: parameter estimates를 0으로 수축시킨다!!

F (β) = RSS(β) + λ Penalty(β) 값을 최소화 해야됨. (λ ≥ 0)

결국 F (β)를 작게 만들기 위해서는 Penalty(β)를 작게 만들어야 한다.

  • Ridge β^2
  • Lasso |*β*
  • Naive elastic net (1-α) β^2 + α|β\ (0≤α≤1)

Ridge

λ=0이면 ridge regression은 least-squares와 같아진다. (패널티항이 사라지니까)

λ가 커지면 패널티가 더 강해져서 coefficient estimates는 더 강하게 0으로 수렴. ⇒ Tuning parameter

λ가 작으면 coefficient는 값이 다양하지만 커질 수록 점점 0으로 수렴한다.

이때 λ가 작을때부터 0에 가까운 값은 y를 예측하는게 별로 큰 영향을 미치지 않는 계수이다.

differentiation of a linear form : 선형함수의 미분

f(*β*) = *****β^T * A*

β에 대해 편미분한 결과 ⇒ 벡터 β를 포함한 선형 형식을 미분할 때 그 결과가 단순히 행렬 A로 나올 수 있다.

differentiation of a quadratic form : 이차형식의 미분

f(*β*) = *****β^T * A * β*

β에 대해 편미분한 결과 2Aβ

파란 원: penalty region for 특정 λ

빨간 contour : β with the same RSS

ridge estimator: 빨간선과 파란 원이 처음으로 접하는 곳! 원이기 때문에 축에서는 만날 수 없음 → variable selection 불가능하다 (계수가 0에 가깝게 갈 수는 있지만 완전 0이 될 수는 없음) “dense”

Lasso

lasso = least absolute shrinkage and selection operator

릿지와의 메인 차이점: λ가 커지면 0과 동일해지는 계수가 있다.(아예 영향을 미치지 않는) ⇒ variable selection이 가능하다. “sparse”

Elastic net

릿지와 라쏘 둘의 장점만 가지고 있음 ⇒ variable selection이 가능

0개의 댓글