곤약노트

#3 함수형 데이터 분석 (Functional Data Analysis, FDA) - Smoothing Splines (스무딩 스플라인) 본문

Data Science/High-Dimensional Data Analytics

#3 함수형 데이터 분석 (Functional Data Analysis, FDA) - Smoothing Splines (스무딩 스플라인)

곤약처럼 부드럽게, 쫀쫀하게 2025. 5. 29. 09:00
지난 포스팅에서..

▶ 스플라인(Spline) 회귀를 사용하려는 이유

우리가 분석하는 데이터가 비선형일 때, 단순한 직선이나 2차 함수로는 표현하기 어려운 복잡한 패턴이 있음
그래서 우리는 구간별로 나누어 조각별 다항식(Piecewise Polynomial)을 사용하는 Spline을 도입

스플라인의 문제점 - Boundary Effect
스플라인은 중간 구간에서는 예쁘게 잘 맞지만, 양 끝 경계 (Boundary)에서 불안정
왜냐하면 Knot가 중간에는 많아서 잘 조정되지만, 양 끝은 "떠 있는" 구간이라 진동(Variance)이 심함
Variance(분산)가 커진다는 것은 예측값이 불안정하다는 뜻

▶ 해결 방법
Natural Cubic Spline: 양 끝 부분을 선형(Linearly) 처리해서 진동을 줄이고 안정적으로 만듦
Penalization 추가

 

1. 스플라인의 경계 문제 (Boundary Effect on Splines)

  • 문제:
    • 일반적인 스플라인(Cubic Spline)은 경계 근처(데이터의 양 끝)에서 예측 오차(Variance)가 크게 발생
    • 이유: 스플라인은 조각별 다항식(Piecewise Polynomial)으로 표현되는데, 경계 부분에서는 데이터가 충분하지 않아 불안정함
    • 복잡한 모델일수록 경계에서 예측이 더 불안정

 

  • Global Linear: 선형 회귀, 경계에서 안정적
  • Global Cubic Polynomial: 전역적으로 3차 다항식, 경계에서 약간 흔들림
  • Cubic Spline - 2 knots: Knot가 적어서 경계에서 큰 진동 발생
  • Natural Cubic Spline - 6 knots : Knot가 많아서 덜 흔들리지만 여전히 경계에서 진동 발생
  • 해결 방법:
    • 경계 부분에서는 복잡한 3차(Cubic) 다항식을 사용하지 않고, 단순한 1차 선형 회귀(Linear Regression)를 적용
    • 이를 자연 스플라인(Natural Spline)이라고 부름
    • 중간 영역은 3차 다항식으로 모델링하고, 경계 영역은 1차 선형식으로 단순화
    • Penalization 추가 - 모델의 복잡성을 줄여서 지나친 진동을 막음

 


2. 자연 스플라인 (Natural Cubic Spline)

  • 특징:
    • 경계 구간에서는 선형 모델을 사용하여 예측의 불안정을 줄임
    • 중간 구간에서는 3차 다항식으로 데이터의 비선형성을 반영
    • 모델의 복잡도는 낮추고, 경계에서의 예측 오차를 감소시킴

  • 기본 구조:
    • 첫 번째 열: 절편 (Intercept)
    • 두 번째 열: 기울기 (Slope)
    • 나머지 열: 조각별 다항식 표현 (Truncated Power Basis)
    • 경계 바깥쪽에서는 0으로 설정하여 선형적 관계만 유지

 

하지만, Natural Cubic Spline에서도 여전히 문제

  • 데이터가 복잡하거나 노이즈가 클 때, 모델이 너무 세세하게 학습해서 Overfitting이 발생할 수 있음
  • 반대로 Knot를 적게 두면, 데이터의 변동을 충분히 반영하지 못해 Underfitting이 될 수 있음

