회귀분석3

상관분석

1. 상관분석과 상관계수

  • 상관분석이란 : 두 개의 연속형 변수에 대해서 상관계수를 이용하여 선형관계 분석

    e.g. 키와 몸무게의 관계, 광고비와 매출액의 관계, 흡연과 수명의 관계 등

  • 상관계수 : 서로 다른 두 변수의 흩어짐 정도를 나타냄

    cf. 상관계수는 공분산과 함께 두 변수의 연관성을 확인할 수 있으며, 공분산을 표준화한 값이기도 함

    • 상관계수 범위: -1 ≤ 𝑟 ≤ 1

    • r이 양수이면 양의 상관관계, 음수이면 음의 상관관계를 의미

    • 값의 크기는 선형관계의 강도를 의미

      𝑟 = ±1 : 완벽한 선형관계

      𝑟 = 0 : 선형관계가 없음

    • 값이 크면 클 수록 선형관계가 강하다

      상관계수는 반드시 산점도와 함께 계산해야한다 !!

      why? 상관계수가 높더라도 산점도를 그렸을 때 상관관계가 드러나지 않을 수 있다.

회귀분석

1. 회귀분석이란?

  • 회귀분석이란 : 독립변수와 종속변수 사이 통계적 유의미성 검증하고 두 변수가 가진 관계의 정도를 분석하는 것

독립변수 : 설명변수 (X)

종속변수 : 반응변수 (Y)

  • 단순선형 회귀분석 : 설명변수가 한 개인 선형회귀모형

    다중선형 회귀분석 : 설명변수가 두 개인 선형회귀모형

    • 단순선형 회귀분석과 다중선형 회귀분석은 설명변수의 갯수로 분류됨. 이외의 차이는 크게 없음

    • 선형회귀분석: 가지고 있는 데이터를 직선 형태로 나타내는 선을 찾아가는 분석

2. 회귀분석의 가정

  • 𝑥와 𝑦는 선형관계를 가짐(선형성)

    선형성 검증: x와 y의 그래프를 그려보기

  • 오차에 대한 가정

    • 오차는 정규분포를 따른다(정규성)

      (= y는 정규분포를 따른다 = 각 𝑥값에 대하여 모집단에서의 𝑦값은 정규분포를 따름)

      • 정규성 검증1 : 히스토그램을 그려서 정규분포형인지 확인
      • 정규성 검증2 : Q-Q plot을 그려서 직선위에 데이터들이 다 있으면 정규분포를 따른다고 볼 수 있음
    • 𝑦값 분포의 분산은 모든 𝑥값에서 같다(등분산성)

      = 오차는 모든 x값에서 동일한 분산을 갖는다

  • 독립변수(x) 상호간에는 상관관계가 없어야 한다 (다중공선성)

    • 다중공선성 ? : 독립변수들간에 상관관계가 나타나는 상황

    • 다중공선성이 초래하는 문제 ? : 회귀계수의 분산이 커져서 해석에 왜곡이 생길 수 있음

      (=유의한 회귀계수가 유의하지 않다고 판단될 수도 있다는 것)

      • 다중공선성 문제 해결하는 방법

        1) 상관관계가 높은 독립변수 중 하나 혹은 일부를 제거한다

        2) 변수를 변환하여 상관관계가 적어지게 만들어줄 수 있음

        3) PCA 방법을 이용해 공선성을 제거해준다

        PCA : 각 변수의 상관계수를 0으로 만들어주는 기법

3. 변수

  • 연속형 변수의 해석

    독립변수 x가 한 단위 증가할 때 y의 평균 변화량

  • 범주형 변수의 해석

    기본이 되는 범주에 비교 했을 때, Y의 평균 차이량

  • 지시형 변수

    변수형 변수를 처리하기 위해 (class의 개수 - 1)

    하나의 변수를 기준 변수로 놔둬야 함(그래서 1과 0으로 나눔. 1이 기준변수)

    class의 개수 -1을 하는 이유?

    : 다중공선성때문에 범주형 변수에서 하나를 빼게 되는 것 (변수들을 어찌저찌 조절하다 보면 상관관계가 높아지는 계수를 찾을 수 있게 됨. 그래서 -1을 해줌 )

  • 파생변수

    • 항상 데이터가 적합한 것이 아니기 때문에 분석 목적에 맞게 개발해 낸 유의미하고 적합한 변수

    • 기존의 변수를 가지고 특정 조건을 만족하거나 특정 함수에 의해 값을 만들어 의미를 부여한 함수

    • 파생변수의 생성방법

      • 도메인 & 데이터 자체에 대한 지식

        e.g. 산불에 영향을 미치는 인자를 분석할 때, 내가 가지고 있는 데이터는 습도 데이터. 필요한 데이터는 습도가 아닌 3일치 평균 습도. 이때 3일치 평균습도가 파생변수가 됨

      • EDA통해 insight 얻기

        월말 지시변수 생성 (월말이면 1, 아니면 0 으로 만들어서 시각화함)

      • 상호작용 변수(교호작용 변수) 추가

        파생변수 생성 시 주관적인 관점이 상당부분 포함될 수 있으므로 타당성 있게 개발해야 함

