예측6분 읽기

2026년 지방선거 및 국회의원 보궐선거 — 시뮬레이션과 선거 결과 비교분석

12개 선거구에서 방향 적중 8곳. 무엇을 맞혔고, 어디서 어느 방향으로 틀렸으며, 왜 틀렸는지 — 예측을 채점한 첫 기록입니다.

목차

6·3 지방선거와 국회의원 보궐선거의 개표가 끝났습니다. 이 글은 Reble 엔진이 추적한 12개 선거구의 선거 직전 시뮬레이션과 실제 개표 결과를 나란히 놓고 채점한 기록입니다 — 무엇을 맞혔는지, 어디서 어느 방향으로 틀렸는지, 왜 틀렸는지, 그리고 무엇을 고칠 것인지까지. 이 블로그의 첫 번째 원칙("모든 예측은 채점받는다")이 처음으로 실행되는 글이기도 합니다.

채점표 — 12개 선거구 전체 비교

시뮬레이션 조건부터 밝힙니다. 공표 금지(5월 28일~) 직전까지 중앙선관위(NESDC) 등록 여론조사를 시간 가중치 반감기 λ=5일로 통합하고, 투표율은 60% 중립 시나리오, 몬테카를로 5만 회를 돌린 선거 직전 상태입니다.

선거구 시뮬레이션 1위 (기대득표·당선확률) 실제 당선 (득표율) 방향
서울시장 정원오 53.1% (74%) 오세훈 48.9% (정원오 48.3%)
부산시장 전재수 53.1% (92%) 전재수 51.4%
대구시장 추경호 49.7% (68%) 추경호 52.8%
울산시장 김상욱 56.0% (90%) 김상욱 49.0%
경기도지사 추미애 51.4% (96%) 추미애 55.0%
경남도지사 김경수 50.2% (52%) 박완수 51.4% (김경수 48.6%)
전북도지사 김관영 47.3% (73%) 이원택 약 50.9% (김관영 약 44.6%)
인천시장 박찬대 54.0% (85%) 박찬대 52.8%
충남도지사 박수현 54.6% (78%) 박수현 52.5%
세종시장 조상호 58.9% (98%) 조상호 61.0%
부산 북구갑 (보궐) 한동훈 36.2% (54%) 한동훈 약 44.7% ✅*
경기 평택을 (보궐) 김용남 26.4% (73%) 유의동 34.6% (김용남 28.9%)

방향(당선자) 적중 8/12, 66.7%. 한 줄로 요약하면 — 대세는 정확했고, 접전지에서 전부 한 방향으로 밀렸습니다. 빗나간 네 곳(서울·경남·전북·평택을)은 모두 접전지였고, 오차의 방향은 예외 없이 국민의힘(또는 비민주 선두) 과소평가였습니다.

별표()를 단 북구갑은 정직하게 적어둡니다. 이 선거구는 시간 가중치 λ 값에 따라 승자가 뒤집히는 칼끝(knife-edge) 판세였습니다 — λ=5에서는 한동훈, λ≥7이면 하정우 예측. 우리 기본값(λ=5)이 맞는 쪽에 서 있었을 뿐, 사실상 운이었습니다.* 적중 8곳 중 하나는 그렇게 셈해야 공정합니다.

숫자로 본 성적표 — 구간은 맞췄지만, 점·승자·확률을 틀렸다

당선자 적중 수보다 중요한 것은 오차의 구조입니다.

지표 결과 해석
국민의힘 후보 득표율 오차 (양강 8곳) 평균 −2.3%p, 8곳 전부 음수 예외 없는 체계적 과소평가
1·2위 격차 예측 부산 +9.4→실제 +4.3, 울산 +12.0→+3.5 등 민주 우세지의 격차를 과대평가
승률 캘리브레이션 (Brier 점수) ≈ 0.23 (동전 던지기 = 0.25) 접전 4곳에서 패자에게 52~74% 부여 — 과신
95% 신뢰구간 커버리지 실제값 대부분 구간 안 불확실성의 폭 자체는 정직했음

이 네 줄을 합치면 결론이 나옵니다. 구간(불확실성의 폭)은 맞췄지만, 분포의 중심이 체계적으로 민주당 쪽에 치우쳐 접전을 전부 민주 승리로 찍었습니다.

맥락 하나를 보태면 — 이것은 Reble만의 실패가 아니었습니다. 선거 당일의 방송 3사 출구조사조차 서울(정원오 51.4% 예측 → 낙선)과 경남(김경수 54.3% 예측 → 낙선)에서 빗나갔습니다. 주요 9개 선거구 기준 오차범위 내 적중은 출구조사 4곳, Reble 5곳 — 엿새 전 데이터로 멈춘 시뮬레이션이 당일 출구조사보다 한 곳 더 맞혔습니다. 위안이 아니라 진단의 근거입니다: 2026년 사이클의 여론조사 산업 전체에 같은 방향의 편향이 있었고, 조사를 재료로 쓰는 모든 모델이 그것을 상속했습니다.

