베이즈 정보 기준

편집 역사 토론
통계 수치해석 마지막 수정: 2026-08-14 04:12:18

1. 개요[편집]

베이즈 정보 기준
Bayesian Information Criterion
약칭BIC · 슈바르츠 기준(SC/SIC)
정의BIC = −2 log L̂ + k log n
제안Gideon Schwarz (1978), Annals of Statistics
근사 대상2 log(주변가능도), 오차 O(1)
점근 성질일관성 — 참모형 선택확률 → 1
숨은 사전분포단위정보 사전분포 (Kass–Wasserman 1995)
제일 위험한 글자n

베이즈 정보 기준(Bayesian Information Criterion, BIC)은 적합된 모형의 최대 로그가능도에 표본 크기의 로그를 실은 벌점을 더해 모형을 줄 세우는 척도로, 주변가능도의 로그를 라플라스 근사로 전개했을 때 남는 두 개의 항이 그 정체다.

BIC=2logL(θ^)+klogn\mathrm{BIC} = -2\log L(\hat\theta) + k\log n

작을수록 좋다는 관습도, 2logL-2\log L 이라는 이탈도 눈금도 아카이케 정보기준과 같다. 다른 것은 딱 하나, 벌점의 계수가 22 가 아니라 logn\log n 이라는 점이다. 그리고 이 한 글자 차이가 유도의 출발점부터 세계관까지 전부 다르다는 사실을 가린다. AIC는 예측오차의 편향보정에서 나왔고, BIC는 베이즈 인수에서 나왔다. 우연히 비슷하게 생겼을 뿐 같은 계보가 아니다.

AIC와의 정면 비교표(효율성 대 일관성, 어느 쪽이 언제 유리한가)는 아카이케 정보기준 문서에 있다. 이 문서는 BIC 쪽에서만 보이는 것들 — 유도에 실제로 들어간 가정, 그 가정이 깨지는 지점, 그리고 실무자가 거의 항상 잘못 세는 nn — 을 다룬다.

2. 라플라스 근사에서 두 항이 떨어져 나온다[편집]

베이즈적으로 모형 MM 을 평가하는 정공법은 모수를 적분해 없앤 주변가능도다.

m(yM)=L(θ)π(θ)dθm(y \mid M) = \int L(\theta)\,\pi(\theta)\,d\theta

두 모형의 이 값의 비가 베이즈 인수이고, 사전 모형확률이 같으면 사후 모형확률의 비가 된다. 문제는 이 적분이 대부분 안 풀린다는 것. 그래서 피적분함수의 로그를 최대우도추정값 θ^\hat\theta 근처에서 2차까지 전개한다(라플라스 근사. 사후최빈값을 전개점으로 잡아도 차이는 뒤에서 버릴 O(1)O(1) 안에 묻힌다).

logm    logL(θ^)+logπ(θ^)+k2log2π12logdetIn(θ^)\log m \;\approx\; \log L(\hat\theta) + \log\pi(\hat\theta) + \frac{k}{2}\log 2\pi - \frac{1}{2}\log\det \mathcal{I}_n(\hat\theta)

여기서 In=2logL(θ^)\mathcal{I}_n = -\nabla^2\log L(\hat\theta) 는 표본 nn 개에 대한 관측정보다. 결정타는 다음 한 줄이다. iid 표본이면 정보가 표본 수에 비례해 자란다InnIˉ\mathcal{I}_n \approx n\bar{\mathcal{I}} — 따라서 k×kk\times k 행렬식은 nkn^k 만큼 커진다.

12logdetIn=k2logn12logdetIˉ-\frac{1}{2}\log\det \mathcal{I}_n = -\frac{k}{2}\log n - \frac{1}{2}\log\det\bar{\mathcal{I}}

nn 과 함께 자라는 항만 남기고 나머지를 O(1)O(1) 로 버린 뒤 2-2 를 곱하면 정확히 BIC가 나온다. 즉 BIC2logm\mathrm{BIC} \approx -2\log m 이며, 사전분포 π\pilogπ(θ^)\log\pi(\hat\theta) 라는 O(1)O(1) 항에만 등장하고 버려진다. 여기서 BIC의 유명한 매력 — “사전분포를 안 정해도 된다” — 이 나온다.

