[WEEK01-DAY3] 선형회귀

2024. 8. 12. 23:54Machine Learning/[TIL] Naver Boost Camp

1. 선형회귀란?

선형 회귀는 알려진 다른 관련 데이터 값을 사용하여 알 수 없는 데이터의 값을 예측하는 데이터 분석 기법이다.

독립 변수와 종속 변수 사이에는 선형 관계가 있어야 한다. 이 관계를 확인하기 위해 데이터 사이언티스트는 x 및 y 값의 무작위 모음인 산점도를 만들어 직선을 따라 표시되는지 확인한다. 그렇지 않은 경우 제곱근이나 로그와 같은 비선형 함수를 적용하여 두 변수 간의 선형 관계를 수학적으로 만들 수 있다.

[aws] linear-regression

 

선형 회귀란 무엇인가요? - 선형 회귀 모델 설명 - AWS

선형 회귀란 무엇입니까? 선형 회귀는 알려진 다른 관련 데이터 값을 사용하여 알 수 없는 데이터의 값을 예측하는 데이터 분석 기법입니다. 알 수 없는 변수 또는 종속 변수와 알려진 변수 또는

aws.amazon.com

2. 상관 관계 분석

상관계수를 결정하는 방법에는 크게 세 가지, [결정계수, 피어슨상관계수, 스피어만 상관계수]가 있는데 가장 잘 사용되는게 피어슨상관계수이다.

 

피어슨 상관 계수는 그 단순성, 계산의 용이성, 해석의 명확성 때문에 가장 널리 사용된다. 이는 특히 데이터가 연속적이고 선형 관계를 가질 때 유용하다. 그러나 비선형 관계나 비모수적 데이터가 주어질 때는 스피어만 상관 계수나 결정계수 등 다른 지표가 더 적합할 수 있다.

 

$$ 피어슨상관계수 = \frac{공분산}{표준편차*표준편차} $$

 

피어슨상관계수란 두 변수 X와 Y 간의 선형 상관 관계를 계량화한 수치이다. 공분산은 2개의 확률변수의 선형관계를 나타내는 값이다. 공분산을 표준화하기 위해 표준편차의 곱으로 나눠준다.

 

상관 관계를 분석하는 수식 표현은 아래와 같다.

$$ r_{xt} = \frac{\sum_{i=1}^{n} (x_i - \overline{x})(t_i - \overline{t})}{\sqrt{\sum_{i=1}^{n} (x_i - \overline{x})^2 \sum_{i=1}^{n} (t_i - \overline{t})^2}} $$

 

상관 관계를 분석하는 코드 표현은 아래와 같다.

np.corrcoef(x,t)

 

3. 선형회귀모델

$$ H(x) = wx +b $$

선형 회귀에서 해야할 일은 결국 적절한 𝑤와 𝑏를 찾아내는 일이다.

이때 실제값과 예측값에 대한 오차에 대한 식을 목적 함수(Objective function) / 비용 함수(Cost function) / 손실 함수(Loss function) 라고 한다.

회귀 문제의 경우에는 주로 평균 제곱 오차(MSE)가 사용된다.

 

수식적으로 단순히 '오차 = 실제값 - 예측값' 이라고 정의한 후에 모든 오차를 더하면 음수 오차도 있고, 양수 오차도 있으므로 오차의 절대적인 크기를 구할 수가 없다. 그래서 모든 오차를 제곱하여 더하는 방법을 사용한다.

 

손실함수의 수식 표현은 아래와 같다.

$$ Loss Function = \frac{1}{n} \sum_{i=1}^{n} [{t}_i - (w{x}_i+b)]^2 $$

 

손실함수의 코드 표현은 아래와 같다.

loss_function = nn.MSELoss()

[wikidocs] 선형회귀