오디오 평가 — WER, MOS, MMAU, 리더보드

측정할 수 없는 것은 배포할 수 없습니다. 이 lesson은 모든 오디오 과제의 2026년 평가 지표(metric)를 정리합니다. 음성 인식(ASR)에서는 WER, CER, RTFx를, 음성 합성(TTS)에서는 MOS, UTMOS, SECS, WER-on-ASR-round-trip을, 오디오-언어 모델에서는 MMAU와 LongAudioBench를, 음악 생성에서는 FAD와 CLAP을, 화자 인식에서는 EER을 다룹니다. 비교 기준이 되는 리더보드(leaderboard)도 함께 살펴봅니다.

유형: Learn 언어: Python 선수 지식: Phase 6 · 04, 06, 07, 09, 10; Phase 2 · 09 (Model Evaluation) 예상 시간: 약 60분

학습 목표

  • 오디오 과제마다 주요(primary) 지표와 보조(secondary) 지표를 골라 사용할 수 있습니다.
  • WER, CER, MOS, UTMOS, SECS, EER, DER, FAD, MMAU-Pro를 설명할 수 있습니다.
  • 지연(latency)을 평균이 아니라 P50/P95/P99 분포로 보고해야 한다는 점을 이해합니다.
  • 공개 벤치마크(public benchmark)와 사내 보류 세트(in-house held-out set)를 함께 운영할 수 있습니다.

문제

모든 오디오 과제(task)에는 여러 평가 지표가 있고, 각 지표는 서로 다른 축을 측정합니다. 잘못된 지표를 고르면 대시보드(dashboard)에서는 좋아 보이지만 실제 운영(production) 환경에서는 형편없는 모델을 배포하게 됩니다. 2026년 기준으로 표준이 되는 목록은 다음과 같습니다.

과제(Task)주요 지표(Primary)보조 지표(Secondary)
ASRWERCER · RTFx · first-token latency
TTSMOS / UTMOSSECS · WER-on-ASR-round-trip · CER · TTFA
Voice cloningSECS (ECAPA cosine)MOS · CER
Speaker verificationEERminDCF · FAR / FRR at operating point
DiarizationDERJER · speaker confusion
Audio classificationtop-1 · mAPmacro F1 · per-class recall
Music generationFADCLAP · listening panel MOS
Audio language modelMMAU-ProLongAudioBench · AudioCaps FENSE
Streaming S2Slatency P50/P95WER · MOS

사전 테스트

2문제 · 이 강의를 시작하기 전에 얼마나 알고 있는지 확인해보세요

1.지연 시간(latency)을 단순 평균이 아닌 P50/P95/P99 백분위수(percentile)로 보고하는 것이 선호되는 이유는 무엇인가요?

2.WER(Word Error Rate; 단어 오류율)은 무엇을 측정하며, 계산 전에 텍스트를 정규화(normalize)해야 하는 이유는 무엇인가요?

0/2 답변 완료

개념

audio evaluation — one metric per task, one leaderboard per metric ASR primary: WER (normalized) CER for tone langs speed: RTFx latency: first-token ms Open ASR Leaderboard Parakeet 6.05% avg WER Whisper-v3-turbo 1.58% LS Canary-Qwen 5.63% avg TTS primary: MOS / UTMOS SECS (cloning) round: ASR-WER on output latency: TTFA ms TTS Arena · Artificial Analysis Inworld TTS-1.5 ELO 1236 Kokoro-82M ELO 1059 ElevenLabs v3 ELO 1179 speaker + diarization primary: EER minDCF diariz: DER / JER overlap: per-segment F1 VoxCeleb1-O / VoxSRC ECAPA 0.87% EER 3D-Speaker 0.50% EER pyannote Precision-2 < 0.40% audio classification exclusive: top-1, top-5 multi: mAP imbalanced: macro F1 per-class recall HEAR · AudioSet · ESC-50 BEATs-iter3 AudioSet 0.548 Audio-MAE Speech Cmd 99.0% BEATs ESC-50 97.0% music generation primary: FAD (Fréchet Audio Distance) CLAP (text-audio alignment) consumer: blind-panel MOS / ELO Suno v5 ELO 1293 (quality leader) Udio v4 — producer tools + stems MusicGen-large on MusicCaps ~4.5 FAD always pair FAD with human MOS panel open: ACE-Step XL / YuE / Stable Audio Open audio-language + streaming LALM reasoning: MMAU-Pro (1800 Q) long-audio: LongAudioBench captioning: FENSE / SPICE / CIDEr Gemini 2.5 Pro ~60% MMAU-Pro overall GPT-4o Audio 52.5% — Qwen2.5-Omni 52.2% multi-audio subset: ~22% ALL models (near random) streaming S2S: latency P50/P95 + WER Moshi 200 ms L4 · GPT-4o Realtime ~300 ms