그런데 같은 문장이 BIC의 가장 심각한 한계이기도 하다. 버린 항이 O(1)O(1) 이라는 말은 nn\to\infty 에서도 사라지지 않는다는 뜻이다. exp(BIC/2)\exp(-\mathrm{BIC}/2) 는 주변가능도에 수렴하지 않고, 상수배만큼 어긋난 채로 남는다. 상대오차가 0으로 가지 않으므로 BIC 차이를 베이즈 인수의 수치로 그대로 보고하면 안 된다. 모형의 순위를 정하는 데는 O(1)O(1) 오차가 결국 klognk\log n 에 압도되어 문제가 없지만, “증거의 세기가 몇 배”라고 말하는 순간 버린 항이 되살아난다.1

3. klognk\log n 은 얼마나 특별한가[편집]

벌점을 anka_n k 라 두고 일반화해 보면 사정이 더 선명해진다. 니시이(1984) 등의 결과는, 참모형이 후보 집합 안에 있는 표준적 상황에서 모형 선택이 일관적(참모형 선택확률 1\to 1)이려면 두 조건이 필요하다는 것이다.

an(과대적합 방지),ann0(과소적합 방지)a_n \to \infty \quad\text{(과대적합 방지)}, \qquad \frac{a_n}{n} \to 0 \quad\text{(과소적합 방지)}

an=2a_n = 2 (AIC)는 첫 조건을 깨서 일관적이지 않고, an=logna_n = \log n (BIC)은 둘 다 만족한다. 하지만 만족하는 것이 logn\log n 뿐인 것은 결코 아니다. n\sqrt{n} 도, loglogn\log\log n 의 상수배도 조건을 만족한다. 한난과 퀸(1979)이 자기회귀 차수 선택에서 제안한

HQC=2logL(θ^)+2ckloglogn(c>1)\mathrm{HQC} = -2\log L(\hat\theta) + 2ck\log\log n \quad (c>1)

는 반복로그 법칙이 허용하는 거의 가장 느린 일관적 벌점이고, 실제로 중간 크기 표본에서 BIC보다 덜 인색하다. 요컨대 일관성은 logn\log n 을 지목하지 않는다. logn\log n 을 지목한 것은 일관성이 아니라 주변가능도 근사다. 이 구분을 흐리면 “BIC가 이론적으로 옳은 벌점”이라는 과장에 빠진다.

4. 사전분포를 안 정한 게 아니라 몰래 정한 것[편집]

카스와 워서먼(1995)은 BIC가 정확히 어떤 사전분포에 대응하는지를 못 박았다. 평균이 θ^\hat\theta 이고 공분산이 관측 하나가 주는 정보의 역행렬인 다변량 정규 사전분포, 즉 단위정보 사전분포(unit-information prior)를 쓰면 라플라스 근사의 O(1)O(1) 항이 정확히 상쇄되어 2logm=BIC+o(1)-2\log m = \mathrm{BIC} + o(1) 이 된다.

이 해석은 두 가지를 알려준다. 첫째, BIC는 사전분포로부터 자유로운 것이 아니라 “관측 한 개어치의 정보만큼만 아는 사람”이라는 특정한 사전분포를 기본값으로 박아둔 것이다. 둘째, 그 사전분포는 상당히 넓다. 진짜 사전 정보가 그보다 훨씬 강하거나(공학 모형의 물리 상수) 훨씬 약하면(사실상 아무것도 모름) BIC의 벌점 강도는 그 상황에 맞춰진 값이 아니다. 사전분포를 진지하게 다루고 싶으면 켤레사전분포제프리스 사전분포를 넣고 주변가능도를 직접 계산하는 쪽이 정직하다 — 단, 부적절 사전분포는 정규화 상수가 임의라서 베이즈 인수 자체가 정의되지 않는다는 함정이 기다린다.

5. nn 이 도대체 무엇이냐[편집]