4. 교호작용 변수

  • 교호(상호; interaction ) 작용 변수?

    : 한 변수의 효과가 다른 변수의 수준에 의존하는 경우

    즉, 한 변수의 효과가 다른 변수의 수준에 의존하는 경우

    e.g

    흡연을 하면 건강에 영향(-3)을 미침

    음주를 하면 건강에 영향(-2)을 미침

    그렇다면, 흡연도하고 음주를 하는 사람은 건강에 얼만큼 영향을 미칠까?

    만약 건강에 미치는 영향이 ‘-5’ 이라면 교호작용변수는 고려하지 않아도 된다.

    하지만, 흡연과 음주를 동시에 한 결과 더 많은 악영향(-10)이 끼친다면 교호작용변수를 고려해야 한다.

    • 상호작용 변수 없는 기존의 모델: 건강 ~ 흡연 + 음주

      상호작용 변수 추가한 모델: 건강 ~ 흡연 + 음주 + 흡연:음주(=흡연음주)

  • 범주형 범주형 & 범주형 연속형 변수의 관계만 봄

    연속형 *연속셩 교호작용을 잘 보지 않는 이유는 해석이 애매하게 되기 때문에 보통은 두 변수의 관계에서는 교호작용을 고려하지 않음

5. 데이터 분할

  • Data를 Train Data와 Test Data로 나눈다

    Train Data : 모델을 세우기 위한 데이터

    Test Data : 모델의 성능을 평가하기 위한 데이터

  • 데이터 분할을 하는 이유

    : 주어진 데이터만 설명하는 것이 목적이 아니라 데이터 모델을 바탕으로 미래를 예측할 때에는 다른 상황에서도 적용 가능한 모델을 만들어야 하기 때문

    : 가지고 있는 데이터로만 모델을 만들면 overfitting의 위험이 존재함

6. 잔차분석

  • 잔차분석이란 :

    -회귀분석 가정 중 오차의 등분산성 가정을 만족하는지 확인하는 방법

    • 회귀분석 모형을 적합한 후 모형의 결함을 찾아내는 방법

    잔차란?

    (실제 관측값 - 예측값)

  • 잔차분석

    1. 잔차 와 예측값의 산점도 그려보기

    2. 잔차와 반응변수의 산점도 그려보기

      (잔차는 반응변수와 관련성이 없어야하기 때무에 그림에 패턴이 드러나지 않아야함

      패턴이 드러나면 가정 위반임)

    3. 잔차의 정규확률 플롯 (Q-Q plot) 그려보기

6. 결정계수 (R-square)

  • 결정계수

    -X가 Y를 얼마나 설명하는지에 관한 정보를 제공 (회귀식이 얼마나 정확한지)

    -반응변수 (Y)의 전체 변동(SST) 중 예측변수(X)가 차지하는 변동(SSR)의 비율

  • 수정된 결정계수

    -변수의 개수를 고려한 결정계수

    -결정계수의 단점을 보완하기 위한 계수

    결정계수의 단점 : 변수의 개수가 늘어나면 결정계수가 커지기 때문에 모델 판단의 기준을 결정계수로 선택하면 변수가 많은 모델을 선택할 경향이 높음

    다중회귀분석에서의 모델선택은 수정된 결정계수가 더 적절하다

7. 예측력 평가

  • MSE : 평균 제곱 오차 방법
  • RMSE : 평균 제곱근 오차

8. 모델 선택의 기준

  • 모델 설명력, 적합도 (결정계수 / 수정된 결정계수)

  • 예측력 (MSE / RMSE)

    이 중 모델 선택은 본인이 정한 하나의 기준으로 판단하면 됨

분석 Process

  1. 문제정의

    분석목적 설정, 데이터 수집, 데이터 정제 및 처리

  2. EDA

    각 변수들의 분포 확인 (missing, outlier 확인 및 처리 … ) 회귀분석 가정 확인 (선형성, 정규성, 다중공선성) 파생변수 생성

  3. modeling

    회귀분석, xgboost, randomforest …

  4. 변수선택

    forward, backward, stepwise … (소개된 것은 선형모형에서 가능)

  5. 잔차분석

    residual plot, partial residual plot, …

  6. 모델 수정

    잔차 확인 후 추가적인 파생변수 고려

  7. 모형비교 각 모델 별로 performance 확인

results matching ""

    No results matching ""