Article Review

[논문리뷰] Gielens et al (2025) 인간이 Annotator의 시대는 끝났는가?

Dr. Julia 2025. 1. 10. 00:59

 

요즘 연구자들 사이에서 핫한 질문 하나, "ChatGPT가 인간 코더를 대체할 수 있을까?" 이 질문에 답하기 위해 네덜란드 기본소득 논쟁 트윗 데이터와 독일 연금개혁 신문 기사 데이터를 사용해 ChatGPT의 성능을 꼼꼼히 검증한 논문이 나왔습니다. 결론부터 말하자면, 아직 인간 코더가 완전히 대체되긴 어렵지만, 가능성은 충분히 보인다! 오늘은 이 논문을 통해 ChatGPT의 정책 담론 분석 능력과 프롬프트 설계 방법을 구체적으로 소개해 드리겠습니다.

ChatGPT로 콘텐츠 분석? 기존 연구들을 살펴보자!

ChatGPT 같은 대형 언어 모델(LLM)이 콘텐츠 분석(content analysis)을 혁신할 수 있다는 아이디어는 최근 학계에서 큰 관심을 받고 있습니다. 그런데 이걸 진지하게 논하기 전에, 기존 연구들이 ChatGPT와 같은 모델들을 텍스트 분석에 어떻게 활용해 왔는지 알아보는 게 중요하겠죠? 이번 논문에서는 이를 다룬 다양한 선행연구들을 정리하고, ChatGPT가 기존 접근법을 어떻게 보완할 수 있을지 논의합니다. 흥미진진한 이 분야의 흐름을 자세히 살펴볼게요.


1. LLM과 텍스트 분석: 어디까지 왔나?

정치학과 사회과학 연구자들은 오래전부터 텍스트 분석에 자동화된 도구를 사용해 왔습니다. 초창기에는 단어 빈도를 계산하거나, 특정 문맥을 탐지하는 단순한 모델들이 주류였습니다. 하지만 LLM, 특히 ChatGPT 같은 모델의 등장으로 더 정교한 분석이 가능해졌습니다.

(1) 주제 분류와 감정 분석

  • Grimmer와 Stewart (2013): 정치 문서에서 텍스트 분석의 가능성을 초기 탐구하며, 주제 모델링과 감정 분석의 가능성을 강조.
  • Rheault와 Cochrane (2020): 언어 모델을 사용해 정치 이념적 위치를 추정.
  • Widmann과 Wich (2023): 정치적 텍스트에서 감정을 분석하는 데 LLM이 유용하다고 평가.

(2) ChatGPT의 등장

이전의 자연어 처리 모델들이 단순히 단어 간 관계를 분석했다면, ChatGPT는 문맥 이해력과 유연성이 훨씬 뛰어납니다. 이를 활용한 연구는 매우 다양한데요:

  • Prakash et al. (2023): ChatGPT로 밈(meme) 텍스트와 이미지를 클러스터링해 주제를 분류. 기존 주제 모델들보다 정확도가 높다고 평가.
  • Huang, Kwak, An (2023): 혐오 발언을 포함한 트윗을 ChatGPT로 분류한 연구에서 80%의 정확도를 기록.
  • Wang et al. (2021): 뉴스 기사 주제 분류에서 77.5%~87.5%의 정확도를 보여줌.

(3) 사회과학 텍스트 분석에서의 가능성

  • Gilardi, Alizadeh, Kubli (2023): 트윗과 뉴스 기사에서의 주제와 프레임을 분석했는데, ChatGPT가 60% 정도 인간 코더와 일치. 흥미롭게도 Mturk 같은 크라우드소싱 작업자들보다 성능이 우수.
  • Morgan (2023), Turobov et al. (2024): UN 정책 문서와 포커스 그룹 데이터를 ChatGPT로 분석. 비록 정확도 측면에서는 제한적이지만, 분석 속도 면에서 유리하다는 평가.

2. 정확도와 한계: ChatGPT의 문제점은?

물론 ChatGPT의 활용에는 한계도 있습니다. 기존 연구들은 ChatGPT가 텍스트 분석에서 뛰어난 점도 많지만, 놓치는 부분도 분명하다고 지적합니다.

