회귀분석

회귀분석

왕눈임 2024. 5. 16. 19:34

회귀분석이란

 

목표변수를 잘 예측할 수 있는 모델을 찾는 것이다.

 

간단한 데이터를 보고 이해해보자

 

 

 

 

size가 2104인 이 집은 price가 400이다 .

 

size가 2500인 이 집은 price가 900이다 .

 

그럼 size가 2300인 집은 price가 얼마인가?

 

라는 질문에 우리는 price가 400~ 900사이에 있을 것을 쉽게 예측할 수 있다.

 

 

 

이렇게 기존의 데이터(size:2014,2500)에 대한

정답 값(price:400,900)이 주어져 있는 학습 데이터를 통해

 

새로운 데이터(size:2300)에 대한

예측변수(price)를 계산하는 모델을 찾는 것을 회귀분석이라 한다.

 

 

 

 

 

이번에는 앞서봤던 데이터들과 유사한 데이터를 더 많이 가져오자

이후에 size변수를 x축으로 price변수를 y축으로 하는 2차원상에서 점을 찍어보자

 

 

 

 

size에 대한 price를 평면에서 점으로 표현하니

size커지면 price상승하는 것을 알 수 있고

 

 이러한 경향성은 직선으로 잘 설명할 수 있다는 것도 알 수 있다.

 

 


 

 

 

 

우리의 목표는 새로운 데이터에 대한 예측변수price 값을 예측하는 것이다.

 

그래프의 분포 형태를 보면 알 수 있듯이 ,

두 변수 사이의 관계는 직선으로 표현할 수 있다.

 

이러한 분포를 잘 나타내는 직선을 표현해보면 ?

 

 

 

 

이 직선 함수를 구해놓고 새로운 관측치를 찾아 독립변수인 size

이러한 직선함수에 대입하면 예측값인 price 값을 구할 수 있게 된다.

 

이렇게 새로운 데이터에 대한 예측값을 출력할 예측 모델을 찾는 것이 회귀분석이다.

 

우리가 생성한 직선의 계수상수파라미터라 하며

이러한 파라미터를 추정하는 것이 회귀분석의 목표이다.

 

또한 위 그림처럼 독립 변수예측변수사이의 관계가 선형적인 형태는

단순 직선으로 예측 모델을 추정할 수 있으며

이러한 예측 모델을 선형회귀 모델이라 한다.

 


 

목적함수 

 

앞서 예시를 통해 우리의 목표는 파라미터를 추정하는 것임을 알게 되었다 .

 

그래서 구체적으로 파라미터를 어떻게 추정하는지 ?

 

여기서 필요한 건 파라미터화 된 함수이다.

(아래 식처럼 모수로만 표현된 식을 파리미터화 된 함수라 한다.)

 

 

이것으로 무엇을 하고 싶은가 ?

 

새로운 독립변수가 값이 주어졌을 때

(목표)예측변수에 대한 예측을 정확하게 하고 싶다 !

 

비교적 정확한 예측인지 그렇지 않은지는 어떻게 판단할 것인가 ?

 

 

정답이 이미 정해져 있는 데이터를 통해 내가 예측한 값과 실제 정답 값을 비교하면 된다.

 

쉽게 말해 위에서 본 데이터를 이용하면

size가 2104 일때 price가 400 인것을 이용하여

 

size 인 2104를 예측모델에 넣었을때 400과 얼마나 차이가 나는지 관측하면 된다.

이것을 수식으로 쓰면 다음과 같다.

 

 

 

 

 

수식을 자세히 살펴보자.

 

hθ​() : 앞서 이미 살펴본 파라미터화 된 함수이다.

               (추정해야할 모델의 기울기와 y절편이 파라미터이다.)

 

x(i) : i번째 관측데이터의 독립변수 (ex) size값)

 

y(i) : i번째 관측데이터의 목표(예측)변수 (ex) prize값)

              이는 이미 우리가 알고있는 정답값이다.

 

결론은 관측 데이터의 독립변수를 파라미터화된 모델에 넣고

그때의 예측값 정답 값을 비교하여 오차들을 구한다.

그때 계산된 오차들의 제곱의 합을 구한다.

 

이것은 말 그대로 "오차" 들의 제곱의 합이다.

즉 우리가 줄여야 할 대상이라는 것이다.

 

즉 새롭게 정의한 이 함수를 줄이는 것오차를 줄이는 것이 되고

예측 모델의 성능을 높이는 것이 된다.

 

따라서 이 함수를 (loss)오차함수 또는 목적함수라고 말한다.

 

 

마지막으로 앞으로 최소화시킬 대상인 목적함수의 형태를 직접 계산하여 구해보면 이해하는 데 도움이 될 것이다.

 

 

 

 

 

  •  size 변수를 모델에 대입하여 예측 값을 계산한다.

 

hθ​(2104)=θ0​+θ1​⋅2104

hθ​(2500)=θ0​+θ1​⋅2500

 

  • 정답 값과의 차이를 통해 오차 제곱을 각각 계산한다.

 

(hθ​(2104)−400)2=(θ0​+θ1​⋅2104−400)^2

(hθ​(2500)−900)2=(θ0​+θ1​⋅2500−900)^2

 

  • 오차의 제곱합을 계산한다

 

J(θ)=​[(θ0​+θ1​⋅2104−400)^2+(θ0​+θ1​⋅2500−900)^2]

 

이때 J(θ)는 온전히 파라미터 θ에 대한 함수임을 확인할 수 있다.

이제 이 파라미터 θ를 조정하여 목적함수를 최소화하는 θ를 찾는 것이 학습의 전부다.

'회귀분석' 카테고리의 다른 글

릿지 회귀(Ridge Regression)  (2) 2024.09.25
다항함수회귀  (0) 2024.07.13
최소제곱법  (0) 2024.07.09