곤약노트

#5 함수형 데이터 분석 (Functional Data Analysis, FDA) - Functional Principal Component (FPCA) 본문

Data Science/High-Dimensional Data Analytics

#5 함수형 데이터 분석 (Functional Data Analysis, FDA) - Functional Principal Component (FPCA)

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

▶ 함수형 데이터(Functional Data)는 시간(time)이나 공간(space)에 따라 연속적으로 변화하는 곡선(Curve) 형태의 데이터를 의미
스플라인(Spline): 구간을 나누어 다항식으로 매끄럽게 표현
커널 스무더(Kernel Smoother): 예측 지점 근처의 데이터를 가중 평균

▶ 한계:
복잡한 고차원 데이터에서는 해석이 어려움 시간 또는 공간에 따른 상관관계를 반영하기 어려움
예측 변수(Feature)가 너무 많아 차원 축소가 필요

해결 방법: FPCA (함수형 주성분 분석)

1. 함수형 주성분 분석 (FPCA)란?

  • FPCA:
    • 함수형 데이터를 차원 축소하여, 중요한 특징만 추출하는 분석 방법
    • 일반적인 PCA(Principal Component Analysis)와 비슷하지만, 시간이나 공간에 따른 연속적인 신호(Functional Data)를 다룸
    • Functional Principal Scores (주성분 점수):
      • 데이터를 가장 잘 설명하는 특징들로, FPCA를 통해 추출된 값들

 


2. 함수형 데이터의 구조

  • 공분산 함수 (Covariance Function):
    • 시간 tt′에서 두 신호 간의 상관관계를 측정
    • 두 시점이 가까울수록 상관관계가 높고, 멀수록 작아짐

3.  커널로브(The Karhunen-Loève, K-L) 정리

 

  • 함수형 데이터(Functional Data)를 여러 개의 고유함수(Eigenfunctions)의 선형 결합으로 표현
  • 이는 복잡한 함수형 데이터를 몇 개의 주요 패턴으로 압축할 수 있게 해줌

 

 

※ K-L 정리가 중요한 이유
1) 함수형 데이터의 차원 축소
- 복잡한 신호를 몇 개의 주요 패턴(고유함수)만으로 설명할 수 있음
- 예를 들어, 100개의 시간 포인트로 이루어진 데이터가 3~4개의 고유함수로 압축됨
2) 주성분 분석(PCA)와 유사하지만 연속형 데이터에 적용
- 일반적인 PCA는 이산형 데이터(Discrete Data)를 다루지만, K-L 정리는 시간에 따른 연속형 데이터를 다룸
3) FPCA (Functional Principal Component Analysis)의 기반
- K-L 정리를 통해 얻은 고유함수와 고유값을 FPCA에서 사용하여 시간에 따른 주요 변동성을 분석

4. Model Estimation

Complete Signals:

  • 이 경우에는 FPCA를 직접 적용하기 쉬움
  • 시간 간격이 일정하므로, 쉽게 계산 가능
    • 평균 함수(Mean Function) μ(t)
    • 공분산 함수(Covariance Function) C(t, t′)
    • 고유함수(Eigenfunction) ϕk(t)

Incomplete Signals:

  • 이 경우는 결측치(Missing Values)가 있기 때문에 보간(Interpolation)이 필요
  • 대표적인 방법:
    1. Local Linear Regression: 근처의 값을 참고하여 보완
    2. Spline Interpolation: 스플라인을 사용하여 매끄럽게 보간
    3. Kernel Smoothing: 지역적으로 가까운 값들의 가중 평균
    4. Expectation Maximization (EM) Algorithm: 반복적으로 결측치를 추정

5. Estimation of Mean Function

1) Mean Function μ(t) 추정하기

  • 함수형 데이터 분석(Functional Data Analysis, FDA)에서 각 시점 tt에 대한 평균 곡선 μ(t) 추정하는 것이 중요
  • 모든 개별 신호 si(t)는 평균 곡선에 개별적인 변동이 더해진 형태

 

2) Local Linear Regression을 이용한 추정


6. Estimation of Covariance Function

1) Covariance Function C(t,t′)란?

  • 공분산 함수는 두 시간 지점 tt에서의 신호 간의 공통된 변화를 측정
  • 즉, 시간 tt′에서의 값들이 얼마나 함께 변화하는지를 나타냄
  • 시간에 따른 패턴이 일정하다면 공분산이 높게 나오고, 반대로 무작위로 변하면 공분산이 낮게 나옴

 

2) 공분산함수 추정 과정

  •  
  • 공분산 함수가 추정되면, 이를 바탕으로
    • 고유함수(Eigenfunctions)를 계산

7. Computing FPC-Scores (Functional Principal Component Scores)

1) 고유함수 (Eigenfunction) ϕ^k(tj) 계산하기:

FPCA의 핵심은 고유함수(Eigenfunction)를 추정

  • 고유함수는 시간에 따른 신호의 주요 패턴을 잡아내는 역할
  • 이를 추정하기 위해 고유값 문제(Eigenvalue Problem)를 풀어야 함

 

 

2) FPC-Scores ξ^ik 계산하기:

 

 

  •  

 

 

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.