음성 인식(ASR) 지표

WER(Word Error Rate; 단어 오류율). 공식은 (S + D + I) / N 입니다. 점수를 매기기 전에 소문자 변환, 구두점 제거, 숫자 정규화(normalization)를 수행합니다. jiwer 라이브러리나 OpenAI의 whisper_normalizer를 사용합니다. 낭독체(read speech)에서 5% 미만이면 인간 수준(human-parity)에 가깝다고 봅니다.

CER(Character Error Rate; 문자 오류율). 같은 공식을 문자 단위로 적용합니다. 단어 분절(word segmentation)이 모호한 성조 언어, 예를 들어 만다린(Mandarin)이나 광둥어(Cantonese)에서 주로 사용합니다.

RTFx(inverse real-time factor; 역실시간 비율). 실시간(wall-clock) 1초 동안 처리한 오디오 초 수입니다. 높을수록 좋습니다. Parakeet-TDT는 3380×, Whisper-large-v3는 약 30× 수준입니다.

First-token latency(첫 토큰 지연). 오디오 입력이 들어온 시점부터 첫 전사(transcript) 토큰이 나오기까지 걸린 실측 시간입니다. 스트리밍(streaming) 환경에서 중요합니다. Deepgram Nova-3는 약 150 ms입니다.

음성 합성(TTS) 지표

MOS(Mean Opinion Score; 평균 의견 점수). 사람이 매기는 1~5점 평정입니다. 신뢰도가 가장 높은 기준(gold standard)이지만 수집이 느립니다. 보통 모델당 100개 이상 샘플에, 샘플마다 청취자 20명 이상의 평가를 모읍니다.

UTMOS(2022–2026). 학습된 MOS 예측기입니다. 표준 벤치마크에서 사람이 매긴 MOS와 약 0.9 수준의 상관(correlation)을 보입니다. F5-TTS는 UTMOS 3.95, 정답 음원(ground truth)은 4.08입니다.

SECS(Speaker Encoder Cosine Similarity; 화자 인코더 코사인 유사도). 음성 복제(voice cloning) 평가에 씁니다. 참조 음성(reference)과 복제된 출력(cloned output)의 ECAPA 임베딩(embedding) 코사인 값입니다. 0.75를 넘으면 알아볼 수 있는 수준의 복제로 평가합니다.

WER-on-ASR-round-trip(왕복 인식 WER). TTS 출력을 Whisper에 다시 입력해 원본 텍스트와 WER을 계산합니다. 명료도(intelligibility) 저하를 잡아냅니다. 2026년 SOTA는 CER 2% 미만 수준입니다.

TTFA(time-to-first-audio; 첫 오디오까지 지연). 첫 오디오가 나오기까지 걸리는 실측 시간입니다. Kokoro-82M은 약 100 ms, F5-TTS는 약 1초입니다.

음성 복제(Voice cloning) 전용 지표

SECS + MOS + CER 을 세 묶음으로 함께 봅니다. SECS는 높지만 MOS가 낮다면 음색(timbre)은 맞지만 부자연스러운 합성이라는 뜻이고, 반대로 SECS가 낮고 MOS가 높다면 자연스럽지만 화자가 다른 결과라는 뜻입니다.

화자 인증(Speaker verification)

