선형 회귀
1. 개요
1. 개요
선형 회귀는 통계학과 머신러닝에서 가장 기본적이고 널리 사용되는 예측 모델링 기법 중 하나이다. 독립 변수(예측 변수)와 종속 변수(반응 변수) 간의 선형 관계를 모델링하여, 새로운 독립 변수 값이 주어졌을 때 종속 변수의 값을 예측하는 것이 목표이다.
이 모델의 핵심은 데이터를 가장 잘 설명하는 직선(또는 초평면)을 찾는 것이다. 이 직선은 '회귀선'이라고 불리며, 모든 데이터 포인트와 이 선 사이의 거리(오차)의 제곱 합을 최소화하는 방식으로 결정된다[1]. 선형 회귀는 해석이 용이하고 구현이 비교적 간단하여, 복잡한 모델을 적용하기 전에 기본 베이스라인 모델로 자주 활용된다.
선형 회귀는 주로 두 가지 유형으로 나뉜다. 하나의 독립 변수만을 사용하는 단순 선형 회귀와 두 개 이상의 독립 변수를 사용하는 다중 선형 회귀이다. 단순 선형 회귀는 2차원 평면에 직선을 그리는 반면, 다중 선형 회귀는 고차원 공간에 초평면을 정의한다.
이 기법은 경제학, 금융, 공학, 생물학 등 다양한 분야에서 가격 예측, 수요 분석, 위험 평가 등에 응용된다. 그러나 데이터가 특정 통계적 가정(선형성, 오차의 독립성 등)을 충족해야 정확한 결과를 제공하며, 이러한 가정이 위배되거나 변수 간 복잡한 비선형 관계가 존재할 경우 그 성능이 제한될 수 있다.
2. 수학적 정의
2. 수학적 정의
선형 회귀는 하나 이상의 독립 변수와 종속 변수 간의 선형 관계를 모델링하는 통계적 방법이다. 이 모델은 주어진 독립 변수 값에 대해 종속 변수의 값을 예측하는 데 사용된다. 수학적으로는 종속 변수를 독립 변수의 선형 결합으로 표현하며, 여기에 임의의 오차 항이 더해진 형태를 가진다. 선형 회귀는 그 구조에 따라 단순 선형 회귀와 다중 선형 회귀로 구분된다.
단순 선형 회귀는 하나의 독립 변수와 하나의 종속 변수 사이의 관계를 직선으로 모델링한다. 수식은 *y = β₀ + β₁x + ε* 로 표현된다. 여기서 *y*는 종속 변수, *x*는 독립 변수, *β₀*는 절편, *β₁*은 기울기(회귀 계수), *ε*는 관찰되지 않는 오차 항을 나타낸다. 모델의 목표는 주어진 데이터에 가장 잘 맞는, 즉 오차를 최소화하는 *β₀*와 *β₁*의 값을 추정하는 것이다.
다중 선형 회귀는 두 개 이상의 독립 변수가 종속 변수에 미치는 영향을 동시에 분석한다. 수식은 *y = β₀ + β₁x₁ + β₂x₂ + ... + βₚxₚ + ε* 으로 확장된다. 여기서 *p*는 독립 변수의 개수이며, *β₁, β₂, ..., βₚ*는 각 독립 변수에 해당하는 회귀 계수이다. 각 계수는 다른 변수의 영향을 통제한 상태에서 해당 변수가 한 단위 변화할 때 종속 변수의 평균적 변화량을 의미한다.
두 모델의 핵심 차이는 독립 변수의 수에 있으며, 이를 표로 정리하면 다음과 같다.
특성 | 단순 선형 회귀 | 다중 선형 회귀 |
|---|---|---|
독립 변수 수 | 1개 | 2개 이상 |
수학적 모델 | y = β₀ + β₁x + ε | y = β₀ + β₁x₁ + ... + βₚxₚ + ε |
표현 형태 | 2차원 평면의 직선 | p+1차원 공간의 초평면 |
주요 목적 | 두 변수 간 관계 분석 | 여러 변수의 복합적 영향 분석 |
모든 선형 회귀 모델에서 *ε*는 평균이 0이고 분산이 일정하다는 등의 통계적 가정을 만족한다고 전제한다. 이 기본적인 수학적 정의를 바탕으로 최소제곱법이나 경사 하강법과 같은 방법을 통해 모델의 파라미터를 추정하게 된다.
2.1. 단순 선형 회귀
2.1. 단순 선형 회귀
단순 선형 회귀는 하나의 독립 변수와 하나의 종속 변수 사이의 선형 관계를 모델링하는 통계적 방법이다. 이 모델은 두 변수 간의 관계를 가장 잘 설명하는 직선을 찾는 것을 목표로 한다. 이 직선을 회귀 직선이라고 부르며, 데이터 포인트와 이 직선 사이의 거리(오차)의 제곱합을 최소화하는 방식으로 결정된다.
단순 선형 회귀 모델의 수식은 일반적으로 y = β₀ + β₁x + ε로 표현된다. 여기서 y는 종속 변수, x는 독립 변수를 나타낸다. β₀는 y 절편으로, x가 0일 때 y의 예측값을 의미한다. β₁은 회귀 계수 또는 기울기로, x가 한 단위 증가할 때 y의 평균적인 변화량을 설명한다. ε는 관찰되지 않은 무작위 오차 또는 잔차를 의미한다.
모델의 핵심은 주어진 데이터를 통해 β₀와 β₁의 값을 추정하는 것이다. 가장 일반적인 추정 방법은 최소제곱법이다. 이 방법은 실제 관측값(y_i)과 모델이 예측한 값(ŷ_i) 사이의 차이인 잔차의 제곱합을 최소화하는 β₀와 β₁을 계산한다. 이렇게 구해진 직선은 데이터에 대한 최적의 선형 근사치를 제공한다.
단순 선형 회귀는 그 직관성과 해석의 용이성 덕분에 널리 사용된다. 예를 들어, 광고 비용(x)과 매출액(y)의 관계, 공부 시간(x)과 시험 점수(y)의 관계 등을 분석하는 데 적합하다. 그러나 이 모델은 두 변수 간의 관계가 기본적으로 선형적이라는 가정에 의존하므로, 복잡한 비선형 관계를 설명하기에는 한계가 있다.
2.2. 다중 선형 회귀
2.2. 다중 선형 회귀
단순 선형 회귀가 하나의 독립 변수와 하나의 종속 변수 간의 관계를 모델링한다면, 다중 선형 회귀는 두 개 이상의 독립 변수를 사용하여 종속 변수를 예측하는 통계 기법이다. 이는 현실 세계의 복잡한 현상을 모델링할 때 매우 유용하다. 예를 들어, 집의 가격을 예측할 때 단순히 평수만 고려하는 것이 아니라, 방의 개수, 지어진 연도, 지역과 같은 여러 요인을 동시에 고려하는 것에 해당한다.
다중 선형 회귀 모델의 일반적인 수학적 형태는 다음과 같다.
y = β₀ + β₁x₁ + β₂x₂ + ... + βₚxₚ + ε
여기서 y는 종속 변수, x₁부터 xₚ는 p개의 독립 변수, β₀는 y절편, β₁부터 βₚ는 각 독립 변수에 대한 회귀 계수이다. ε는 관찰되지 않는 오차항을 나타낸다. 각 회귀 계수 βᵢ는 다른 모든 변수가 고정되어 있을 때, 해당 독립 변수 xᵢ가 한 단위 증가할 때 종속 변수 y의 평균적인 변화량을 의미한다.
다중 선형 회귀 모델을 구축할 때는 다중공선성 문제에 주의해야 한다. 이는 독립 변수들 간에 강한 상관관계가 존재할 때 발생하며, 개별 변수의 영향력을 정확히 추정하기 어렵게 만들고 모델의 안정성을 떨어뜨린다. 또한, 모델의 해석은 단순 선형 회귀보다 복잡해질 수 있다. 변수의 수가 많아질수록 과적합의 위험이 증가하며, 모델의 성능을 평가하기 위해 조정된 R-제곱과 같은 지표를 함께 사용하는 것이 일반적이다.
3. 가정과 제약 조건
3. 가정과 제약 조건
선형 회귀 모델은 통계적 추론의 타당성을 보장하기 위해 몇 가지 기본적인 가정을 충족해야 한다. 이러한 가정이 위배되면 모델의 추정치가 편향되거나 비효율적일 수 있으며, 예측의 신뢰도가 떨어질 수 있다.
주요 가정은 다음과 같다. 첫째, 선형성 가정으로, 독립 변수와 종속 변수 간의 관계가 선형적이어야 한다. 이는 모델이 Y = β₀ + β₁X₁ + ... + βₚXₚ + ε 형태로 표현된다는 것을 의미한다. 둘째, 오차항(ε)에 대한 가정이다. 오차항은 평균이 0이며, 모든 관측치에 대해 동일한 분산을 가져야 한다([2]). 또한 오차항들은 서로 독립적이어야 하며, 종종 정규 분포를 따른다고 가정한다.
독립 변수들 간에는 다중공선성 문제가 없어야 한다. 다중공선성이란 하나의 독립 변수가 다른 독립 변수들의 선형 조합으로 높은 정확도로 예측될 수 있을 때 발생한다. 이는 회귀 계수의 추정치를 불안정하게 만들고 해석을 어렵게 한다. 다중공선성을 탐지하기 위해 분산팽창지수(VIF)나 상관 행렬을 사용한다.
가정 | 내용 | 위반 시 문제점 |
|---|---|---|
선형성 | 독립변수와 종속변수 관계가 선형적이다. | 모델의 설명력이 현저히 저하된다. |
오차의 독립성 | 오차항 간에 상관관계가 없다. | 표준오차 추정이 부정확해져 가설 검정이 무의미해질 수 있다. |
오차의 등분산성 | 오차항의 분산이 모든 관측치에서 일정하다. | 회귀 계수 추정치는 비편향이지만 비효율적이며, 표준오차 추정이 왜곡된다. |
오차의 정규성 | 오차항이 정규 분포를 따른다. | 표본 크기가 충분히 크면 중심극한정리에 의해 영향이 완화된다. |
다중공선성 부재 | 독립 변수들 간의 상관관계가 높지 않다. | 개별 변수의 효과를 분리해 해석하기 어렵고, 계수 추정치의 분산이 매우 커진다. |
이러한 가정들은 이상적이며, 실제 데이터에서는 완벽하게 충족되기 어렵다. 따라서 잔차 분석을 통해 가정 위반 여부를 진단하고, 필요한 경우 변수 변환, 이상치 제거, 또는 정규화 기법 적용 등의 조치를 취한다.
3.1. 선형성
3.1. 선형성
선형성은 선형 회귀 모델의 가장 기본적인 가정이다. 이는 독립 변수와 종속 변수 간의 관계가 선형적이어야 한다는 것을 의미한다. 즉, 독립 변수의 값이 변화할 때 종속 변수의 기대값은 일정한 비율로 변화해야 한다. 이 가정이 충족되지 않으면 선형 회귀 모델은 데이터의 패턴을 제대로 설명하지 못하고 예측 성능이 떨어지게 된다.
선형성 가정은 모델의 매개변수, 즉 계수에 대한 선형성을 의미하며, 반드시 변수 자체의 선형성을 요구하지는 않는다. 따라서 다항 회귀와 같이 독립 변수를 변환(예: 제곱, 로그 변환)하여 새로운 변수를 만들어 포함시키는 방식으로 비선형 관계를 모델링에 포함시킬 수 있다. 예를 들어, 독립 변수 X와 종속 변수 Y의 관계가 Y = β₀ + β₁X + β₂X² 형태라면, X²을 새로운 독립 변수로 간주하면 선형 회귀 모델의 형태로 표현이 가능해진다.
선형성 가정을 검증하는 일반적인 방법은 잔차 플롯을 분석하는 것이다. 모델 학습 후 예측값과 실제 관측값의 차이인 잔차를 예측값에 대해 산점도로 그렸을 때, 잔차들이 무작위로 분포하며 특정한 패턴(예: 곡선 형태, 깔때기 모양)을 보이지 않아야 한다. 만약 체계적인 패턴이 관찰된다면, 이는 모델이 데이터의 선형적 관계를 포착하지 못했음을 시사하며, 변수 변환이나 더 복잡한 모델을 고려해야 한다.
3.2. 오차의 독립성과 등분산성
3.2. 오차의 독립성과 등분산성
선형 회귀 모델이 통계적으로 타당한 추정을 제공하기 위해서는 오차항(또는 잔차)에 대한 몇 가지 기본 가정이 충족되어야 합니다. 그 중 핵심적인 두 가지는 오차의 독립성과 등분산성입니다.
오차의 독립성은 관측치 간의 오차가 서로 상관관계를 가지지 않아야 한다는 가정입니다. 즉, 한 관측치의 오차가 다른 관측치의 오차 값에 영향을 미치지 않습니다. 이 가정이 위반되는 경우, 예를 들어 시계열 데이터에서 인접한 시간대의 오차가 유사한 패턴을 보이는 경우(자기상관), 모델의 표준 오차 추정이 왜곡되어 가설 검정의 신뢰도가 떨어집니다. 독립성을 검증하기 위해 더빈-왓슨 통계량을 사용하거나 잔차의 산점도를 살펴볼 수 있습니다.
등분산성은 오차의 분산이 모든 독립 변수 값의 수준에서 일정하게 유지되어야 한다는 가정입니다. 달리 말해, 예측값의 크기에 관계없이 오차의 흩어짐 정도가 균일해야 합니다. 이 가정이 위반되어 분산이 특정 구간에서 크게 변하는 현상을 이분산성이라고 합니다. 이분산성이 존재하면 회귀 계수의 추정치는 여전히 불편추정량일 수 있지만, 그 효율성이 낮아지고 표준 오차의 추정이 부정확해질 수 있습니다. 등분산성 위반은 잔차 대 예측값의 산점도를 통해 확인할 수 있으며, 패턴 없이 무작위로 퍼져 있어야 정상입니다.
가정 | 의미 | 위반 시 문제점 | 주요 탐지 방법 |
|---|---|---|---|
오차의 독립성 | 관측치 간 오차가 상관관계 없음 | 표준 오차 과소 추정, 가설 검정 신뢰도 하락 | 더빈-왓슨 통계량, 잔차 산점도 |
등분산성 | 오차의 분산이 모든 예측값 수준에서 일정함 | 회귀 계수 추정의 비효율성, 표준 오차 추정 오류 | 잔차 대 예측값 산점도, 브로슈-페이지 검정 |
이러한 가정이 심각하게 위반될 경우, 가중 최소제곱법을 적용하거나 변수 변환(예: 로그 변환)을 시도하는 등의 대안적 모델링 기법을 고려해야 합니다.
3.3. 다중공선성
3.3. 다중공선성
다중공선성은 다중 선형 회귀 모델에서 두 개 이상의 독립 변수들 사이에 강한 상관관계가 존재하는 상황을 가리킨다. 이는 모델의 추정치를 불안정하게 만들고, 개별 변수의 효과를 분리해 해석하기 어렵게 만드는 문제를 일으킨다. 완벽한 다중공선성은 하나의 독립 변수가 다른 독립 변수들의 선형 조합으로 정확히 표현될 때 발생하며, 이 경우 회귀 계수의 추정이 불가능해진다. 높은 수준의 다중공선성은 계수의 표준 오차를 비정상적으로 증가시켜, 통계적으로 유의미하지 않다는 결과가 나올 가능성을 높인다.
다중공선성을 탐지하는 주요 방법은 분산팽창지수를 계산하는 것이다. VIF는 한 독립 변수가 다른 독립 변수들에 의해 설명되는 정도를 수치화한 지표다. 일반적으로 VIF 값이 10을 초과하면 심각한 다중공선성이 존재한다고 판단한다[3]. 다른 탐지 방법으로는 상관 행렬을 살펴보거나, 고유값을 분석하는 것이 포함된다.
이 문제를 해결하기 위한 일반적인 접근법은 다음과 같다.
해결 방법 | 설명 |
|---|---|
변수 제거 | 상관관계가 높은 변수 중 하나를 모델에서 제거한다. |
데이터 수집 확대 | 더 많은 표본 데이터를 수집하여 공선성을 완화한다. |
주성분 분석 | 원본 변수들을 선형 결합하여 서로 상관관계가 없는 새로운 변수들을 생성한다. |
정규화 적용 |
해결 방법의 선택은 분석의 목적에 따라 달라진다. 만약 모델 해석이 최우선이라면 변수 제거가 선호되지만, 예측 정확도를 극대화하는 것이 목표라면 주성분 분석이나 정규화 기법이 더 적합할 수 있다.
4. 모델 학습 방법
4. 모델 학습 방법
선형 회귀 모델을 학습한다는 것은 주어진 데이터에 가장 잘 맞는 회귀 계수를 찾는 과정이다. 가장 대표적인 방법으로 최소제곱법과 경사 하강법이 있다.
최소제곱법은 잔차의 제곱합을 최소화하는 계수를 직접 계산하는 방법이다. 이 방법은 정규 방정식을 풀어 해를 구하며, 해석적 해를 제공한다는 장점이 있다. 그러나 특성의 개수가 많거나 데이터 행렬이 매우 큰 경우 계산 비용이 높아질 수 있으며, 특성 행렬이 가역 행렬이어야 한다는 제약이 있다.
방법 | 주요 원리 | 장점 | 단점 |
|---|---|---|---|
해석적 해 제공, 계산이 명확함 | 대규모 데이터셋에 비효율적, 다중공선성에 민감 | ||
대규모 데이터셋에 효율적, 다양한 문제에 적용 가능 | 학습률 등의 하이퍼파라미터 선택 필요, 전역 최소점 보장 안 됨 |
반면, 경사 하강법은 손실 함수의 기울기를 반복적으로 계산하여 계수를 조금씩 업데이트하는 반복적 최적화 알고리즘이다. 이 방법은 대규모 데이터셋에 더 효율적이며, 정규화 항이 추가된 복잡한 모델에도 적용할 수 있다. 그러나 적절한 학습률을 선택해야 하며, 지역 최소점에 수렴할 위험이 있다. 경사 하강법에는 배치 경사 하강법, 확률적 경사 하강법, 미니배치 경사 하강법 등 여러 변형이 존재한다.
4.1. 최소제곱법
4.1. 최소제곱법
최소제곱법은 선형 회귀 모델의 파라미터를 추정하는 가장 기본적이고 널리 사용되는 방법이다. 이 방법의 핵심은 실제 관측값과 모델이 예측한 값 사이의 차이, 즉 잔차의 제곱의 합을 최소화하는 회귀 계수를 찾는 것이다. 이렇게 최소화된 값을 잔차 제곱합이라고 부른다.
수학적으로, 독립 변수 X와 종속 변수 y가 주어졌을 때, 모델은 y ≈ Xβ 형태로 표현된다. 최소제곱법의 목표는 다음의 비용 함수를 최소화하는 β(계수 벡터)를 찾는 것이다.
기호 | 설명 |
|---|---|
β | 추정할 회귀 계수 벡터 |
X | 독립 변수로 구성된 설계 행렬 |
y | 종속 변수 벡터 |
이 비용 함수는 평균 제곱 오차와 직접적인 연관이 있다. 해석적 방법으로는 정규 방정식 β = (XᵀX)⁻¹Xᵀy[4]을 풀어 정확한 해를 구할 수 있다. 이 방법은 계산이 빠르고 해가 유일하게 결정된다는 장점이 있다.
그러나 최소제곱법은 몇 가지 명확한 한계를 가진다. 먼저, 독립 변수들 사이에 강한 상관관계가 존재하는 경우, 즉 다중공선성 문제가 있을 때 (XᵀX) 행렬의 역행렬 계산이 불안정해지거나 불가능해질 수 있다. 또한 이 방법은 데이터에 있는 모든 점을 동등하게 고려하기 때문에, 이상치의 영향을 매우 크게 받는다. 이상치 하나가 전체 회귀선의 기울기와 절편을 크게 왜곡시킬 수 있다.
4.2. 경사 하강법
4.2. 경사 하강법
경사 하강법은 선형 회귀 모델의 파라미터를 학습하기 위한 반복적 최적화 알고리즘이다. 이 방법은 손실 함수로 주로 평균 제곱 오차를 사용하며, 이 함수의 기울기(경사)를 계산하여 오차를 최소화하는 방향으로 파라미터를 조금씩 업데이트한다. 기본 아이디어는 현재 파라미터 지점에서 함수의 기울기를 구하고, 그 기울기의 반대 방향으로 파라미터를 이동시켜 함수의 값을 점차 감소시키는 것이다. 이 과정을 반복하여 손실 함수가 최소값에 수렴할 때까지 진행한다.
구체적인 절차는 다음과 같다. 먼저 가중치와 편향 같은 모델 파라미터를 임의의 값으로 초기화한다. 그 후, 현재 파라미터를 사용하여 전체 또는 일부 훈련 데이터에 대한 예측값과 실제값의 차이를 바탕으로 손실 함수의 기울기를 계산한다. 계산된 기울기에 학습률이라는 작은 양수를 곱한 값을 현재 파라미터에서 빼서 파라미터를 업데이트한다. 이 과정을 사전에 정한 반복 횟수에 도달하거나 파라미터 업데이트 폭이 매우 작아질 때까지 반복한다.
방법 | 설명 | 장점 | 단점 |
|---|---|---|---|
배치 경사 하강법 | 매 단계에서 전체 훈련 데이터를 사용해 정확한 기울기를 계산한다. | 안정적인 수렴. | 데이터셋이 크면 계산 비용이 매우 높다. |
확률적 경사 하강법 | 매 단계에서 무작위로 선택한 하나의 데이터 샘플만으로 기울기를 근사 계산한다. | 계산이 빠르고, 큰 데이터셋에 적합하며, 지역 최소점 탈출 가능성이 있다. | 업데이트가 노이즈가 많아 수렴 경로가 불안정하다. |
미니배치 경사 하강법 | 매 단계에서 무작위로 선택한 작은 데이터 묶음(미니배치)으로 기울기를 계산한다. | 배치법의 안정성과 확률적 방법의 효율성을 절충한다. 가장 널리 사용된다. | 미니배치 크기를 하이퍼파라미터로 선택해야 한다. |
학습률은 매우 중요한 하이퍼파라미터이다. 학습률이 너무 크면 최소점을 지나쳐 발산할 수 있고, 너무 작으면 수렴 속도가 매우 느려진다. 적응형 학습률을 사용하는 Adam이나 RMSProp 같은 최적화 알고리즘은 이 문제를 완화하기 위해 개발되었다. 경사 하강법은 최소제곱법과 같은 해석적 방법과 달리 데이터 규모가 매우 클 때도 적용 가능하며, 신경망을 포함한 다양한 머신러닝 모델의 학습에 핵심적으로 사용된다.
5. 평가 지표
5. 평가 지표
선형 회귀 모델의 성능을 정량적으로 평가하기 위해 여러 가지 지표가 사용된다. 가장 일반적인 평가 지표로는 R-제곱(결정 계수)과 평균 제곱 오차가 있으며, 이 외에도 평균 절대 오차, 수정 결정 계수 등이 상황에 따라 활용된다.
R-제곱은 모델이 종속 변수의 분산을 얼마나 잘 설명하는지를 나타내는 지표이다. 값의 범위는 0에서 1 사이이며, 1에 가까울수록 모델의 설명력이 높음을 의미한다. 계산식은 1에서 (잔차 제곱합 / 총 제곱합)을 뺀 값이다. 그러나 설명 변수의 수가 증가하면 R-제곱 값이 자연스럽게 증가하는 경향이 있어, 이를 보정한 수정 결정 계수를 사용하기도 한다.
평균 제곱 오차는 실제 값과 모델의 예측 값 사이의 차이(잔차)를 제곱하여 평균한 값이다. 이는 오차의 크기를 측정하며, 값이 0에 가까울수록 모델의 예측 정확도가 높다. 평균 제곱 오차의 제곱근인 평균 제곱근 오차는 오차를 원래 데이터의 단위와 동일하게 해석할 수 있어 실제 예측 오차의 크기를 직관적으로 이해하는 데 유용하다. 다른 주요 지표로는 오차의 절대값을 평균한 평균 절대 오차가 있으며, 이는 이상치의 영향을 상대적으로 덜 받는 특징을 가진다.
지표 | 설명 | 특징 |
|---|---|---|
종속 변수 분산의 설명 비율 | 0~1 범위, 높을수록 좋음 | |
잔차 제곱의 평균 | 낮을수록 좋음, 이상치에 민감 | |
잔차 절대값의 평균 | 낮을수록 좋음, 이상치에 덜 민감 | |
MSE의 제곱근 | 원본 데이터 단위와 일치 |
적절한 평가 지표의 선택은 분석의 목적과 데이터의 특성에 달려 있다. 예를 들어, 이상치의 영향을 최소화하고 싶다면 평균 절대 오차를, 모델의 전반적인 설명력을 알고 싶다면 R-제곱을 우선적으로 살펴본다. 일반적으로 여러 지표를 종합적으로 검토하여 모델의 성능을 다각도로 평가하는 것이 바람직하다.
5.1. R-제곱
5.1. R-제곱
R-제곱은 선형 회귀 모델의 성능을 평가하는 대표적인 지표 중 하나이다. 이는 결정 계수라고도 불리며, 모델이 종속 변수의 변동을 얼마나 잘 설명하는지를 나타내는 비율이다. R-제곱 값은 0에서 1 사이의 값을 가지며, 1에 가까울수록 모델이 데이터를 완벽하게 설명한다는 의미이다. 반대로 0에 가까우면 모델이 종속 변수의 변동을 거의 설명하지 못한다는 것을 의미한다.
R-제곱은 총 변동 중에서 회귀 모델에 의해 설명되는 변동의 비율로 계산된다. 수학적으로는 1에서 (잔차 제곱합 / 총 제곱합)을 뺀 값으로 정의된다. 여기서 총 제곱합은 각 관측값이 평균에서 얼마나 떨어져 있는지를 제곱하여 합한 것이고, 잔차 제곱합은 모델의 예측값과 실제 관측값의 차이를 제곱하여 합한 것이다. 따라서 R-제곱이 높다는 것은 잔차 제곱합이 작고, 모델이 데이터의 패턴을 잘 포착했다는 것을 의미한다.
용어 | 설명 |
|---|---|
총 제곱합(SST) | 종속 변수의 전체 변동량. 각 관측값과 전체 평균의 차이 제곱의 합. |
회귀 제곱합(SSR) | 회귀 모델로 설명 가능한 변동량. 예측값과 전체 평균의 차이 제곱의 합. |
잔차 제곱합(SSE) | 회귀 모델로 설명되지 않는 변동량. 실제값과 예측값의 차이(잔차) 제곱의 합. |
R-제곱 계산식 | R² = SSR / SST = 1 - (SSE / SST) |
그러나 R-제곱에는 중요한 한계가 존재한다. 설명 변수의 수가 증가하면, 모델이 우연히 데이터에 맞춰지는 경향이 있어 R-제곱 값이 인위적으로 증가할 수 있다. 이는 모델의 실제 예측 능력을 과대평가하게 만든다. 이러한 문제를 보완하기 위해 조정된 R-제곱이 사용된다. 조정된 R-제곱은 모델에 포함된 설명 변수의 개수를 고려하여, 불필요한 변수가 추가될 때 패널티를 부여한다. 따라서 변수 선택 시에는 R-제곱보다 조정된 R-제곱을 참고하는 것이 더 적절하다.
5.2. 평균 제곱 오차
5.2. 평균 제곱 오차
평균 제곱 오차는 회귀 분석 모델의 예측값과 실제 관측값 사이의 차이를 측정하는 가장 일반적인 지표 중 하나이다. 이는 각 데이터 포인트에서의 잔차(오차)를 제곱한 값들의 평균을 계산한다. 수학적으로는 실제 값 y_i와 모델의 예측값 ŷ_i 사이의 차이인 잔차 e_i = y_i - ŷ_i를 구한 후, 이 잔차들의 제곱합을 데이터 포인트의 총 개수 n으로 나누어 계산한다.
평균 제곱 오차의 값은 항상 0 이상의 값을 가지며, 0에 가까울수록 모델의 예측 정확도가 높음을 의미한다. 제곱을 하기 때문에 큰 오차에 대해 더욱 민감하게 반응하는 특성이 있다. 이는 모델이 특히 큰 오차를 내는 예측을 심각하게 페널티한다는 장점이 있지만, 동시에 이상치의 영향을 매우 크게 받을 수 있다는 단점으로도 작용한다.
평균 제곱 오차는 그 계산의 단순성과 해석의 용이성 때문에 모델 성능 비교 및 모델 선택 과정에서 널리 사용된다. 또한, 이 지표를 최소화하는 것이 최소제곱법의 기본 목표이며, 이는 선형 회귀 모델의 파라미터를 추정하는 표준적인 방법이 된다.
지표 | 공식 | 특징 |
|---|---|---|
평균 제곱 오차 | (1/n) * Σ(y_i - ŷ_i)² | 큰 오차에 민감, 이상치 영향 큼 |
평균 절대 오차 | (1/n) * Σ\ | y_i - ŷ_i\ |
평균 제곱 오차와 함께 자주 비교되는 지표로는 평균 절대 오차가 있다. 평균 절대 오차는 오차의 절대값을 평균하므로 큰 오차에 대한 민감도가 상대적으로 낮고 이상치의 영향을 덜 받는다. 따라서 데이터에 이상치가 많을 경우 평균 제곱 오차 대신 평균 절대 오차를 사용하는 것이 더 적합할 수 있다.
6. 정규화 기법
6. 정규화 기법
정규화는 과적합을 방지하고 모델의 일반화 성능을 높이기 위해 사용되는 기법이다. 선형 회귀 모델의 복잡도를 제어하기 위해 모델 가중치(계수)의 크기에 제약을 가하는 방법을 의미한다. 이는 특히 독립 변수의 수가 많거나 변수 간 상관관계가 높은 경우 유용하다.
가장 일반적인 두 가지 정규화 선형 회귀 방법은 릿지 회귀와 라쏘 회귀이다. 두 방법 모두 손실 함수에 페널티 항을 추가하여 계수의 값이 지나치게 커지는 것을 억제한다. 릿지 회귀는 L2 노름 페널티를 사용하며, 모든 계수를 균일하게 줄이지만 0으로 만들지는 않는다. 반면, 라쏘 회귀는 L1 노름 페널티를 사용하여 일부 계수를 정확히 0으로 만들어 변수 선택의 효과를 동시에 가져온다.
기법 | 페널티 항 | 주요 특징 |
|---|---|---|
계수 벡터의 L2 노름 제곱 | 모든 계수를 축소하지만 0으로 만들지 않음. 안정적인 해 제공. | |
계수 벡터의 L1 노름 | 일부 계수를 0으로 만들어 희소 모델 생성 및 변수 선택 효과. |
이 두 방법을 절충한 엘라스틱넷 회귀도 존재한다. 엘라스틱넷은 L1과 L2 페널티를 혼합하여 사용하며, 변수 간 상관관계가 매우 높은 상황에서 라쏘 회귀의 단점을 보완한다. 정규화의 강도는 하이퍼파라미터(람다 또는 알파)로 조절하며, 이 값은 일반적으로 교차 검증을 통해 최적화한다.
6.1. 릿지 회귀
6.1. 릿지 회귀
릿지 회귀는 선형 회귀 모델의 과적합을 방지하고 일반화 성능을 향상시키기 위해 도입된 정규화 기법 중 하나이다. 이 방법은 모델의 가중치(계수) 크기에 제약을 가함으로써 복잡도를 통제한다. 특히, 회귀 계수의 제곱합에 비례하는 패널티 항을 손실 함수에 추가하여 모델을 학습시킨다. 이 패널티 항은 L2 노름을 사용하며, 이를 통해 계수 값이 지나치게 커지는 것을 억제한다.
릿지 회귀의 목적 함수는 일반 최소제곱법의 목적 함수에 계수 벡터의 L2 노름의 제곱에 정규화 매개변수 λ(람다)를 곱한 항을 더한 형태이다. 수식으로 표현하면, 잔차 제곱합(RSS) + λ * (계수들의 제곱합)을 최소화하는 계수를 찾는 문제이다. 여기서 λ는 정규화의 강도를 조절하는 하이퍼파라미터로, λ가 0이면 일반 최소제곱법과 동일해지고, λ가 커질수록 모든 계수 값이 0에 가깝게 수축된다. 그러나 일반적으로 계수는 완전히 0이 되지는 않는다.
이 기법의 주요 효과는 다중공선성 문제를 완화하는 데 있다. 설명 변수들 간에 높은 상관관계가 존재할 때, 최소제곱법 추정치는 분산이 매우 커져 불안정해질 수 있다. 릿지 회귀는 계수 추정치를 수축시켜 분산을 줄이는 대신 약간의 편향을 도입함으로써 전체적인 평균 제곱 오차를 개선할 수 있다[5]. 따라서 훈련 데이터에 비해 상대적으로 적은 수의 샘플이 있거나, 특징(feature)의 수가 많은 경우에 유용하게 적용된다.
릿지 회귀 모델의 성능은 λ 값의 선택에 크게 의존한다. 최적의 λ 값을 찾기 위해 일반적으로 교차 검증 기법이 사용된다. 릿지 회귀와 유사한 정규화 기법으로 계수의 절댓값의 합(L1 노름)을 패널티로 사용하는 라쏘 회귀가 있으며, 두 방법을 결합한 엘라스틱넷 회귀도 널리 사용된다.
6.2. 라쏘 회귀
6.2. 라쏘 회귀
라쏘 회귀(Lasso Regression)는 선형 회귀 모델에 L1 정규화(L1 Regularization) 항을 추가하여 모델의 복잡도를 제어하는 정규화 기법이다. 'Least Absolute Shrinkage and Selection Operator'의 약자로, 회귀 계수의 절댓값 합에 페널티를 부과한다. 이 기법은 과적합을 방지할 뿐만 아니라, 불필요한 특성의 계수를 0으로 만들어 자동적인 특성 선택(Feature Selection)을 수행한다는 점이 특징이다.
라쏘 회귀의 목적 함수는 최소제곱법으로 구한 비용 함수에 L1 패널티 항을 더한 형태이다. 수식으로 표현하면, 회귀 계수 β에 대해 (실제값 - 예측값)의 제곱합 + λ * (|β₁| + |β₂| + ... + |βₙ|)를 최소화하는 β를 찾는 문제이다. 여기서 λ(람다)는 정규화의 강도를 조절하는 하이퍼파라미터이다. λ 값이 커질수록 더 많은 계수가 0에 가까워지거나 정확히 0이 되어 모델이 간소화된다.
라쏘 회귀의 가장 큰 장점은 특성 선택 기능이다. 계수가 정확히 0이 되는 특성은 모델에서 완전히 제외되는 효과가 있어, 해석 가능성이 높은 간결한 모델을 생성한다. 이는 수백, 수천 개의 특성 중에서 실제로 중요한 소수만을 선별해야 하는 고차원 데이터 분석에 매우 유용하다. 반면, 릿지 회귀는 L2 정규화를 사용하여 계수를 0에 가깝게 만들지만 0으로 만들지는 않는다.
라쏘 회귀는 몇 가지 한계점도 지닌다. 서로 상관관계가 높은 특성들이 여러 개 존재하는 경우, 라쏘는 이들 중 임의의 하나만을 선택하고 나머지는 0으로 만드는 경향이 있다. 이는 모델의 안정성을 떨어뜨릴 수 있다. 또한, 관측치의 수(n)가 특성의 수(p)보다 적은 'n < p' 상황에서는 최대 p개의 특성만을 선택할 수 있다는 제약이 있다[6]](Elastic Net) 기법이 제안되었다].
7. 응용 분야
7. 응용 분야
선형 회귀는 통계학과 머신러닝의 기본 모델로서, 변수 간의 관계를 모델링하고 예측하는 데 널리 활용된다. 그 응용 범위는 경제학, 공학, 생물학, 의학 등 매우 다양하며, 데이터를 기반으로 한 의사결정을 지원하는 핵심 도구 역할을 한다.
경제 및 금융 분야에서는 선형 회귀가 가장 빈번하게 사용되는 영역 중 하나이다. GDP 성장률, 주가 변동, 이자율 예측, 소비자 물가지수 분석 등에 적용된다. 예를 들어, 주택 가격을 예측하는 모델은 방의 개수, 위치, 평수 등의 독립 변수를 사용하여 종속 변수인 가격을 추정한다. 또한, 마케팅에서는 광고 비용과 매출액 간의 관계를 분석하여 예산 배분의 효율성을 평가하는 데 활용된다.
의료 및 생명과학 분야에서도 그 유용성이 크다. 질병의 위험 요인을 분석하거나, 약물의 용량과 치료 효과 간의 관계를 모델링하는 데 사용된다. 예를 들어, 환자의 나이, 체중, 혈압 등의 데이터를 바탕으로 특정 질병 발생 가능성을 예측하는 모형을 구축할 수 있다. 공학에서는 재료의 강도와 성분 비율, 또는 공정 조건과 생산량 간의 관계를 규명하는 데 적용된다.
분야 | 주요 응용 예시 |
|---|---|
경제/금융 | 주가 예측, 부동산 가격 모델링, 소비 지출 분석, 거시경제 지표 예측 |
의료/보건 | 질병 위험도 평가, 약물 반응 예측, 의료 비용 추정, 생체 신호 분석 |
공학/제조 | 공정 최적화, 품질 예측, 신뢰성 공학, 센서 데이터 보정 |
마케팅/비즈니스 | 고객 행동 분석, 광고 효과 측정, 수요 예측, 가격 탄력성 분석 |
이러한 광범위한 적용 가능성은 모델의 해석 용이성과 구현의 간결성에서 비롯된다. 복잡한 인공신경망이나 앙상블 학습 모델에 비해 계산 비용이 낮고, 결과 계수를 통해 각 변수의 영향력을 직관적으로 이해할 수 있어 실무에서 신뢰받는 분석 방법으로 자리 잡았다.
7.1. 경제 예측
7.1. 경제 예측
선형 회귀는 경제학 및 금융 분야에서 가장 널리 사용되는 예측 및 분석 도구 중 하나이다. 역사적 데이터를 바탕으로 경제 변수 간의 관계를 모델링하고, 이를 통해 미래 값을 예측하거나 정책 효과를 평가하는 데 활용된다.
주요 응용 사례로는 GDP 성장률, 물가 상승률, 실업률 등의 거시경제 지표 예측이 있다. 예를 들어, 소비자 지출, 정부 지출, 투자, 순수출 등의 변수를 독립 변수로 사용하여 GDP를 예측하는 모델을 구축할 수 있다. 또한, 주택 가격 예측 모델에서는 금리, 가처분 소득, 인구 통계학적 요인 등을 설명 변수로 활용한다. 금융 분야에서는 CAPM과 같은 자산 가격 모델의 기초가 되기도 한다.
응용 분야 | 주요 예측 대상 | 사용되는 일반적 변수 예시 |
|---|---|---|
거시경제 | GDP 성장률 | 소비, 투자, 정부 지출, 이자율 |
금융 | 주식 수익률 | 시장 수익률, 기업 재무 비율[7] |
부동산 | 주택 가격 | 금리, 지역 평균 소득, 인구 밀도 |
노동 경제 | 임금 | 교육 수준, 경력, 직종, 지역 |
경제 예측에 선형 회귀를 적용할 때는 다중공선성과 같은 통계적 가정을 충족하는지 주의 깊게 검토해야 한다. 또한, 경제 관계는 시간에 따라 변화할 수 있으므로, 모델의 안정성을 정기적으로 점검하고 새로운 데이터로 재학습하는 과정이 필요하다.
7.2. 의료 데이터 분석
7.2. 의료 데이터 분석
선형 회귀는 의료 분야에서 다양한 형태의 데이터를 분석하고 예측하는 데 널리 활용된다. 주로 질병의 위험 요인을 규명하거나, 환자의 임상 결과를 예측하며, 의학적 개입의 효과를 평가하는 데 사용된다. 예를 들어, 환자의 연령, 체질량 지수, 혈압, 혈당 수치와 같은 여러 변수를 독립 변수로 사용하여 특정 질병의 발생 가능성이나 입원 기간 같은 결과 변수를 예측하는 모델을 구축할 수 있다.
의료 데이터 분석에 선형 회귀를 적용할 때는 데이터의 특수성을 고려해야 한다. 의료 데이터는 종종 범주형 변수(예: 흡연 여부, 질병 유무)를 포함하며, 오차항이 정규 분포를 따르지 않을 수 있다. 또한, 변수들 간에 복잡한 상호작용이 존재할 수 있어, 단순한 선형 관계만으로는 설명하기 어려운 경우가 많다. 이러한 한계를 보완하기 위해 로지스틱 회귀나 생존 분석 같은 일반화된 선형 모델이 함께 사용되기도 한다.
구체적인 응용 사례로는 다음과 같은 것들이 있다.
응용 분야 | 분석 목적 | 사용 가능한 독립 변수 예시 |
|---|---|---|
역학 연구 | 질병 발병 위험 예측 | 유전적 표지자, 생활습관, 환경 노출 요인 |
임상 시험 | 치료 효과 평가 | 투약 용량, 환자 기저 특성, 병용 치료 여부 |
병원 운영 | 입원 기간 예측 | 수술 유형, 환자 중증도, 연령, 동반 질환 |
공중보건 | 의료 비용 예측 | 인구통계학적 요인, 지역적 건강 지표 |
이러한 분석을 통해 얻은 통계적 유의성은 인과 관계를 증명하는 것이 아니라 상관 관계를 보여주는 것에 불과하다는 점을 유의해야 한다. 따라서 분석 결과는 전문적인 의학적 지식과 함께 해석되어야 하며, 실제 진료나 정책 결정에 반영되기 전에 충분한 검증을 거쳐야 한다.
8. 한계와 대안
8. 한계와 대안
선형 회귀는 기본적인 가정이 충족될 때 강력한 도구이지만, 현실 세계의 복잡한 데이터를 분석하는 데는 몇 가지 명확한 한계가 존재한다.
가장 큰 한계는 데이터가 모델의 엄격한 가정을 충족하지 않을 때 발생한다. 예를 들어, 독립 변수와 종속 변수 간의 관계가 비선형적이면 선형 모델은 부정확한 예측을 생성한다. 또한, 이상치에 매우 민감하여 소수의 극단값이 회귀선의 기울기와 절편을 크게 왜곡시킬 수 있다. 다중공선성 문제, 즉 독립 변수들 간에 높은 상관관계가 존재하면 개별 변수의 영향력을 신뢰성 있게 추정하기 어려워진다. 마지막으로, 선형 회귀는 기본적으로 연속형 숫자 값을 예측하도록 설계되어 범주형 결과를 예측하는 데는 적합하지 않다.
이러한 한계를 극복하기 위해 다양한 대안 모델이 개발되었다. 비선형 관계를 모델링하기 위해 다항 회귀나 국소적 패턴을 학습하는 국소 가중 회귀를 사용할 수 있다. 로지스틱 회귀는 이진 또는 다중 범주형 결과를 예측하는 데 널리 쓰인다. 의사결정나무, 랜덤 포레스트, 서포트 벡터 머신과 같은 비선형 머신러닝 알고리즘은 더 복잡한 관계를 포착할 수 있다. 또한, 선형 회귀의 변형인 릿지 회귀와 라쏘 회귀는 정규화를 통해 다중공선성 문제를 완화하고 모델의 일반화 성능을 향상시킨다.