(1) 장점: 문맥 이해와 유연성

  • ChatGPT는 기존 모델보다 문맥을 이해하는 데 강점이 있습니다. 예를 들어, 단순한 단어 빈도 분석에 의존하지 않고, 텍스트의 복합적인 의미까지 파악하려는 시도가 가능하죠.

(2) 한계: 특정 유형의 텍스트에서 성능 저하

  • Ziems et al. (2023): ChatGPT가 정치적 입장이나 이데올로기를 분류할 때는 우수했지만, 잘못된 정보나 미묘한 혐오 표현 같은 "복잡한" 카테고리 분류에서는 약점을 보임.
  • Gilardi, Alizadeh, Kubli (2023): ChatGPT가 단순한 구조의 문서에서는 강점을 보이지만, 데이터가 비균형적일 경우(특정 주제가 과소표본화된 경우) 정확도가 떨어질 수 있음.

(3) 인간 코더와 비교

ChatGPT가 빠르고 대량의 데이터를 처리하는 데 탁월하지만, 인간 코더처럼 맥락을 고려한 세밀한 판단에는 아직 미치지 못한다는 것이 공통된 결론입니다. 특히 정책 담론처럼 복잡한 데이터에서는 인간 코더의 역할이 여전히 중요하다고 봅니다.


3. 이 논문의 기여: ChatGPT를 정책 논쟁에 적용하다

기존 연구들은 혐오 발언, 정치적 감정, 뉴스 기사 등 일반적인 텍스트 데이터에 초점을 맞췄습니다. 하지만 정책 논쟁과 같은 특정 분야에 대한 ChatGPT의 분류 능력을 검증한 연구는 드물었습니다. 이번 논문은 이를 보완하며 다음과 같은 기여를 했습니다.

(1) 정책 논쟁 분석의 새로운 적용

  • 네덜란드 기본소득 논쟁과 독일 연금개혁이라는 두 가지 정책 사례에 ChatGPT를 적용.
  • 서로 다른 언어와 텍스트 구조(짧은 트윗 vs 긴 신문 기사)를 통해 ChatGPT의 일반화 가능성을 검증.

(2) 더 정교한 평가 지표 사용

기존 연구들이 주로 정확도(accuracy)에 의존했던 것과 달리, 이 논문은 정밀도(precision)와 재현율(recall)까지 포함한 세부적인 성능 평가를 도입했습니다. 이는 모델이 얼마나 "노이즈"(잘못된 긍정)와 "누락"(탐지 실패)을 줄일 수 있는지 더 잘 보여줍니다.

(3) 접근 방식 비교

  • 최신 GPT-4 터보(API)와 UI(User Interface)를 비교해, 성능 차이를 분석.
  • "컷오프 방식" 같은 새로운 전략을 적용해 더 안정적인 분류 결과를 얻을 수 있음을 보여줌.

데이터는 이렇게 준비했다

연구진은 두 가지 서로 다른 데이터셋을 준비해 ChatGPT의 성능을 평가했습니다.

1. 네덜란드 기본소득 트윗 데이터 (2014-2016)

  • 특징: 짧고 비정형적인 텍스트. 트윗 특유의 "난해함" 때문에 분류가 어려운 경우가 많습니다.
  • 사람 코딩: 이전 연구에서 5,128개의 트윗을 56개의 논거로 코딩.
  • ChatGPT 평가 포인트: 트윗처럼 짧고 복잡한 데이터에서 논거를 얼마나 잘 잡아내는지?

2. 독일 연금개혁 신문 기사 데이터 (1993-2001)

  • 특징: 길고 전문적인 신문 기사. 구조가 명확한 대신, 텍스트의 길이 때문에 분석이 까다롭습니다.
  • 사람 코딩: 1,879개의 기사에서 68개의 정책 논거를 추출.
  • ChatGPT 평가 포인트: 더 긴 텍스트에서도 정교한 분류를 할 수 있을까?

ChatGPT의 성능을 끌어올리는 비결: 프롬프트 설계법

