Python으로 배우는 Generalized Linear Models
Ita Cirovic Donev
Data Science Consultant



선형 모형
glm('y ~ weight',
data = crab,
family = sm.families.Gaussian())
$\mu = -0.14 + \color{#B21AB4}{0.32}*weight$
weight가 1 단위 증가할 때
로짓 모형
glm('y ~ weight',
data = crab,
family = sm.families.Binomial())
$log(odds) = -3.69 + \color{#228FF5}{1.8}*weight$
weight가 1 단위 증가할 때
로지스틱 모형 $$ log(\frac{\mu}{1-\mu}) = \beta_0 + \beta_1x_1 $$
$x$를 1 단위 증가 $$ log(\frac{\mu}{1-\mu}) = \beta_0 + \beta_1\color{blue}{(x_1+1)} $$
로지스틱 모형 $$ log(\frac{\mu}{1-\mu}) = \beta_0 + \beta_1x_1 $$
$x$를 1 단위 증가 $$ log(\frac{\mu}{1-\mu}) = \beta_0 + \beta_1\color{blue}{(x_1+1)} = \beta_0 + \color{blue}{\beta_1x_1+\beta_1} $$
지수 취하기 $$ (\frac{\mu}{1-\mu}) = \color{red}{\exp(\beta_0 + \beta_1x_1)}\color{blue}{\exp(\beta_1)} $$
결론 $\rightarrow$ $\color{red}{\text{odds}}$는 $\color{blue}{\exp(\beta_1)}$만큼 곱해짐
게 모형 y ~ weight
$$
log(\frac{\mu}{1-\mu}) = -3.6947 + \color{blue}{1.815}*weight
$$
weight가 1 단위 증가할 때 衛성 게의 오즈는 $\color{blue}{\exp(1.815) = 6.14}$배가 됨
게 모형 y ~ weight
$$
log(\frac{\mu}{1-\mu}) = \color{blue}{-3.6947} + 1.8151*weight
$$
weight가 1 단위 증가할 때 衛성 게의 오즈는 $\exp(1.8151) = 6.14$배가 됨




# Choose x (weight) and extract model coefficients
x = 1.5
intercept, slope = model_GLM.params
# Compute estimated probability
est_prob = np.exp(intercept + slope * x)/(1 + np.exp(intercept + slope * x))
0.2744
# Compute incremental change in estimated probability given x
ic_prob = slope * est_prob * (1 - est_prob)
0.3614
$logit = -3.6947 + 1.8151*weight$

Python으로 배우는 Generalized Linear Models