CoolFace
Apppublic

gohanjanyan/speaker-diarization

sourceHugging Facemitupdated 3mo agoView on Hugging Face
0likes
App README

Streaming Speaker Diarization

Real-time speaker diarization system developed as part of my Master's thesis at Yerevan State University (Applied Statistics & Data Science, 2026).

What it does

Upload or select a WAV audio file the system detects who speaks when, marks speaker change points, displays a speaker timeline, and shows a transcript with speaker labels.

Architecture

This system is designed for streaming, low-latency inference not offline batch processing. The key design choices:

  • Frozen Emformer RNN-T encoder (pretrained ASR backbone) provides rich acoustic representations without retraining
  • Custom SCChangeHead (~148K trainable parameters) detects speaker change boundaries in the streaming embedding sequence
  • TitaNet-based speaker embeddings used for speaker identity verification via SCProjectionHead
  • Trained with custom loss functions including Gaussian-smoothed cross-entropy (σ=2.5–3.0), InfoNCE, and clean suppression loss

The frozen encoder means the system is 1–2 orders of magnitude lighter in trainable parameters compared to comparable streaming diarization systems.

Results

Evaluated on a custom A–B–A protocol using LibriSpeech:

MetricValue
F1 Score0.827
Real-Time Factor (RTF)0.62 on NVIDIA A100
Trainable Parameters~148K (SCChangeHead)

RTF < 1.0 means the system processes audio faster than real time suitable for live meeting transcription and audio intelligence applications.

How to use the demo

  1. 1.Select a WAV file from the list
  2. 2.Click Analyze
  3. 3.View the speaker timeline and labeled transcript

About

Greta Ohanjanyan M.Sc. Applied Statistics & Data Science — Yerevan State University 📧 greta.ohanjanyan2001@gmail.com 🤗 huggingface.co/gohanjanyan