메소드서베이
2026년 5월 9일 토요일
후보지지도 재계산, 다섯 갈래
2026년 5월 8일 금요일
림가중치를 막는 0.7~1.5 캡, 추가 보정을 막는 이중 공표
림가중치를 막는 0.7~1.5 캡, 추가 보정을 막는 이중 공표
2025년 12월 18일 개정되어 2026년 1월 1일부터 시행되는 선거여론조사기준은 가중치에 관해 두 개의 조항을 둔다. 제5조의 가중값 배율 한계(성·연령·지역 각각 0.7~1.5)와 제14조의 가중치 산출·적용 방법 등록 의무다. 두 조항 모두 객관성과 신뢰성을 확보하려는 의도로 설계되었지만, 현재 형태로는 한국 폴링이 국제 표준 방법론을 도입하지 못하게 만드는 제도적 장벽으로 작동한다.
0.7~1.5 캡과 림가중치의 충돌
한국 실무에서 0.7~1.5 한계는 보통 성×연령×지역 셀 단위 가중치에 적용된다. 림가중치(raking, IPF)는 각 주변분포(margin)를 모집단에 맞추기 위해 셀 가중치가 자유롭게 변동하는 것을 전제하는 알고리즘이다. 7~10개 차원에서 각각 1.2배, 0.85배 같은 온건한 조정만 곱해져도 셀 가중치가 0.5나 2.0을 쉽게 넘어간다. 셀 단위 캡과 다차원 림가중치는 수학적으로 양립이 어렵다.
Pew Research Center의 American Trends Panel은 보통 성, 연령, 인종/에스니시티, 학력, 지역(census division), 도시/비도시, 정당등록, 자원봉사 참여, 시민참여, 인터넷 이용빈도 등 8~11개 변수에서 raking을 한다. 트림은 보통 0.3~3 또는 0.25~4 수준에서 잡고, DEFF(design effect from weighting)를 사후에 공개한다. 한국 기준의 0.7~1.5는 Pew 트림 폭의 약 1/3~1/4 수준이고, 가중 변수 수도 3개로 못 박혀 있다.
이 캡은 분산과 편의 사이에서 분산 쪽으로 강하게 기운 선택이다. 명목상 이유는 극단 가중치로 인한 분산 폭증 방지와 가중치 조작을 통한 결과 왜곡 방지다. 그 대가로 2016년 이후 미국·영국·호주 폴링이 학습한 내용, 특히 학력 가중치 누락이 체계적 편의를 만든다는 발견을 한국 제도가 흡수할 수 있는 구조가 아니게 됐다. 한국에서도 학력별 지지 패턴 차이가 작지 않은데, 학력 가중치를 추가하려면 캡을 위반하거나 기존 변수 중 하나를 빼야 한다.
제5조 제2항이 마련한 우회 통로(두 조사 결과를 합쳐서 분석하면 캡 적용 안 함)도 있지만, 단일 표본에서의 림가중치 문제를 푸는 도구가 아니다. 합산이 가능한 상황에서만 작동하고, 분석 경위와 방법을 별도 공개해야 해서 실무 부담도 크다.
이중 공표 의무가 추가 보정을 페널티화한다
제14조 제3항과 제18조 제2항의 조합이 두 번째 문제다. 인구학 가중치(성·연령·지역) 외에 과거 투표 보정, 후보자 득표율 보정, 응답유보층 분석 등 추가 보정을 수행한 경우 양쪽 결과를 모두 등록·공표해야 한다.
이 규정은 인구학 가중을 "객관적 기준"으로, 그 외 보정을 "추가 해석"으로 보는 위계를 전제한다. 통계적으로는 성립하지 않는 전제다. 모든 가중치는 모델이다. 성·연령·지역 가중도 "응답자를 모집단 분포에 맞추면 추정 정확도가 올라간다"는 가정에 기댄 모델이고, 학력 가중이나 과거 투표 보정과 통계적 지위가 동일하다. Pew, ANES, BES, YouGov 어디도 "원시 인구학 가중 결과"와 "최종 모델 결과"를 병렬로 공표하지 않는다. 가장 정확하다고 판단하는 단일 추정치를 발표하고, 방법론 디테일은 별도 문서에서 투명하게 공개한다.
규정은 표면상 추가 보정을 허용하는 것처럼 보이지만, 실제로는 추가 보정을 수행한 조사기관에 페널티를 부과한다. 같은 조사에서 후보 A 38% vs B 35%(원시)와 A 36% vs B 38%(보정)이 동시에 발표되면, 매체는 자기 프레임에 맞는 쪽을 골라 헤드라인을 잡는다. 일반 독자는 두 추정치의 방법론적 차이를 분별할 도구가 없다. "같은 조사인데 결과가 다르다, 조사 자체를 못 믿겠다"는 결론으로 가게 된다. 합리적인 조사기관의 균형점은 "추가 보정을 안 하는 게 평판상 안전하다"가 되고, 정확도 향상 노력이 평판 리스크가 되는 구조가 만들어진다.
한국적 함의는 더 크다. 응답유보층 분석과 과거 투표 보정은 한국 ARS·웹 환경에서 추정 정확도에 가장 크게 기여하는 보정 방법이다. 유보율이 20~30%에 달하고 정파별 응답 의향에 체계적 차이가 있는 환경에서, 이 두 보정 없이 발표하는 숫자는 사실상 "원시 응답에 인구학 보정만 입힌 값"이다. 그런데 정확히 이 두 방법이 이중 공표 의무의 대상으로 지정되어 있다. 미국식 likely-voter 모델링이나 영국식 turnout adjustment가 한국에서 자리 잡지 못한 가장 큰 제도적 장벽이 여기에 있다.
TSE 분류에 들어가지 않는 한국 특유의 오차원
이 두 조항이 만들어내는 효과는 Total Survey Error 프레임의 표준 분류에 들어가지 않는다. 표본 추출 오차, 미응답 오차, 측정 오차 같은 표준 분류 외에, 규제로 인해 조사기관이 더 정확한 방법론을 채택하지 못하고 덜 정확한 방법론을 선택하게 되는 오차가 추가로 발생한다. Regulatory-Induced Methodology Distortion이라 부를 만하다.
이 오차원은 미국·유럽 TSE 문헌에 등장하지 않는다. 그 나라들에서는 가중치 방법론이 학회와 조사기관 자율로 발전하기 때문이다. 한국에서는 심의위 고시가 가중치 자유도를 직접 제한하기 때문에, 제도 설계 자체가 추정 정확도의 상한을 결정한다. 한국 표본추출틀 문제(통계청이 표본 조사구 정보를 민간 조사기관에 제공하지 않는 구조)와 함께, 한국 폴링의 정확도 한계를 만드는 두 개의 제도적 요인이다.
제도 설계 대안
캡 조항부터 보면, 셀 단위 0.7~1.5 캡은 두 단계로 분리하는 게 합리적이다. 주변분포 단위 캡(예: 성·연령·지역 각 주변분포에서 조정 비율 0.7~1.5)을 두고, 셀 단위는 트림 한계만 명시(예: 0.3~3)하면서, DEFF를 등록 자료에 의무 공개하도록 한다. 이 구조라면 림가중치도 적용 가능하고, 조작 방지·분산 통제 목표도 유지할 수 있다. AAPOR Best Practices의 투명성 원칙과도 부합한다.
이중 공표 의무는 등록·공개 단계와 공표 단계를 분리하는 게 자연스럽다. 모든 가중·보정 방법은 심의위 홈페이지에 등록·공개하되, 조사기관이 단일 "주 추정치(primary estimate)"를 지정하고, 보조 추정치는 등록 자료에 포함되지만 공표 의무 대상에서는 빼는 구조다. 투명성은 등록·공개 단계에서 확보하고, 공표 단계에서는 의사결정자에게 단일 숫자가 전달된다. 지금 규정은 투명성과 공표 의무를 같은 것으로 취급하고 있는데, 이 둘은 별개의 규제 도구로 다뤄야 한다.
지금 형태로 시행되는 가중치 규정은 1990~2000년대 폴링 방법론을 한국에 고정시킨다. 그 기간 동안 국제 폴링은 다차원 raking, 학력 가중, propensity 보정, likely-voter 모델링 등을 표준으로 흡수했다. 한국 폴링이 그 발전을 따라가지 못하는 첫 번째 이유가 시장이나 기술 부족이 아니라 제도라면, KORA, 한국조사연구학회, WAPOR Asia 채널에서 의제로 다뤄질 만하다. 조사기관이 신뢰성 있는 추정치를 만들 자유가 있어야 신뢰성 있는 결과를 공표할 수 있다. 지금 규정은 자유를 제한하면서 신뢰성을 요구한다.
2026년 5월 7일 목요일
채팅창에서 만든 응답은 신세틱 서베이가 아니다
채팅창에서 만든 응답은 신세틱 서베이가 아니다
며칠 동안 신세틱 서베이로 이런저런 실험을 돌리면서 한 가지 중요한 구분을 놓치고 있었다. 정확히는, 놓치고 있다는 걸 늦게 알아챘다.
전북도지사 가상 조사 500명, 전국 정치사회 조사 500명. 두 데이터를 다 만들고 나서 워딩 효과 실험으로 넘어가려는 시점에야 깨달았다. 내가 받아온 그 두 엑셀은 엄밀히 말하면 신세틱 서베이가 아니다. 신세틱 서베이의 모양을 빌려온 룰 기반 시뮬레이션에 가깝다.
이 차이가 별것 아닌 것 같지만 실제로는 매우 크다. 정리해 둘 가치가 있다.
두 가지 처리 방식
처음 받은 두 엑셀의 응답이 어떻게 만들어졌는지 거슬러 올라가 보면 이런 구조였다.
for 응답자 in 패널_500명:
for 문항 in [Q1, Q2, ..., Q15]:
응답[문항] = 룰_적용(페르소나_점수, 문항별_확률분포)겉보기엔 응답자별로 도는 것처럼 보이지만, 각 문항이 페르소나 점수에서 독립적으로 확률 추출된다. 한 응답자의 Q1 응답이 Q2 응답에 영향을 주지 않는다. 룰만 보고 매번 새로 뽑는다.
반면 진짜 신세틱 서베이는 이렇게 돌아간다.
for 응답자 in 패널_500명:
시스템프롬프트 = 페르소나_정보(응답자)
대화_히스토리 = []
for 문항 in [Q1, Q2, ..., Q15]:
대화_히스토리에 문항 추가
응답 = LLM_호출(시스템프롬프트, 대화_히스토리)
대화_히스토리에 응답 추가
저장(응답자, 문항, 응답)핵심은 응답자 1명당 LLM 호출이 문항 수만큼 일어난다는 점이다. 그리고 매 호출마다 이전 응답이 컨텍스트로 들어간다. 응답자가 자기 답변을 기억하면서 다음 문항을 답하는 구조다.
같은 데이터셋을 만들어도 이 두 방식은 완전히 다른 산물을 낸다.
무엇이 다른가
분포만 보면 두 방식의 결과가 비슷할 수 있다. 룰을 잘 짜면 실제 여론조사 분포와 근사하게 만들 수 있고, 진짜 LLM 호출도 결국은 비슷한 인구학적 패턴을 만든다. 그러나 응답자 단위로 들어가면 차이가 드러난다.
응답자 내 상관(within-respondent correlation)이 다르다. 진짜 조사 데이터는 한 응답자의 정치 문항 5개에 강한 상관이 있다. 같은 사람이 답하니까. 룰 기반은 페르소나 점수를 공유하는 한에서만 약한 상관이 만들어진다. SPSS에서 응답자 내 신뢰도 분석 같은 걸 돌리면 부자연스럽게 깔끔한 결과가 나온다.
문항 간 점화·일관성 동학이 없다. 진짜 응답자는 Q1에 "정부 잘함"이라고 답한 뒤 Q5에서 "정부 정책 부정"이라고 답하기 어렵다. 인지적 일관성이 작동한다. 룰 기반은 이 동학을 못 잡는다. 코드에 그게 들어있지 않으니까.
문항 순서가 응답에 영향을 못 준다. Q1을 먼저 묻든 Q5를 먼저 묻든 결과가 똑같다. 순서 효과 측정 자체가 불가능하다.
워딩 효과 측정도 무력하다. 표현 A와 B에 LLM이 다르게 반응하는지가 워딩 효과의 정의인데, 룰에는 워딩이 변수로 안 들어가 있다. 어떤 표현으로 던지든 같은 룰이 같은 분포를 뽑는다.
조사 방법론에서 다루는 거의 모든 측정 동학이 룰 기반 처리에서는 사라진다. 남는 건 "분포가 그럴듯하다"는 것뿐이다.
그럼 룰 기반은 무가치한가
그건 아니다. 다만 위치가 다르다.
룰 기반 합성 응답은 분포 시뮬레이션으로서 의미가 있다. 표본 설계 검증, 셀 할당이 합리적인지 점검, 셀별 응답 분포의 큰 그림 가늠. 이런 용도에는 충분하다. 빠르고 비용이 없는 게 장점이다.
다만 그걸 "신세틱 서베이"라고 부르는 건 약하다. 차라리 "룰 기반 합성 분포"라고 정직하게 부르는 게 맞다. 신세틱 서베이의 본질은 LLM이 페르소나의 입장에 정렬된 응답을 생성하는 것이고, 그건 응답자 단위 LLM 호출 없이는 일어나지 않는다.
미국 시장조사 업계에서 합성소비자(synthetic consumer)를 상업화한 인텔리시아 같은 곳도, 글로벌 빅3 중 가장 적극적인 입소스도, 다 응답자 단위 LLM 호출 구조다. 그게 신세틱 서베이의 정의에 가깝다.
채팅창에서 만든 응답이 더 약한 이유
여기서 한 단계 더 들어가면 또 다른 구분이 있다. AI 챗봇과 한 채팅창에서 나누면서 만든 응답은, 사실 진짜 신세틱 서베이의 또 다른 약화 버전이다.
한 채팅 인스턴스가 페르소나 30명이든 500명이든 차례로 머릿속에 그려서 응답을 만들어주는 방식. 이건 한 사람이 30명 인터뷰 답을 대신 써준 거랑 비슷하다. 30명 각자 인터뷰한 게 아니다.
같은 채팅 안에서는 앞 페르소나 응답이 뒤 페르소나에 영향을 주는 컨텍스트 오염이 일어난다. 의식적으로 차단하려 해도 같은 머리에서 나오는 응답이라 평균값으로 수렴한다.
진짜 신세틱 서베이는 페르소나 1명당 별개의 LLM 호출을 거쳐야 한다. 시스템 프롬프트가 매번 새로 세팅되고, 그 페르소나의 컨텍스트만 갖고 응답을 생성한다. 다른 페르소나가 어떻게 답했는지 모른다.
이게 API 호출 방식의 본질이다. 채팅창은 한 인스턴스 안에서 다 처리되지만, API는 호출마다 별개의 인스턴스다. 페르소나 500명이면 500개의 독립적 응답 생성이 일어나는 것이다.
비용과 시간이 자릿수가 다르다
이 정통 방식으로 가면 자원이 많이 든다.
전국 500명 × 15문항 본 실험을 가정하면 LLM 호출이 7,500회 일어난다. 컨텍스트가 누적되니까 후반 호출은 토큰이 많아지고, prompt caching을 적용해도 입력 토큰 약 50M, 출력 약 1M이 쌓인다. Haiku 같은 저비용 모델로도 5~15달러, 30분에서 한 시간 정도가 걸린다.
룰 기반은 같은 데이터셋을 30초에 만든다. 비용은 0이다. 자릿수가 다르다.
그러나 결과의 방법론적 무게도 자릿수가 다르다. 콘텐츠로 발행하든 클라이언트에 들고 가든, "응답자 단위 LLM 호출로 만든 신세틱 서베이"와 "룰 기반 합성 분포"는 다른 무게로 받아들여진다.
정직한 자리 잡기
그래서 다음에 합성 응답 데이터를 만들거나 받을 때는 이 두 가지를 구분해 두는 게 좋겠다.
룰 기반 합성 분포: 빠르고 싸다. 분포 시뮬레이션, 표본 설계 검증, 셀 할당 점검에 적합하다. "신세틱 서베이"라고 이름 붙이지 않는 게 안전하다.
진짜 신세틱 서베이: 응답자 단위 LLM 호출. 비싸고 느리다. 응답자 내 동학·문항 간 상관·순서 효과·워딩 효과 모두 측정 가능하다. 콘텐츠나 자문의 근거로 가져갈 수 있다.
두 개를 섞어 쓰면 결과의 신뢰도가 약해진다. 처음에는 룰 기반으로 빠르게 분포 점검을 하고, 정작 의미 있는 측정은 응답자 단위 호출로 넘어가는 게 합리적인 순서다.
이번 며칠은 그 순서를 거꾸로 잡고 시작했다가 워딩 실험 단계에서 막혀서 다시 출발점으로 돌아왔다. 시간이 좀 돌아간 셈이다. 다만 돌아오면서 두 방식의 차이를 명확히 봤다는 건 남는다.
신세틱 서베이를 본격적으로 다룰 거라면, 처음부터 응답자 단위 API 호출 구조를 잡고 시작하는 게 맞다. 그게 조사 방법론자가 인정할 수 있는 시작점이다.
정치조사에 제곱근 할당을 쓰면 안 되는 이유
정치조사에 제곱근 할당을 쓰면 안 되는 이유
통계청 승인조사 표본설계서를 보면 시도별 표본 할당이 비례할당이 아니라 제곱근 할당(또는 그 변형)인 경우가 많다. 가계동향, 경활, 사회조사 모두 그렇다. 그래서 가끔 받는 질문이 있다. "그러면 전국 17개 시도 1000명짜리 정치조사도 제곱근 할당이 더 낫지 않나요?"
답은 "아니오"이고, 오히려 정반대다.
통계청 조사가 제곱근 할당을 쓰는 이유
통계청 승인조사의 1차 산출물은 시도별 공표통계다. 각 시도별로 정해진 CV 기준(예: 20% 이내)을 충족해야 한다. 비례할당으로 가면 인구가 적은 세종·제주·강원은 표본이 너무 적어서 이 기준을 못 맞춘다. 반대로 균등할당으로 가면 전국 추정 효율이 깨진다.
제곱근 할당, 즉 시도별 표본을 인구의 제곱근에 비례하게 배정하는 방식은 그 사이의 절충이다. Bankier(1988)의 power allocation에서 지수 p=0.5에 해당하고, Kish(1976)의 compromise allocation 논의에서 전국 분산과 도메인 분산의 가중평균을 동시에 최소화할 때 자연스럽게 도출되는 형태다. 즉 "여러 도메인의 동시 정밀도"가 핵심 제약일 때 쓰는 도구다.
정치조사 1000명에는 이 논리가 안 맞는다
정치조사 1000명은 산출물 정의 자체가 다르다.
첫째, 공표 단위가 다르다. 정치조사 1000명의 1차 산출물은 전국 단일 지지율이지 시도별 추정치가 아니다. 1000명을 17개 시도에 제곱근으로 분산시키면 작은 시도는 30~50명 수준인데, 이 정도 표본으로는 시도별 신뢰구간이 ±10%p를 훌쩍 넘어서 실용적 의미가 없다. 정치조사에서 실제로 의미 있는 분석 단위는 권역(수도권·충청·호남·대경·PK)이고, 권역 단위라면 비례할당으로도 권역당 100~500명이 확보된다.
둘째, DEFF가 깨진다. 정치조사는 거의 100% 시도×성×연령 셀별 사후가중을 적용한다. 제곱근 할당으로 표본을 뽑으면 모집단 비율 대비 작은 시도가 과대표집되어 있고, 사후가중에서 작은 시도의 가중치가 매우 작아지고 큰 시도(경기·서울)의 가중치가 커진다. 가중치 분산이 커지면 Kish의 DEFF 공식 1 + CV²(w)가 1.2~1.4 수준까지 올라가서, 1000명이 유효표본 700~800명으로 깎인다. 비례할당으로 뽑으면 self-weighting에 가까워서 DEFF가 1.05~1.15 정도에 머문다. 결과적으로 전국 추정의 정밀도가 제곱근 할당에서 오히려 떨어진다.
셋째, 관리해야 할 정밀도가 다른 곳에 있다. 통계청 조사는 시도별 CV가 공표 기준이다. 정치조사 1000명은 시도별 CV가 아예 관리 대상이 아니다. 관리 대상이 어디 있는지가 다른데 같은 할당 논리를 쓰면 안 된다.
여심위 규정이 비례할당을 제도적으로 강제한다
한국 정치조사에는 여기에 더해 제도적 제약이 걸린다. 「선거여론조사기준」 제5조(가중값 배율)는, 누구든지 선거여론조사를 실시할 때 조사지역 전체 유권자의 성별·연령대별·지역별 구성 비율을 기준으로 한 가중값 배율을 밝혀야 하며, 가중값 배율이 일정 범위에 있지 않은 결과를 공표·보도해서는 안 된다고 규정하고 있다. 그 범위는 성별 0.7~1.5, 연령대별 0.7~1.5, 지역별 0.7~1.5다.
규정의 적용 단위가 핵심이다. 가중값 배율은 차원별(성별·연령대별·지역별) 주변분포 가중값이지 응답자 ID별 누적 가중치가 아니다. 그러나 표본 할당의 거시적 한도는 차원별 가중값에서 직접 결정된다. 지역 차원 가중값이 0.7 이상이려면 표본비가 인구비의 1.43배(=1/0.7)를 초과할 수 없다. 이게 booster sampling의 상한이다.
1000명 정치조사에서 이 한도가 어느 정도인지 정량적으로 보면 이렇다. 제주는 인구비 1.3%로 비례할당 13명이 최대 19명까지 늘 수 있고(추가 +6명), 강원은 인구비 2.9%로 29명이 41명까지(+12명), 호남 권역은 인구비 9.8%로 98명이 140명까지(+42명) 늘릴 수 있다. 호남이 200명 가까이 갈 거라는 인상이 있지만 실제로는 140명에서 막힌다. 제주는 booster의 의미가 거의 없다. 동시에 ceiling 1.5도 양방향으로 작동해서 큰 시도에서 booster 재원을 빼올 자리도 좁다. 경기(인구비 25%)는 표본비 16.7% 미만으로 못 빼고, 서울(18%)은 12% 미만으로 못 뺀다.
이 정도 운용 폭이라면 "권역별 분석을 살리는 booster"가 아니라 floor 미세조정 수준의 비례할당에 더 가깝다.
RIM 가중이 사실상 강제된다
규정의 적용 단위가 차원별 주변분포라는 점은 또 한 번 결정적이다. 결합 셀 가중(cell weighting)을 쓰면 셀 가중값이 곧 ID 누적 가중치라서 작은 셀(예: 제주 60대 남성)의 응답 부족이 곧장 규정 위반으로 이어진다. RIM 가중은 차원별 주변분포만 맞추니까 차원별 가중값이 0.7~1.5 안에 있으면 되고, ID별 누적 가중치는 그 범위 밖으로 나가도 무방하다. 작은 셀의 변동을 차원별로 흡수할 수 있다.
결국 여심위 규정 안에서 정치조사 1000명의 가중 방식은 RIM에 가까운 형태로 수렴한다. 단순히 "셀별 극단치 방지" 때문이 아니라 규정의 박스를 ID가 아닌 차원에 적용시키는 방식으로서 RIM이 선택되는 것이다.
그러면 booster의 통계적 효익은 무엇인가
위에서 본 한도 안에서 booster를 하면 통계적으로 정확히 무엇이 좋아지는가. 답은 단순하다. 그 소지역 자체에 대한 추정의 분산 감소, 단 그것뿐이다. 그리고 한도 안에서는 그 효익조차 측정 가능한 수준으로 발현되지 않는다.
비율 p가 0.5일 때의 표준오차로 보면, 제주 비례할당 13명의 SE는 13.9%인데 booster 19명까지 가도 SE는 11.5%로 2.4%p 감소에 그친다. 호남도 비례할당 98명의 SE 5.0%가 booster 140명에서 4.2%로 0.8%p 줄어드는 정도다. 신뢰구간이 ±27%에서 ±22%로 좁아지는 수준인데, 보고서 시각화에서 사실상 구분되지 않는다. SE를 절반으로 줄이려면 표본을 4배 늘려야 하는데, 13명을 50명대로 끌어올리는 booster는 규정상 불가능하다.
게다가 booster 단위(소지역)와 분석 단위(권역)가 일치하지 않으면 효익이 분석으로 잘 전달되지 않는다. 호남 booster는 호남 권역 분석 SE를 약간 줄이지만, 제주·강원·세종 booster는 권역 분석에 거의 영향이 없다.
표본 할당의 통계적 최적해인 Neyman allocation은 시도별 표본을 인구와 분산의 곱에 비례하게 배정하는 방식이다. 그런데 정치조사 변수인 지지율의 시도별 분산은 어디서나 0.2~0.25로 비슷하다. 그러면 Neyman optimal이 사실상 비례할당으로 수렴한다. 단일 모수 추정에서는 비례할당 자체가 통계적 최적해이고, 거기서 벗어나는 booster는 전국 추정 측면에서 항상 손해다.
정리
표본 할당 방식은 도구가 아니라 산출물 정의의 함수다. 통계청 조사의 제곱근 할당이 합리적인 이유는 시도별 공표통계라는 산출물 때문이지 제곱근 할당이라는 형식 자체가 우월해서가 아니다. 같은 1000명짜리 조사라도 산출물이 전국 단일 추정인지, 권역별 비교인지, 시도별 추정인지에 따라 답이 완전히 달라진다.
정치조사 1000명은 그 중 첫 번째 케이스(권역별 비교 일부 포함)이고, 거기에 맞는 답은 비례할당이다. 강원·제주·세종 같은 소지역은 비례할당으로 적은 표본 그대로 두고, 권역별 분석에서는 "사례수 부족, 참고용" 주석으로 처리하거나 권역에 통합하는 게 한국 정치조사의 표준 관행이다. 제곱근 할당은 들어올 자리가 없고, booster sampling도 여심위 규정·DEFF·표본 비용 어느 측면에서도 정당화되기 어렵다.
이는 자연 발생적 합의가 아니라 통계학(Neyman optimal, DEFF)과 규제(여심위 가중값 배율)의 합작품이다. 1000명 안에서 권역별 분석을 진짜로 살리려면 booster로 풀려고 하지 말고 시도 단위 셀 가중을 권역 단위로 묶거나, cell weighting 대신 RIM을 적용하거나, 표본 자체를 1500~2000명으로 키우는 게 정공법이다.
2026년 5월 5일 화요일
ARS가 득표율과 비슷한 것은 정확해서가 아니다
2026년 4월 29일 수요일
신세틱 공론조사를 한 번 해보면 어떨까
신세틱 공론조사를 한 번 해보면 어떨까
며칠째 신세틱 서베이로 이런저런 실험을 하고 있다. 전북도지사 선거 가상 조사 500명을 돌려보고, 같은 방식으로 전국 500명 정치 조사도 돌려봤다. 페르소나를 셀별로 추출하고 룰을 짜서 응답을 생성하는 일. 결과가 실제 여론조사 분포와 꽤 비슷하게 나오는 것까지 확인하니, 이 방법이 어디까지 쓸모 있는지 윤곽이 잡히는 듯하다.
그러다 전북 좌담회 참석자 선정질문지를 보다가 문득 들었다. 이걸로 FGI를 시뮬레이션해도 될까?
답은 명확하게 아니었다. FGI의 핵심은 8명이 한 공간에서 만들어내는 발화의 우연성과 상호작용인데, 합성 페르소나는 평균값으로 끌려가서 "어, 이 발언 의외인데?" 같은 통찰이 안 나온다. 진짜 FGI에서 가장 중요한 부분이 LLM 평균에 묻혀버린다.
그런데 거기서 한 발 더 가면 — 공론조사는 어떨까.
공론조사를 신세틱으로 옮긴다는 발상
피쉬킨(James Fishkin)이 정립한 공론조사(Deliberative Polling)는 단순한 여론조사가 아니다. T1에서 사전 의견을 측정하고, 참여자들에게 균형 잡힌 자료집을 제공하고, 전문가 패널과 소그룹 토론을 거친 뒤, T2에서 다시 측정한다. 정보를 받고 숙의(deliberation)를 거친 뒤 의견이 어떻게 변하는지 보는 방법이다.
한국에서도 신고리 5·6호기 공론화(2017), 대입제도 개편(2018) 같은 굵직한 사안에서 활용됐다. 다만 비용이 수십억대고 시간도 수개월이라 일상적으로 돌리기 어려운 도구다. 그러니 의제 하나당 한 번 정도가 한계다.
신세틱으로 옮기면 어떻게 될까. 일단 명백한 장점들이 있다.
실시간으로 돌릴 수 있다. 자료집 만들고 LLM에 주입하고 응답 받기까지 몇 시간이면 끝난다.
같은 사람을 추적할 수 있다. 실제 공론조사의 큰 골칫거리 중 하나가 패널 중도이탈이다. T1에 응답한 사람이 T2까지 안 남으면 비교가 깨진다. 합성 페르소나는 16번 부르든 1,600번 부르든 같은 사람으로 일관되게 응답한다.
자료집을 변형해서 비교할 수 있다. 같은 사실을 다른 프레이밍으로 제시했을 때 변화 차이는 어떤가. 찬성 측 자료를 먼저 보여줬을 때와 반대 측을 먼저 보여줬을 때 어떻게 다른가. 진짜 공론조사로는 절대 못 하는 A/B 비교가 가능하다.
셀별 민감도를 측정할 수 있다. 어떤 인구학적 셀이 정보에 더 잘 반응하는가. 50대 여성과 20대 남성이 같은 자료를 받았을 때 변화량이 다른가. 이건 정량 비교가 가능한 영역이다.
그런데 그냥 LLM에 자료를 던지면 안 된다 — RAG가 필요하다
여기까지만 보면 그럴듯한데, 막상 구현 단계로 들어가면 큰 함정이 있다. LLM 단독으로 응답을 생성하게 두면 자료집 외부의 사전학습 지식을 끌어와서 응답한다. 공론조사의 본질이 "주어진 자료를 받고 의견이 어떻게 변하는가"를 측정하는 건데, LLM이 자기 학습 데이터의 정보를 섞어버리면 측정 자체가 오염된다.
이걸 풀어주는 게 RAG(검색 증강 생성) 구조다. 페르소나에게 주입할 자료집을 외부 문서 컬렉션으로 따로 두고, 응답할 때 그 컬렉션에서만 검색해 근거로 쓰게 한다. LLM이 사전학습에서 끌어오는 노이즈를 줄이고, 자료집 내용에 정렬된 응답을 생성하게 강제한다.
이렇게 가면 신세틱 공론조사가 비로소 진짜 통제 가능한 실험이 된다.
자료 환경을 명시적으로 통제할 수 있다. 찬성만 든 컬렉션, 반대만 든 컬렉션, 균형 컬렉션을 따로 만들어두고 페르소나별로 다른 컬렉션을 붙인다. 같은 페르소나가 다른 정보 환경을 받았을 때 어떻게 다르게 반응하는지 깨끗하게 비교된다.
근거 추적이 된다. 페르소나가 어떤 응답을 했을 때 검색된 문서 인용이 함께 따라온다. "이 페르소나는 자료집의 어떤 부분에 가장 영향받았는가"를 사후에 분석할 수 있다. 진짜 공론조사 사후 분석에서도 어려운 부분이다.
시점을 고정할 수 있다. 자료 컬렉션의 시점을 고정하면 T1·T2·T3가 같은 정보 환경에서 측정된다. LLM 학습 데이터에 새 정보가 섞일 위험이 줄어든다.
그러면 진짜 deliberation은 모사할 수 있나
여기서 이 아이디어의 가장 어려운 지점에 부딪힌다. 공론조사의 핵심은 단순한 정보 노출이 아니라 숙의 — 다른 입장의 사람을 직접 만나 토론하면서 의견이 변하는 과정 — 이다. 피쉬킨의 연구에서 일관되게 나오는 발견 몇 가지를 떠올려보면:
- 사람들은 정보를 받으면 정책의 미묘한 차이를 더 잘 인지한다.
- 토론을 거치면 극단적 입장이 줄어든다.
- 다른 입장의 사람을 대면하면 상대 진영을 덜 적대적으로 본다.
이 중 LLM이 그럴듯하게 모사할 수 있는 건 첫 번째뿐이다. 두 번째와 세 번째는 인간 간 상호작용의 산물이라 합성으로는 거의 못 만든다. 그래서 신세틱 공론조사는 엄밀히 말하면 공론조사의 일부만 시뮬레이션하는 것이다 — 정보 노출 효과는 잡되, 진짜 deliberation은 못 잡는다.
다만 이 한계를 단점으로만 볼 필요는 없을 것 같다. 오히려 "자료집 효과와 토론 효과를 분리해서 측정할 수 있다"는 장점이 된다. 진짜 공론조사에서는 이 둘이 한 사이클 안에 묶여 있어 분리가 어려운데, 신세틱에서는 자료만 주입한 단계와 가상 토론 요약까지 주입한 단계를 따로 측정할 수 있다.
여기서 RAG가 한 번 더 일을 한다. T2 단계에서 페르소나가 자료집을 받은 뒤, 그룹 내 다른 페르소나의 발언을 요약 문서로 RAG 컬렉션에 추가한다. 그러면 페르소나는 자료집 + 동료 발언을 둘 다 검색해 응답을 생성한다. 한 라운드씩 돌리면서 발언을 누적시키면 일종의 비동기 토론 시뮬레이션이 된다. 물론 이건 진짜 토론이 아니다. 인간이 마주 보고 만드는 인터럽트·동조·감정 폭발은 못 만든다. 다만 "다른 입장의 발언을 정보로서 접한 뒤 의견이 변하는 부분"은 분리해서 측정할 수 있다.
가능한 설계
머릿속에서 그려보면 이런 그림이다.
| 단계 | 조작 (RAG 컬렉션 구성) | 측정 |
|---|---|---|
| T1 | 페르소나만 (자료 컬렉션 비움) | 사전 의견, 확신도, 찬반 비율 |
| T2a | 찬성 측 균형 자료 컬렉션 주입 | 자료1 받은 후 의견·확신도 변화량 |
| T2b | 반대 측 자료 추가 (양측 다) | 양면 정보 효과, 확신도 변화 |
| T2c | 동일 그룹 내 다른 페르소나 발언 요약을 컬렉션에 추가 | 동료 발언 노출 효과 |
| T3 | 일정 라운드 누적 후 | 최종 의견, 집단 수렴/양극화 |
흥미로운 건 측정 변수가 의견 자체만 있는 게 아니라는 점이다. 확신도 변화, 이슈 인지 정확도 변화, 의견은 그대로인데 근거만 바뀌는 패턴, 자료 비대칭에 대한 민감도, 검색-인용된 문서의 셀별 차이 같은 게 다 측정 대상이 된다. RAG 구조이기 때문에 마지막 변수가 새로 가능해진다 — "어떤 셀이 어떤 정보를 더 자주 끌어다 쓰는가"를 추적할 수 있다는 뜻이다.
그래서 뭐가 되나
당장은 아이디어 단계다. 다만 이게 단순한 호기심 이상으로 의미가 있을 것 같은 이유는, 한국에서는 공론조사 사례 자체가 적어서 이 방법론에 대한 누적된 실증 연구가 빈약하다는 점이다. 신세틱으로 같은 의제를 여러 번, 여러 변형으로 돌려보는 게 가능해지면, 적어도 자료 노출 효과의 셀별 차이 같은 건 정량적으로 잡을 수 있다.
물론 진짜 공론조사를 대체하는 게 아니다. 진짜 토론에서 나오는 인간 상호작용의 가치는 합성으로 안 잡히고, 그건 그것대로 인간이 모인 자리에서 해야 한다. 다만 진짜 공론조사를 설계하기 전 단계에서 "어떤 자료집 구성이, 어떤 그룹에게, 어떻게 영향을 줄 가능성이 큰가"를 미리 시뮬레이션해보는 사전 도구로는 의미가 있을 것 같다.
또 흥미로운 건, 이미 진행된 한국의 공론조사 사례(신고리, 대입개편 등)를 동일 자료집으로 신세틱에 돌려보고 결과를 비교하는 작업이다. 어디서 일치하고 어디서 갈라지는지 보면, 합성 데이터의 적용 한계 자체가 정량화된다.
신세틱 서베이가 정량 분포 시뮬레이션에서 어디까지 쓸모 있는지는 이번 주 작업으로 어느 정도 그림이 잡혔다. 그 다음 단계는 시점 간 변화 측정이고, 그 첫 후보가 RAG 기반 신세틱 공론조사일 것 같다.
조만간 한 번 돌려봐야겠다.
2026년 4월 26일 일요일
스마트폰에서 표 문항이 작동하지 않는 이유 — 모바일웹 조사의 그리드 문제
스마트폰에서 표 문항이 작동하지 않는 이유 — 모바일웹 조사의 그리드 문제
모바일웹 조사 설문지를 검토하다 보면, 의뢰인이든 연구자든 한 가지 공통된 반응을 보이는 지점이 있다. 그리드(매트릭스) 문항을 개별 문항으로 풀어놓은 설문지를 처음 받았을 때의 반응이다.
"문항이 너무 많아 보이는데, 표로 묶으면 안 되나요?"
이 질문은 자연스럽다. 설문지를 문서로 볼 때는 표가 훨씬 깔끔하다. 10개 항목을 개별로 나열하면 페이지가 길어지고 산만해 보이는 반면, 하나의 표로 묶으면 한눈에 구조가 보인다. 검토하는 사람 입장에서는 당연히 표가 낫다.
문제는 설문지 문서를 읽는 사람과 설문에 실제로 응답하는 사람의 경험이 완전히 다르다는 점이다.
PC 웹조사 시대의 유산
그리드 문항은 PC 웹조사 시대의 산물이다. 1024px 이상의 가로 해상도에서 5열 × 10행 표는 완벽하게 작동한다. 한 화면에 전체 구조가 보이고, 응답자는 행 간 비교를 하면서 자신의 응답이 일관적인지 자연스럽게 점검한다. 연구자가 의도한 대로 "항목 간 상대적 비교"가 이뤄진다.
한국 조사업계에서 여전히 그리드 문항이 기본값(default)처럼 쓰이는 데는 이 시대의 관성이 크다. 여기에 몇 가지 이유가 겹친다.
첫째, 표는 전문적으로 보인다. 설문지를 의뢰인에게 제출할 때, 개별 문항 10개보다 표 1개가 "잘 설계된 조사"처럼 보인다. 솔직히 말하면, 있어 보인다. 연구자들이 이 유혹에서 벗어나기 쉽지 않다.
둘째, 문항 수 착시다. "총 30문항"이라고 적는 것보다 "총 15문항(일부 매트릭스 포함)"이라고 적는 편이 의뢰인의 비용 저항을 줄인다. 같은 분량의 조사를 적은 문항처럼 포장할 수 있다.
셋째, 분석 편의성이다. 같은 척도로 묶인 그리드는 SPSS에서 한 번에 빈도표를 뽑기 쉽다. 연구자 본인의 작업 효율을 응답자의 응답 경험보다 우선시하는 것인데, 대개 무의식적으로 그렇게 한다.
이 세 가지는 모두 조사자 측의 편의다. 응답자 측의 사정이 아니다.
모바일 화면에서 실제로 벌어지는 일
스마트폰 화면 가로폭은 대개 360~400px이다. 여기에 5열짜리 리커트 척도 표를 넣으면 어떻게 되는가.
가장 흔한 구현 방식은 표를 좌우 스크롤 가능하게 만드는 것이다. 응답자는 행 텍스트(항목)를 읽은 뒤, 오른쪽으로 밀어서 보기를 찾아 터치해야 한다. 이 과정에서 "매우 그렇다"와 "그렇다"의 시각적 구분이 모호해진다. 열 헤더가 화면 밖으로 사라지기 때문이다. 결과적으로 응답자는 보기의 의미를 파악하는 것이 아니라, 위치(왼쪽에서 몇 번째)로 응답하게 된다.
더 심각한 문제는 straight-lining이다. 10행짜리 그리드가 화면에 나타나면, 응답자에게는 "10개를 전부 채워야 다음으로 넘어간다"는 시각적 압박이 온다. 자연스러운 대응은 같은 열을 연속으로 찍는 것이다. 이건 불성실 응답이라기보다, 인터페이스가 유도하는 합리적 행동에 가깝다. Pew Research Center가 2019년에 수행한 모바일 vs PC 비교 실험에서, 그리드 문항의 모바일 straight-lining 비율이 PC 대비 유의하게 높았고, 같은 문항을 개별로 분리했을 때는 이 차이가 사라졌다.
항목 수가 많을수록 문제는 가속된다. 10행짜리 그리드의 마지막 3~4행에서 응답 분산이 급격히 줄어드는 현상은, 모바일웹 조사를 해본 사람이라면 데이터에서 반복적으로 목격했을 것이다. 이건 응답자의 태도가 변한 것이 아니라, 피로가 인터페이스에 의해 증폭된 것이다.
"문항이 적어 보인다"는 착각의 구조
여기서 흥미로운 역설이 있다. 설문지 문서에서는 표 1개(10행)가 개별 문항 10개보다 "적어" 보인다. 그런데 응답자의 체감에서는 정반대다.
개별 문항 10개는 화면 10개로 나뉜다. 한 화면에 질문 1개와 보기 4~5개만 보인다. 터치 한 번이면 다음으로 넘어간다. 진행 바(progress bar)가 한 칸씩 차오르는 것이 보인다. "빨리 끝나고 있다"는 느낌이 든다.
표 문항 1개는 화면 1개에 10행이 들어간다. 스크롤을 여러 번 해야 하고, 한 행을 채울 때마다 나머지 9행이 남아 있는 것이 보인다. 진행 바는 움직이지 않는다. "이게 언제 끝나나" 하는 심리적 부담이 누적된다.
문서 가독성과 응답 경험은 별개의 차원이다. 설문지를 검토하는 의뢰인이 "깔끔하다"고 느끼는 것과, 응답자가 "빨리 끝난다"고 느끼는 것은 다른 문제다. 설문 설계자는 후자를 기준으로 판단해야 한다.
그러면 표 문항은 언제 쓰는가
모바일웹에서도 표가 적절한 경우가 드물지만 존재한다. 핵심 기준은 "항목 간 상대적 비교가 응답의 본질인가"이다.
예를 들어, "다음 후보들에 대한 호감도를 각각 평가해 주십시오"는 개별로 분리해도 응답 품질에 차이가 없다. 응답자는 각 후보를 독립적으로 평가하는 것이지, A 후보와 B 후보의 호감도를 나란히 비교하면서 점수를 매기는 것이 아니다. 이런 문항은 분리하는 것이 맞다.
반면, "다음 두 브랜드의 속성별 우위를 비교해 주십시오"처럼 A와 B를 나란히 놓고 상대적 위치를 판단하는 것이 문항의 본질인 경우에는 표가 필요하다. 이때에도 행 수를 3~4개 이하로 제한하고, 좌우 스크롤이 발생하지 않도록 열 수를 줄여야 한다.
실무적 기준을 정리하면 이렇다.
- 모바일웹 조사에서 그리드를 쓸 때는 행 4개 이하, 열 3개 이하를 기준으로 삼는다.
- 이를 초과하면 개별 문항으로 분리한다.
- 분리할 때는 문항 간 Random 제시를 적용하여 순서 효과를 통제한다.
대부분의 그리드 문항은 이 기준을 초과한다. 즉, 대부분의 그리드는 분리해야 한다.
설문지 문서와 구현의 분리
결론적으로, "설문지 문서에서의 표 정리"와 "실제 모바일웹 구현에서의 표 제시"를 분리해서 생각해야 한다.
설문지 문서에서는 동일한 척도를 공유하는 항목들을 표로 묶어서 정리하는 것이 맞다. 내부 검토 가독성이 좋아지고, 문항 간 구조적 관계가 한눈에 보이기 때문이다. 이건 작성자와 검토자를 위한 포맷이다.
그러나 실제 모바일웹 구현에서는 그 표를 한 항목씩 개별 화면으로 쪼개서 제시해야 한다. 서베이박스, 서베이몽키 같은 모바일 대응 플랫폼에서도 그리드를 개별 화면으로 쪼개는 옵션이 기본 제공되는 이유가 여기에 있다.
설문지를 쓰는 사람이 설문에 답하는 사람이 아니다. 응답자는 우리가 만든 A4 문서를 보지 않는다. 응답자가 보는 것은 380px짜리 스마트폰 화면이다. 그 화면에서 "있어 보이는 것"과 "답하기 편한 것"은 다르다. 우리가 설계해야 하는 것은 후자다.
후보지지도 재계산, 다섯 갈래
후보지지도 재계산, 다섯 갈래 한국 공표 선거여론조사는 후보지지율을 거의 원자료 그대로 발표한다. 모름·없다 응답자도 분모에 그대로 두고 백분율을 산출. 미국이나 유럽 조사에서 흔한 "지지후보 응답자 기준" 재백분율조차 한국 공표 본...
-
중간 보기가 없는 2점이나 4점의 경우는 긍정비율(찬성, 만족 등)을 가지고 주로 분석을 한다. 그러나 중간 보기가 있는 3점이나 (특히) 5점의 경우 긍정비율보다는 평균값(3점 or 5점 만점, 아니면 이를 100점으로 환산)을 많이 활용한다. 왜...
-
서론: 시간의 흐름 속 ‘스냅샷’으로 정책 효과 측정하기, 횡단조사와 이중차분법(DID) 어떤 정책이 시행된 후, 그 효과를 과학적으로 측정하고 싶다고 가정해 봅시다. 가장 이상적인 방법은 정책의 영향을 받은 사람들과 받지 않은 사람들을 수년간 추...
-
서론: 표본을 ‘유권자 전체’로 만드는 마법, 가중치와 두 가지 해법 선거여론조사는 보통 1,000여 명의 표본을 통해 수천만 명에 달하는 전체 유권자의 민심을 추정하는 작업입니다. 하지만 우리가 무작위로 추출한 1,000명의 인구통계학적 특성(성...