Skip to main content

Author

Taishin Maeda - Waseda University

Abstract

ဤစာတမ်းသည် state-of-the-art open-source speaker diarization frameworks နှစ်ခုကို evaluate ပြီး compare လုပ်ပါသည်: Pyannote.audio နှင့် Nvidia Nemo။ Evaluation သည် Diarization Error Rate (DER), execution time နှင့် GPU resource usage တို့ကို audio scenarios အမျိုးမျိုးတွင် focus လုပ်ပါသည်။ ထို့အပြင် diarization accuracy improve လုပ်ရန် OpenAI ၏ GPT-4-Turbo အသုံးပြုသော post-processing approach ကို explore လုပ်ပါသည်။ အဓိက ရလဒ်များ:
  • Nvidia Nemo သည် 2-speaker scenarios အတွက် ~9% lower DER ရရှိသည်
  • Pyannote.audio သည် multi-speaker (9+) scenarios အတွက် better perform လုပ်သည်
  • GPT-4-Turbo post-processing သည် potential ပြသော်လည်း audio context integration လိုအပ်သည်
  • Real-time speaker diarization web application demonstrate လုပ်ခဲ့ပြီး

1. Introduction

Speaker Diarization ဆိုသည်မှာ

Speaker Diarization သည် audio ကို different speakers များအပေါ်အခြေခံ၍ segment ပြီး label လုပ်သည့် process ဖြစ်ပြီး - given audio တွင် “who spoke when?” ဆိုသည့် မေးခွန်းကို ဖြေပေးပါသည်။ ၎င်းသည် Automatic Speech Recognition (ASR) နှင့် တွဲဖက်သော crucial conversation analysis tool ဖြစ်ပါသည်။
Speaker Diarization Pipeline
Speaker diarization system တွင် ပါဝင်သည်:
  1. Voice Activity Detection (VAD) - Speech occur ဖြစ်သော timestamps
  2. Audio Embeddings Model - Timestamped segments များမှ embeddings extract လုပ်သည်
  3. Clustering - Speaker count estimate လုပ်ရန် embeddings များ group လုပ်သည်

Frameworks များ နှိုင်းယှဉ်ခြင်း

ComponentPyannote.audioNvidia Nemo
VADPyannet from SyncnetMultilingual MarbleNet
Speaker EmbeddingECAPA-TDNNTitanet Large
ClusteringHidden Markov ModelMulti-scale Clustering (MSDD)

2. Evaluation Method

Diarization Error Rate (DER)

2000 ခုနှစ်တွင် NIST မှ introduce လုပ်ထားသော speaker diarization အတွက် standard metric:
DER = (False Alarm + Missed Detection + Confusion) / Total
Where:
  • False Alarm: Speech detected သော်လည်း speaker မရှိ
  • Missed Detection: Speech detect မဖြစ်သော်လည်း speaker ရှိသည်
  • Confusion: Speech ကို wrong speaker သို့ assign လုပ်သည်
Goal မှာ DER ကို 0 သို့ minimize လုပ်ခြင်း ဖြစ်ပြီး errors မရှိကြောင်း indicate လုပ်ပါသည်။

3. Experimental Setup

Datasets

  1. 5-minute audio - Speakers နှစ်ဦး (Obama-Zach interview), Audacity အသုံးပြု၍ manually annotated
  2. 9-minute audio - Professional ground truth ပါဝင်သော VoxConverse dataset မှ Speakers ကိုးဦး

Hardware

  • GPU: Nvidia GeForce RTX 3090
  • Python ၏ time module အသုံးပြု၍ Time measure

4. Results and Discussion

DER Results - Two Speakers (5 min)

FrameworkDER
Pyannote.audio0.252
Pyannote.audio (pre-identified speakers)0.214
Nvidia Nemo0.161
Nvidia Nemo (pre-identified speakers)0.161
Nvidia Nemo သည် two-speaker scenarios အတွက် Pyannote.audio ထက် approximately 9% less DER produce လုပ်ပါသည်။

DER Results - Nine Speakers (9 min)

FrameworkDER
Pyannote.audio0.083
Pyannote.audio (pre-identified speakers)0.098
Nvidia Nemo (pre-identified speakers)0.097
Multi-speaker scenarios အတွက် Pyannote.audio သည် Nvidia Nemo ထက် ~1.4% lower DER ရရှိသည်။

Execution Time Performance

Framework5-min Audio9-min Audio
Pyannote.audio31.3s44.5s
Nvidia Nemo63.9s-
Nemo (pre-identified)49.9s108.2s
Nvidia Nemo သည် Pyannote.audio ထက် execution time approximately double ယူပါသည်။

5. Real-time Application

Real-time speaker diarization web application ကို develop လုပ်ခဲ့ပြီး:
  • Streaming audio အတွက် WebSockets
  • Backend အတွက် FastAPI
  • Diarization အတွက် Pyannote.audio
Better real-time performance အတွက် 30-second chunks အစား 3-second audio chunks အသုံးပြုပါသည်။

6. Conclusion

အဓိက တွေ့ရှိချက်များ

  1. Nvidia Nemo သည် speakers နည်းသော shorter audio တွင် excel ဖြစ်သည် (DER: 0.161 vs 0.252)
  2. Pyannote.audio သည် speakers ပိုများသောအခါနှင့် speaker count pre-identified ဖြစ်သောအခါ better perform လုပ်သည်
  3. GPT-4 post-processing သည် potential ပြသော်လည်း audio context integration လိုအပ်သည်
  4. Execution time: Pyannote.audio သည် approximately 2x faster ဖြစ်သည်
  5. Real-time application: Modified chunk logic သည် accuracy improve လုပ်သည်

Future Work

  1. Non-telephonic scenarios အတွက် Nvidia Nemo models ချိန်ညှိခြင်း
  2. GPT post-processing ထဲသို့ audio context integrate လုပ်ခြင်း
  3. Real-time applications အတွက် speaker identification thresholds fine-tune လုပ်ခြင်း
  4. Diarization tasks အတွက် train လုပ်ထားသော domain-specific LLMs explore လုပ်ခြင်း

References

  1. NIST Rich Transcription Evaluation (2022)
  2. Nvidia NeMo Documentation - Speaker Diarization
  3. Pyannote.audio GitHub Repository
  4. VoxConverse Speaker Diarization Dataset

Acknowledgments

  • Akinori Nakajima - VoicePing Corporation ၏ Representative Director
  • Melnikov Ivan - VoicePing Corporation ၏ AI Developer