왜 빗나갔나 — 상속한 오차와 증폭한 오차

원인은 두 층위로 나눠야 정확합니다.

모델이 상속한 것 (외부 요인). 베이지안 사후분포는 결국 입력 여론조사의 가중평균입니다. 이번 사이클의 공표 조사에는 무선 ARS·가상번호 조사에서 보수·고령·현직 지지층이 과소 표집되는 이른바 '샤이 보수' 모드 효과가 있었고, 그 결과가 국민의힘 −2.3%p라는 일관된 흔적입니다. 조사 기반 모델은 이 편향을 그대로 물려받습니다 — 출구조사도 같은 곳에서 틀렸다는 것이 그 증거입니다.

모델이 증폭한 것 (내부 요인). 이쪽은 변명의 여지가 없는, 우리가 고쳐야 할 목록입니다.

  • 미결정층 배분 가정 — '없음/모름' 응답을 현재 지지 비율대로 나눈다고 암묵 가정했지만, 실제 미결정·부동층은 현직 심판론이나 막판 결집으로 비대칭하게 갈렸습니다.
  • 하우스 이펙트를 계산하고도 쓰지 않았습니다 — 기관별 편향을 추정해 시각화에는 반영했지만, 정작 사후분포에는 적용하지 않았습니다. 친민주 성향 기관의 조사가 보정 없이 그대로 들어간 셈입니다.
  • 전략투표·단일화 동학 미반영 — 평택을이 교과서입니다. 시뮬레이션은 김용남(민주)·조국(조국혁신) 표를 정적으로 나눠 담았지만, 실제로는 그 분산 자체가 유의동(국힘) 후보의 당선을 만들었습니다. 정태적 Dirichlet 모델은 "표가 갈리면 제3자가 이긴다"는 동학을 보지 못합니다. 전북의 막판 민주 결집, 울산의 사전투표 전날 단일화도 같은 계열의 문제입니다.
  • 승률 과신 — 몬테카를로가 표집 오차만 반영하고 하우스 이펙트·모드 효과·막판 변동 같은 총조사오차를 분산에 넣지 않아, 평균이 조금만 앞서도 승률이 70~90%로 치솟았습니다. 경남에 52%가 아니라 "동전 던지기"라고 말했어야 했습니다.

무엇을 고칠 것인가

이번 결과를 테스트셋 삼아, 우선순위를 정해둡니다. 목표는 특정 선거구를 사후에 끼워 맞추는 것이 아니라 — 그것은 과적합입니다 — 다음 선거에서도 성립하는 구조적 교정입니다.

  1. 계산해둔 하우스 이펙트를 사후분포에 실제로 적용 (가장 싸고 가장 확실한 교정)
  2. 모드·정당 체계 편향의 보정항 도입 — 이번 사이클의 −2.3%p 같은 체계 오차를 백테스트로 추정해 제거
  3. 미결정층 배분 모델화 — 비례 배분 가정을 버리고 배분 규칙 자체를 민감도 분석 대상으로
  4. 총조사오차를 분산에 가산 — 승률이 과도하게 극단으로 쏠리지 않도록 (승률 캘리브레이션)
  5. 다자 구도의 전략투표 시나리오 — 단일화·표 분산을 확률 가중 앙상블로
  6. 매 선거 후 백테스트 상시화 — 이 글과 같은 채점을 파이프라인으로

보정의 효과는 검증되는 대로 후속 글로 공개하겠습니다. 원본 시뮬레이션은 수정하지 않고 그대로 보존합니다 — 보정판과 원본을 나란히 비교할 수 있어야 교정도 채점받을 수 있기 때문입니다.


확률 예측의 채점은 이중적입니다. 당선확률 68%(대구)가 맞은 것은 자랑이 아니고, 74%(서울)가 틀린 것도 그 자체로는 스캔들이 아닙니다 — 잘 보정된 74%는 네 번 중 한 번 틀려야 정상입니다. 진짜 문제는 틀림의 방향이 한쪽으로 정렬되어 있었다는 것이고, 그것은 확률의 불운이 아니라 모델의 편향입니다. 우리는 그 편향의 크기(−2.3%p)와 원인과 수리 계획을 이 글에 박제해 둡니다. 다음 선거에서 이 글과 비교해 주십시오. — 실시간 시뮬레이션은 reble.ai에 있습니다.

참고문헌