단순회귀분석 예제 - dansunhoegwibunseog yeje

회귀분석

회귀모형

  • 데이터 \[ \begin{pmatrix} Y & X_{1} & X_{2} & ... & X_{p}\\ y_1 & x_{11} & x_{12} & ... & x_{1p}\\ y_2 & x_{21} & x_{22} & ... & x_{2p}\\ ...&...&...&...&...\\ y_n & x_{n1} & x_{n2} & ... & x_{np}\\ \end{pmatrix} \]
  • 회귀모형: 확률변수 \(Y\)\(X_1, ..., X_p\)간의 함수관계를 추정하는 통계모형 \[ y = f(x_1, \ldots, x_p) + \epsilon, \]
    • \(Y\): 반응변수 (종속변수, 출력변수) - 영향을 받는 변수
    • \(X_1, ..., X_p\): 설명변수 (독립변수, 입력변수) - 영향을 주는 변수
    • \(f\): 회귀함수
    • \(\epsilon\): 오차항 (기대값: 0, 분산: \(\sigma^2\))
  • 선형회귀모형: 회귀함수 \(f\)가 아래와 같은 선형함수인 경우 \[ y = f(x_1, \ldots, x_p) + \epsilon= \beta_0 + \sum_{j=1}^p \beta_j x_j + \epsilon, \]
    • \(\beta_0, \ldots, \beta_p\): 회귀계수
    • \(\epsilon \sim N(0, \sigma^2)\)
  • Let \(\beta=(\beta_1, \beta_2, \ldots, \beta_p)^T\) and \(x=(x_1, \ldots, x_p)^T\) \[ y = f(\mathbf{x}) = \beta_0 + \beta^T \mathbf{x}. \]

회귀계수(\(\beta_j\))의 추정

  • 최소제곱법: 아래의 식을 최소화 \[ \sum_{i=1}^n (y_i - (\beta_0 + \beta_1 x_{1i} +\ldots+ \beta_p x_{pi}))^2 \]

    • 결과: \(\hat{\beta}= (X^T X)^{-1} X^T y\)
  • 회귀계수에 대한 t 검정: (\(H_0: \beta_j = 0\)) \[ t= \frac{\hat \beta_j}{s.e(\beta_j)} \sim t(n-p) \]

회귀모형의 적합도 평가(goodness of fit):

  • 결정계수(Coefficient of determination) \[ R^2 = \frac{SSR}{SST}= 1-\frac{SSE}{SST} = \frac{\sum_{i=1}^n(y_i - \hat y_i)^2}{\sum_{i=1}^n(y_i - \bar y)^2} \]
  • 수정결정계수 \[ R_{adj}^2 = 1-\frac{SSE/n-p}{SST/n-1} = 1-\left(\frac{n-p}{n-1}\right)\frac{SSE}{SST} \]
  • F 검정 \[ F = \frac{SSR/p}{SSE/(n-p-1)} = \frac{MSR}{MSE} \sim F(p, n-p-1). \]

