Project

Archived

AI 보이스피싱 판단 서비스

데이터 부족과 문장 길이 편향을 분석해 증강·샘플링 전략을 설계하고, 2단계 ML·DL 분류와 Django 웹 서비스로 연결한 팀 프로젝트입니다.

PythonMachine LearningNLPDjango
담당 범위
팀장 · 데이터 파이프라인·모델링·웹 서비스 및 협업 운영
공개일
2025.09.15.
최근 업데이트
2026.07.15.

해결한 문제

보이스피싱 통화 데이터는 개인정보 제약으로 충분히 확보하기 어려웠고, 확보한 보이스피싱·일반 통화 데이터의 길이 분포 차이가 모델의 편향으로 이어질 수 있었습니다. 클래스별 데이터 수와 길이 분포를 먼저 확인한 뒤 데이터 구성 자체를 모델링 문제의 핵심으로 다뤘습니다.

데이터와 모델링

  • 실제 보이스피싱 데이터와 생성 데이터를 결합하고 역번역 기반 증강을 적용
  • 일반 통화 데이터는 보이스피싱과 유사한 전화상담 비중과 길이 분포를 고려해 언더샘플링
  • KiWi 형태소 분석과 TF-IDF 벡터화
  • K-fold 교차검증과 여러 머신러닝 모델 비교
  • 1차 stacking ensemble의 보류 구간을 2차 mBERT ensemble이 다시 판단하는 단계형 구조

당시 프로젝트 기록에는 1차 모델 Recall 97.6%, F1-score 98.8%, FN 12건, 2차 모델 Recall 98.6%, F1-score 99.0, FN 7건이 남아 있습니다. 이 수치는 당시 프로젝트의 평가 데이터와 조건에서 얻은 기록이며 일반 서비스 정확도로 확대 해석하지 않습니다.

웹 서비스

Django 기반 웹 애플리케이션에서 음성 파일 업로드 → VITO API STT → 1·2차 모델 판단 → LLM 안내 메시지 생성 → 보이스피싱 여부·유형·대응 안내 → 사용자 feedback 흐름을 구성했습니다.

팀장 역할

공동 문서와 개발 환경을 정리하고 Git 사용 가이드를 공유했으며, Scrum·WBS·RACI를 활용해 역할과 일정을 가시화했습니다. 데이터 증강·샘플링·모델 선택의 근거와 실험 결과를 팀이 재현할 수 있도록 기록하는 데 집중했습니다.

Related