← Back to projects
2024.07.01 - 2024.07.24 · DACON · SW중심대학 디지털 경진대회 · 전국 7위 (후원기업상)

생성 AI의 가짜 음성 검출 및 탐지

생성 AI 기술로 합성된 가짜(Fake) 음성을 실제(Real) 음성과 구별하는 분류 모델 개발. Noise Overlay, Pseudo Labeling 등 다양한 기법으로 제한된 데이터 환경에서 성능을 극대화하였다.

Overview

최근 생성 AI 기술의 발전으로 가짜 음성 합성이 점점 정교해지고 있다. 가짜 음성을 통해 유명인의 음성을 모방하거나 중요 인사의 발언을 조작할 수 있어 개인 및 기업의 명예 실추, 금전적 피해, 사회적 혼란 등 다양한 문제를 야기할 수 있다.

본 프로젝트는 DACON에서 주최한 SW중심대학 디지털 경진대회(2024)의 「SW와 생성 AI의 만남 - 생성 AI의 가짜(Fake) 음성 검출 및 탐지」 대회 참가 프로젝트로, 제한된 데이터 환경에서 Noise Overlay, Pseudo Labeling 등 다양한 기법을 적용하여 전국 7위(후원기업상)를 달성하였다.

데이터 분석 (Data Analysis)

샘플 당 음성 개수 차이
샘플 당 음성 개수 차이 - Train은 1개, Test·Unlabeled는 최대 2개
방음 환경 여부 스펙트로그램 비교
방음 환경 여부 - Train은 방음 환경만 존재, Test·Unlabeled는 방음·비방음 혼재
Train data의 Fake/Real 음성 길이 분포
Train data의 Fake(빨강)·Real(파랑) 음성 길이 분포 - 0~39초로 다양하며 Fake는 1~2초에, Real은 3~4초에 편중

Approach

데이터 분석 및 전처리

Mel-Spectrogram, MFCC, CQT 비교
Audio Transformation 비교 - Mel-Spectrogram / MFCC / CQT
훈련 데이터셋 구성 다이어그램
훈련 데이터셋 구성 - Fake/Real 조합 overlay + Unlabeled noise 추출

AI 모델링

AST(Audio Spectrogram Transformer) 모델 구조
AST 모델 구조 - CQT 스펙트로그램을 패치 단위로 분할해 Transformer Encoder에 입력 (Gong, Chung & Glass, 2021)
pad2D 데이터 증강 예시
pad2D - 5초 미만/초과 음성 길이를 5초로 통일
CutMix, MixUp 데이터 증강 예시
CutMix(좌) / MixUp(우) - CQT로 변환된 음성 2개를 결합
Pseudo Labeling 기반 Semi-supervised Learning 개념도
Pseudo Labeling - Labeled Data로 학습한 모델이 Unlabeled Data에 라벨을 부여해 학습 데이터에 합류
Augmentation 기법별 Accuracy 개선
AugmentationAccuracy개선폭
Base93.04%-
Train data + Noise Overlay94.48%+1.44
2 Voice Overlay94.53%+1.49
CutMix94.29%+1.25
Pseudo Label95.23%+2.19
pad2D95.42%+2.38
MixUp96.52%+3.48
Role (팀원) 데이터 분석 및 전처리: Train data 구조적 문제점 분석, Audio Transformation 비교, Noise Extractor 설계 및 Noise Overlay, 조합 오디오 증강  |  AI: pad2D 함수 설계, CutMix/Mixup 실험, Pseudo Labeling 적용

Tech Stack

Ubuntu Python PyTorch Docker AST Wav2vec2 Silero VAD STFT / MFCC / CQT Pseudo Labeling Noise Overlay CutMix / Mixup Semi-supervised Learning

Team

국립한밭대학교 정보통신공학과 연구실 AiRLab (총 5명)

Results & Insights