단순선형회귀 예제

  • 단순선형회귀: 입력변수가 하나인 경우의 회귀분석

  • 데이터 예제

    • 내년에 판매되는 에어컨 대수를 예측
    • 지난 10년간의 에어컨 예약대수와 판매대수(1단위: 1,000대)
  • 산점도 (scatter plot)

    x <- c(11, 19, 23, 26, 29, 30, 38, 39, 46, 49)
    y <- c(29, 33, 51, 40, 49, 50, 69, 70, 64, 89)

    plot(x, y, xlab="x", ylab="y")

    단순회귀분석 예제 - dansunhoegwibunseog yeje

  • 단순선형회귀 모형 \[ y_i=\beta_0+\beta_1 x_i+\epsilon_i, i=1,\ldots,n. \]

    • \(x_i\): 에어컨 예약대수, \(y_i\): 에어컨 판매대수, \(\epsilon_i\): 오차항
    • \(\beta_0\), \(\beta_1\): 미지의 상수, 모수(parameter)
  • 회귀계수의 추정 : 최소제곱법

    m1 <- lm(y~x); summary(m1)

    ## 
    ## Call:
    ## lm(formula = y ~ x)
    ## 
    ## Residuals:
    ##      Min       1Q   Median       3Q      Max 
    ## -12.0115  -3.8229   0.4485   4.4044   8.6662 
    ## 
    ## Coefficients:
    ##             Estimate Std. Error t value Pr(>|t|)    
    ## (Intercept)   9.7362     6.6206   1.471     0.18    
    ## x             1.4408     0.2004   7.188 9.35e-05 ***
    ## ---
    ## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
    ## 
    ## Residual standard error: 7.227 on 8 degrees of freedom
    ## Multiple R-squared:  0.8659, Adjusted R-squared:  0.8492 
    ## F-statistic: 51.67 on 1 and 8 DF,  p-value: 9.354e-05
  • 분산분석표 : 모형의 적합도

    ## Analysis of Variance Table
    ## 
    ## Response: y
    ##           Df  Sum Sq Mean Sq F value    Pr(>F)    
    ## x          1 2698.56 2698.56  51.667 9.354e-05 ***
    ## Residuals  8  417.84   52.23                      
    ## ---
    ## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

변수선택

  • 다중회귀모형에서는 (의미가 있던 또는 없던지) 설명변수가 많이 포함될 수록 \(R^2\)이 커짐 (과적합)

  • 변수선택법 : 유의한 설명 변수를 찾는 방법

    • All possible subset regression
    • 전진선택법 (Forward selection)
    • 후진소거법 (Backward elimination)
    • 단계적선택법 (Stepwise selection)
  • 변수선택의 판정기준 (Selection Criterion)

    • F-test
    • Akaike Information Ceriterion (AIC)
    • Bayesian Information Ceriterion (BIC)

