FDA 5.0 — 함수 반응 모형 개관

함수가 출력으로 등장할 때: 함수-on-스칼라, 함수-on-함수, 그리고 FPCA 기반 추론

Kokoszka & Reimherr (2017) Ch.5의 핵심을 개관한다. 반응이 함수인 두 가지 회귀 — 함수-on-스칼라 \(Y_i(t) = X\beta(t) + \varepsilon_i(t)\) 와 함수-on-함수 \(Y_i(t) = \alpha(t) + \int \psi(t,s) X_i(s) \, ds + \varepsilon_i(t)\) — 의 최소제곱·벌점 최소제곱 추정, FPCA 기반 핵 추정, 효과 없음 검정, 선형성 진단을 다룬다. 자동차 대시보드 각도 운동 데이터와 캐나다 기온·강수 데이터를 통한 실무 적용을 포함한다.

Statistics
Functional Data Analysis
저자

Kwangmin Kim

공개

2026년 05월 07일

1 이 장의 위치와 목적

Chapter 4에서는 스칼라-on-함수 회귀 \(Y_i = \int \beta(s) X_i(s) \, ds + \varepsilon_i\) 를 통해 “함수 모수를 어떻게 추정하는가” 의 일반 원리를 익혔다. 이제 거꾸로의 방향 — 반응 자체가 함수인 경우 — 를 다룬다.

회귀 형태 모형 함수 모수 차원
스칼라-on-스칼라 \(Y_i = \beta_0 + \sum_k \beta_k x_{ik} + \varepsilon_i\) 벡터 \(\boldsymbol{\beta}\) \(p\)
스칼라-on-함수 (Ch.4) \(Y_i = \int \beta(s) X_i(s) \, ds + \varepsilon_i\) 함수 \(\beta(s)\) \(\infty\)
함수-on-스칼라 (Ch.5.1~5.2) \(Y_i(t) = \sum_k x_{ik} \beta_k(t) + \varepsilon_i(t)\) \(q\) 개 함수 \(\beta_k(t)\) \(q \times \infty\)
함수-on-함수 (Ch.5.3~5.7) \(Y_i(t) = \alpha(t) + \int \psi(t,s) X_i(s) \, ds + \varepsilon_i(t)\) 이변량 함수 \(\psi(t,s)\) \(\infty \times \infty\)

함수-on-스칼라는 “시간에 따라 변하는 회귀계수” 를 추정하는 문제이다. 함수-on-함수는 한 걸음 더 나아가 두 함수 공간을 잇는 적분 변환 을 통째로 추정한다. 두 모형 모두 Ch.4의 아이디어 — 무한차원 모수의 정칙화 — 를 기반으로 하지만, 추가적인 구조적 어려움이 있다 (Kokoszka & Reimherr, 2017, Ch.5).

1.1 직관: “출력이 곡선” 이라는 게 무슨 뜻인가

다중 회귀는 한 관측치당 한 숫자를 예측한다. 함수 반응 모형은 한 관측치당 곡선 한 개 를 예측한다.

분야 함수 반응 \(Y(t)\) 예측 변수
자동차 인체공학 손 운동 중 팔 각도 곡선 목표 좌표 \((x, y, z)\) (스칼라)
기상학 1년 365일 일평균 기온 곡선 지역 (범주형 스칼라)
신경과학 뇌의 한 트랙트의 측정 곡선 다른 트랙트의 측정 곡선 (함수)
분자생물학 RT-PCR 증폭 곡선 (45 사이클) 초기 농도 / 효소 양 (스칼라 또는 곡선)

“한 줄 답” 이 아니라 “한 줄 답 + 그 답의 시간적 형태” 를 동시에 모형화한다는 것이 함수 반응 모형의 본질이다.

1.2 이 포스트의 흐름

5.1 함수-on-스칼라 OLS — 시점별 다중 회귀의 모음
    ↓
5.2 벌점 최소제곱 — 잡음 반응에 매끄러움 부과
    ↓
5.3 함수-on-함수 — 이변량 핵 ψ(t,s) 의 등장
    ↓
5.4 refund 구현 — fosr / pffr 함수
    ↓
5.5 FPCA 기반 핵 추정 — 데이터 자체의 주방향으로 ψ 분해
    ↓
5.6 효과 없음 검정 — H_0: ψ = 0 의 카이제곱 검정
    ↓
5.7 선형성 진단 — FPC 점수 산점도로 모형 타당성 점검

5.1과 5.2는 가장 단순한 환경(예측변수 스칼라)에서 함수 반응을 다루고, 5.3 이후는 일반적 환경(예측변수도 함수)으로 확장한다. 마지막 두 절(5.6, 5.7)은 추정 이후의 추론·진단 단계로, “이 모형을 정말 써도 되는가” 라는 질문에 답한다.


2 함수-on-스칼라 회귀

2.1 모형 정의

정의: 함수-on-스칼라 회귀

\(N\) 개의 관측 단위에 대해 다음을 가정한다:

\[ Y_i(t) = x_{i1} \beta_1(t) + x_{i2} \beta_2(t) + \cdots + x_{iq} \beta_q(t) + \varepsilon_i(t), \quad i = 1, 2, \ldots, N. \]

여기서:

  • \(Y_i: \mathcal{T} \to \mathbb{R}\): 곡선 반응 (response curve)
  • \(x_{ik} \in \mathbb{R}\): \(k\) 번째 스칼라 예측변수
  • \(\beta_k: \mathcal{T} \to \mathbb{R}\): 효과 함수 (effect function) — 시간 \(t\) 에서 예측변수 \(x_k\) 가 반응에 주는 기여
  • \(\varepsilon_i(t)\): 평균 0 의 잡음 곡선

행렬 표기로 통합하면:

