선형 회귀란

선형 회귀 (Linear Regression)는 입력 $x$ 에 대한 예측치 $y$를 선형적으로 설명하는 방법이다. 이 때 선형이란 차수가 2차보다 낮다는 뜻이다. 회귀(regression)는 실수인 $y$를 예측하는 것으로, 결과를 레이블 (예를들어 참/거짓, 고양이/강아지와 같은 종류)로 분류(classification)하는 방식과 대비된다. 예를들어 운전 시간 $x$ 와 이동한 거리 $y$ 의 관계를 $ y=ax+b $라고 한다면 이는 선형 회귀이다.

노트: 이렇게 주어진 입력 $x$에 따라 $y$에 대한 예측을 수행할 때 x를 설명변수 (explanatory variable), 피쳐(feature), 독립 변수(independent variable)라고 부른다. $y$는 반응 변수 (response variable), 종속 변수(dependent variable)이라고 부른다.

노트: 회귀분석에서 ‘회귀’는 평균으로 돌아간다는 말에서 시작되었다. 과거 어느 통계학자가 부모와 자식의 키의 관계를 조사해보았더니 큰 키를 가진 부모의 자식은 부모보다 작아지고 작은 키를 가진 부모의 자식은 부모의 키보다 커지는 관계가 있었다고 한다. (그렇지 않다면 세상에는 수천 km의 키를 가진 인간과 나노 크기의 인간만 있을것이다) 이 때 사용한 분석이 회귀 분석의 방법이었고, “평균으로 돌아간다” (regression to norm)에서 회귀라는 말이 나왔다고 한다.

사실 선형 회귀에서 ‘선형’의 엄밀한 의미는 예측할 $y$ 가 계수에 대해 선형적임을 뜻한다. 여기서 계수란 $ y = ax + b $ 에서 a를 말한다. 따라서 $ y=ax^2+b $ 는 선형회귀이다. 마찬가지로 $ y = ax^3 + bx^2 + cx + d $ 도 $a$, $b$, $c$에 대해 선형이므로 선형 회귀이다.

왜 $x$ 가 몇차인지는 신경쓰지 않을까? 그 이유는 $x$ 값은 결국 데이터로 치환되기 때문이다. 예를들어 $ (x=1, y=2), (x=2, y=8), (x=3, y=18), \cdots $ 와 같은 $y = 2x^2$을 생각해보자. $y$가 $x^2$ 및 $x$의 크기에 따라 증가한다는 사실을 알고 있을 때 풀어야할 문제는 $y = ax^2 + bx + c$ 에서 $a, b, c$를 다음 세 데이터를 통해 찾는 것이지 $x$ 를 찾는 것이 아니다. $x$ 는 주어진 데이터이며 상수이다.

  • $2 = a + b + c$
  • $8 = 4a + 2b + c$
  • $18 = 9a + 3b + c$

노트: $y = ax + b$ 와 같은 형태를 단순 선형 회귀 (simple linear regression), 고차 $x$ 에 대한 $y = ax^2 + bx + c$를 다항 회귀 (polynomial regression)으로 분류한다.

선형 회귀는 많은 이유로 첫번째로 살펴볼만한 대상이다.

  • 선형 회귀는 인간이 이해하기 쉬운 구조이다. 비선형 구조의 $y = ax + a^2x^3 + log(1/a)+x + d$를 생각해보자. 이 식은 데이터에서 찾아내기도 어렵지만 찾아 낸다고 하더라도 사람이 그 의미를 이해하기 어렵다. 이해할 수 없는 식은 채택하기 어렵고, 필요 시 수정하기도 어렵다.
  • 선형임에도 불구하고 다양한 관계를 표현할 수 있다. 예를들어 2개의 입력 $x, y$가 주어졌을때 결과값 $z$를 예측하는 $z=ax+by+c$ 또는 $z = ax^2 + bxy + cy^2 + d$ 는 계수에 대해서 선형이며 따라서 선형회귀의 범주안에 들어간다.
  • 뒤에서 이어질 로지스틱 회귀 분석을 통해 분류 문제를 쉽게 이해할 수 있다.
Last change: 2024-01-13