범죄율 데이터의 다중회귀분석

  • 데이터 - UScrime

    • 처벌정책이 범죄율에 미치는 영향 연구 / 1960년 미국 47개주의 데이터
    • 데이터 속성
    변수명변수설명
    M 14-24세 남자인구 비율
    So 남부 주(state)에 대한 지시변수(indicator variable)
    Ed 평균 교육(재학) 기간(년)
    Po1, Po2 1960, 1959년 경찰 유지비용
    LF 고용율
    M.F 성비: 여성 1,000명당 남성 비율
    Pop 주 인구(단위 1,000명)
    NW 인구 1,000 명당 비백인수
    U1,U2 14-24세, 35-39세 도시 남성의 실업률
    GDP 1인당 주내 총생산량
    Ineq 소득 불평등 지수
    Prob 구속 확률
    Time 재소자의 평균 구속 기간
    y 특정 유형에 대한 범죄율(rescaled) - 반응변수

    library(MASS)
    head(UScrime)

    ##     M So  Ed Po1 Po2  LF  M.F Pop  NW  U1 U2 GDP Ineq     Prob    Time    y
    ## 1 151  1  91  58  56 510  950  33 301 108 41 394  261 0.084602 26.2011  791
    ## 2 143  0 113 103  95 583 1012  13 102  96 36 557  194 0.029599 25.2999 1635
    ## 3 142  1  89  45  44 533  969  18 219  94 33 318  250 0.083401 24.3006  578
    ## 4 136  0 121 149 141 577  994 157  80 102 39 673  167 0.015801 29.9012 1969
    ## 5 141  0 121 109 101 591  985  18  30  91 20 578  174 0.041399 21.2998 1234
    ## 6 121  0 110 118 115 547  964  25  44  84 29 689  126 0.034201 20.9995  682
  • 산점도 (scatter plot)

    par(mfrow=c(2,2))
    for(i in 12:15)
    plot(UScrime[, c(i,16)])

    단순회귀분석 예제 - dansunhoegwibunseog yeje

  • 상관계수

    x <- UScrime[,12:16]
    round(cor(x),3)

    ##         GDP   Ineq   Prob   Time      y
    ## GDP   1.000 -0.884 -0.555  0.001  0.441
    ## Ineq -0.884  1.000  0.465  0.102 -0.179
    ## Prob -0.555  0.465  1.000 -0.436 -0.427
    ## Time  0.001  0.102 -0.436  1.000  0.150
    ## y     0.441 -0.179 -0.427  0.150  1.000
  • 다중선형회귀모형의 추정

    m1 <- lm(y~., data=UScrime)
    summary(m1)

    ## 
    ## Call:
    ## lm(formula = y ~ ., data = UScrime)
    ## 
    ## Residuals:
    ##     Min      1Q  Median      3Q     Max 
    ## -395.74  -98.09   -6.69  112.99  512.67 
    ## 
    ## Coefficients:
    ##               Estimate Std. Error t value Pr(>|t|)    
    ## (Intercept) -5984.2876  1628.3184  -3.675 0.000893 ***
    ## M               8.7830     4.1714   2.106 0.043443 *  
    ## So             -3.8035   148.7551  -0.026 0.979765    
    ## Ed             18.8324     6.2088   3.033 0.004861 ** 
    ## Po1            19.2804    10.6110   1.817 0.078892 .  
    ## Po2           -10.9422    11.7478  -0.931 0.358830    
    ## LF             -0.6638     1.4697  -0.452 0.654654    
    ## M.F             1.7407     2.0354   0.855 0.398995    
    ## Pop            -0.7330     1.2896  -0.568 0.573845    
    ## NW              0.4204     0.6481   0.649 0.521279    
    ## U1             -5.8271     4.2103  -1.384 0.176238    
    ## U2             16.7800     8.2336   2.038 0.050161 .  
    ## GDP             0.9617     1.0367   0.928 0.360754    
    ## Ineq            7.0672     2.2717   3.111 0.003983 ** 
    ## Prob        -4855.2658  2272.3746  -2.137 0.040627 *  
    ## Time           -3.4790     7.1653  -0.486 0.630708    
    ## ---
    ## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
    ## 
    ## Residual standard error: 209.1 on 31 degrees of freedom
    ## Multiple R-squared:  0.8031, Adjusted R-squared:  0.7078 
    ## F-statistic: 8.429 on 15 and 31 DF,  p-value: 3.539e-07
  • 변수선택(단계적선택법 -AIC)

    ## Start:  AIC=514.65
    ## y ~ M + So + Ed + Po1 + Po2 + LF + M.F + Pop + NW + U1 + U2 + 
    ##     GDP + Ineq + Prob + Time
    ## 
    ##        Df Sum of Sq     RSS    AIC
    ## - So    1        29 1354974 512.65
    ## - LF    1      8917 1363862 512.96
    ## - Time  1     10304 1365250 513.00
    ## - Pop   1     14122 1369068 513.14
    ## - NW    1     18395 1373341 513.28
    ## - M.F   1     31967 1386913 513.74
    ## - GDP   1     37613 1392558 513.94
    ## - Po2   1     37919 1392865 513.95
    ## <none>              1354946 514.65
    ## - U1    1     83722 1438668 515.47
    ## - Po1   1    144306 1499252 517.41
    ## - U2    1    181536 1536482 518.56
    ## - M     1    193770 1548716 518.93
    ## - Prob  1    199538 1554484 519.11
    ## - Ed    1    402117 1757063 524.86
    ## - Ineq  1    423031 1777977 525.42
    ## 
    ## Step:  AIC=512.65
    ## y ~ M + Ed + Po1 + Po2 + LF + M.F + Pop + NW + U1 + U2 + GDP + 
    ##     Ineq + Prob + Time
    ## 
    ##        Df Sum of Sq     RSS    AIC
    ## - Time  1     10341 1365315 511.01
    ## - LF    1     10878 1365852 511.03
    ## - Pop   1     14127 1369101 511.14
    ## - NW    1     21626 1376600 511.39
    ## - M.F   1     32449 1387423 511.76
    ## - Po2   1     37954 1392929 511.95
    ## - GDP   1     39223 1394197 511.99
    ## <none>              1354974 512.65
    ## - U1    1     96420 1451395 513.88
    ## - Po1   1    144302 1499277 515.41
    ## - U2    1    189859 1544834 516.81
    ## - M     1    195084 1550059 516.97
    ## - Prob  1    204463 1559437 517.26
    ## - Ed    1    403140 1758114 522.89
    ## - Ineq  1    488834 1843808 525.13
    ## 
    ## Step:  AIC=511.01
    ## y ~ M + Ed + Po1 + Po2 + LF + M.F + Pop + NW + U1 + U2 + GDP + 
    ##     Ineq + Prob
    ## 
    ##        Df Sum of Sq     RSS    AIC
    ## - LF    1     10533 1375848 509.37
    ## - NW    1     15482 1380797 509.54
    ## - Pop   1     21846 1387161 509.75
    ## - Po2   1     28932 1394247 509.99
    ## - GDP   1     36070 1401385 510.23
    ## - M.F   1     41784 1407099 510.42
    ## <none>              1365315 511.01
    ## - U1    1     91420 1456735 512.05
    ## - Po1   1    134137 1499452 513.41
    ## - U2    1    184143 1549458 514.95
    ## - M     1    186110 1551425 515.01
    ## - Prob  1    237493 1602808 516.54
    ## - Ed    1    409448 1774763 521.33
    ## - Ineq  1    502909 1868224 523.75
    ## 
    ## Step:  AIC=509.37
    ## y ~ M + Ed + Po1 + Po2 + M.F + Pop + NW + U1 + U2 + GDP + Ineq + 
    ##     Prob
    ## 
    ##        Df Sum of Sq     RSS    AIC
    ## - NW    1     11675 1387523 507.77
    ## - Po2   1     21418 1397266 508.09
    ## - Pop   1     27803 1403651 508.31
    ## - M.F   1     31252 1407100 508.42
    ## - GDP   1     35035 1410883 508.55
    ## <none>              1375848 509.37
    ## - U1    1     80954 1456802 510.06
    ## - Po1   1    123896 1499744 511.42
    ## - U2    1    190746 1566594 513.47
    ## - M     1    217716 1593564 514.27
    ## - Prob  1    226971 1602819 514.54
    ## - Ed    1    413254 1789103 519.71
    ## - Ineq  1    500944 1876792 521.96
    ## 
    ## Step:  AIC=507.77
    ## y ~ M + Ed + Po1 + Po2 + M.F + Pop + U1 + U2 + GDP + Ineq + Prob
    ## 
    ##        Df Sum of Sq     RSS    AIC
    ## - Po2   1     16706 1404229 506.33
    ## - Pop   1     25793 1413315 506.63
    ## - M.F   1     26785 1414308 506.66
    ## - GDP   1     31551 1419073 506.82
    ## <none>              1387523 507.77
    ## - U1    1     83881 1471404 508.52
    ## - Po1   1    118348 1505871 509.61
    ## - U2    1    201453 1588976 512.14
    ## - Prob  1    216760 1604282 512.59
    ## - M     1    309214 1696737 515.22
    ## - Ed    1    402754 1790276 517.74
    ## - Ineq  1    589736 1977259 522.41
    ## 
    ## Step:  AIC=506.33
    ## y ~ M + Ed + Po1 + M.F + Pop + U1 + U2 + GDP + Ineq + Prob
    ## 
    ##        Df Sum of Sq     RSS    AIC
    ## - Pop   1     22345 1426575 505.07
    ## - GDP   1     32142 1436371 505.39
    ## - M.F   1     36808 1441037 505.54
    ## <none>              1404229 506.33
    ## - U1    1     86373 1490602 507.13
    ## - U2    1    205814 1610043 510.76
    ## - Prob  1    218607 1622836 511.13
    ## - M     1    307001 1711230 513.62
    ## - Ed    1    389502 1793731 515.83
    ## - Ineq  1    608627 2012856 521.25
    ## - Po1   1   1050202 2454432 530.57
    ## 
    ## Step:  AIC=505.07
    ## y ~ M + Ed + Po1 + M.F + U1 + U2 + GDP + Ineq + Prob
    ## 
    ##        Df Sum of Sq     RSS    AIC
    ## - GDP   1     26493 1453068 503.93
    ## <none>              1426575 505.07
    ## - M.F   1     84491 1511065 505.77
    ## - U1    1     99463 1526037 506.24
    ## - Prob  1    198571 1625145 509.20
    ## - U2    1    208880 1635455 509.49
    ## - M     1    320926 1747501 512.61
    ## - Ed    1    386773 1813348 514.35
    ## - Ineq  1    594779 2021354 519.45
    ## - Po1   1   1127277 2553852 530.44
    ## 
    ## Step:  AIC=503.93
    ## y ~ M + Ed + Po1 + M.F + U1 + U2 + Ineq + Prob
    ## 
    ##        Df Sum of Sq     RSS    AIC
    ## <none>              1453068 503.93
    ## - M.F   1    103159 1556227 505.16
    ## - U1    1    127044 1580112 505.87
    ## - Prob  1    247978 1701046 509.34
    ## - U2    1    255443 1708511 509.55
    ## - M     1    296790 1749858 510.67
    ## - Ed    1    445788 1898855 514.51
    ## - Ineq  1    738244 2191312 521.24
    ## - Po1   1   1672038 3125105 537.93
  • 최종 모형: 단계적선택법을 적용한 결과

    ## 
    ## Call:
    ## lm(formula = y ~ M + Ed + Po1 + M.F + U1 + U2 + Ineq + Prob, 
    ##     data = UScrime)
    ## 
    ## Residuals:
    ##     Min      1Q  Median      3Q     Max 
    ## -444.70 -111.07    3.03  122.15  483.30 
    ## 
    ## Coefficients:
    ##              Estimate Std. Error t value Pr(>|t|)    
    ## (Intercept) -6426.101   1194.611  -5.379 4.04e-06 ***
    ## M               9.332      3.350   2.786  0.00828 ** 
    ## Ed             18.012      5.275   3.414  0.00153 ** 
    ## Po1            10.265      1.552   6.613 8.26e-08 ***
    ## M.F             2.234      1.360   1.642  0.10874    
    ## U1             -6.087      3.339  -1.823  0.07622 .  
    ## U2             18.735      7.248   2.585  0.01371 *  
    ## Ineq            6.133      1.396   4.394 8.63e-05 ***
    ## Prob        -3796.032   1490.646  -2.547  0.01505 *  
    ## ---
    ## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
    ## 
    ## Residual standard error: 195.5 on 38 degrees of freedom
    ## Multiple R-squared:  0.7888, Adjusted R-squared:  0.7444 
    ## F-statistic: 17.74 on 8 and 38 DF,  p-value: 1.159e-10
  • 원자료와 최초모형의 추정결과 비교

    #plot(s1)
    plot(UScrime$y, s1$fitted.values, xlab="범죄율(y)", ylab="범죄율 추정치(hat_y)")

    단순회귀분석 예제 - dansunhoegwibunseog yeje

