contents
- 선형회귀의 사례
- 선형회귀 이론
- 회귀분석 평가 지표
summary
- 선형회귀의 사례
- 몸무게와 키 상관관계를 찾아내기
:방정식을 배운 머신이는 몸무게와 키의 데이터를 획득했다. 일정하게 증가하는 패턴이 있어서 미리 몸무게를 알면 키를 알 수 있을 것이라고 생각했다.
-키와 몸무게 간의 데이터
weights = [87,81,82,92,90,61,86,66,69,69]
heights = [187,174,179,192,188,160,179,168,168,174]
-키와 몸무게 간의 산점도
->수 많은 점들을 관통하는 여러 개의 직선을 많이 그려봄
*어떤 직선이 현재 데이터를 잘 “설명”한다고 할 수 있을까?
- Data Scientific 한 발상
:직선과 점의 간의 거리를 계산해보자. 이를 Error 라고 정의하고 최소의 Error인 직선을 그리면 된다고 생각해봄(오차 최소화)
- 방법1) 실제 데이터 값 - 직선의 예측 값 = Error
- ①번 실제 데이터:187, 예측 데이터: 187 Error: 0
- ②번 실제 데이터: 174, 예측 데이터: 181 Error: -7
- ③번 실제 데이터: 174, 예측 데이터 : 169 Error: +5
+하지만 문제 발생. 선분을 기준으로 위에 있는 데이터의 거리를 계산하면 양수가 되고, 반대로 아래에 있는 것은 음수가 된다. 이 경우 모든 에러를 합치면 서로 상쇄되는 문제가 있었다. 따라서, 음수를 양수로 만들기 위해 제곱을 하는 방법이 있다는 걸 생각해낸다.
- 방법2) 각각 Error를 제곱하여 모두 더하기
- ①, ②,③의 제곱 합: 49 +25 = 71
+문제는 하나 더. 나중에는 데이터를 더 수집할 예정인데, 데이터가 더 늘어날 수록(④,⑤) 에러는 자연스럽게 값이 커질 수 밖에 없다! 그래서 데이터의 갯수로 나누기로 했다. 또한 데이터가 제곱 되어 있던 것을 줄이기 위해 root를 씌우기로 했다.
- 방법3) 전체 에러 합에 데이터의 갯수로 나누기(오차합 평균)
- ①, ②,③만 고려한다면 71/3 → 23.7
- 선형회귀 이론
📌 선형회귀 용어 정리
-
공통
- Y는 종속 변수, 결과 변수
- X는 독립 변수, 원인 변수, 설명 변수
-
통계학에서 사용하는 선형회귀 식
Y=β0+β1X+ε
- β0: 편향(Bias)
- β1: 회귀 계수
- ε: 오차(에러), 모델이 설명하지 못하는 Y의 변동성
-
머신러닝/딥러닝에서 사용하는 선형회귀 식
-
결론:
회귀 계수 혹은 가중치를 값을 알면 X가 주어졌을 때 Y를 알 수 있다. 우리는 편의를 위해 X의 계수를 가중치라고 지칭!
-
예시:
몸무게와 키 데이터를 이용해서 선형회귀 식을 만들면, y = 0.86x + 109.37 이 나온다. 이 뜻은, 1kg 증가할때마다 키가 0.86 cm 증가한다는 것으로 해석 할 수 있다.
⁉️ 질문
- ε은 왜 따로 있는건가요?
:우리가 몸무게와 키에 대한 선형회귀식을 만들었지만, 해당 식이 모든 데이터를 완벽하게 설명할 수 없다. 이때 완벽한 설명이란 실제 데이터값 = 예측 데이터. 다시 말해 에러(②,③)의 값을 표현하기 위해서 있는 것.
- 가중치는 어떻게 구하죠?
:데이터가 충분히 있다면 가중치를 “추정”할 수 있다. 하지만 심화 과정이라 이 부분은 현재는 그래프를 수도 없이 그려서 에러를 “최소화”하는 직선을 구한다고 생각하기!
- 회귀분석 평가 지표
☑️ 회귀 평가지표 - MSE
- 에러 정의방법
- 방법1)
에러 = 실제 데이터 - 예측 데이터
로 정의하기
- 방법2) 에러를 제곱하여 모두 양수로 만들기, 다 합치기
- 방법3) 데이터만큼 나누기
- 에러 정의 방법 수식화
- 방법1) ε=yi−yi^
- 방법2) i=1∑n(yi−yi^)2
- 방법3) ni=1∑n(yi−yi^)2
📌y값의 머리에 있는 ^ 표기를 hat이라고 하며, 예측(혹은 추정)한 수치에 표기한다.
- Mean Squared Erorr(MSE)라고 정의
📌 숫자 예측 문제는 모델을 머신러닝이든 딥러닝이든 어떤 모델을 만들어도 위 MSE 지표를 최소화하는 방향으로 진행하고 평가!
- 기타 평가 지표
- RMSE: MSE에 Root를 씌워 제곱 된 단위를 다시 맞추기
RMSE=ni=1∑n(yi−yi^)2
- MAE: 절대 값을 이용하여 오차 계산하기
MAE=n1i=1∑n∣yi−yi^∣
☑️ 선형회귀만의 평가 지표 - R Square
:R Square는 전체 모형에서 회귀선으로 설명할 수 있는 정도
- 기초 용어
- yi: 특정 데이터의 실제 값
- yˉ: 평균 값
- y^: 예측, 추정한 값
- R Square의 정의
R2=SSTSSR=SSR+SSESSR
insight
통계학에서 회귀분석을 배웠을 당시 배웠던 기초 개념인데, 머신러닝에서는 오차에 대한 점을 일단 제외한다는 것을 추가적으로 배웠고, 같은 개념이지만 다른 식으로 접근하여 배워서 약간은 새로운 느낌이었다.