BIC를 실무에서 틀리게 만드는 원인은 대부분 kk 가 아니라 nn 이다. 유도를 다시 보면 klognk\log nlogdetIn\log\det\mathcal{I}_n 의 대역품이었고, 그 대역이 성립하려면 모든 모수의 정보가 똑같이 O(n)O(n) 으로 자라야 한다. 이 전제가 깨지는 상황이 생각보다 흔하다.

  • 결정론적 추세가 있는 시계열. yt=βt+εty_t = \beta t + \varepsilon_t 에서 tnt2n3/3\sum_{t\le n} t^2 \sim n^3/3 이므로 β\beta 의 정보는 nn 이 아니라 n3n^3 으로 자란다. 이 모수의 올바른 벌점은 logn\log n 이 아니라 3logn3\log n 이다. 단위근·공적분처럼 초일치(superconsistent) 추정이 섞이면 좌표마다 자라는 속도가 다르므로, klognk\log n 이라는 한 덩어리 벌점 자체가 성립하지 않는다. 정직한 형태는 처음부터 logdetIn(θ^)\log\det\mathcal{I}_n(\hat\theta) 를 그대로 쓰는 것이다.
  • 계층 모형·혼합효과 모형. 개체 nn 명에게서 각 mm 번씩 측정한 자료에서 집단 수준 모수는 nmnm 개 관측이 아니라 사실상 nn 개 집단만큼의 정보만 본다. 총 관측수를 nn 에 넣으면 집단 수준 모수를 과하게 벌하고, 집단 수만 넣으면 개체 내 모수를 과소 벌한다. 폴러(1998)는 모수 블록마다 다른 유효 표본크기를 쓰는 수정을, 볼린스키와 래프터리(1997)는 생존분석에서 피험자 수가 아니라 미중도절단 사건 수nn 으로 쓸 것을 제안했다. 소프트웨어가 뱉는 BIC가 어느 쪽을 세었는지는 대개 문서에 안 적혀 있다.2
  • 상관된 자료. 공간·시계열 자료에서 이웃 관측이 서로 거의 같은 말을 하고 있으면 실제 정보량은 nn 보다 훨씬 작다. 이때 logn\log n 벌점은 있지도 않은 정보를 근거로 모형을 깎는 셈이라, 되레 과소적합 쪽으로 치우친다.
  • 특이 모형. 혼합모형·은닉 마르코프 모형·신경망처럼 참값에서 피셔 정보 행렬이 특이해지는 모형에서는 라플라스 근사의 전제(비특이 2차 근사)가 아예 깨진다. 와타나베의 특이학습이론은 이때 벌점이 k2logn\tfrac{k}{2}\log n 이 아니라 λlogn\lambda\log n 이며 λ\lambda 는 실 로그정준 문턱값(λk/2\lambda \le k/2)임을 보였고, 그 자리를 메우려고 나온 것이 WBIC와 sBIC다. 성분 수를 고르려고 혼합모형에 BIC를 쓰는 것이 워낙 국룰이라 잊히지만, 그 상황이 바로 유도가 성립하지 않는 상황이다.

6. 실무에서 쓸 때[편집]

값 자체는 의미가 없고 같은 자료 위 모형들의 차이만 의미가 있다는 원칙은 AIC와 같다. 차이를 베이즈 인수 눈금으로 읽는 관행이 카스-래프터리(1995) 척도인데, ΔBIC=BICjBICi\Delta\mathrm{BIC} = \mathrm{BIC}_j - \mathrm{BIC}_i2logBij2\log B_{ij} 의 근사로 보고 020\sim2 는 언급할 가치 없음, 262\sim6 은 양성, 6106\sim10 은 강함, 1010 초과는 매우 강함으로 읽는다. 어디까지나 눈금이지 검정의 임계값이 아니고, 앞서 말한 O(1)O(1) 오차 때문에 경계 근처의 판정은 믿을 게 못 된다.