일부 자료를 이용한 모형적합

for(i in 1:2){
  omit_idx <- sample(nrow(UScrime), 5)
  cat("========== Detete ids =", omit_idx, "====================\n")
  m2 <- lm(y~., data=UScrime[-omit_idx,])
  s2 <- step(m2, trace=F)
  print(summary(s2))
}

## ========== Detete ids = 22 27 5 29 34 ====================
## 
## Call:
## lm(formula = y ~ M + Ed + Po1 + U2 + Ineq + Prob, data = UScrime[-omit_idx, 
##     ])
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -514.02  -98.95  -14.51  110.09  474.88 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -4861.877    918.989  -5.290 6.66e-06 ***
## M               8.869      3.194   2.777 0.008751 ** 
## Ed             17.908      4.535   3.949 0.000362 ***
## Po1            13.382      1.465   9.131 8.65e-11 ***
## U2              6.906      4.080   1.692 0.099437 .  
## Ineq            7.496      1.427   5.254 7.43e-06 ***
## Prob        -3350.870   1453.774  -2.305 0.027219 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 187.5 on 35 degrees of freedom
## Multiple R-squared:  0.802,  Adjusted R-squared:  0.768 
## F-statistic: 23.62 on 6 and 35 DF,  p-value: 5.872e-11
## 
## ========== Detete ids = 23 37 36 21 3 ====================
## 
## Call:
## lm(formula = y ~ M + Ed + Po1 + M.F + U1 + U2 + Ineq + Prob, 
##     data = UScrime[-omit_idx, ])
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -443.38  -84.54   17.60  106.22  530.97 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -7055.177   1232.751  -5.723 2.18e-06 ***
## M              12.299      4.215   2.918  0.00630 ** 
## Ed             19.692      5.496   3.583  0.00108 ** 
## Po1            10.243      1.561   6.564 1.85e-07 ***
## M.F             2.293      1.361   1.684  0.10161    
## U1             -6.223      3.400  -1.830  0.07627 .  
## U2             20.346      7.485   2.718  0.01038 *  
## Ineq            5.750      1.563   3.678  0.00083 ***
## Prob        -3652.736   1661.554  -2.198  0.03504 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 195 on 33 degrees of freedom
## Multiple R-squared:  0.8073, Adjusted R-squared:  0.7605 
## F-statistic: 17.28 on 8 and 33 DF,  p-value: 9.175e-10

