Machine Learning/Machine Learning

[Machine Learning] 선형 회귀 Linear Regression을 이용한 수치 예측

Mei99 2024. 4. 15. 17:37

Linear Regression

: 평수·지역에 따른 집 값이나 연봉,  보험료 등과 같은 수치를 예측해 볼 수 있는 머신러닝 모델이다.

 

 

예측 과정은 데이터 분포를 만족하는 직선을 찾는 것이 목표다.

 

주어진 x, y  데이터를 이용해 우리가 잘 아는 직선의 방정식에서 기울기(b1)과  y절편(b0)을 찾아가는 과정인데 이를 학습이라고 부른다.

여기에서 학습이란?  바로 error(오차)를 줄여 나가는 것이다.

 

모든 관측점(Observation) 에서 y값의 error(오차)가 존재하고, 이 오차들의 총 합을 줄여 나가면 된다.

 

오차를 점차 줄여 나가서 최소값이 되는 직선을 찾으면 끝난다.

 

 

 

- 과정 -

1. Nan 처리하기

2. 데이터 프레임의 컬럼을 X와 y로 분리하기

3. 문자열 데이터를 숫자로 변경하기

Linear Regression은 자체적으로 피처 스케일링을 하므로 별도로 할 필요가 없다. 

피처 스케일링 방법 링크 : https://mei-99.tistory.com/16 

4. Training 과 Test 용으로 데이터를 분리하기

5. 모델링하기

6. 예측하기

7. MSE 

8. 차트 그리기

 

 

 

1. Nan 처리하기

Nan이 있을 경우, df.dropna() / df.fillna() 로 처리해 주기

 

 

 

2. 데이터 프레임의 컬럼을 X와 y로 분리하기

to_frame()   : X에 넣어줄 컬럼을  2차원으로 만들어 주기

 

 

 

3. 데이터 타입 확인하기

(object 일 경우 숫자로 변경하기 : https://mei-99.tistory.com/17 )

 

 

 

4. 피쳐 스케일링 하기 : 지금 배우는 리니어 리그레이셔니은 자체적으로 피처 스케일링을 하므로 우리가 따로 해줄 필요 없다.

 

 

 

5. Training 과 Test 용으로 데이터를 분리하기

X_train, X_test, y_train, y_test 순서 바뀌면 안된다.

 

 

 

5. 모델링(인공지능 학습) 시키기

 

 

 

6. 예측하기

 

 

 

7. MSE

 

 

 

 

8. 차트 그리기

실제값과 예측값을 차트로 그려본다.