Δ\Delta 에 지수를 씌워 정규화한 슈바르츠 가중치 wiexp(Δi/2)w_i \propto \exp(-\Delta_i/2) 는 형태가 아카이케 가중치와 똑같지만 해석이 다르다. 이쪽은 사전 모형확률이 균등할 때의 사후 모형확률의 근사로 읽을 수 있고, 그래서 베이지안 모형 평균(BMA)의 값싼 구현으로 자주 쓰인다. 물론 후보 집합 바깥은 여전히 못 본다.

나머지 잔소리는 AIC와 공유한다. kk 에 분산 모수도 세고, 로그가능도의 상수항을 임의로 버리지 말고, 반응변수의 눈금이 다른 모형끼리는 비교하지 말 것. 축소가 들어간 능형회귀·라쏘 적합에서 kk 자리에 무엇을 넣을지가 애매한 것도 마찬가지다. 다만 BIC에는 고유한 함정이 하나 더 있는데, nn 이 다른 자료끼리 비교하는 것이 원리적으로 금지라는 점이다. 결측 처리 방식이 달라 유효 관측수가 달라진 두 적합의 BIC를 나란히 놓는 사고가 실무에서 꾸준히 재발한다.3

7. 어느 쪽을 원하는가[편집]

정리하면 BIC를 고르는 것은 다음 두 문장에 동의한다는 선언이다. (1) 참모형이 후보 목록 안에 유한 차원으로 존재한다. (2) 목표는 예측이 아니라 그 참모형을 집어내는 것이다. 물리적으로 존재하는 항을 찾는 문제 — 스펙트럼에 봉우리가 몇 개인가, 자기회귀 차수가 몇인가, 어느 반응경로가 실제로 활성인가 — 라면 합리적인 선언이다.

반대로 참이 무한 차원이거나(자연현상 대부분) 애초에 후보 밖이면, 첫 문장이 거짓이므로 일관성은 성립할 대상이 없다. 그때 BIC는 “참을 맞히는 기준”이 아니라 그냥 AIC보다 인색한 기준으로 행동하고, 표본이 커질수록 지나치게 단순한 모형을 고집한다. 교차검증이 이 대립을 폴드 크기라는 하나의 손잡이로 번역해 준다는 점(검증 비율을 키우면 BIC 쪽 성질로 이동)은 아카이케 정보기준 문서에서 다뤘다. 모형 선택을 자동화하기 전에 어느 쪽 질문을 하고 있는지부터 적어 두는 편이 낫다.4

8. 관련 문서[편집]

9. Footnotes[편집]

  1. 그래서 “BIC 차이가 12니까 베이즈 인수가 e6400e^{6}\approx 400 배”라고 쓴 문장은 절반만 맞다. 순위는 믿어도 되지만 배수는 사전분포와 버린 항에 따라 몇 배씩 흔들린다. 배수를 정말로 보고해야 한다면 브리지 표본추출이나 열적분 같은 방법으로 주변가능도를 직접 추정하는 수밖에 없고, 그건 값이 싸지 않다.

  2. 그래서 같은 혼합효과 모형을 R의 lme4, SAS PROC MIXED, Stata에 각각 넣으면 BIC가 서로 다르게 나오는 일이 생긴다. 버그가 아니라 nn 을 세는 정책이 다른 것이다. 논문 심사에서 “BIC가 왜 다르냐”는 질문을 받으면 대개 이 이야기를 해야 한다.

  3. 결측이 있는 변수를 추가한 모형이 관측 200개, 뺀 모형이 250개로 적합되었는데 BIC 표에는 두 숫자가 나란히 적혀 있는 상황. logn\log n 이 다르니 벌점 눈금이 다르고, 애초에 가능도가 서로 다른 자료에 대한 것이라 비교 자체가 성립하지 않는다. 이건 BIC의 문제가 아니라 표를 만든 사람의 문제다.

  4. 참고로 슈바르츠의 1978년 원논문은 두 쪽 반이고, 지수족과 특정 형태의 사전분포를 가정한 상태에서 유도를 끝낸다. 지금 소프트웨어가 아무 모형에나 붙여 주는 그 숫자보다 원래 주장의 사정거리는 훨씬 짧았다. 유명해진 공식이 원논문보다 넓게 쓰이는 일이야 흔하지만, 이 경우는 그 간격이 특히 크다.