3. 스무딩 스플라인 (Smoothing Splines)

  • 스플라인(Spline)을 사용할 때 Knot의 개수를 너무 많이 지정하면 Overfitting 문제가 발생
  • 반대로 Knot를 너무 적게 두면 Underfitting이 발생
  • Smoothing Spline은 이 문제를 해결하기 위해 Penalization (패널티)를 추가하여 모델의 복잡도를 조절
  • 예를 들어, Natural Cubic Spline에서 Knot를 어떻게 고를지 고민할 필요 없이, 모든 데이터 포인트를 Knot으로 지정하고, 곡률(Curvature)을 부드럽게 조절
  • 자연스럽게 데이터의 변화를 반영하면서도, 너무 세세한 노이즈는 억제

첫 번째 항: 데이터와 모델 간의 오차 → Bias와 관련
두 번째 항: 모델의 곡률(Curvature)에 대한 패널티 → Variance와 관련

< λ (람다)의 역할 >
λ가 커지면: 모델이 단순해지고 **Variance(분산)**가 작아짐
λ가 작아지면: 모델이 복잡해지고 **Bias(편향)**가 줄어듦

λ = 0인 경우: 데이터를 완벽히 따라감 → 과적합(Overfitting) 발생
λ = ∞인 경우: 모델이 선형 회귀로 단순화됨

 


5. 스무딩 스플라인의 해법 (Solution of Smoothing Splines)


6. Smoother Matrix

 

Smoother Matrix 성질:

 

자유도:

 

Smoother Matrix를 통해 최종 예측값이 결정
이 행렬이 매끄럽게 잘 만들어져야 Overfitting이나 Underfitting을 피할 수 있음

λ 값에 따라서 Sλ​의 형태가 바뀌고, λ가 크면 → 단순한 선형에 가까워지고, λ가 작으면 → 복잡한 곡선에 가까워짐

 


 

7.  Choice of Tuning Parameter (튜닝파라미터의 선택)

튜닝파라미터란?

  • 모델을 학습할 때, 최적의 성능을 내기 위해 조절해야 하는 하이퍼파라미터
  • Smoothing Spline에서는 λ (Smoothing Parameter)가 대표적인 튜닝 파라미터
  • λ 값이 클수록 단순한 선형 모델이 되고, 작을수록 복잡한 모델
    • λ=0: 완전 Overfitting (모든 점을 통과)
    • λ=∞: 완전 Underfitting (직선에 가까움)

튜닝 파라미터를 찾기 위해 데이터를 세 가지로 나눔:

Training Data Validation Data Test Data
  • 모델 학습에 사용
  • 예를 들어, Spline의 계수들을 학습하는 데 활용
  • 모델 성능을 평가하고, 최적의 λ 값을 찾는 데 사용
  • Training 과정에서는 전혀 사용되지 않고, 오직 모델의 성능 평가에만 사용
  • λ값을 여러 개 테스트하면서, 가장 성능이 좋은 값을 선택
  • 최적의 λ값으로 학습된 모델이 실제로 잘 일반화되었는지 최종 검증
  • 오직 마지막 평가에만 사용됨
  1.  
  • λ 값의 최적화:
    • 교차 검증(Cross-Validation) 사용
      • 데이터셋을 훈련(Training), 검증(Validation), 테스트(Test)로 나눔
      • 다양한 λ 값에 대해 MSE(Mean Squared Error)를 계산
      • MSE가 최소화되는 λ를 선택

만약 Validation Data를 따로 나눌 만큼 데이터가 충분하지 않다면:

  • K-Fold Cross Validation:
    • 데이터를 K개의 폴드(Fold)로 나누어 반복적으로 검증
    • 각 폴드에서 훈련과 테스트를 반복하며 평균 MSE 계산
  • Leave-One-Out Cross Validation (LOOCV)
  •  

8. 모델 평가 기준 (Model Evaluation Criteria)

  • AIC (Akaike Information Criterion):
    • 모델의 적합도와 복잡도 간의 균형을 평가
  • BIC (Bayesian Information Criterion):
    • AIC와 유사하나, 데이터의 개수(n)에 따라 패널티 증가
  • GCV (Generalized Cross Validation):
    • 모델의 자유도를 고려하여 MSE를 계산
    • 교차 검증 없이 최적 λ를 찾을 수 있음


 

 

Reference

Hastie, T., Tibshirani, R., and Friedman, J., (2009) The Elements of Statistical Learning. Springer Series in Statistics Springer New York Inc., New York, NY, USA.