임의효과 모형과 고정효과 모형
RE 모형과 FE 모형
- 패널모형 \(y_{it} = \alpha + \mathbf{x}_{it} \beta + \mu_i + \varepsilon_{it}\)
- 개별효과 또는 개체효과(individual effects) = \(\mu_i\)
- 임의효과와 고정효과
- \(\mathbf{x}_{it}\)와 비상관인 \(\mu_i\)를 임의효과(random effects)라 함
- \(\mathbf{x}_{it}\)와 상관될 수 있는 \(\mu_i\)를 고정효과(fixed effects)라 함
- 임의효과 모형은 \(\mu_i\)가 \(\mathbf{x}_{it}\)와 상관되지 않았다고 가정
- \(\mu_i\)가 임의효과라는 제약을 가한 모형
- \(\mu_i\)는 오차항의 일부로 간주됨
- 해석 시 \(\mu_i\)를 고정하지 않음
- 고정효과 모형은 \(\mu_i\)가 \(\mathbf{x}_{it}\)와 상관될 수 있도록 허용하는 모형
- \(\mu_i\)에 아무런 제약도 가하지 않은 모형
- 고정효과 모형에서 \(\beta_1\)은 \(x_{2,it}, \ldots, x_{k,it}\)와 \(\mu_i\)가 고정된 상태에서 \(x_{1,it}\)가 1단위 증가할 때의 효과를 나타냄
- 고정효과 모형에서 \(\mu_i\)가 오차항의 일부로 간주되면 오차항과 설명변수가 상관됨(내생성).
| 모형 | \(\mathbf{x}_{it}\)와 \(\mu_i\) | \(\mu_i\) | \(\mathbf{x}_{it}\)와 \(\varepsilon_{it}\) |
|---|---|---|---|
| 고정효과 모형 | 상관될 수 있음 | 고정효과 | 강외생적(아무런 상관 없음) |
| 임의효과 모형 | 비상관 | 임의효과 | 강외생적(아무런 상관 없음) |
임의효과 모형의 추정
Pooled OLS
- 패널모형을 \(y_{it} = \alpha + \mathbf{x}_{it}\beta + u_{it}\)라고 쓰고 \(u_{it} = \mu_i + \varepsilon_{it}\)라 하면, 임의효과 모형에서 설명변수와 오차항은 서로 비상관이므로 OLS (즉, POLS) 추정량이 consistent
-
POLS를 사용하려면 표준오차에만 신경쓰면 됨(클러스터 표준오차)
RE 회귀
- 그런데 \(\mu_i\)의 존재로 인하여, \(\varepsilon_{it}\)가 \(t\)에 걸쳐 \(iid\)라 가정하더라도 \(u_{it} = \mu_i + \varepsilon_{it}\)는 \(t\)에 걸쳐서 상관됨
- 그러므로 POLS보다 더 효율적인 추정방법이 존재함(FGLS)
- POLS보다 더 효율적인 추정을 위해서는 \(\mu_i\)와 \(\varepsilon_{it}\)의 공분산에 관한 특별한 가정(“RE 공분산” 가정이라 함)을 하고 FGLS
- 이 RE 공분산 가정은 ① \(\mu_i, \varepsilon_{i1}, \ldots, \varepsilon_{iT}\)는 서로간에 모두 비상관, ② \(\varepsilon_{it}\)들은 \(t\)에 걸쳐 등분산, ③ 변수들은 \(i\)에 걸쳐 iid라는 것
- 그러면 오차 분산은 \(var(u_{it}) = \sigma_{\mu}^2 + \sigma_{\varepsilon}^2\)이고 오차 공분산은 \(cov(u_{is}, u_{it}) = \sigma_{\mu}^2\) for \(s\ne t\)
- 시간의 순서를 바꾸어도 분산·공분산 행렬이 동일하게 유지되므로 이 가정을 “교환성(exchangeability)” 가정이라고도 함
- 이 가정하에서 GLS 추정량은
(수학에 의하면) \(y_{it} - \theta \bar{y}_i\)를 \(\mathbf{x}_{it} - \theta \bar{\mathbf{x}}_i\)에 대하여 POLS하는 것과 동일. 단, \(\theta = 1- (1+T\lambda)^{-1/2}\), \(\lambda = \sigma_{\mu}^2 / \sigma_{\varepsilon}^2\).\(0\le \lambda\le 1\) - POLS 추정은 \(\theta\) 대신에 0을 사용
- FE 추정은 \(\theta\) 대신에 1을 사용
- 불균형패널의 경우는 \(T\) 대신에 \(T_i\)를 사용하며 \(\theta\) 값은 \(i\)마다 상이함
- 적절한 방법들을 이용하여 \(\sigma_{\mu}^2\)과 \(\sigma_{\varepsilon}^2\)을 추정하면 이 추정값들을 이용하여 \(\theta\)를 구성하고 FGLS 추정을 할 수 있음
(details 생략) - 이 FGLS 회귀를 RE 회귀라 함
- RE 회귀는
(개별효과가 임의효과라는 가정과 함께) ‘RE 공분산 가정’(exchangeability 가정)하에서 행하는 FGLS 회귀 -
Stata에서 RE 회귀는
xtreg, re를 이용.theta옵션을 주면 균형패널의 경우 \(\theta\) 추정값이, 불균형패널의 경우 \(\theta_i\) 추정값들의 분포가 표시됨
corr(u_i, X) = 0 (assumed)”라는 표현의 뜻을 이해하는가?
age65over 변수 관련 결과를 해석하라.
sigma_u, sigma_e, rho의 뜻을 설명하라. sigma_u와 sigma_e로부터 rho를 직접 구하라.
- 임의효과 모형이 옳으면(즉, \(\mu_i\)가 임의효과이면) POLS 추정량이 consistent한 것처럼 RE 추정량도 consistent
- 여기에 추가하여 오차의 RE 공분산 가정이 정말로 충족되면 RE 추정량은 FGLS이고 통상적으로 계산되는 표준오차는 타당함
- 만약 RE 공분산 가정이 사실은 충족되지 않는다면 RE 추정량은 FGLS 추정량이 아니고 이보다 더 나은 추정량이 존재하며
(별로 중요하지 않음) , 통상적으로 계산되는 표준오차는 타당하지 않음(중요함). - RE 공분산 가정이 충족되지 않는 경우에도 RE 추정량을 사용하여 검정을 하려면 클러스터 표준오차를 사용하여야 함
- 참고로, RE 공분산 가정이 충족되는지 여부와 \(\mu_i\)가 RE인지 여부는 전혀 차원이 다른 문제임
- 만약 \(\mu_i\)가 임의효과 아니라 고정효과라면 RE 추정량이 inconsistent하므로 RE 추정값은 우리에게 아예 잘못된 정보를 줌
- 만약 \(\mu_i\)가 임의효과인 것은 맞는데 RE 공분산 가정이 충족되지 않으면, RE 추정량은 여전히 consistent하며 표준오차를 제대로 된 방법으로 계산하기만 하면 됨(클러스터 표준오차).
xtreg sav age65over ggdppc i.year if oecd, re vce(r) 회귀에서 vce(r)로 클러스터 표준오차를 구한 이유는 무엇이겠는가?
-
‘RE’ 표현 정리
① 임의효과(RE) = \(\mathbf{x}_{it}\)와 비상관인 \(\mu_i\)
② RE 모형 = \(\mu_i\)가 임의효과라는 제약을 가한 모형
③ RE 공분산 가정 = exchangeability 가정
④ RE 회귀 = RE 공분산 가정하에서 RE 모형을 FGLS하는 것 -
주의
- RE 모형에 대하여 반드시 RE 추정을 해야만 하는 것은 아님
- RE 모형을 POLS, BE, FE, RE 추정할 수 있고 다른 방법을 이용할 수도 있음
(예를 들어 시기별 OLS 추정) - 참고로, 선형 패널모형 \(y_{it} = \alpha + \mathbf{x}_{it} \beta + \mu_i + \varepsilon_{it}\)를 POLS 추정한다는 표현은 좋아 보이지만, 이를 ‘POLS 모형’이라 하는 것은 듣기 거북함
고정효과 모형의 추정
- 고정효과 모형에서 \(\mu_i\)를 오차항에 있는 그대로 내버려 두면 내생성
(설명변수와 오차항이 상관) 문제가 발생하므로 이를 적절히 처리하여야 함 - 여러 방법이 있겠으나, 두 가지가 명료해 보임
- 하나는 증가분을 사용하는 것(FD 회귀)
- 다른 하나는 within-group deviations를 사용하는 것(WG 회귀 또는 FE 회귀)
- 두 방법 모두 \(\mu_i\)를 소거하는 것이 핵심
- \(\mu_i\)를 소거하는 다른 방법도 있음. 예를 들어 long-differencing
(각 \(t\)마다 최초 기간 회귀식을 빼는 것)
FD 회귀
- 모형을 \(\Delta y_{it} = \Delta \mathbf{x}_{it} \beta + \Delta \varepsilon_{it}\)로 변환하는 것에 해당하며, 그럼으로써 \(\mu_i\)가 소거됨
- 절편도 소거됨에 유의
연도 더미가 있으면 다름 - FD 회귀는 \(\Delta y_{it}\)를 \(\Delta \mathbf{x}_{it}\)에 대하여 POLS하는 것인데, 변환된 오차항 \(\Delta \varepsilon_{it} = \varepsilon_{it}- \varepsilon_{it-1}\)에는 보통 시계열상관이 존재하므로 클러스터 표준오차를 사용
- \(\varepsilon_{it}\)가 iid라는 가정하에서 FD 후 GLS를 하면 아래의 WG 회귀와 동일함
- 참고로, \(\varepsilon_{it}\)가 iid라는 가정하에서 long-differencing 후 GLS를 해도 아래의 WG 회귀와 동일함
- Stata 명령은
reg d.(y x1 x2) i.year, vce(cl id) - 클러스터의 개수는 \(n\)의 크기와 같으므로, 클러스터 표준오차의 사용을 위해서는 \(n\)이 커야 함
FE 회귀(WG 회귀)
- 변수들로부터 각 \(i\)별 평균을 차감하는 방법
- 이는 모형을 \(y_{it} - \bar{y}_i = (\mathbf{x}_{it} - \mathbf{x}_i)\beta + (\varepsilon_{it} - \bar{\varepsilon}_i)\)로 변환하는 것에 해당하며, 이로써 \(\mu_i\)가 소거됨
- 이 추정법은 \(y_{it} - \bar{y}_i\)를 \(\mathbf{x}_{it} - \mathbf{x}_i\)에 대하여 POLS 회귀를 하는 것으로서, FE 회귀라 하고, 앞의 WG 회귀와 동일함
- 표준오차에 대한 옵션 없이 통상적으로 계산하는 표준오차는 \(\varepsilon_{it}\)가 \(iid\)라는 가정하에서 타당함
- 만약 \(\varepsilon_{it}\)이 이분산적이거나 시계열 상관을 갖는다면
vce(r)옵션을 사용하여 클러스터 표준오차를 구해야 함시계열 상관이 없다고 할 이유가 크지 않음 - 아마도 \(n\)이 웬만큼 크면 거의 항상 클러스터 표준오차를 사용하는 것이 적절할 것임
- 또한 \(\varepsilon_{it}\)가 \(iid\)라는 가정하에서 FE 추정량은 BLUE라는 결과가 있음
(Im, Ahn, Schmidt, Wooldridge, 1999) .
death1.dta를 이용하여 deathrate(인구 1천명당 사망자 수)의 로그값을 smoke(흡연인구비율, %)의 로그값과 aged(고령인구비율, %)의 로그값에 대하여 BE, FE, POLS, RE 회귀를 하라(연도별 더미를 포함시키고, BE 이외에는 모두 클러스터 표준오차를 사용할 것). 각 결과에서 흡연인구비율(로그)의 계수를 해석하라.
코드 보기
T=2인 경우 FD와 FE
- \(T=2\)인 경우 FD 추정량과 FE 추정량은 서로 동일함
- 수학적 증명 가능: \(x_{i1}-\bar{x}_i = \frac12(x_{i1}-x_{i2})\)이고 \(x_{i2} - \bar{x}_i = \frac12 (x_{i2} - x_{i1})\)이므로 obs 1 = \(-\)(obs 2).
death1.dta 자료에서 year가 2008년인 관측치들을 삭제하여(drop if year==2008) \(T=2\)가 되게 하고 나서 다음 4개 회귀(①~④라 하자)를 하라.
코드 보기
reg d.(deathrate smoke aged) i.year라는 FD 회귀를 추가적으로 하라. 변수 누락이 발생할 것인데 왜 그러한지 구체적으로
더미변수 회귀
- 또 하나 고려할 수 있는 방법은 모형을 \(y_{it} = \alpha_i + \mathbf{x}_{it}\beta + \varepsilon_{it}\)
(단, \(\alpha_i = \alpha + \mu_i\)) 로 쓰고 나서 \(\alpha_1, \ldots, \alpha_n\)을 \(\beta\)와 함께 모두 추정하는 것 - 이를 위해 각 \(i\)에 해당하는 \(n-1\)개 더미변수들을 우변에 포함시키고 OLS를 함
(\(i=1\) 더미는 기준이니까 제외) - 이 방법을 더미변수 최소제곱법(least squares dummy variables, LSDV)이라 함
-
Stata 명령을 이용하여 설명하자면 다음과 같이 하는 것.
아래 3개 명령은 결과가 표시되는 방법을 제외하면 서로 전적으로 동일함. reghdfe는ssc install reghdfe로 설치.
wdi5data.dta 데이터를 사용하여 oecd가 1인 관측치들로 한정하여 sav를 age65over, ggdppc에 대하여 연도 더미를 포함하고 LSDV를 하라. 클러스터 표준오차를 사용하라. FE 회귀 결과와 동일한지 확인하라.
코드 보기
고정효과 대 임의효과 검정
- 만약 \(\mu_i\)가 임의효과라면 개체 간 수준 차이도 추정 시 고려할 수 있음
- 이때 특히 RE 추정법의 성능이 좋음
(공분산에 관한 RE 가정이 충족된다면 FGLS, 충족되지 않더라도 성능이 좋음) - 반면 FE 추정량은 집단 간 차이로부터 오는 정보를 무시하므로 효율성이 떨어짐
- 이때 특히 RE 추정법의 성능이 좋음
- 만약 \(\mu_i\)가 고정효과라면 임의효과 모형의 추정방법들(POLS, RE)은 inconsistent하고, 오직 고정효과 모형의 추정방법들(FD, FE)만이 consistent함
- 그리하여, \(\mu_i\)가 임의효과라면 RE 추정을 사용할 이유가 많고, 고정효과라면 FE 추정(혹은 FD 추정)을 사용해야 할 것임
- 그런데, 만약 설명변수에 cross-sectional variability만 크고 within-group variability가 작으면 FE 추정량의 정확성이 크게 떨어질 수 있다는 문제가 있으므로 RE 추정을 할 수 있으면 좋겠음
- 이러한 이유로 \(\mu_i\)가 임의효과인지 고정효과인지 검정하는 문제가 relevant해짐
- 이 검정에 두 가지 방법이 널리 사용됨
하우스만 검정
- 첫 번째 검정 방법은 하우스만 검정으로서 이분산이나 자기상관이 없는 경우 사용 가능
- Hausman (1978) 논문에 근거
- Hausman (1978) 논문은 효율적인 추정량과 다른 추정량 간 차이의 분산을 구하는 방법에 관한 것
- RE 추정량이 효율적이기 위해서는 RE 공분산 가정이 성립해야 하므로 이분산/자기상관이 있으면 하우스만 검정이 작동 안 함
-
FE 추정값과 RE 추정값이 서로 얼마나 유사한지를 바탕으로 하는 검정법
-
Stata의
hausman명령을 사용할 때에는 반드시 FE 추정량이 앞에 오도록(hausman fe re) 명령을 내려야 함. 순서를 바꾸면(hausman re fe) 안 됨! - 검정의 귀무가설은 FE 추정량과 RE 추정량 간에 체계적인 차이가 없다는 것, 즉 \(\mu_i\)가 임의효과라는 것
- Hausman 검정은 카이제곱 검정이므로 통계값이 큰 양수이면 귀무가설을 기각함
x1, x2는 시변(time-varying)하고 z1, z2는 시불변함(time-invariant).
hausman 명령을 사용하면 음수가 나오기도 한다. hausman-odd.dta를 이용하여 다음 실험을 하라. 하우스만 검정통계량 값은 양수인가 음수인가? 연도 더미변수(i.year)를 추가하면 음수 문제가 해결되는가? 출력에서 Warning: 부분을 읽지 말고 Stata의 hasuman 도움말을 읽고 이 문제를 해결하라.
- 지금까지 설명한 하우스만 검정방법은 \(\varepsilon_{it}\)가 iid라는 가정하에서만 제대로 작동함
- 만약 \(\varepsilon_{it}\)가 이분산적이거나 시계열상으로 상관되어 있다면 하우스만 검정법은 잘못된 결과를 줄 수 있음
-
그러므로
vce(r)과 같은 옵션을 주고 하우스만 검정을 하는 것은 자기모순적
회귀 기반 검정
- \(\varepsilon_{it}\)에 이분산이나 시계열상관이 존재하면 보다 유연한 회귀를 이용한 검정을 사용할 수 있음
- 실제 분석에서는 이 회귀를 이용한 검정 방법이 추천됨
- RE 추정량과 FE 추정량 간에 체계적인 차이가 있는가 하는 문제는 결국 BE 추정량과 FE 추정량 간에 체계적인 차이가 있는가 하는 문제와 같음
- 앞에서 POLS를 이용하여 CRE 모형을 추정하면 fe 추정값과 ‘be 빼기 fe’를 구할 수 있음을 살펴보았음
- 구체적으로 \(y_{it}\)를 \(\mathbf{x}_{it}\)와 \(\bar{\mathbf{x}}_i\)에 대하여 POLS 회귀하면 \(\mathbf{x}_{it}\)의 계수는 ‘fe’, \(\bar{\mathbf{x}}_i\)의 계수는 ‘be 빼기 fe’가 됨
- 그러므로 이 CRE 모형 회귀에서 \(\bar{\mathbf{x}}_i\)의 계수들이 모두 0인지 검정함으로써 \(\mu_i\)가 임의효과인지 검정할 수 있음
- 이때 \(\varepsilon_{it}\)내에 이분산이나 시계열상관이 있을 것으로 염려된다면 클러스터 표준오차를 사용하면 됨
- POLS 대신에 RE 추정을 해도 됨
testfe.dta 데이터를 사용하여 y를 x1과 x2에 대하여 회귀할 때 회귀 기반 RE vs FE 검정을 하라. POLS를 사용하고 클러스터 표준오차를 사용하라. 또한, time-invariant인 z1 변수를 추가하고 동일한 검정을 하라. z1을 포함시킬 때 결과가 달라지는 것을 어떻게 (직관적으로) 설명하겠는가?
코드 보기
xtreg y x1 x2 z1, be)로부터의 계수 추정값들을 계산하라.
연습
ict.dta 파일은 2000년부터 2011년까지 우리나라 ICT 산업에 속한 기업들의 일부 재무제표이다(데이터 제공: 국민대학교 이고은 교수). 피설명변수는 log(sales), 설명변수는 log(cap), log(emp), foreign, KOSPI 더미변수(kospi), 각 sector 더미, 연도더미들이다.
-
ict.dta파일을 불러온 후d를 이용하여 어떤 변수들이 있는지 확인하라. -
로그 변수들을 생성하라.
-
market은 코스피에 속하면 1, 코스닥에 속하면 2의 값을 갖는 변수이다. 코스피 더미변수(kospi)를 생성하라. -
sales,cap,emp,foreign,market,sector가 모든 기간에 관측되는 기업만으로 분석대상을 한정하고자 한다. 다음을 이용하여 균형패널로 변환하라. -
xtset을 이용해 객체와 연도 식별자를 지정하고(xtset id year),xtsum을 이용해 변수들을 요약하라. 시간에 따라 변하지 않는 변수는 무엇인가?xtdes를 이용하여 기업의 개수(\(n\))를 구하라. -
sector변수는 ICT 관련 산업을 세분한 것이다.tabulate또는 줄여서tab을 이용하면 각 세부산업에 속한 기업의 개수를 알 수 있다. 2는 반도체 제조업, 3은 전자부품 제조업이다. 반도체 제조업과 전자부품 제조업에 속한 기업의 개수는 각각 얼마인가? (확인: 2번 부문에 속한 업체 수는 360개가 아니라 30개.) 2010년에 KOSPI에 상장되어 있는 기업의 개수는? -
모형을 FE로 추정하라.
kospi와i.sector변수는 어떻게 되는가?foreign은 중요한 변수인가? -
모형을 RE로 추정하라
(시불변 변수들도 포함시킬 것) .foreign은 중요한 변수인가? RE와 FE에서 설명변수 집합이 다른 이유는 무엇인가? -
하우스만 검정(FE vs RE)을 하면 결과는?
sig또는sigmaless옵션을 사용하지 않은 경우에는 어떤 note가 나오는가? -
BE 추정결과와 FE 추정결과를 서로 비교하라. BE 추정에서
foreign의 계수는 어떻게 해석되는가? -
회귀를 이용한 FE vs RE 검정을 시행하라. 균형패널이므로 연도별 더미의 “bar” 변수를 생성할 필요는 없으며, 또한 연도별 더미의 계수가 FE와 RE 추정 간에 서로 동일한지에는 관심이 없다고 하자.
-
위 추정 결과에서
foreign의 계수는 앞의 FE 추정값과 동일한가? 위 추정 결과로부터 어떻게 하면 BE 추정값을 만들어낼 수 있는가?