데이터분석 study/ML_기초

TIL_24.08.12_선형회귀 적용, 심화

justdata 2024. 8. 12. 20:26

▶머신러닝을 수행하기 위한 대표적인 라이브러리 'scikit-learn'

    sklearn.linear_model.LinearRegression : 선형회귀 모델 클래스

        ○ coef_ : 회귀 계수

        ○ intercept_ : 편향(bias)

        ○ fit : 데이터 학습

        ○ predict : 데이터 예측

 

    ● 평가

         - sklearn.metrics.mean_squared_error : MSE

         - sklearn.metrics.r2_score : R squeare 값 (결정계수)

 

 

▶ 다중선형회귀

      - 실제의 데이터들은 비선형적 관계를 가지는 경우가 많다. 

      - 이를 위해서 x변수를 추가할 수도 있고, 변형할 수 도 있다.

 

▶ 범주형 데이터 사용하기

     ○ 순서형 자료 : 자료의 순서 의미가 있음

         ex) 학점, 등급

 

     ○ 명목형 자료 : 자료의 순서 의미가 없음

         ex) 혈액형, 성별

 

     - 머신러닝 모델에 데이터를 훈련시키려면 해당 데이터를 숫자로 

       바꿔야 함

     - 성별, 날짜와 같은 데이터를 범주형 데이터라고 부르며 이를 임의로

        0,1 등에 숫자로 바꿀 수 있음, 이를 encoding 과정이라고 함.

 

선형회귀의 가정

     1. 선형성(Linearity) : 종속 변수 (Y)와 독립변수(X)간에 선형 관계가 존재

                                       해야 함.

     2. 등분산성(Homoscedasticity) : 오차의 분산이 모든 수준의 독립 변수에 대해

          일정해야 한다. 즉, 오차가 특정 패턴을 보여서는 안되며 독립변수의 값에 

           상관없이 일정해야 한다.

     3. 정규성(Normality) : 오차 항은 정규 분포를 따라야 한다.

     4. 독립성(Independence) : x 변수는 서로 독립적이어야 한다.

 

      ○ 다중공선성 문제

         - 회귀분석에서 독립변수(x)간의 강한 상관관계가 나타나는 것을 

           다중공선성(Multicolinearity)문제라고 한다.

 

      ○ 다중공선성 해결방법

         - 서로 상관관계가 높은 변수 중 하나만 선택

            (pairplot기능을 이용하여 산점도 혹은 heatmap을 이용한 

             상관관계 행렬을 통해 확인)

         - 두 변수를 동시에 설명하는 차원축소(Principle Component Analysis,PCA)

           실행하여 변수 1개로 축소

          

선형회귀 정리

   ● 장점

       - 직관적이며 이해하기 쉽다. X-Y 관계를 정량화 할 수 있다.

       - 모델이 빠르게 학습된다(가중치 계산이 빠르다)

 

    ● 단점

       - X-Y간의 선형성 가정이 필요하다

       - 평가지표가 평균(mean)포함 하기에 이상치에 민감

       - 범주형 변수를 인코딩 시 정보 손실이 일어난다.

 

 

데이터 프로세스