선형회귀(Linear Regression)
- Article History
- RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
https://ko.wikipedia.org/wiki/%EC%84%A0%ED%98%95_%ED%9A%8C%EA%B7%80
주어진 데이터의 X,y의 관계를잘 설명하는 직선을 찾아내는 모형을 선형회귀라고 합니다.
즉, 입력변수(X)와 출력 변수(y) 사이의 선형관계를 모델링하는 알고리즘입니다.
https://towardsai.net/p/artificial-intelligence/understanding-functions-in-ai
머신러닝에서는 Model을 세울 때 X가 주어지고 결과값으로 y를 추출하는 함수를 생성하는 것이 목적으로 입력과 출력의 경향성을 나타내는 모형으로 오차항을 포함하고 있습니다.
■ OLS 최적화(Ordinary Least Squares Optimization)
OLS는 선형회귀분석에서 회귀 계수(B)를 최적화하는 방법 중 가장 많이 사용한는 방식으로 오차가 가장 작고 데이터에 가장 잘 맞는 선형 모델을 찾을 때 사용됩니다.
관측치와 예측치의 오차를 제곱해서 합했을 때,합이 가장 작아지는 값을 찾는 것 입니다.
다음은 OLS를 사용하여 회귀계수를 구하는 방법입니다.
STEP1. 잔차 제곱합(SSR)
-
정답값에서 추정치를 뺀 후, 제곱을 취해줍니다.
-
제곱한 값을 데이터 포인트에 대해서 더해준 값입니다.
STEP2. 잔차 제곱합(SSR)을 행렬의 형태로 표현
-
정답값에서 추정치를 뺀 후, 제곱을 취해줍니다.
-
제곱한 값을 데이터 포인트에 대해서 더해준 값입니다.
STEP2. 잔차 제곱합(SSR)을 행렬의 형태로 표현
STEP3. 행렬 미분을 활용하여 회귀계수 추정
■ SAS Code
SASHELP라이브러리의 Cars 데이터를 활용해서 OLS 방식으로 선형회귀 계수를 구해보겠습니다.
428개의 데이터로 15개의 컬럼으로 구성되있는 cars 데이터에서 연비를 마력과 무게로 예측해보겠습니다.
proc reg data=sashelp.cars;
model MPG_City = Horsepower Weight / clb;
run;
quit;
proc means data=sashelp.cars;
var MPG_City Horsepower Weight;
run;
F-test의 P-value를 보면 <0.0001로 적합한 모형임을 알 수 있습니다.
추정된 회귀식은 y = 38.342 - 0.255X1 - 0.003X2입니다.
Adj R-Sq가 0.61로 회귀모형 Y의 변동을 61% 설명함을 의미합니다.