\[ \mathbf{Y}(t) = \mathbf{X} \boldsymbol{\beta}(t) + \boldsymbol{\varepsilon}(t), \]

여기서 \(\mathbf{Y}(t) = [Y_1(t), \ldots, Y_N(t)]^T \in \mathbb{R}^N\), \(\mathbf{X} \in \mathbb{R}^{N \times q}\) 는 시간과 무관한 표준 설계 행렬, \(\boldsymbol{\beta}(t) = [\beta_1(t), \ldots, \beta_q(t)]^T \in \mathbb{R}^q\) 는 시점별 회귀계수 벡터.

2.2 직관: “각 시점이 작은 회귀 문제”

이 모형의 가장 강력한 직관은 다음 한 줄이다.

모든 시점 \(t\) 에서, 표준 다중 회귀가 진행된다.

시점 \(t = 0.3\) 을 고정하면, \(Y_i(0.3) = x_{i1} \beta_1(0.3) + \cdots + x_{iq} \beta_q(0.3) + \varepsilon_i(0.3)\) — 이는 평범한 다변량 회귀 식이며, 회귀계수는 단지 그 시점에서의 값 \(\beta_k(0.3)\) 이다.

따라서 함수-on-스칼라 회귀는 “연속적으로 인덱싱된 다중 회귀의 가족” 으로 볼 수 있다. 시점이 바뀌면 회귀계수도 바뀐다 — 그러나 같은 설계 행렬 \(\mathbf{X}\) 를 공유한다.

2.3 비유: 연속 촬영 사진사

여러 모델을 같은 위치에 세우고 1초마다 사진을 찍는 사진사를 생각한다. 매 시점마다 사진(반응 곡선의 한 슬라이스)이 다르지만, 모델들의 위치(설계 행렬)는 변하지 않는다. 함수 반응 분석은 “각 시점의 사진을 따로 분석” 하는 것이 아니라 “시점들 사이에서 사진이 어떻게 변하는지” 를 한꺼번에 모형화한다.

2.4 최소제곱 추정량

벌점 없는 최소제곱(OLS)의 핵심은 시점별 독립성 이다. 손실함수

\[ \sum_{i=1}^{N} \| Y_i - \sum_{k=1}^{q} x_{ik} \beta_k \|^2 = \int \sum_{i=1}^{N} \left( Y_i(t) - \sum_{k=1}^{q} x_{ik} \beta_k(t) \right)^2 dt \]

는 각 시점 \(t\) 의 “내부” 합을 별도로 최소화함으로써 전체가 최소화된다. 따라서 각 \(t\) 에서:

\[ \widehat{\boldsymbol{\beta}}(t) = (\mathbf{X}^T \mathbf{X})^{-1} \mathbf{X}^T \mathbf{Y}(t). \]

이는 시점 \(t\) 에서의 평범한 정규방정식 해이다 (식 5.3).

2.5 직관: 왜 “점별(pointwise)” 만으로 충분한가

각 시점에서 잡음 \(\varepsilon_i(t)\) 를 본다고 가정하자. 시점들 사이에 잡음 의존 구조 가 있어도 — 즉 \(\varepsilon_i(t_1)\)\(\varepsilon_i(t_2)\) 가 상관되어도 — 점별 OLS 는 여전히 비편향이다. 시점 간 상관은 추정량의 분산·표준오차에는 영향을 주지만, 평균값은 바꾸지 않는다.

이는 다변량 통계의 잘 알려진 사실 — “독립이 아니어도 OLS 는 비편향” — 의 함수 버전이다.

2.6 응용 사례: 자동차 대시보드 설계

데이터 (Faraway, 1997): 운전자가 핸들에서 손을 뗀 후 대시보드 위 20개 위치를 향해 팔을 뻗는 동작. 각 위치당 3회 반복, 1개 이상치 제거 후 \(N = 59\).

  • \(Y_i(t) \in [\text{각도}]\), \(t \in [0, 1]\) — 어깨·팔꿈치·손목이 만드는 각도, 시간은 동작 시작-끝 사이로 정규화.
  • \(x_i = (x_i, y_i, z_i)\) — 목표 위치의 직교 좌표.

처음 시도한 모형 (\(q = 4\)):

\[ Y_i(t) = \beta_0(t) + x_i \beta_x(t) + y_i \beta_y(t) + z_i \beta_z(t) + \varepsilon_i(t). \]

선형 항만으로는 적합이 부족하여, 2차 항 + 교차 항을 추가한 모형 (\(q = 10\)):

\[ Y_i(t) = \beta_0(t) + x_i \beta_x(t) + \cdots + x_i y_i \beta_{xy}(t) + x_i^2 \beta_{x^2}(t) + \cdots + \varepsilon_i(t). \]

추정 후 잔차 곡선 \(\widehat{\varepsilon}_i(t) = Y_i(t) - \widehat{Y}_i(t)\) 의 EFPC 분석에서 \(\widehat{\lambda}_1 = 182.6\), \(\widehat{\lambda}_4 = 5.3\) 으로 첫 EFPC 가 잔차 변동성을 지배한다. 첫 EFPC \(\widehat{v}_1\) 의 형태가 동작 중간부에서 변동이 가장 크고 시작·끝에서 작음을 보여준다.

2.7 직관: 왜 동작 중간에 변동이 큰가

시작점은 핸들, 끝점은 목표 위치 — 둘 다 공간적으로 고정된 점이다. 그러나 손이 그 사이를 어떻게 통과하느냐는 자유롭다. 제약이 강한 양 끝에서는 변동성이 작고, 자유로운 중간에서 크다 — 이는 운전자의 개별 습관, 물건 회피 경로, 신체적 편차 등이 중간 구간에 누적되기 때문이다.

