Speaker Diarization NeMo Pyannote Multilingual Performance Evaluation

화자 분리 모델 실전 비교 평가

Ashar Mirza - VoicePing 4 분 읽기
화자 분리 모델 실전 비교 평가

NeMo MSDD와 Pyannote 3.1을 6개의 실제 운영 시나리오에서 비교 평가한 기술 보고서입니다.

테스트 구성: 6개 시나리오, 5개 언어(EN, JA, KO, VI, ZH), 3개 모델 하드웨어: NVIDIA GeForce RTX 4090 날짜: 2025년 12월

요약

3개의 화자 분리 모델을 6개 시나리오에서 평가했습니다.

모델설명평균 DER평균 RTF
NeMo Neural (MSDD)신경망 정제를 포함한 Multi-Scale Diarization Decoder0.0810.020
NeMo ClusteringMSDD 없이 클러스터링만 사용0.1030.010
Pyannote 3.1엔드투엔드 화자 분리 파이프라인0.1810.027

핵심 발견:

  • NeMo Neural이 최고 정확도와 빠른 처리 속도를 동시에 달성
  • 일본어는 긴 컨텍스트에서 개선: 30분 이상 오디오에서 성능 향상
  • 일본어를 제외한 다국어 처리에서 우수한 결과 (DER: 0.050)

1. 서론

프로덕션 환경에 적용할 화자 분리 모델을 선정하기 위해 실제 운영 조건을 반영한 6가지 시나리오에서 평가를 수행했습니다.

  • 다양한 오디오 길이 (10분~1시간)
  • 다양한 화자 수 (4~14명)
  • 다양한 중첩 비율 (0%~40%)
  • 다국어 오디오 혼합

2. 테스트 대상 모델

NeMo Neural (MSDD)

  • TitaNet-large 기반 192차원 화자 임베딩
  • 5개의 시간 스케일(1.0초~3.0초 윈도우)로 오디오 처리
  • MSDD 신경망이 초기 클러스터링 결과를 정제
  • 평균 RTF: 약 0.015~0.032

NeMo Clustering (순수 클러스터링)

  • 동일한 임베딩 모델 (TitaNet-large)
  • MSDD 정제 없이 스펙트럼 클러스터링만 사용
  • 신경망 정제를 건너뛰어 상당히 빠름
  • 평균 RTF: 약 0.014~0.028

Pyannote 3.1

  • VAD, 세그멘테이션, 클러스터링을 포함한 엔드투엔드 파이프라인
  • pyannote/segmentation-3.0 및 wespeaker 모델 사용
  • 평균 RTF: 약 0.018~0.043

3. 평가 설정

3.1 테스트 시나리오

시나리오길이화자 수중첩목적
장시간 오디오10분4~515%표준 프로덕션
초장시간30분10~1215%스트레스 테스트
1시간 오디오60분12~1415%극한 길이 테스트
높은 중첩15분8~1040%최악 케이스 중첩
다국어 (5개 언어)15분820%EN+JA+KO+VI+ZH
다국어 (4개 언어)15분820%EN+KO+VI+ZH (JP 제외)

3.2 평가 지표

정확도 지표:

  • DER Full (collar=0.0초): 가장 엄격한 지표, 경계 허용 없음
  • DER Fair (collar=0.25초): 주요 지표, 250ms 허용
  • DER Forgiving (collar=0.25초, 중첩 무시): 가장 관대함

DER 구성 요소:

  • Miss Rate: 시스템이 놓친 음성
  • False Alarm Rate: 비음성을 음성으로 오판
  • Confusion Rate: 잘못된 화자에 할당된 음성

4. 전체 성능

4.1 정확도 비교

전체 시나리오 DER 비교

주요 관찰:

  • NeMo Neural이 Pyannote보다 약 55% 더 정확 (DER: 0.081 vs 0.181)
  • NeMo Clustering도 Neural에 근접한 성능 (단 27% 차이)
  • Pyannote의 Confusion Rate이 3.4배 더 높음

4.2 처리 속도 비교

처리 속도 비교 (RTF - 낮을수록 빠름)

  • NeMo Clustering이 가장 빠름 (RTF 0.010)
  • NeMo Neural도 매우 빠름 (RTF 0.020)
  • 모든 모델이 실시간보다 훨씬 빠름

4.3 정확도 vs 속도 트레이드오프

정확도 vs 속도 트레이드오프

