본문으로 건너뛰기

전통적인 머신러닝(SVM)을 활용한 LLM 생성 텍스트 탐지기 구축기

전통적인 Scikit-learn의 SVM과 TF-IDF 기법을 활용하여 최신 LLM이 생성한 텍스트의 통계적 패턴을 85% 정확도로 식별하는 탐지기 개발 과정을 다룹니다.

섹션별 상세

01
AIGC 탐지를 위해 기존에 시도되던 Perplexity(당혹도) 기반 방식은 높은 추론 비용과 낮은 일반화 성능으로 인해 실용성이 떨어진다는 점을 확인했다. LLM을 사용하여 각 단어의 출현 확률을 계산하는 방식은 오탐율이 높고 로컬 배포가 어렵다는 한계가 존재한다.
Perplexity 기반 탐지 시도 시 나타난 토큰별 점수 그래프이다.
Chart특정 문장의 토큰별 점수를 시각화하여 AI 생성 여부를 판단하려 했으나, 임계값 설정의 어려움과 높은 오탐율로 인해 실패했음을 보여준다.
02
2022년 이전의 인간 작성 텍스트 10,000개를 수집하고, 이를 바탕으로 Gemini, Qwen, DeepSeek 등 7종의 LLM을 사용하여 요약 및 재작성 데이터를 생성하여 학습 데이터셋을 구축했다. API 비용 절감을 위해 배치 처리와 무료 베타 API를 활용하는 전략을 사용했다.
03
Scikit-learn의 TF-IDF 벡터화와 LinearSVC 분류기를 조합하여 모델을 학습시켰다. 문장 단위 정확도는 약 85%이며, 긴 글의 경우 여러 문장의 결과를 종합하여 매우 높은 신뢰도로 AI 여부를 판별할 수 있음을 입증했다.
text
===================================== SUMMARY
=====================================
model         s1 acc    s1 f1
gemini        0.8809    0.8082
qwen          0.8911    0.8974
pony          0.8493    0.8286
kimi25        0.8721    0.8473
glm47         0.8436    0.8222
doubao        0.8940    0.8700
deepseekv32   0.8529    0.8403

7개의 서로 다른 LLM 데이터를 기반으로 학습된 개별 이진 분류기들의 성능 요약 로그

초기 버전 모델의 혼동 행렬과 성능 지표 결과이다.
ScreenshotTF-IDF와 SVM을 사용한 초기 모델이 약 88%의 정확도를 달성했음을 보여주며, 고전적 ML 기법의 유효성을 증명하는 핵심 지표이다.
04
단일 모델의 한계를 극복하기 위해 7개의 서로 다른 LLM 데이터를 기반으로 한 이진 분류기를 만들고 다수결 투표(Majority Voting) 방식을 채택했다. 2개 이상의 모델이 AI로 판별한 문장을 강조 표시함으로써 탐지 결과의 견고함을 확보했다.
8개 클래스(인간 및 7종 AI) 다중 분류 시도 결과의 혼동 행렬이다.
Screenshot서로 다른 LLM 간의 텍스트 패턴이 너무 유사하여 다중 분류 정확도가 50% 수준으로 낮게 나타났음을 보여주며, 이로 인해 개별 이진 분류기 조합 방식으로 선회하게 된 근거를 제시한다.
05
서버 유지비용을 없애기 위해 Python 모델을 JavaScript로 이식하여 브라우저에서 직접 추론이 가능하도록 구현했다. 50만 개의 피처를 JSON 형태로 저장하고 gzipped 압축을 통해 전송량을 최적화했으며, 수천 자 분량의 텍스트를 10초 내외로 처리한다.
06
구글 번역기를 이용한 중역(CN-EN-CN)이나 AI 느낌을 줄여달라는 프롬프트 엔지니어링 기법을 통한 우회 시도를 테스트했으나, 탐지율이 소폭 하락할 뿐 여전히 유효하게 작동함을 확인하며 모델의 견고함을 확인했다.

용어 해설

당혹도(Perplexity)
언어 모델이 다음 단어를 얼마나 잘 예측하는지 나타내는 통계적 척도이다. 낮은 점수는 모델이 해당 텍스트를 예측하기 쉬워함을 의미하며, AI 생성 텍스트 탐지에서 텍스트의 '예측 가능성'을 측정하는 지표로 활용된다.
단어 빈도-역문서 빈도(TF-IDF)
특정 단어가 문서 내에서 얼마나 중요한지를 나타내는 수치이다. 문서 내 빈도(TF)와 전체 문서군에서의 희소성(IDF)을 곱하여 계산하며, 텍스트 분류 모델에서 문장의 특징을 추출하는 핵심 기법으로 쓰인다.
서포트 벡터 머신(SVM)
데이터를 분류하기 위한 최적의 결정 경계(하이퍼플레인)를 찾는 지도 학습 알고리즘이다. 텍스트 분류와 같은 고차원 데이터 처리에서 강력한 성능을 발휘하며, 이 아티클에서는 AI와 인간의 글을 구분하는 핵심 분류기로 사용되었다.
F1 점수(F1 Score)
모델의 정밀도(Precision)와 재현율(Recall)의 조화 평균을 나타내는 지표이다. 데이터 불균형이 있는 분류 문제에서 모델의 성능을 객관적으로 평가하기 위해 사용되며, 1에 가까울수록 모델의 예측 성능이 우수함을 의미한다.
선형 서포트 벡터 분류기(Linear SVC)
선형 커널을 사용하는 SVM의 일종으로, 대규모 데이터셋에서 빠른 학습과 추론 속도를 제공한다. 텍스트 데이터의 선형적 특징을 효과적으로 학습하여 AI 생성 텍스트 여부를 이진 분류하는 데 적합하다.

기술

  • Scikit-learn
  • Python
  • JavaScript
  • Gemini API
  • DeepSeek
  • TF-IDF
  • LinearSVC

활용 사례

  • AI 생성 소설 및 팬픽 식별
  • 커뮤니티 스팸 필터링
  • 학술 논문 표절 검사 보조
AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 03. 03.수집 2026. 03. 04.출처 타입 RSS

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.