이 구조는 함수 회귀 잔차의 EFPC 가 단순한 통계 도구를 넘어 실무적 통찰 을 준다는 점을 보여준다 — “어느 시점에 변동이 집중되는가” 가 직접 물리적 의미를 가진다.


3 벌점 최소제곱 추정

3.1 동기

5.1의 점별 OLS 는 반응 함수가 매끄러울 때만 정당 하다. 잡음이 큰 반응은 점별로 추정한 \(\widehat{\beta}_k(t)\) 도 거칠어진다 — 매끄러움 가정(\(\beta_k\) 자체가 매끈한 함수) 과 모순된다.

3.2 핵심 아이디어

각 효과 함수를 기저로 전개:

\[ \beta_\ell(t) = \sum_{k=1}^{K} b_{\ell k} \varphi_k(t), \]

기저 함수의 수 \(K\) 는 충분히 크게 잡되, 거칠기 벌점으로 매끄러움을 강제한다.

3.3 벌점 손실함수

\[ \sum_{i=1}^{N} \sum_{j=1}^{J} \left( Y_i(t_j) - \mathbf{X}_i^T \boldsymbol{\beta}(t_j) \right)^2 + \sum_{\ell=1}^{q} \lambda_\ell \int \{(L \beta_\ell)(t)\}^2 \, dt. \]

여기서 \(L\) 은 미분 연산자(보통 \(L \beta = \beta''\)), \(\lambda_\ell\) 은 효과 함수 \(\beta_\ell\) 별로 독립적으로 선택되는 벌점 모수.

3.4 직관: 효과 함수마다 다른 매끄러움

\(\lambda_\ell\) 이 각 \(\ell\) 에 따라 다를 수 있다는 점이 중요하다. 어떤 예측변수의 효과는 매끄럽게 변하고(예: 키 차이가 시간에 따라 천천히 누적되는 효과), 다른 예측변수의 효과는 급변할 수 있다(예: 시작 신호와의 상관). 함수-on-스칼라 회귀에서 각 회귀계수에 별도의 매끄러움 모수를 허용 하는 것이 자연스럽다.

이는 다변량 ridge 회귀에서 “모든 계수에 같은 정칙화” 를 부과하던 관행과 다르다. 함수 차원에서는 효과별 거칠기가 본질적으로 다르므로 별도 정칙화가 필요하다.

3.5 명시적 해

기저 전개와 벡터화·크로네커 곱 표기를 도입하면 닫힌 형태의 해가 존재한다 (식 5.6):

\[ \text{vec}(\mathbf{B}^T) = \left[ \mathbf{U}^T \mathbf{U} + \boldsymbol{\Lambda} \otimes \mathbf{R} \right]^{-1} \mathbf{U}^T \text{vec}(\mathbf{Y}^T), \]

여기서 \(\mathbf{U} = \mathbf{X} \otimes \boldsymbol{\Phi}^T\), \(\boldsymbol{\Lambda} = \text{diag}(\lambda_1, \ldots, \lambda_q)\), \(\mathbf{R}\) 은 거칠기 행렬.

3.6 직관: 크로네커 곱이 왜 등장하는가

표준 ridge 회귀의 해 \((\mathbf{X}^T \mathbf{X} + \lambda \mathbf{R})^{-1} \mathbf{X}^T \mathbf{Y}\) 는 단일 예측변수 차원과 단일 시점 차원을 가진다. 함수-on-스칼라 회귀는 두 차원이 독립적으로 등장\(q\) 개의 예측변수 차원 (^T $) 과 \(K\) 개의 기저 차원 ( ^T$).

크로네커 곱 \(\boldsymbol{\Lambda} \otimes \mathbf{R}\)두 차원의 결합 정칙화 를 표현한다 — “예측변수 \(\ell\) 에 대해 매끄러움 모수 \(\lambda_\ell\), 기저 차원에서 거칠기 행렬 \(\mathbf{R}\)” 의 직곱 구조. 다변량 자료의 GLS 에서 공분산 구조 \(\boldsymbol{\Sigma}_1 \otimes \boldsymbol{\Sigma}_2\) 가 등장하는 것과 같은 맥락이다.

3.7 비유: 두 방향으로 잡아당기는 그물

낚시 그물에 두 종류의 인장력이 작용한다고 상상한다. 가로 방향(예측변수 차원)에서 ridge 처럼 큰 계수에 벌점, 세로 방향(시간 차원)에서 거칠기에 벌점. 그물의 어느 코든 두 인장력의 결과로 모양이 결정된다 — 크로네커 곱은 이 “두 인장력의 곱셈적 결합” 을 정확히 표현한다.


4 함수-on-함수 회귀

4.1 모형 정의

정의: 함수-on-함수 회귀 (가장 단순한 형태)

\[ Y_i(t) = \alpha(t) + \int_{\mathcal{S}} \psi(t, s) X_i(s) \, ds + \varepsilon_i(t), \quad i = 1, 2, \ldots, N. \]

여기서:

  • \(Y_i: \mathcal{T} \to \mathbb{R}\): 반응 곡선
  • \(X_i: \mathcal{S} \to \mathbb{R}\): 회귀자 곡선 (반응의 도메인 \(\mathcal{T}\) 와 다른 도메인 가능)
  • \(\alpha: \mathcal{T} \to \mathbb{R}\): 절편 함수
  • \(\psi: \mathcal{T} \times \mathcal{S} \to \mathbb{R}\): 이변량 회귀 핵 (regression kernel) — 이 모형의 핵심 모수
  • \(\varepsilon_i\): iid 평균 0 잡음 곡선

4.2 직관 1: 핵 \(\psi(t, s)\) 의 의미