EER(Equal Error Rate; 동등 오류율). 오인식률(False Accept Rate; FAR)과 오거부율(False Reject Rate; FRR)이 같아지는 임계값에서의 오류율입니다. ECAPA가 VoxCeleb1-O에서 0.87%를 기록했습니다.

minDCF(min Detection Cost; 최소 탐지 비용). 선택한 운영 지점(operating point)에서의 가중 비용입니다. 흔히 FAR=0.01 같은 지점을 사용합니다. 실제 운영 환경에서는 EER보다 더 직접적인 의미를 가집니다.

화자 분할(Diarization)

DER(Diarization Error Rate; 화자 분할 오류율). (FA + Miss + Confusion) / total_speaker_time 입니다. 누락된 발화, 잘못 검출된 발화, 화자 혼동을 각각 비율로 합산한 값입니다. AMI 회의 데이터에서 DER 10~20%면 현실적인 수준입니다. pyannote 3.1과 상용 제품인 Precision-2는 잘 녹음된 오디오에서 DER 10% 미만을 기록합니다.

JER(Jaccard Error Rate; 자카드 오류율). DER의 대안으로, 짧은 구간 편향(short-segment bias)에 더 견고합니다.

오디오 분류(Audio classification)

다중 레이블(multi-label) 분류에서는 전체 클래스에 대한 mAP(mean Average Precision; 평균 정밀도) 를 봅니다. AudioSet에서는 BEATs-iter3가 0.548 mAP를 기록합니다.

배타적 다중 클래스(multi-class exclusive) 분류에서는 top-1, top-5 정확도 를 봅니다. Speech Commands v2에서는 Audio-MAE가 top-1 99.0%입니다.

클래스 불균형이 심한 상황에서는 macro F1클래스별 재현율(per-class recall) 을 함께 봅니다. 클래스별로 보고해야 합니다. 전체 정확도만 보면 어떤 클래스가 실패하는지 가려집니다.

음악 생성(Music generation)

FAD(Fréchet Audio Distance; 프레셰 오디오 거리). 실제 오디오와 생성 오디오의 VGGish 임베딩 분포 사이 거리입니다. MusicGen-small은 MusicCaps에서 4.5, MusicLM은 4.0입니다. 값이 낮을수록 좋습니다.

CLAP Score. CLAP 임베딩을 사용한 텍스트-오디오 정합 점수입니다. 0.3을 넘으면 합리적인 정합 수준으로 봅니다.

Listening panel MOS(청취 패널 MOS). 소비자급 음악(consumer-grade music)의 최종 판단은 여전히 사람의 선호입니다. Suno v5는 사람 비교 투표 기반의 TTS Arena에서 ELO 1293을 기록합니다.

오디오-언어 모델 벤치마크

MMAU(Massive Multi-Audio Understanding; 대규모 다중 오디오 이해). 10,000개의 오디오-QA 쌍으로 구성됩니다.

MMAU-Pro. speech / sound / music / multi-audio 네 가지 범주에 걸친 1,800개의 어려운 항목입니다. 4지선다 무작위 정답률은 25%입니다. Gemini 2.5 Pro 전체 점수가 약 60%이며, multi-audio 항목은 거의 모든 모델이 약 22%대에 머무릅니다.

LongAudioBench. 수 분 길이의 오디오 클립에 의미 단위 질의(semantic query)를 던지는 벤치마크입니다. Audio Flamingo Next가 Gemini 2.5 Pro를 앞섭니다.

AudioCaps / Clotho. 캡셔닝(captioning) 벤치마크입니다. SPICE, CIDEr, FENSE 같은 지표를 사용합니다.

스트리밍 음성-음성(Streaming speech-to-speech)

지연 P50 / P95 / P99. 사용자 발화가 끝난 시점부터 들리는 첫 응답까지의 실측 시간입니다. Moshi는 200 ms, GPT-4o Realtime은 300 ms 수준입니다.

WER / MOS 를 출력 음성에 대해 측정합니다.