중간고사(과제)

  1. 자동차부품공정자료는 자동차 부품 중 Oil Gasket을 생산하는 공정자료이다. 아래는 이 자료에 포함된 변수들에 대한 설명이다.

Oil Gasket 그림

변수변수설명
prod_date 생산공정시간
prod_no 제품번호
prod_name 제품이름
degree
mold
prod
s_no
fix_time
a_speed a 속도
b_speed b 속도
separation
s_separation
rate_terms
mpa 실압력
load_time 하중시간
highpressure_time 고압시간
c_thickness 탕구두께
  1. Oil Gasket의 제품번호는 모두 몇 종류이며, 종류별 생산량은?

  2. Oil Gasket의 제품번호가 ’45231’로 시작하는 제품의 제품번호별 탕구두께(c_thickness)를 상자그림으로 그려라.

  3. Oil Gasket의 제품번호가 ’45231-3B660’인 제품의 탕구두께(c_thickness)를 시간(prod_date)에 따른 시계열 그림으로 그려라.

  4. 제품번호가 ’45231-3B660’인 Oil Gasket의 탕구두께와 공정변수들간의 상관계수를 구하라.

  5. 제품번호가 ’45231-3B660’인 Oil Gasket의 탕구두께와 공정변수들간의 회귀모형을 추정하라.

  6. 제품번호가 ’45231-3B660’인 Oil Gasket의 탕구두께는 20~30 범위에 있으면 정상이고 그 외는 불량품으로 간주한다. 어떤 공정변수들이 제품의 불량에 영향을 주고 있는지를 살펴보시오.

  7. 로지스틱 회귀모형을 이용하여 불량 요인을 탐색하시오.