\(\psi(t, s)\) 는 “회귀자의 시점 \(s\) 의 값이 반응의 시점 \(t\) 의 값에 주는 영향력” 이다.

  • \(\psi(t_0, s_0) > 0\): \(X(s_0)\) 의 증가가 \(Y(t_0)\) 를 증가시킴.
  • \(\psi(t_0, s_0) < 0\): \(X(s_0)\) 의 증가가 \(Y(t_0)\) 를 감소시킴.
  • \(\psi(t_0, s_0) \approx 0\): \(X(s_0)\)\(Y(t_0)\) 에 영향을 주지 않음.

\(\psi\) 는 두 시간 축을 잇는 변환 표면(transformation surface) 이며, 시각화하면 2D 표면(persp 그림)이나 히트맵으로 표현된다.

4.3 직관 2: 무한차원 행렬-벡터 곱

이산 다변량 회귀 \(\mathbf{Y} = \boldsymbol{\Psi} \mathbf{X}\) 에서 \(\boldsymbol{\Psi}\) 는 행렬, \(\mathbf{X}\) 는 벡터. 함수-on-함수 회귀는 이의 연속 일반화:

\[ Y(t) = \int \psi(t, s) X(s) \, ds. \]

이산 (다변량) 연속 (함수)
\(Y_t = \sum_s \psi_{ts} X_s\) \(Y(t) = \int \psi(t, s) X(s) \, ds\)
행렬 \(\boldsymbol{\Psi} \in \mathbb{R}^{m \times n}\) \(\psi(t, s)\)
행렬-벡터 곱 적분 변환

\(\psi\)무한차원 행렬 에 해당한다. 이 관점에서 함수-on-함수 회귀의 어려움은 “행이 무한 개, 열도 무한 개인 행렬을 유한 표본에서 추정” 의 문제로 환원된다.

4.4 비유: 빛의 굴절 패턴

프리즘에 백색광을 통과시킨다. 입력은 모든 파장의 빛(함수 \(X\)), 출력은 굴절각별 강도 분포(함수 \(Y\)). 프리즘의 굴절 특성은 두 변수의 함수 \(\psi(\text{출력각}, \text{파장})\) — 어떤 파장이 어떤 각도로 굴절되는지의 매핑이다. 함수-on-함수 회귀는 “여러 입력-출력 쌍에서 프리즘의 굴절 표면을 역추정” 하는 것에 비유할 수 있다.

4.5 일반 모형 (스칼라 + 다중 함수 회귀자)

실제 데이터에서는 스칼라 회귀자와 함수 회귀자가 함께 등장한다 (식 5.11):

\[ Y_i(t) = \alpha(t) + \mathbf{w}_i^T \boldsymbol{\gamma} + \int_{\mathcal{S}} \psi_1(t, s) X_{i1}(s) \, ds + \int_{\mathcal{R}} \psi_2(t, r) X_{i2}(r) \, dr + \varepsilon_i(t). \]

여기서 \(\mathbf{w}_i\) 는 스칼라 회귀자 벡터, \(\boldsymbol{\gamma}\) 는 표준 회귀계수, \(X_{i1}, X_{i2}\) 는 함수 회귀자 (서로 다른 도메인 가능).

4.6 식별성 (identifiability) 조건

\(\psi\) 와 절편 \(\alpha\) 를 분리하기 위해 회귀자를 중심화 해야 한다:

\[ X_{i\ell}^c(s) = X_{i\ell}(s) - \frac{1}{N} \sum_{i=1}^{N} X_{i\ell}(s). \]

직관: 중심화하지 않으면 \(\alpha + \int \psi \mu_X\) 가 절편으로 흡수되어 둘을 구분할 수 없다. 다변량 회귀에서 절편을 추정할 때 회귀자를 평균 차감하는 것과 같은 맥락이다.

4.7 추정: 양방향 기저 전개 + 벌점

핵을 이변량 기저 로 전개:

\[ \psi_1(t, s) = \sum_{g=1}^{G} \psi_{1, g} B_{1, g}(t, s). \]

이변량 기저는 보통 일변량 기저의 텐서 곱(tensor product)으로 구성: \(B(t, s) = B_t(t) \cdot B_s(s)\). 미분 연산자 \(L\) (예: 라플라시안 \(\partial^2/\partial t^2 + \partial^2/\partial s^2\)) 의 적분이 거칠기 벌점을 정의한다.

4.8 직관: 텐서 곱 기저의 의미

이변량 기저 \(B(t, s) = B_t(t) \cdot B_s(s)\) 는 “두 일변량 기저의 모든 조합” 이다. 예를 들어 \(t\) 에 대해 30개 B-spline, \(s\) 에 대해 30개 B-spline 을 쓰면 이변량 기저는 \(30 \times 30 = 900\) 개. 이 큰 수의 자유도가 “왜 함수-on-함수가 함수-on-스칼라보다 어려운가” 를 설명한다 — 모수의 개수가 문자 그대로 곱셈적으로 폭발 한다.

4.9 벌점 함수의 두 종류

핵의 거칠기는 다양한 방식으로 정의 가능하다.

벌점 형태 의미
\(\int (\psi_{tt})^2 \, dt \, ds\) \(t\) 방향 곡률만 벌점
\(\int (\psi_{ss})^2 \, dt \, ds\) \(s\) 방향 곡률만 벌점
\(\int (\psi_{tt} + \psi_{ss})^2 \, dt \, ds\) 라플라시안 — 양 방향 합

선택은 도메인 지식에 의존한다 — 예를 들어 \(\psi(t, s)\)\(t\) 에 대해 매끄럽고 \(s\) 에 대해 거칠 것이 예상되면 \(t\) 방향에만 강한 벌점.


5 refund 패키지 구현

5.1 두 핵심 함수

refund 패키지의 두 함수가 5.2 와 5.3 의 추정을 담당한다.

함수 모형 비고
fosr 함수-on-스칼라 OLS, GLS, 순열 검정 지원
pffr 함수-on-스칼라, 함수-on-함수 더 유연하고 강력, mixed model framework