Barge-in responsiveness(끼어들기 반응성). 사용자가 말을 끊은 시점부터 어시스턴트가 음소거되기까지의 시간입니다. 목표는 150 ms 미만입니다.

2026년 리더보드

리더보드트랙URL
Open ASR Leaderboard (HF)영어 + 다국어 + 장시간 음성huggingface.co/spaces/hf-audio/open_asr_leaderboard
TTS Arena (HF)영어 TTShuggingface.co/spaces/TTS-AGI/TTS-Arena
Artificial Analysis SpeechTTS + STT, 사람 비교 투표 기반 ELOartificialanalysis.ai/speech
MMAU-ProLALM 추론mmaubenchmark.github.io
SpeakerBench / VoxSRC화자 인식voxsrc.github.io
MMAU music subset음악 LALM(MMAU 내부 서브셋)
HEAR benchmark자기지도(self-supervised) 오디오hearbenchmark.com

직접 만들기

Step 1: 정규화를 포함한 WER

from jiwer import wer, Compose, ToLowerCase, RemovePunctuation, Strip

transform = Compose([ToLowerCase(), RemovePunctuation(), Strip()])
score = wer(
    truth="Please turn on the lights.",
    hypothesis="please turn on the light",
    truth_transform=transform,
    hypothesis_transform=transform,
)
# 약 0.17

Step 2: TTS 왕복 WER

def ttr_wer(tts_model, asr_model, texts):
    errors = []
    for txt in texts:
        audio = tts_model.synthesize(txt)
        recog = asr_model.transcribe(audio)
        errors.append(wer(truth=txt, hypothesis=recog))
    return sum(errors) / len(errors)

Step 3: 음성 복제용 SECS

from speechbrain.inference.speaker import EncoderClassifier
sv = EncoderClassifier.from_hparams("speechbrain/spkrec-ecapa-voxceleb")

emb_ref = sv.encode_batch(load_wav("reference.wav"))
emb_clone = sv.encode_batch(load_wav("cloned.wav"))
secs = torch.nn.functional.cosine_similarity(emb_ref, emb_clone, dim=-1).item()

Step 4: 음악 생성용 FAD

from frechet_audio_distance import FrechetAudioDistance
fad = FrechetAudioDistance()
score = fad.get_fad_score("generated_folder/", "reference_folder/")

Step 5: 화자 인증용 EER (Lesson 6과 같은 코드)

def eer(same_scores, diff_scores):
    thresholds = sorted(set(same_scores + diff_scores))
    best = (1.0, 0.0)
    for t in thresholds:
        far = sum(1 for s in diff_scores if s >= t) / len(diff_scores)
        frr = sum(1 for s in same_scores if s < t) / len(same_scores)
        if abs(far - frr) < best[0]:
            best = (abs(far - frr), (far + frr) / 2)
    return best[1]

사용하기

배포(deploy)할 때마다 함께 돌아가는 고정된 평가 하네스(eval harness)를 두어야 합니다. 모델이 갱신될 때마다 자동으로 같은 지표가 계산되어야 합니다. 기본 원칙은 세 가지입니다.

  1. 점수 산출 전에 정규화하기(Normalize before scoring). 소문자 변환, 구두점 제거, 숫자 표기 통일을 거치고 사용한 정규화 규칙을 함께 보고합니다.
  2. 평균이 아니라 분포로 보고하기(Report distributions, not averages). 지연은 P50/P95/P99로, 분류는 클래스별 재현율로, MMAU는 범주별로 보고합니다.
  3. 표준 공개 벤치마크 하나는 반드시 돌리기(Run one canonical public benchmark). 운영 데이터가 다르더라도 Open ASR / TTS Arena / MMAU 같은 공개 벤치마크 결과를 함께 제시해야 검토자가 동일 조건에서 비교할 수 있습니다.