로지스틱 회귀

로지스틱 회귀 모형

  • 선형회귀모형: 반응변수가 연속형인 경우 \[ E(y|x_1, x_2, \ldots, x_p) = \beta_0 + \sum_{j=1}^p \beta_j x_j. \]

  • 로지스틱 회귀모형: 반응변수가 이진형인 경우 (\(y \in \{0,1\}\)) \[ \log\left(\frac{P(y=1|x)}{1-P(y=1|x)}\right) = \beta_0 + \sum_{j=1}^p \beta_j x_j, \] 이를 다시 \(P(Y=1|x)\)에 대하여 정리하면, \[ P(Y=1|x) = \frac{\exp(\beta_0 + \sum_{j=1}^p \beta_j x_j)}{1+\exp(\beta_0+ \sum_{j=1}^p \beta_j x_j)}. \]

x = seq(-3, 3)
f= function(x){ exp(x)/(1+exp(x))}
curve(exp(x)/(1+exp(x)), -3, 3, type="l", xlab="x", ylab=expression(e^x/(1+e^x)))

단순회귀분석 예제 - dansunhoegwibunseog yeje

  • 참고: 일반화 선형모형

    • \(y\)를 종속변수이고 어떤 분포를 따른다고 하자. 이떄 어떤 분포는 지수족(exponential family)이고, 주로 정규분포, 포아송, 감마, 이항분포 등이다.

    • \(Y\)의 기대값(평균, \(E(y) = \mu\))이 독립변수의 함수로 표현된다고 하자. 즉, \[ E (y)=\mu = g^{-1} (\beta_0+ \sum_{j=1}^p \beta_j x_j) \]

    • 위에서 \(\beta_0+ \sum_{j=1}^p \beta_j x_j\)는 선형예측기(linear predictor)라고 부르고,

    • \(\mu = g^{-1} (\beta_0+ \sum_{j=1}^p \beta_j x_j)\)을 평균함수(mean function),

    • \(g()\)를 연결함수(link function)이라고 함

    • 이러한 일반화 선형모형은 다양한 분포에서 회귀모형을 적합시킬 수 있음

      단순회귀분석 예제 - dansunhoegwibunseog yeje