pffr 은 일반화 가법 모형 라이브러리 mgcv 위에 구축되어, REML 또는 GCV 로 매끄러움 모수가 자동 선택된다.

5.2 함수-on-스칼라 예시: 캐나다 기온 데이터

데이터: 35개 캐나다 관측소의 일평균 기온 곡선 (\(t \in \{1, \ldots, 365\}\)). 각 관측소는 4개 기후권(북극, 대서양, 대륙, 태평양) 중 하나에 속한다.

모형:

\[ Y_i(t) = \mu(t) + \alpha_{r(i)}(t) + \varepsilon_i(t), \]

여기서 \(\mu(t)\) 는 캐나다 전체 평균 기온 곡선, \(\alpha_r(t)\) 는 기후권 \(r\) 의 평균과의 편차, 식별성을 위해 \(\sum_r \alpha_r(t) = 0\) 가정.

library(fda)
library(refund)

# 1. 함수 데이터 객체 생성
daybasis25 <- create.fourier.basis(rangeval = c(0, 365), nbasis = 25,
                                   axes = list("axesIntervals"))
Temp.fd <- with(CanadianWeather,
                smooth.basisPar(day.5, dailyAv[, , "Temperature.C"],
                                daybasis25)$fd)

# 2. 설계 행렬: 절편 + 4 기후권 더미
modmat <- cbind(1, model.matrix(~ factor(CanadianWeather$region) - 1))
constraints <- matrix(c(0, 1, 1, 1, 1), 1)   # sum-to-zero on region effects

# 3-1. OLS 적합
olsmod <- fosr(fdobj = Temp.fd, X = modmat, con = constraints,
               method = "OLS", lambda = 100 * 10:30)

# 3-2. GLS 적합 (잔차 곡선의 공간 의존성 고려)
glsmod <- fosr(fdobj = Temp.fd, X = modmat, con = constraints,
               method = "GLS")

# 4. 결과 시각화
par(mfrow = c(2, 5), mar = c(5, 2, 4, 1))
plot(olsmod, split = 1, set.mfrow = FALSE,
     titles = c("OLS: Intercept",
                levels(factor(CanadianWeather$region))),
     ylab = "", xlab = "Day")
plot(glsmod, split = 1, set.mfrow = FALSE,
     titles = c("GLS: Intercept",
                levels(factor(CanadianWeather$region))),
     ylab = "", xlab = "Day")

5.3 직관: 왜 OLS 가 아닌 GLS 인가

이웃한 관측소의 기온 곡선은 공간적 상관(spatial correlation)을 가진다. OLS 는 잔차가 비상관임을 가정하므로, 이런 데이터에서 표준오차를 과소평가한다. GLS 는 잔차의 공분산 구조를 추정하여 가중 최소제곱 으로 해결한다.

캐나다 기온 데이터에서 OLS 와 GLS 의 점추정은 비슷하지만, GLS 의 추정 함수가 약간 더 매끈한 경향이 있다 — 종속성을 모형에 포함하여 잡음 중 일부가 “신호” 가 아닌 “구조” 임을 인식하기 때문이다.

5.4 함수-on-함수 예시: pffr 시뮬레이션

library(refund)

# 1. 함수-on-함수 데이터 시뮬레이션
set.seed(9312)
data_ff <- pffrSim(scenario = c("int", "ff"), n = 100)

# psi(s, t) = s * cos(pi * |s - t|) - 0.19 (시뮬레이션의 참 핵)
# X_i: [0,1]에서 40개 등간격 점 위에서 정의, 큐빅 B-spline + 정규 잡음
# Y_i: [0,1]에서 60개 등간격 점 위에서 정의, alpha(t) = 1 + dbeta(t, 2, 7)

# 2. pffr로 함수-on-함수 회귀 적합
m_ff <- pffr(Y ~ ff(X1), data = data_ff)

# 3. 추정된 핵 표면 시각화
psi_plot <- plot(m_ff, select = 2, pers = TRUE)[[2]]
persp(psi_plot$x, psi_plot$y, matrix(psi_plot$fit, 40, 40),
      xlab = "s", ylab = "t",
      phi = 40, theta = 30, ticktype = "detailed",
      main = expression(hat(psi)(t, s)),
      border = NA, col = "grey", shade = 0.7)

ff(X1) 헬퍼가 X1 을 함수 회귀자로 표시한다. 자동으로 이변량 기저 전개와 벌점을 적용하여 핵 \(\widehat{\psi}(t, s)\) 를 추정한다.


6 FPCA 기반 핵 추정

6.1 동기

5.3 의 기저 전개·벌점 접근은 결정적 기저(B-spline, Fourier 등) 를 사용한다. 그러나 데이터의 변동 구조가 이 기저와 잘 맞지 않으면 비효율적이다. 데이터 자체의 주방향(EFPC) 을 기저로 사용 하면 적은 항으로도 정확한 추정이 가능하다.

6.2 사전 작업: 영 절편으로의 환원

평균을 차감하여 절편을 분리:

\[ Y_i^c(t) = \int \psi(t, s) X_i^c(s) \, ds + \varepsilon_i(t), \]

추정된 \(\widehat{\psi}\) 로부터 \(\widehat{\alpha}(t) = \widehat{\mu}_Y(t) - \int \widehat{\psi}(t, s) \widehat{\mu}_X(s) \, ds\) 로 절편을 복원한다.

6.3 핵 분해

\(X\)\(Y\) 의 KL 전개를 도입:

\[ X(s) = \sum_{i=1}^{\infty} \xi_i v_i(s), \quad Y(t) = \sum_{j=1}^{\infty} \zeta_j u_j(t), \]