흔한 함정

  • UTMOS 외삽(extrapolation). UTMOS는 VCTK 스타일의 깨끗한 음성으로 학습되었습니다. 잡음이 있거나, 복제되었거나, 감정 표현이 강한 음성은 부정확하게 평가할 수 있습니다.
  • MOS 패널 편향(panel bias). Amazon Mechanical Turk 작업자 20명은 실제 타깃 사용자 20명과 다릅니다. 중요한 결정이 걸려 있다면 도메인(domain) 패널에 비용을 들여야 합니다.
  • FAD의 참조 세트 의존성. 모델 간 비교에는 반드시 같은 참조 분포를 사용해야 합니다.
  • WER 평균값의 함정. 전체 평균이 5%인 WER 뒤에 억양이 강한 발화에서 30% WER이 숨어 있을 수 있습니다. 인구통계 슬라이스(demographic slice)별로 나눠 보고합니다.
  • 공개 벤치마크 포화(saturation). 최전선(frontier) 모델은 표준 벤치마크에서 이미 한계에 가깝습니다. 자사 트래픽을 반영한 사내 보류 세트를 별도로 만들어야 합니다.

산출물 만들기

outputs/skill-audio-evaluator.md로 저장합니다. 오디오 모델 출시 때 사용할 지표, 벤치마크, 보고 형식을 골라주는 skill입니다.

연습문제

  1. 쉬움. code/main.py를 실행합니다. 토이 입력(toy input)에 대해 WER / CER / EER / SECS / FAD-유사 / MMAU-유사 점수를 계산합니다.
  2. 중간. TTS 왕복 WER 하네스를 직접 만듭니다. Kokoro 또는 F5-TTS의 출력을 Whisper에 다시 넣고 50개 프롬프트에 대한 WER을 계산합니다. WER이 10%를 넘는 프롬프트는 따로 표시합니다.
  3. 어려움. Lesson 10에서 고른 LALM을 MMAU-Pro의 speech와 multi-audio 서브셋 각 50개에 대해 평가합니다. 범주별 정확도를 보고하고 공식 발표 수치와 비교합니다.

핵심 용어

용어흔한 설명실제 의미
WER음성 인식 점수정규화 후 단어 단위 (S+D+I)/N.
CER문자 단위 WER성조 언어 또는 문자 단위 시스템에서 사용.
MOS사람의 주관 평가1~5점 평정. 청취자 20명 이상 × 샘플 100개 이상이 권장.
UTMOS머신러닝 기반 MOS 예측기학습된 모델로, 사람 MOS와 약 0.9 상관.
SECS음성 복제 유사도참조 음성과 복제 음성의 ECAPA 코사인.
EER화자 인증 점수FAR = FRR이 되는 임계값에서의 오류율.
DER화자 분할 점수(FA + Miss + Confusion) / total.
FAD음악 생성 품질VGGish 임베딩 위에서의 Fréchet 거리.
RTFx처리량(throughput)실시간 1초당 처리한 오디오 초 수.

더 읽을거리

실습 코드

이 강의의 실습 코드 1개

main
Code

산출물

이 강의에서 생성된 프롬프트, 스킬, 코드 산출물 1개

audio-evaluator

Pick metrics, benchmarks, normalization rules, and reporting format for any audio model release.

Skill

확인 문제

3문제 · 모두 맞추면 완료 표시가 가능합니다

1.음성 복제(voice cloning) 시스템이 SECS(화자 인코더 코사인 유사도; Speaker Encoder Cosine Similarity) 0.88이지만 MOS(평균 의견 점수; Mean Opinion Score) 2.1을 보입니다. 이 조합은 시스템 출력에 대해 무엇을 말해 주나요?

2.한 팀이 ASR 모델의 테스트 세트 전체 WER이 5%라고 보고합니다. 동료가 인구통계 슬라이스(demographic slice)별 WER 분해를 요청합니다. 이것이 중요한 이유는 무엇인가요?

3.운영 오디오 팀이 사내 보류 세트(in-house held-out set)를 이미 갖고 있는데도 표준 공개 벤치마크(예: Open ASR Leaderboard)를 함께 돌려야 하는 이유는 무엇인가요?

0/3 답변 완료

추가 문제 풀기

AI가 강의 내용을 바탕으로 새로운 문제를 생성합니다