핵심 발견: NeMo Neural이 최고 정확도와 빠른 속도를 동시에 달성하여, 대부분의 사용 사례에서 최적의 선택입니다.

5. 시나리오별 결과

5.1 장시간 오디오 (10분)

NeMo Neural 언어별 결과:

  • EN: 0.019 (우수)
  • JA: 0.157 (영어 대비 8.3배 어려움)
  • KO: 0.046
  • VI: 0.037
  • ZH: 0.053
  • 평균: 0.062

5.2 초장시간 오디오 (30분)

핵심 발견 - 일본어는 긴 컨텍스트에서 개선:

  • 10분 오디오: DER 0.157 (영어 대비 8.3배 어려움)
  • 30분 오디오: DER 0.067 (영어 대비 2.9배 어려움)

긴 오디오는 피치 악센트 언어 모델링에 효과적인 음향 컨텍스트를 제공합니다.

5.3 높은 중첩 (40%)

  • NeMo Neural과 Clustering이 거의 동일한 성능 (DER: 0.114 vs 0.115)
  • Pyannote가 더 어려워함 (DER: 0.202, NeMo 대비 약 77% 나쁨)
  • 일본어가 가장 어려운 언어 (DER: 0.232)

6. 언어별 분석

언어별 난이도 순위

주요 관찰:

  • 일본어가 전반적으로 가장 어려움 (영어 대비 평균 5.0배)
  • 영어가 가장 쉬움 (DER: 0.037)
  • 베트남어가 근소한 차이로 2위 (영어 대비 1.1배만 어려움)

일본어가 어려운 이유

다양한 오디오 길이에서의 일본어 성능

가설:

  1. 피치 악센트 언어: 피치가 언어적 의미를 담아 화자 임베딩에 혼란
  2. 좁은 음운 체계: 약 100개 모라 vs 영어의 수천 개 음소
  3. 짧은 음절 지속 시간: 발화 턴당 시간적 컨텍스트 부족

7. Neural 방식 vs Clustering 방식

Neural과 Clustering 성능 비교

주요 발견:

  • Clustering이 평균 3%만 열등
  • Clustering이 2배 빠른 처리
  • 속도/정확도 트레이드오프가 미미

권장 사항:

  • 최고 정확도: NeMo Neural
  • 최고 속도: NeMo Clustering (2배 빠름, 3% 성능 차이)

8. 다국어 성능

8.1 일본어의 영향

일본어 포함/제외 시 다국어 성능

핵심 통찰: 일본어가 다국어 화자 분리를 어렵게 만드는 주요 요인입니다.

구성NeMo Neural DER
일본어 포함 (5개 언어)0.142
일본어 제외 (4개 언어)0.050

8.2 오류 분석

일본어 포함/제외 시 오류 내역

4개 언어 다국어가 좋은 성과를 보이는 이유:

  1. 음향적 다양성이 VAD의 음성 경계 탐지를 지원
  2. 언어 전환이 자연스러운 세그먼트 경계를 제공
  3. EN, KO, VI, ZH는 호환 가능한 음향 특성 보유
  4. 일본어의 피치 악센트 특성이 교차 언어 화자 혼동을 유발

9. 결론

핵심 결론

NeMo Neural이 최적의 선택:

  • 최고 정확도: DER 0.081 (평균)
  • 빠른 처리: RTF 0.020 (실시간의 50배)
  • 일본어 제외 다국어에서 우수: DER 0.050

주요 발견:

  1. 일본어는 긴 컨텍스트에서 크게 개선 (30분이 최적)
  2. 일본어 포함 다국어는 어렵지만 (DER 0.142) 관리 가능
  3. MSDD 신경망 정제는 클러스터링 대비 소폭 개선 (27% 향상)
  4. 모든 모델이 빠르고 프로덕션 준비 완료

권장 사항

사용 사례모델이유
최고 정확도NeMo NeuralDER 0.081
최고 속도NeMo Clustering2배 빠름
장시간 오디오 (30분~1시간)NeMo Neural복잡성 대응
다국어 (일본어 제외)NeMo NeuralDER 0.050
일본어 (30분 이상)NeMo Neural컨텍스트가 도움

기본 선택: NeMo Neural - 최고 정확도와 빠른 처리를 겸비.

이 기사 공유

VoicePing 무료로 시작하기

AI 번역으로 언어 장벽을 넘어보세요. 지금 무료로 시작하세요.

무료로 시작