여기서 \(v_i\)\(X\) 의 FPC, \(u_j\)\(Y\) 의 FPC, \(\xi_i, \zeta_j\) 는 점수.

\(\psi\)\(\{v_\ell(s) u_k(t)\}\)\(L^2(\mathcal{S} \times \mathcal{T})\) 의 기저를 이루므로 다음 형태로 전개 가능:

\[ \psi(t, s) = \sum_{k=1}^{\infty} \sum_{\ell=1}^{\infty} \psi_{k\ell} u_k(t) v_\ell(s). \]

6.4 핵심 결과: 계수 공식

직접 유도(식 5.17)에 의해:

\[ \psi_{k\ell} = \frac{E[\xi_\ell \zeta_k]}{E[\xi_\ell^2]} = \frac{\sigma_{\ell k}}{\lambda_\ell}, \]

여기서 \(\sigma_{\ell k} = E[\xi_\ell \zeta_k]\) (입력·출력 점수 간 공분산), \(\lambda_\ell = E[\xi_\ell^2]\) (\(X\)\(\ell\) 번째 고유값).

6.5 직관: “좌표계가 자연스럽게 정렬된 회귀”

이 공식은 다변량 회귀의 가장 단순한 형태와 같다:

\[ \beta = \frac{\text{Cov}(X, Y)}{\text{Var}(X)}. \]

함수 버전은 “\(X\) 의 주방향과 \(Y\) 의 주방향 사이의 회귀” — 무한 개의 1차원 회귀 문제로 분해된다. 각 회귀계수 \(\psi_{k\ell}\)\(\xi_\ell\) (X 의 \(\ell\) 번째 PC) 이 \(\zeta_k\) (Y 의 \(k\) 번째 PC) 를 얼마나 설명하는지를 정량화한다.

6.6 비유: 음향 시스템의 등화기(equalizer)

음악(입력 신호)을 베이스·중음·고음 등 주파수 대역으로 분해(X 의 FPC)하고, 출력도 비슷하게 분해(Y 의 FPC)한 후, 각 대역 사이의 변환 강도를 슬라이더로 조절한다 (\(\psi_{k\ell}\)). 슬라이더 행렬 전체가 시스템의 응답 특성 — 즉 핵 \(\psi(t, s)\) — 을 결정한다.

6.7 추정량

표본 공분산과 추정 EFPC 로 대체:

\[ \widehat{\psi}(t, s) = \sum_{k=1}^{q} \sum_{\ell=1}^{p} \frac{\widehat{\sigma}_{\ell k}}{\widehat{\lambda}_\ell} \widehat{u}_k(t) \widehat{v}_\ell(s), \]

여기서

\[ \widehat{\sigma}_{\ell k} = \frac{1}{N} \sum_{i=1}^{N} \langle X_i, \widehat{v}_\ell \rangle \langle Y_i, \widehat{u}_k \rangle. \]

절단 차원 \(p, q\) 는 누적 분산비(CPV) 또는 스크리 도표로 선택.

6.8 코드 예시: 캐나다 기온 → 강수량

library(fda)
data(daily)

precav <- daily$precav
tempav <- daily$tempav
daytime <- (1:365) - 0.5
dayrange <- c(0, 365)
dayperiod <- 365

# 1. Fourier 기저 + harmonic acceleration penalty 로 곡선 생성·평활
daybasis <- create.fourier.basis(dayrange, 365)
Lcoef <- c(0, (2 * pi / dayperiod)^2, 0)
harmaccelLfd <- vec2Lfd(Lcoef, dayrange)
lambda <- 1e6
fdParobj <- fdPar(daybasis, harmaccelLfd, lambda)
precfd <- smooth.basis(daytime, precav, fdParobj)$fd
tempfd <- smooth.basis(argvals = daytime, tempav, fdParobj)$fd

# 2. 평균 차감
precfd.c <- center.fd(precfd)
tempfd.c <- center.fd(tempfd)

# 3. EFPC 추정 (X = 기온 4개, Y = 강수 6개)
prec.pca <- pca.fd(precfd.c, nharm = 6)
temp.pca <- pca.fd(tempfd.c, nharm = 4)

# 4. 점수 행렬 곱으로 sigma_{ell k} 추정 → 분해 계수
sigmas <- t(temp.pca$scores) %*% prec.pca$scores   # 4 x 6
cs <- diag(1 / temp.pca$values[1:4]) %*% sigmas    # ~ sigma / lambda

# 5. beta 함수 계수 → 이변량 함수 객체
beta.coefs <- temp.pca$harmonics$coefs %*% cs %*% t(prec.pca$harmonics$coefs)
beta.bifd <- bifd(beta.coefs,
                  sbasisobj = temp.pca$harmonics$basis,
                  tbasisobj = prec.pca$harmonics$basis)

6.9 직관: 왜 이 데이터가 좋은 예시인가

캐나다에서 기온과 강수는 명확한 인과 관계를 갖는다 — 따뜻한 공기가 더 많은 수증기를 운반하므로 여름 강수가 겨울보다 많다. FPCA 기반 핵 추정은 이 관계를 두 곡선의 주성분 사이의 회귀 로 분해 — 첫 번째 PC 는 보통 “전체 수준” (연평균), 두 번째 PC 는 “계절성” (여름-겨울 차) 등을 표현한다.

추정된 \(\widehat{\psi}(t, s)\) 의 표면을 보면 “기온이 높아지는 시점(\(s\) 의 여름) 이 강수가 많은 시점(\(t\) 의 여름) 에 큰 양의 영향을 준다” 는 패턴이 시각적으로 드러난다.


7 효과 없음 검정 (Test of No Effect)

7.1 검정 문제

함수-on-함수 모형 (5.15) 에서:

\[ H_0: \psi(t, s) = 0 \quad \text{vs.} \quad H_A: \psi(t, s) \neq 0. \]

