다변량 적응형 회귀 스플라인 소개


일련의 예측 변수와 응답 변수 사이의 관계가 선형인 경우 선형 회귀 분석을 자주 사용할 수 있습니다. 이는 주어진 예측 변수와 응답 변수 사이의 관계가 다음과 같은 형식을 취한다고 가정합니다.

Y = β 0 + β 1 X + ε

그러나 실제로는 변수 간의 관계가 실제로 비선형일 수 있으며 선형 회귀를 사용하려고 하면 모델이 제대로 적합하지 않을 수 있습니다.

예측 변수와 응답 변수 사이의 비선형 관계를 설명하는 한 가지 방법은 다음 형식을 취하는 다항식 회귀를 사용하는 것입니다.

Y = β 0 + β 1 X + β 2 X 2 + … + βh

이 방정식에서 h는 다항식의 “차수”라고 합니다. h 값을 높이면 모델이 더 유연해지고 비선형 데이터에 적응할 수 있습니다.

그러나 다항식 회귀에는 몇 가지 단점이 있습니다.

1. 차수 h를 너무 크게 선택하면 다항식 회귀가 데이터 세트에 쉽게 과대적합 될 수 있습니다. 실제로 h는 3 또는 4보다 큰 경우가 거의 없습니다. 그 이유는 그 지점을 넘어서면 단순히 훈련 세트의 노이즈에 해당하고 보이지 않는 데이터에 대해 잘 일반화되지 않기 때문입니다.

2. 다항식 회귀는 전체 데이터 세트에 전역 함수를 적용하지만 항상 정확하지는 않습니다.

다항식 회귀의 대안은 다변량 적응형 회귀 스플라인 입니다.

기본 아이디어

다변량 적응형 회귀 스플라인은 다음과 같이 작동합니다.

1. 데이터 세트를 k 개 조각으로 나눕니다.

먼저 데이터 세트를 k개의 서로 다른 요소로 나눕니다. 데이터 세트를 나누는 지점을 노드 라고 합니다.

각 예측 변수의 각 점을 잠재적 노드로 평가하고 후보 특성을 사용하여 선형 회귀 모델을 생성하여 노드를 식별합니다. 모델에서 가장 많은 오류를 줄일 수 있는 지점은 노드입니다.

첫 번째 노드를 식별하면 추가 노드를 찾기 위해 프로세스를 반복합니다. 처음부터 합리적이라고 생각되는 만큼 많은 노드를 찾을 수 있습니다.

2. 각 부분에 회귀함수를 끼워 힌지함수를 형성합니다.

노드를 선택하고 데이터 세트의 각 요소에 회귀 모델을 적용하면 h(xa) 로 표시되는 힌지 함수 가 생성됩니다. 여기서 a 는 값 임계값입니다.

예를 들어 단일 노드 모델의 힌지 기능은 다음과 같습니다.

  • y = β 0 + β 1 (4.3 – x) x < 4.3인 경우
  • x > 4.3인 경우 y = β 0 + β 1 (x – 4.3)

이 경우 임계값으로 4.3을 선택하면 가능한 모든 임계값 중 오류를 최대한 줄일 수 있는 것으로 판단되었다. 그런 다음 4.3 미만의 값과 4.3 이상의 값에 다른 회귀 모델을 적용합니다.

두 개의 노드가 있는 힌지 함수는 다음과 같습니다.

  • y = β 0 + β 1 (4.3 – x) x < 4.3인 경우
  • x > 4.3 & x < 6.7인 경우 y = β 0 + β 1 (x – 4.3)
  • x > 6.7인 경우 y = β 0 + β 1 (6.7 – x)

이 경우 임계값으로 4.36.7을 선택하면 가능한 모든 임계값 중에서 최대의 오류 감소가 가능하다고 판단되었다. 그런 다음 하나의 회귀 모델을 4.3 미만의 값에 맞추고, 또 다른 회귀 모델을 4.3과 6.7 사이의 값에, 또 다른 회귀 모델을 4.3 이상의 값에 맞췄습니다.

3. k-겹 교차 검증을 기반으로 k를 선택합니다.

마지막으로, 각 모델에 대해 서로 다른 수의 노드를 사용하여 여러 다른 모델을 장착한 후에는 k-겹 교차 검증을 수행하여 가장 낮은 테스트 평균 제곱 오차(MSE)를 생성하는 모델을 식별할 수 있습니다.

MSE 테스트가 가장 낮은 모델이 새 데이터에 가장 잘 일반화되는 모델로 선택됩니다.

장점과 단점

다변량 적응형 회귀 스플라인에는 다음과 같은 장점과 단점이 있습니다.

장점 :

  • 회귀 문제와 분류 문제 모두에 사용할 수 있습니다.
  • 이는 대규모 데이터 세트에서 잘 작동합니다.
  • 빠른 계산을 제공합니다.
  • 이를 위해서는 예측 변수를 표준화할 필요가 없습니다.

단점:

  • Random Forest 및 Gradient Boosting Machine과 같은 비선형 방법만큼 성능이 좋지 않은 경향이 있습니다.

R 및 Python에 MARS 모델을 맞추는 방법

다음 자습서에서는 R 및 Python에서 MARS(다변량 적응형 회귀 스플라인)를 맞추는 방법에 대한 단계별 예를 제공합니다.

R의 다변량 적응 회귀 스플라인
Python의 다변량 적응 회귀 스플라인

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다