로지스틱 회귀모형의 해석

smoking(x=1)non-smoking(x=0)
lung cancer(y=1) a c
non (y=0) b d
  • Risk Ratio(RR): 흡연의 폐암 발생률을 비흡연의 폐암 발생률로 나눈 값 \[ RR = \frac{P(Y=1|x=1)}{P(Y=1|x=0)} = \frac{a/(a+b)}{c/(c+d)} \]

  • 오즈 (odds):

    • 흡연(비흡연)의 폐암 확률을 흡연(비흡연)의 폐암이 발생하지 않을 확률로 나눈 값
    • 특정 리스크에 노출될 경우의 위험도로 해석 \[ odds(x=1) = \frac{P(Y=1|x=1)}{P(Y=0|x=1)} = \frac{a/(a+b)}{b/(a+b)} = \frac{a}{b} \]
  • 오즈비 (odds ratio)

    • 설몀변수 \(x=1\)에서의 오즈와 \(x=0\)에서의 오즈의 비
    • \(x\)가 한 단위 증가할 때 \(y=1\)일 위험과 \(y=0\)일 위험의 비의 증가율
    • 특정 리스크에 노출될 경우, 그렇지 않은 경우에 대한 상대적 위험도 \[ \frac{P(Y=1|x=1)/P(Y=0|x=1)}{P(Y=1|x=0)/P(Y=0|x=0)} = \exp(\beta_1). \]
  • RR vs OR

    • \(P(Y=1|x=0) \approx 0\)
    • 즉, 리스크에 노출되지 않을 경우 질병에 걸릴 확률)이 아주 작으면 (희귀성의 가정)
    • \(RR \approx OR\)
  • 로그 오즈비 : 오즈비에 로그를 취한 값으로 회귀계수와 일치

  • 예: \(x\)는 흡연 유무이고 \(y\)는 폐질환 여부 (1, 0)

    • \(\hat{\beta}=3.72 \to \text{odds ratio} =\exp(3.72) = 42\)
    • 흡연자의 폐질환에 대한 위험이 비흡연자의 위험에 비해 42배 증가하는 것으로 해석