\(H_0\) 는 “회귀자 \(X\) 가 반응 \(Y\) 에 어떤 선형 효과도 주지 않는다” 와 같다. 다변량 회귀에서 \(H_0: \boldsymbol{\beta} = \mathbf{0}\) (전 회귀자 일괄 효과 없음) 의 함수 버전이다.

7.2 검정 통계량의 동기

\(\Psi\) 가 핵 \(\psi\) 의 적분 연산자일 때, 다음 관계가 성립 (식 5.20):

\[ \lambda_i \Psi(v_i) = \Delta(v_i), \]

여기서 \(C, \Gamma, \Delta\)\(X, Y\) 와 그 교차항의 공분산 연산자.

이 관계로부터 “\(\Psi(X) = 0\) 이려면 모든 \(i\) 에 대해 \(\Delta(v_i) = 0\)” 이 성립. \(u_j\)\(L^2\) 의 기저이므로 \(\langle \Delta(v_i), u_j \rangle = 0\) 의 무한히 많은 조건으로 환원되며, 유한 절단으로 검정한다.

7.3 검정 통계량과 분포

\[ \widehat{T}_N(p, q) = N \sum_{k=1}^{p} \sum_{j=1}^{q} \widehat{\lambda}_k^{-1} \widehat{\gamma}_j^{-1} \langle \widehat{\Delta}(\widehat{v}_k), \widehat{u}_j \rangle^2. \]

\(H_0\) 하에서 \(\widehat{T}_N(p, q) \xrightarrow{d} \chi^2_{pq}\) (자유도 \(p \times q\)).

7.4 알고리즘 5.6.1

효과 없음 카이제곱 검정 절차
  1. 차원 선택: 스크리 도표 또는 누적 분산비로 \(p\) (\(X\) 의 EFPC 수), \(q\) (\(Y\) 의 EFPC 수) 선택.
  2. 중심화: \(X_n^c, Y_n^c\) 로 평균 차감.
  3. 점수 계산: \(\langle X_n, \widehat{v}_k \rangle\), \(\langle Y_n, \widehat{u}_j \rangle\) — 표준 FPC 출력.
  4. 통계량 계산: 식 (5.22).
  5. 결정: \(\widehat{T}_N(p, q) > \chi^2_{pq}(\alpha)\)\(H_0\) 기각.

7.5 직관: 왜 점수의 곱들의 합인가

\(\langle \Delta(v_k), u_j \rangle\) 는 본질적으로 “\(X\)\(k\) 번째 PC 와 \(Y\)\(j\) 번째 PC 의 표본 공분산” 이다. 두 PC 가 무상관이면 \(0\) 에 수렴, 상관이 있으면 \(0\) 에서 벗어남.

각 항을 \(\widehat{\lambda}_k \widehat{\gamma}_j\) 로 정규화하는 이유는 분산이 다른 PC 의 기여를 동등하게 만들기 위해 — 큰 \(\lambda_k\) (지배적 PC) 의 점수는 자연히 크지만, 그것이 “효과의 강도” 를 의미하지는 않는다. 정규화 후의 항이 표준화된 효과 크기.

총합이 \(\chi^2_{pq}\) 분포를 따르는 것은 \(pq\) 개의 (점근적으로 독립인) 표준화된 정규 변수의 제곱합이기 때문이다.

7.6 비유: 다중 입출력 채널의 누화 검사

전화 시스템에 \(p\) 개 입력 채널과 \(q\) 개 출력 채널이 있다. “입력이 출력에 전혀 누화되지 않는가?” 를 검정하려면 \(p \times q\) 개의 입출력 쌍 모두에서 누화 강도를 측정·합산한다. 한 쌍이라도 강하게 누화되면 합이 커지고 귀무가설(완전 차폐) 이 기각된다. 함수 회귀의 효과 없음 검정도 같은 구조 — \(p \times q\) 개의 PC 쌍에서 표본 공분산을 모두 합한다.


8 선형 함수 모형의 진단

8.1 동기

함수 회귀를 적합하기 전에 “선형 모형이 정말 적절한가” 를 확인해야 한다. 표준 다변량 회귀에서는 \((x_i, y_i)\) 산점도가 직선 패턴을 보이는지 확인한다. 함수 회귀의 진단도 같은 원리 — 단지 함수를 점수로 대체 한다.

8.2 핵심 아이디어

\(X_i, Y_i\) 의 FPC 점수를 \(\xi_{ij} = \langle X_i, \widehat{v}_j \rangle\), \(\zeta_{ik} = \langle Y_i, \widehat{u}_k \rangle\) 로 놓으면 다음 분해가 성립 (식 5.23):

\[ \zeta_{i\ell} = a_\ell + b_{\ell j} \xi_{ij} + \eta_{i, \ell j}. \]

이는 “고정된 \(\ell, j\) 에 대해 \(\zeta\)\(\xi\) 사이의 선형 회귀” — 평범한 단순 선형 회귀 식이다.

8.3 직관: 산점도의 비선형 패턴이 곧 모형 위반

만약 함수 모형이 진정 선형이라면, FPC 점수 산점도 \((\xi_{ij}, \zeta_{i\ell})\) 도 직선(공동 정규일 때 럭비공 모양)을 보여야 한다. 비선형 패턴(예: 2차 곡선)이 보이면 함수 회귀 모형 자체에 비선형성이 있음 을 의미한다.

8.4 비선형 시뮬레이션 예시

비선형 회귀 \(Y_i(t) = H_2(X_i(t)) + \varepsilon_i(t)\), 여기서 \(H_2(x) = x^2 - 1\).

  • 첫 번째 점수 산점도 \((\xi_{i1}, \zeta_{i1})\): 명백한 2차 곡선 패턴 → 비선형성 검출.
  • 다른 PC 쌍의 산점도: 일부도 비선형 패턴, 일부는 비교적 평이.

