어떻게 분석했나

부산시의회 9대 4년치 행정사무감사 발언 167,071건을 전수 수집해, 의미 있는 발언만을 골라내고, 의제를 묶고, 점수를 매겼습니다. AI 언어모델 + 데이터마이닝 + 기자 검수의 3단계 파이프라인을 거친 결과를 한 페이지에 정리했습니다.

167,071
전체 행감 발언 (4회기 누적)
54,551
AI 분석 대상 (의원 유의미 발언)
~5%
데이터 오분류율 범위
3단계
AI · 표본 · 기자 검수
01
데이터

발언록 수집과 정제

부산시의회 홈페이지에 공개된 지난 4년 간 행정사무감사 4회기 발언록 전체를 수집했습니다. 원본 발언 167,071건 중 집행부·참고인 발언, 의원의 인사·소개·단답 등 무의미 발언을 제외하면 분석 대상은 54,551건으로 좁혀집니다.

분류 작업은 AI 언어모델과 데이터마이닝 기법을 함께 사용했고, 전체 데이터의 오분류율은 약 5% 범위로 측정됐습니다. 검수는 1차 자동 검증 → 2차 표본 검수 → 3차 기자 검수의 3단계로 이뤄졌습니다.

핵심 결정 의장(안성민)은 의사진행 발언이 직무의 대부분을 차지하므로 형평성을 위해 분석 대상에서 제외 → 9대 의원 44명 중 분석 대상은 43명.
02
의제 클러스터링

AI가 그린 의제 지도

AI 언어모델이 개별 발언 문장의 의미를 좌표 한 개로 표현하고, 좌표가 가까운 발언끼리 묶었습니다. 같은 주제를 다루지만 다른 단어로 말한 발언도 의미 공간 안에서 자연스럽게 한 무리로 모입니다.

클러스터 후보는 총 86개가 생성됐고, 이 중 '자료 요청', '인사', '의사진행' 등 의제와 무관한 74개를 제외해 최종 12개의 의제 클러스터를 확정했습니다.

3D 의제 지도에서 직접 보기 →

03
종합 점수

활동량 · 실효성 · 충실성

9대 시의회 의원 43명의 행정사무감사 성적표를 세 가지 축으로 측정했습니다. 가중치 없이 세 점수의 산술 평균이 종합 점수입니다.

축 1 · 활동량

누가 얼마나 자주, 길게 말했나

(발언 횟수 + 발언 자수 + 출석 회의 수) ÷ 3 · 정규화 × 100
축 2 · 실효성

유의미한 발언이 얼마나 됐나

(유의미한 발언 수 ÷ 전체 발언 수) × 100
축 3 · 충실성

감사 제역할에 충실했나

(정당한 문제제기 + 정책적 대안제시) ÷ 기준별 발언 분류 × 100

의원 종합 점수 보기 →

04
발언 분류 기준

8가지 기준으로 분류한 의원 발언

단순한 발언량이 아니라 발언의 성격과 발언자의 태도를 함께 살피기 위해, 모든 유의미 발언을 아래 8가지 기준으로 분류했습니다. 어디에도 해당하지 않으면 '일반 발언'으로 묶었고, 발언 한 건이 여러 기준에 동시에 해당할 수 있습니다.

정당한 문제제기
구체적 근거와 함께 행정 하자, 규정 위반, 정책 실효성 부재를 지적
정책적 대안제시
시정 요구 사안에 대해 단순 비판 넘어 구체적인 대책 제시
현안 및 정책 이해 미비
현안 또는 정책의 진행 상황 및 관련 전문 용어 등에 대한 이해 부족
대상기관 권한 밖 질의
피감 대상인 부산시와 산하기관 권한 범위 바깥 사항을 요구 또는 질책
무리한 제안 또는 주장
실행 경로가 없거나 예산 또는 제도상 실현가능성이 낮은 요구
강압적 태도
말 자르기, 인사·징계 암시, 행동 통제, 호통 등 감정적 위압
시정 감싸기
시정을 감시하는 자리에서 행정부 업적 치하 및 단체장 옹호
순수 비하발언
모욕적 언사 또는 업무 비판을 넘어선 인신공격성 발언

주요 발언 보러 가기 →

05
주요 현안 추적

같은 의제, 다른 단어를 묶다

같은 주제라도 의원마다 다른 단어로 말합니다. 예를 들어 '2030월드엑스포', '부산엑스포', '월드엑스포'는 모두 같은 사안이지만 문자열로는 다릅니다. 이 차이를 메우기 위해 세 방법을 동시에 적용해 모았습니다.

  1. 단어 자체 매칭 — 핵심 키워드 동의어 사전 기반의 단어 검색.
  2. 단어의 뜻 매칭 — 임베딩 벡터 유사도로 표기가 다른 동일 의미 단어를 포착.
  3. AI 자체 태깅 — LLM이 문맥 전체를 보고 "이 발언은 X 의제에 속한다"고 판단.

주요 현안 페이지 보기 →