ChatGPT의 성능은 프롬프트의 품질에 크게 좌우됩니다. 그래서 연구진은 '프롬프트 엔지니어링'에 꽤 많은 공을 들였는데요, 그 과정을 자세히 살펴볼게요.

1. 핵심 요소

  • 맥락 제공: 분석할 데이터와 정책 논쟁의 논거를 명확히 설명합니다.
  • 역할 지정: ChatGPT에게 "정책 담론 전문가" 역할을 부여해 전문성을 높입니다.
  • 출력 요구사항 명시: 논거를 HTML 테이블로 출력하게 하여 일관성을 유지합니다.

2. 프롬프트 설계 과정

연구진은 여러 번의 시행착오를 통해 최적의 프롬프트를 만들었는데, 기본적인 구조는 아래와 같아요:

(1) 역할 부여 및 작업 설명

You are a professional researcher named [Jakub]. You specialize in qualitative content analysis for social policies. Your task is to analyze [language] [document_type] for arguments related to [policy_name]. You must determine whether each document contains the specified arguments.
 

(2) 분류 기준과 조건 명시

The arguments and their descriptions are provided below. If a document contains any content that aligns with these arguments, classify it as "1". Otherwise, classify it as "0". A document can contain multiple arguments.

(3) 출력 형식 제시

Provide the results in an HTML table format with the following structure: - Rows represent individual documents. - Columns represent arguments. - Use "1" for present and "0" for absent.

(4) 예제 출력 제공

Example Output: | Document ID | Argument 1 | Argument 2 | Argument 3 | |-------------|------------|------------|------------| | Doc1 | 1 | 0 | 1 |

(5) 문서 데이터 삽입 마지막으로 분석할 데이터를 추가합니다. 예를 들어:

Document 1: [텍스트 내용] Document 2: [텍스트 내용] ...

3. 반복 테스트

  • 동일한 텍스트를 5번 반복 분류하고, 결과 간의 일관성을 비교합니다. 이 방식으로 ChatGPT의 신뢰성을 평가할 수 있습니다.
  • "3/5 컷오프 방식"을 활용해 5번 중 3번 이상 동일한 결과가 나온 경우 해당 분류를 최종적으로 채택합니다.

ChatGPT 성능은 어땠을까?

1. 신뢰성 (결과 일관성)

  • 트윗 데이터: φ = 0.84 (높은 일관성)
  • 신문 데이터: φ = 0.71 (상대적으로 낮음)

2. 타당성 (사람 코딩과의 비교)

  • 정확도(accuracy): 트윗(91.7%) > 신문(78.7%)
  • 정밀도(precision): 트윗(58.6%) > 신문(41.3%)
  • 재현율(recall): 신문(60.1%) > 트윗(58.6%)

3. 데이터 특성에 따른 차이

  • 트윗 데이터는 "짧지만 명확한" 구조 덕분에 성능이 높았습니다.
  • 반면, 신문 데이터는 길이와 맥락의 복잡성 때문에 정밀도가 낮았습니다.

결론: ChatGPT, 아직은 "조수" 정도!

연구진의 결론은 명확합니다. ChatGPT는 현재로서는 인간 코더를 완전히 대체할 수 없습니다. 하지만 시간과 비용을 절감하며 대규모 데이터를 분석하는 데 큰 잠재력을 보여줬습니다. 특히, 프롬프트 설계와 같은 세부 전략을 통해 성능을 점진적으로 개선할 수 있다는 점이 희망적입니다.

  1. 프롬프트를 잘 설계하라: 작업을 세분화하고, 명확한 출력 형식을 지정하세요.
  2. 반복 테스트를 활용하라: 동일한 텍스트를 여러 번 분석해 결과를 비교하세요.
  3. 사람과 함께 써라: ChatGPT가 100% 완벽하지 않으니, 중요한 작업은 반드시 인간 검증을 거치세요.

이 논문은 ChatGPT를 활용한 텍스트 분석의 가능성과 한계를 잘 보여줍니다. 앞으로 모델 성능이 개선된다면, 인간 코더의 역할이 크게 변할지도 모릅니다. 과연 ChatGPT가 더 진화할까요?