8.5 진단의 절차

함수 선형 모형 진단 워크플로우
  1. \(X_i, Y_i\) 의 EFPC 와 점수를 계산.
  2. 처음 몇 개 PC 의 모든 쌍 \((\xi_{ij}, \zeta_{i\ell})\) 의 산점도를 그린다.
  3. 패턴 검사:
    • 럭비공 / 직선 → 선형 가정 충족.
    • 2차 / 사다리 / 분리된 군집 → 비선형성 의심, FGAM 등 비선형 함수 모형 고려.
  4. 의심되는 PC 쌍은 다음 단계 분석에서 비선형 항을 추가하거나 변수 선택 재검토.

8.6 직관: PC 점수가 진단의 자연스러운 단위인 이유

함수 자체의 산점도(예: \(X_i, Y_i\) 의 원시 곡선)는 “두 곡선” 이라 평면에 그릴 수 없다. PC 점수는 함수의 가장 정보량 큰 차원 을 1차원 스칼라로 압축하므로 산점도가 가능하다.

또한 수학적 분해(식 5.23) 가 보장 한다 — 진정 선형 모형이라면 PC 점수 사이도 정확히 선형 관계를 가져야 한다. 비선형성이 보이면 모형 위반의 명확한 증거.


9 챕터 5의 통합 시각

9.1 한 줄 요약

함수가 출력으로 등장할 때, 회귀계수는 시간에 따라 변하는 함수(함수-on-스칼라) 또는 두 시간 축을 잇는 이변량 핵(함수-on-함수) 이다. 추정은 시점별 OLS, 벌점 최소제곱, 또는 FPCA 기반 분해로 수행되며, 추론은 효과 없음 카이제곱 검정과 PC 점수 산점도 진단으로 보완된다.

9.2 Chapter 4 와의 비교

측면 Ch.4 (스칼라-on-함수) Ch.5 (함수 반응)
모수 차원 \(\beta(s)\) — 일변량 함수 \(\beta_k(t)\) 또는 \(\psi(t, s)\) — 다변량 또는 이변량
식별 문제 무한차원 다공선성 함수-on-스칼라는 약함, 함수-on-함수는 양 방향 다공선성
정칙화 거칠기 벌점, FPCA, 기저 전개 동일 도구 + 양 방향 텐서 곱
추정량 형태 \(\widehat{\beta} = \sum c_j \phi_j\) \(\widehat{\boldsymbol{\beta}}(t)\) 또는 \(\widehat{\psi}(t, s) = \sum c_{k\ell} u_k v_\ell\)
추론 점별·동시 신뢰밴드 효과 없음 검정 + 진단

함수-on-스칼라는 가장 단순 — 시점별 다변량 회귀의 모음. 함수-on-함수는 가장 복잡 — 양 방향 무한 차원의 결합.

9.3 추정 접근의 통합 표

접근 함수-on-스칼라 (Ch.5.1~5.2) 함수-on-함수 (Ch.5.3~5.5)
점별 OLS \(\widehat{\boldsymbol{\beta}}(t) = (\mathbf{X}^T \mathbf{X})^{-1} \mathbf{X}^T \mathbf{Y}(t)\) 정의되지 않음 (양쪽 모두 함수)
벌점 + 기저 전개 식 (5.6) 식 (5.13), 텐서 곱 기저 + 라플라시안 벌점
FPCA 기반 잔차 분석에 사용 (Faraway 예시) 핵 분해 식 (5.19)
R 패키지 refund::fosr, refund::pffr refund::pffr (ff() 헬퍼)

9.4 Chapter 6 ~ 12 와의 연결

Ch.5 의 도구는 후속 챕터에서 다음과 같이 일반화된다:

  • Ch.6 (함수 GLM): 비정규 함수 반응 (이진·카운트). \(\eta_i(t) = \alpha(t) + \int X_i(s) \beta(t, s) \, ds\) 형태로 핵 + 링크 함수 결합.
  • Ch.7 (희소 FDA): \(X_i, Y_i\) 의 관측 시점이 불규칙·희소할 때 점수 추정에 PACE 사용.
  • Ch.8 (함수 시계열): FAR(1) \(X_n(t) = \int \phi(t, s) X_{n-1}(s) \, ds + \varepsilon_n(t)\) — Ch.5.3 의 핵 추정 도구를 시계열에 적용.
  • Ch.12 (추론): 효과 없음 검정의 일반화 — 평균 함수, 공분산 함수 검정, 동시 신뢰 밴드.

함수-on-함수의 핵 \(\psi(t, s)\) 는 FDA 의 가장 일반적이고 강력한 도구 중 하나로, 후속 챕터들이 모두 이 framework 위에서 전개된다.

9.5 실무 적용 가이드

상황 권장 접근
매끄러운 함수 반응 + 적은 스칼라 회귀자 점별 OLS (가장 빠름)
잡음 많은 함수 반응 + 적은 스칼라 회귀자 pffr 벌점 추정
함수 회귀자 + 함수 반응 pffr + ff() 헬퍼
데이터에 강한 주성분 구조 FPCA 기반 핵 추정 (Section 5.5)
회귀자의 영향이 의심스러움 효과 없음 검정 (Section 5.6) 으로 사전 검증
모형 적합 후 적합도 확인 PC 점수 산점도 진단 (Section 5.7)

실무에서는 항상 진단 → 적합 → 검정 의 순서로 작업한다. 검정이 유의하지 않으면 모형 자체가 부적절할 수 있으므로, 이 경우 도메인 지식으로 비선형 항이나 추가 회귀자를 검토한다.


10 관련 주제

선행 지식

후속 주제

관련 개념

Subscribe

Enjoy this blog? Get notified of new posts by email: