소식4분 읽기
이 사람들은 존재하지 않는다 — 30초로 보는 Reble
통계적 시민 79만 4,000명으로 사회를 재현해 수만 번 돌리고, 결과 전에 잠근 예측을 실측으로 채점한다. 30초 영상의 장면별 근거.
목차
Reble을 30초로 소개하는 영상을 만들었다. 30초에는 주장만 들어가고 근거는 들어가지 않으니, 장면마다 그 뒤의 숫자와 기록을 여기에 붙여 둔다. 읽고 나면 '존재하지 않는 사람들'이 무엇이고, 왜 답이 숫자 하나가 아니라 분포이며, 그 숫자를 언제 믿어도 되는지 알게 된다.
Reble.ai는 현실 세계를 반영하는 동적 사회 시뮬레이션 엔진이다. 선거는 그 활용 사례이자, 예측이 공개 채점되는 가장 엄격한 시험장이다. 영상이 던지는 질문도 하나다. 존재하지 않는 사람들로 어떻게 현실의 결과를 맞히는가.
1. 여론조사는 지연되고 왜곡된 한 장의 스냅샷이다
여론조사는 사진과 같다. 찍는 순간은 정확히 담지만, 사진을 받아 볼 즈음 사회는 이미 움직여 있다. 영상이 꼽은 한계는 둘이다.
시차. 조사가 끝나고 공표되기까지 시간이 걸린다. 발표된 숫자는 이미 지난 민심이다.
기관·방식 편향. 같은 시기에 같은 것을 물어도 조사 방식에 따라 결과가 갈린다. 7월 초까지의 정례조사 38건을 분해해 보니, 전화면접은 ARS보다 국민의힘 지지를 7.0%p 낮게, 무당층을 6.4%p 높게 잡았다. 흔히 기관 편향이라 부르던 것의 상당 부분이 실은 방식의 차이였다(여론 추적 글).
그래서 조사 한 건은 정답표가 아니라 지연되고 왜곡된 스냅샷이다. 사진을 더 많이 찍는 것만으로는 풀리지 않는다.
2. 그래서 사회를 통째로 재현했다 — 통계적 시민 79만 4,000명
Reble은 사진 대신 사회의 사본을 만든다. 통계청 인구총조사 등 마이크로데이터를 바탕으로, 지역·나이·성별·학력·직업·소득의 분포가 실제 한국 인구와 비슷해지도록 가상 개인 79만 4,000명을 만든다. 실제 누군가를 복제한 것이 아니므로 이 사람들은 존재하지 않는다.
통계적 시민 한 명은 세 겹의 확률 모델이다.
| 층 | 무엇을 담나 | 항목 |
|---|---|---|
| 1. 인구통계 | 그 사람이 누구인가 | 연령·성별·지역·직업·소득 |
| 2. 행동 성향 | 어느 쪽으로 기울어 있나 | 지지 정당·정치 성향·투표 의향 |
| 3. 반응 확률 | 조건이 주어지면 무엇을 고르나 | 선택지마다의 확률 |
P(선택 = c ∣ Θ, 조건)
Θ는 1·2층에 담긴 그 시민의 속성이다. 셋째 층이 핵심이다. 통계적 시민은 정해진 답을 갖고 있지 않고, 조건마다 선택 확률을 갖는다. 그래서 같은 사람에게 다른 조건을 줄 수 있다. 한 명의 기록을 칸칸이 펼친 설명은 합성패널은 어떻게 만들어지는가에 있다.
3. 같은 사회를 수만 번 돌리면 답은 분포가 된다
일기예보는 "내일 비가 온다"가 아니라 "비 올 확률 70%"라고 말한다. Reble의 답도 같은 꼴이다. 시민마다 자기 확률대로 한 번씩 고르게 해 선거를 한 번 치르고, 이것을 수만 번 되풀이한다. 8·17 민주당 전당대회 시뮬레이션은 1만 5,000번(기록된 실제 표본 1만 4,982회)을 돌렸다. 쌓인 결과는 숫자 하나가 아니라 분포다.
승리확률 = 이긴 회차 수 ÷ 전체 회차 수
승리확률 59%는 "이 사회로 선거를 100번 치르면 59번 이긴다"는 뜻이다.
조건을 바꾸면 분포가 움직인다. 영상에서는 투표율을 5%p 올리자 승리확률이 59%에서 76%로 옮겨 갔다. 이 두 값은 작동 방식을 보여 주려고 만든 예시다. 실제 선거의 승리확률은 4장의 공개 기준을 넘을 때만 낸다.
조건은 투표율만이 아니다. 정책 발표, 가격 10% 인상, 메시지 A를 B로 바꾸기처럼 실행하면 되돌리기 어려운 일을 사회의 사본에서 먼저 해 본다. 9월에는 같은 1,000명에게 호르무즈 파병을 세 문안으로 물었다. 찬반 논거를 보여 주자 여론이 반대 쪽으로 12.2%p 움직였고, 숫자 하나를 더하자 3.6%p 되돌아왔다(문안 실험 글).
4. 이 숫자, 믿어도 되나 — 잠그고, 밝히고, 채점한다
존재하지 않는 사람들이 낸 숫자는 그대로 두면 주장일 뿐이다. 그래서 세 가지 규칙을 지킨다.
- 결과 전에 예측을 잠근다. 8·17 전당대회 예측은 남은 두 권역(호남, 서울·경기)이 개표되기 전인 8월 11일 파일로 동결했다.
- 통과 기준을 먼저 밝힌다. 검증 게이트 G0a~G1을 모두 통과하고 G2나 G3 중 하나를 통과해야 승리확률을 공개한다고 미리 적었다. 시스템이 계산한 97.9%는 이 기준에 못 미쳐 공개 자격 없음으로 분류했고, 최종 득표율을 맞힌 뒤에도 판정을 바꾸지 않았다.
- 실제 결과로 채점한다. 맞힌 곳과 빗나간 곳을 같은 표에 적는다.
| 선거일 | 시험 | 결과 |
|---|---|---|
| 6월 3일 | 지방선거·보궐 12개 선거구 | 12곳 중 8곳 당선자 적중(그중 1곳은 사실상 운). 빗나간 4곳은 모두 접전지였고 오차는 한 방향으로 쏠렸다 |
| 8월 17일 | 민주당 전당대회 | 당선자 적중. 최종 득표율 예측 52.9%, 실측 54.08%(차이 1.2%p). 호남 격차는 90% 구간을 벗어나 G3 미충족 |
영상의 「당선자 적중」 도장은 8월 17일의 것이다. 같은 채점표에 호남의 편차도 적혀 있다. 빗나간 것을 함께 적어야 다음 적중을 믿을 수 있다. 전체 채점은 지방선거 비교분석과 전당대회 채점 글에 있다.
결론
존재하지 않는 사람들로 현실을 맞히는 방법은 세 단계다. 사회를 통계적으로 재현하고, 같은 사회를 수만 번 돌려 분포로 답하고, 그 답을 결과 전에 잠가 실측으로 채점받는다. 마지막 단계가 빠지면 앞의 둘은 그럴듯한 그림에 그친다.
조건을 바꾸면 결과가 어떻게 움직이는지는 민주당 당대표 시뮬레이션에서 투표율과 연령 시나리오를 직접 바꿔 보며 확인할 수 있다. 엔진 전체 설명은 Reble.ai는 어떤 AI 엔진인가에 있다.