24 DACON SW 중심대학 디지털 경진대회- Fake 음성 검출 및 탐지
음성 도메인의 다양한 현실적인 문제들을 맞닥뜨릴수 있던 대회
1. 대회 개요
🔺 주제 : 생성 AI의 가짜(Fake)음성 검출 및 탐지
🔺 기간 : 2024.07.01 ~ 2024.07.19
🔺 참가자 : SW 중심대학 학생(58개교)에서 각 선발된 7팀(최대) 출전 , 총 872명, 219팀 참가
학교에서 한 팀당 100만원을 내고 출전하는 대회라고 합니다..! 그래서 그런지 모집도 조심스럽게 조용히 됐습니다.

🔺팀원 구성: 인공지능 동아리 / CV 연구실에서 만난 교내 학부생 4명
작성자는 팀원으로서는 팀장을 돕기 위해 회의 / 자료 등을 기록하고 소통을 맡았습니다 :-)
해당 대회는 아쉬움이 남아 후기는 간단하게 회고하겠습니다 .
링크 : https://dacon.io/competitions/official/236253/talkboard
SW중심대학 디지털 경진대회_SW와 생성AI의 만남 : AI 부문 - DACON
분석시각화 대회 코드 공유 게시물은 내용 확인 후 좋아요(투표) 가능합니다.
dacon.io
음성 데이터의 fake 탐지 문제를 어렵게 꼬아놓은 대회 과제를 멋지게 풀어낸 방법은 링크로 수상자 인터뷰를 한번 구경해보세요 !
1.1 문제
🔺 5초 분량의 Test 샘플에서 영어 음성의 진짜(Real) 사람의 목소리와 생성 AI의 가짜(Fake) 사람의 목소리를
동시에 검출해내는 AI 모델을 개발해야합니다.
이렇게만 보면
| Real | Fake |
| 1 | 0 |
| 0 | 1 |

의 이진분류 문제같지만, 문제를 풀이해보면 다음과 같습니다.
💥 CHALLENGE
| 1️⃣ Train / Test 데이터셋의 소음 환경차이가 심함 |
| 2️⃣ Test 환경에서 동시발화 문제 - Label 1/1 |
| 3️⃣ Real 데이터에 비해 Fake 음성 길이가 너무 짧음 |
2. 진행
2.1. 진행 방식
🎁 모두 음성 데이터를 교내 인공지능 수업 과제에서 한번 말곤 접해본적이 없었습니다.
이에 다음과 같은 공유 틀을 만들었습니다.
🔺 음성 데이터 research
- Speaker diarization , Speech enhancement , survey 논문 등 공유

🔺 데이터 소유자 공유:Feature Extraction , 다양한 augmentation dataset
- mfcc - SR , mfcc 차원 수 변인 통제
✏️ train 데이터를 여러가지 방법으로 augmentation 시켰습니다.
✏️특징 추출하는데 MFCC(Mel-Frequency Cepstral Coefficients) 외에도 여러 가지 방법이 있습니다.
몇가지 특징을 추출하여 concat시킨 npy파일도 있었습니다.

2.2. 진행 & Challenge 해결
| 1️⃣ Train / Test 데이터셋의 소음 환경차이가 심함 2️⃣ Test 환경에서 동시발화 문제 - Label 1/1 |
🔺 Train을 Test에 맞추기
▫️ 어떻게든 랜덤 노이즈를 생성했지만 , 외부 데이터 사용 금지 이므로 랜덤 노이즈에는 한계가 있었습니다.
▫️ 동시 발화 Augmentation 수행(음성 합성) - real-real / real-fake / fake-fake 합성 수행
🔺 Test를 Train에 맞추기
▫️ 모든 Test Data에 Noise- Supression 모델 적용
▫️ pyannote 라이브러리 활용하여 Speaker 0명이면 라벨 fake : 0 / real : 0 적용
최종 파이프라인
▫️ Feature 선정
chromagram_feature, mfcc_feature,spectral_contrast_feature,tonnetz_feature를 concat
▫️ Model
머신러닝에서 앙상블 학습 기법 중 하나인 AdaBoost(Adaptive Boosting)
(+ Loss func : 대회에서 제시한 평가산식을 기반으로 Custom Loss를 제작)
3. 결론

🔺 PRIVATE : 48 / 219팀 , 상위 약 21 %
아쉽지만 그래도 2명이 바쁜 시기였는데도 리더보드에 제출하려 노력해줘서 감사합니다! 어려웠지만 재밌었어요 ~
🙇♀️ 느낀 점
1. 음성 데이터에 대하여
wav2vec 같은 음성 거대 모델 튜닝에 집중을 하느라 학습 시간 , 진행 시간을 소요한 저희 팀은 끝날때쯤에서야 깨달았습니다.
저희의 최종 파이프라인을 보시면 아시겠지만 , 음성 데이터는 모델보다도
▫️ EDA를 통한 특징 추출 목록 선정
▫️ EDA를 통한 distribution 조사 및 맞추기
가 중요한 사실을요 ..! 물론 그 밖에도 여러가지 solution들이 있겠지만 음성 데이터는 특히나 feature 공부가 필요하다는 것을 알게 되었습니다.
2. 대회 진행 방식에 대하여
아무래도 1일 5회 제출의 압박에 못이겨 매일 제출에 의의를 두느라 제대로된 회의를 못한거같은데 ,
feature extraction , data augmentation 을 다양하게 해보고 공유해보고 통제하는게 유리했습니다.
한정된 시간 내에 팀원끼리 공유가 원활하게 되지 못한 점은 아쉬웠지만 대회 진행 기간에 상황이 여의치 않아 어쩔 수 없다고 생각합니다.
음성 데이터에 대해 짧고 굵게 알아가던 시간이었고 ,
다양한 data modality를 경험하고자 했던 저에게 좋은 시간이었습니다 :-)