예제: 로지스틱 회귀

  • 데이터 : 전립선암 (Prostate Cancer) 데이터

    • 림프절이 전립선암에 대해 양성인지 여부

    • 53명의 환자자료

    • 변수 설명

      변수명변수 설명
      aged 환자의 연령
      stage 질병 단계: 질병이 얼마나 진행되어 있는지 나타내는 측도
      grade 종양의 등급: 진행의 정도
      xray X-선 결과
      acid 혈청인산염(serum acid phosphatase)
      특정한 부위에 종양이 전이되었을 때 상승되는 혈청의 인산염값
      r 전립선암 양성(1) 여부
    • 데이터

      library(boot)
      x <- nodal[,-1]
      head(x, 20)

      ##    r aged stage grade xray acid
      ## 1  1    0     1     1    1    1
      ## 2  1    0     1     1    1    1
      ## 3  1    0     1     1    1    1
      ## 4  1    0     1     1    1    1
      ## 5  1    0     1     1    1    1
      ## 6  0    0     1     1    1    1
      ## 7  1    0     0     0    0    1
      ## 8  0    0     0     0    0    1
      ## 9  0    0     0     0    0    1
      ## 10 0    0     0     0    0    1
      ## 11 0    0     0     0    0    1
      ## 12 0    0     0     0    0    1
      ## 13 0    1     1     1    0    0
      ## 14 0    1     1     1    0    0
      ## 15 0    1     1     1    0    0
      ## 16 0    1     1     1    0    0
      ## 17 1    1     1     0    0    1
      ## 18 1    1     1     0    0    1
      ## 19 0    1     1     0    0    1
      ## 20 0    1     1     0    0    1
  • 모형 적합

    gfit = glm(r~., data=x, family="binomial")
    summary(gfit)$coefficients

    ##               Estimate Std. Error    z value    Pr(>|z|)
    ## (Intercept) -3.0793806  0.9867696 -3.1206684 0.001804411
    ## aged        -0.2917427  0.7540054 -0.3869239 0.698812567
    ## stage        1.3729295  0.7838488  1.7515235 0.079855775
    ## grade        0.8719723  0.8155785  1.0691457 0.285004012
    ## xray         1.8008141  0.8104165  2.2220847 0.026277583
    ## acid         1.6839295  0.7914741  2.1275863 0.033371400
  • 변수선택 (단계적 선택법)

    gfit2 <- step(gfit, trace=F)
    summary(gfit2)

    ## 
    ## Call:
    ## glm(formula = r ~ stage + xray + acid, family = "binomial", data = x)
    ## 
    ## Deviance Residuals: 
    ##     Min       1Q   Median       3Q      Max  
    ## -2.1231  -0.6620  -0.3039   0.4710   2.4892  
    ## 
    ## Coefficients:
    ##             Estimate Std. Error z value Pr(>|z|)    
    ## (Intercept)  -3.0518     0.8420  -3.624  0.00029 ***
    ## stage         1.6453     0.7297   2.255  0.02414 *  
    ## xray          1.9116     0.7771   2.460  0.01390 *  
    ## acid          1.6378     0.7539   2.172  0.02983 *  
    ## ---
    ## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
    ## 
    ## (Dispersion parameter for binomial family taken to be 1)
    ## 
    ##     Null deviance: 70.252  on 52  degrees of freedom
    ## Residual deviance: 49.180  on 49  degrees of freedom
    ## AIC: 57.18
    ## 
    ## Number of Fisher Scoring iterations: 5
  • 결과의 해석

    • 유의한 변수들(유의확률: \(p<0.05\))은 전립선암에 영향을 줌
      • 질병의 단계(stage)가 심화
      • X-선 결과(xray)가 좋지 않을수록
      • 혈청인산염 값(acid)이 높을수록
    • stage(질병의 단계)의 오즈비
      • \(\exp(1.645346) = 5.18280\)
      • 질병의 진행단계가 심화된 그룹은 그렇지 않은 그룹에 비해 전립선암에 노출 위험이 약 5.2배 정도 높음