Zum Inhalt springen

Was ist Sprecherdiarisierung? Funktionsweise und Anwendungsfälle

Verfasst von
Jack Limebear
Veröffentlicht
Zuletzt aktualisiert

AnhörenArtikel anhören

Sprecherdiarisierung verarbeitet einen Audiostream mit einer unbekannten Anzahl von Sprechern und erstellt eine Zeitleiste beschrifteter Segmente: Sprecher A von 0:00 bis 0:42, Sprecher B von 0:42 bis 1:15, danach wieder Sprecher A ab 1:15. Das System weiß nicht, wer die Sprecher sind, erkennt aber, dass es verschiedene Personen sind, und hält ihre Labels über die gesamte Aufnahme hinweg konsistent.

Dieser Prozess macht Audio mit mehreren Sprechern nutzbar. Besprechungsnotizen, Callcenter-Analysen, Interviewtranskriptionen, Podcast-Bearbeitung und Rechtsdokumente hängen alle davon ab, nicht nur zu wissen, was gesagt wurde, sondern auch, wer es gesagt hat. 

Dieser Leitfaden erklärt, wie Diarisierung funktioniert, wie sie sich von verwandten Verfahren wie Segmentierung und Identifizierung unterscheidet, welche Open-Source-Tools sie unterstützen und wie Sie die Leistung eines Diarisierungssystems messen.

Zusammenfassung

  • Die Sprecherdiarisierung segmentiert eine Audioaufnahme danach, wer spricht, und erstellt beschriftete Sprecherwechsel, ohne Personen namentlich zu identifizieren.
  • Die Sprecherdiarisierung unterscheidet sich von der Sprechersegmentierung, die Sprecherwechsel erkennt, und der Sprecheridentifizierung, die Stimmen echten Namen zuordnet.
  • Die Diarisierungsleistung wird mit der Diarisierungsfehlerrate (DER) für die Gesamtgenauigkeit und der Jaccard-Fehlerrate (JER) gemessen, um zu prüfen, ob die Genauigkeit bei jedem Sprecher erhalten bleibt.

Was ist Sprecherdiarisierung, und wie funktioniert sie?

Sprecherdiarisierung ist der Prozess, einen Audiostream nach den jeweils sprechenden Personen in Segmente aufzuteilen. Ein Transkript mit Sprecherdiarisierung versieht jedes Audiosegment mit einer Sprecheridentität. Einfach gesagt beantwortet sie die Frage: „Wer sprach wann?“ 

Ein Rohtranskript eines Meetings liefert Ihnen die Worte, während ein diarisiertes Transkript zeigt, dass Sprecher 1 die Frage gestellt, Sprecher 2 sie beantwortet und Sprecher 3 mittendrin unterbrochen hat.

Die meisten Sprecherdiarisierungssysteme folgen einer Pipeline mit vier Phasen:

Diarization pipeline: voice detection, segmentation, embeddings, clustering, and anonymous labels.

Sehen wir uns diese Phasen genauer an.

Sprachaktivitätserkennung (VAD)

Die Sprachaktivitätserkennung trennt Sprache von allem anderen: Stille, Hintergrundgeräuschen, Musik oder Tastaturklicks. Nur Audiosegmente mit tatsächlicher Sprache gelangen in die nächste Phase.

Fehler in dieser Phase setzen sich in allen folgenden Phasen fort.

Segmentierung

Diese sprachhaltigen Segmente werden anschließend an Stellen geteilt, an denen wahrscheinlich ein Sprecherwechsel stattfindet, etwa bei einer Veränderung des Stimmklangs, einer Pause zwischen Redebeiträgen oder einem Wechsel im Tonhöhenmuster. Die meisten Systeme erkennen diese Wechselpunkte direkt, indem sie die akustischen Merkmale auf beiden Seiten einer möglichen Grenze vergleichen. 

Einige Segmentierungstools teilen Audio in kurze, gleichmäßige Fenster, etwa in Zwei-Sekunden-Blöcke, und verlassen sich dann auf die Clustering-Phase, um benachbarte Fenster desselben Sprechers zusammenzuführen.

Embedding-Extraktion

Jedes Sprachsegment wird in ein Sprecher-Embedding umgewandelt, also einen numerischen Vektor, der die stimmlichen Merkmale der Person erfasst, die in diesem Segment spricht. Embeddings desselben Sprechers liegen im Vektorraum nahe beieinander, Embeddings verschiedener Sprecher weiter auseinander.

Clustering

Die Embeddings werden anschließend so gruppiert, dass Segmente desselben Sprechers dasselbe Label erhalten. Das System kennt die Anzahl der Sprecher in der Regel nicht im Voraus. Der Clustering-Algorithmus muss sie daher ableiten und entscheiden, ob ein etwas anders klingendes Segment von einem neuen Sprecher stammt oder von derselben Person mit anderem Stimmklang.

Embeddings cluster same-speaker samples together, but speaker count is unknown in advance in speaker diarization

Das Ergebnis ist eine Reihe von Sprecherlabels, die Zeitbereichen zugeordnet sind, meist zusammen mit einem Transkript. Ein diarisiertes Transkript eines Gesprächs zwischen zwei Personen sieht beispielsweise so aus:

  • [speaker_0] Vielen Dank für Ihren Anruf. Wie kann ich Ihnen helfen?
  • [speaker_1] Hallo, ich rufe wegen meiner Rechnung vom letzten Monat an.
  • [speaker_0] Natürlich, ich rufe sie auf.

Die Labels sind anonym und intern konsistent. Speaker_0 ist bei jedem Auftreten dieselbe Stimme, aber das System weiß nicht, dass speaker_0 Fergal heißt. Die Zuordnung echter Identitäten ist eine andere Aufgabe, auf die wir unten eingehen.

Wichtige Unterschiede zwischen Sprechersegmentierung und Sprecheridentifizierung

Sprechersegmentierung und Sprecheridentifizierung überschneiden sich stark mit der Diarisierung. Daher werden die drei Verfahren häufig miteinander verwechselt.

Jedes löst ein etwas anderes Problem. Bei der Bewertung von Tools ist es daher wichtig, den Unterschied zu verstehen.

Segmentation
Question it answers
Where do speaker changes occur?
Output
Change-point boundaries
Requires contextual information
No
Diarization
Question it answers
Who spoke when (anonymous labels)?
Output
Labeled segments (speaker_0, speaker_1)
Requires contextual information
No
Identification
Question it answers
Who are the speakers (real identities)?
Output
Named speakers matched to voiceprints
Requires contextual information
Yes

Wie bereits erklärt, ist die Sprechersegmentierung ein früher Schritt innerhalb der Diarisierungspipeline. Sie findet die Grenzen, an denen sich der Sprecher von einer Stimme zur anderen ändert, ohne Labels zuzuweisen. Die Segmentierung zeigt Ihnen, dass bei 0:42 ein Wechsel stattgefunden hat. Die Diarisierung baut darauf auf, indem sie die resultierenden Segmente gruppiert und ein vollständig beschriftetes Ergebnis erstellt. So erkennen Sie, dass die Stimme bei 1:15 dieselbe ist, die zu Beginn der Aufnahme sprach.

Die Sprecheridentifizierung ist eine eigenständige Fähigkeit außerhalb der Diarisierung, wird aber oft mit ihr kombiniert. Sie bestimmt, wer diese Sprecher tatsächlich sind. Ein Identifizierungssystem vergleicht Stimmen mit registrierten Stimmabdrücken und nutzt eine Referenz bekannter Sprecher, um Identitäten zurückzugeben. Nach der Identifizierung werden aus speaker_0 und speaker_1 „Fergal“ und „Eric“.

Viele Produkte kombinieren diese Tools, um ein umfassenderes finales Transkript zu erstellen. Ein Meeting-Tool kann dies automatisch tun, möglicherweise sogar anhand von Angaben wie dem Namen, den jemand in Teams oder Meet hinterlegt hat. So werden die Beiträge aller Teilnehmer ohne manuelle Prüfung namentlich zugeordnet. 

Comparison of segmentation, speaker diarization, and identification; diarize first, then identify.

Beliebte Open-Source-Tools und -Bibliotheken für Sprecherdiarisierung

Open-Source-Tools für Sprecherdiarisierung sind eine gute Option, wenn Sie Kontrolle, Flexibilität oder lokale Bereitstellung benötigen. Die beste Wahl hängt von der Art des Audios ab, das Sie verarbeiten – Telefongespräche, Meetings, Podcasts oder Rundfunk –, von Ihren Latenzanforderungen und davon, wie viel Entwicklungszeit Sie investieren können. 

Hier sind einige der beliebtesten Optionen.

Pyannote.audio

Pyannote.audio ist ein PyTorch-basiertes Toolkit, das speziell für Sprecherdiarisierung entwickelt wurde und zu den meistgenutzten Open-Source-Optionen zählt. Es bietet vortrainierte Pipelines für den gesamten Diarisierungs-Stack, einschließlich VAD, Segmentierung, Embeddings und Clustering, sowie Bausteine zum Trainieren oder Finetunen von Modellen mit Ihren eigenen Daten. 

Die vortrainierten Modelle werden über Hugging Face bereitgestellt und häufig als Diarisierungsschicht in größeren Transkriptionsprojekten eingesetzt.

WhisperX

WhisperX kombiniert OpenAIs Whisper ASR mit Diarisierung und Forced Alignment. Whisper allein erzeugt gute Transkripte, weist jedoch keine Sprecherlabels zu, und seine Zeitstempel sind nur ungefähr. WhisperX ergänzt Zeitstempel auf Wortebene und integriert eine Pyannote-basierte Diarisierung. So entstehen Transkripte, in denen jedes Wort sowohl einen präzisen Zeitstempel als auch ein Sprecherlabel trägt.

NVIDIA NeMo

NVIDIA NeMo enthält Diarisierung als Teil seines umfassenderen Conversational-AI-Frameworks. Es bietet trainierbare Diarisierungsmodelle, einschließlich End-to-End-Ansätzen für überlappende Sprache, und ist für Teams konzipiert, die maßgeschneiderte Sprachsysteme im großen Maßstab auf GPU-Infrastruktur entwickeln.

Bei jedem dieser Tools müssen Sie die Diarisierungsinfrastruktur selbst verwalten, einschließlich Modellbereitstellung, Skalierung, Monitoring und Updates. Für Teams, die diesen Betriebsaufwand vermeiden möchten, bieten verwaltete APIs für Sprecherdiarisierung eine einfachere Alternative. Sie lassen sich entweder in bestehende Workflows integrieren oder übernehmen die gesamte Diarisierungspipeline und eignen sich damit gut für Produktionsanwendungen wie Kundensupport-Analysen, Meeting-Transkription und Podcast-Verarbeitung.

Echtzeitdiarisierung: Herausforderungen und Anwendungsfälle

Echtzeitdiarisierung ist deutlich schwieriger als die Diarisierung einer fertigen Aufnahme, weil das System Entscheidungen mit unvollständigem Kontext treffen muss.

Ein Offline-System sieht die gesamte Aufnahme, bevor es eine Entscheidung trifft. Es kann eine Stimme in Minute 2 mit einer Stimme in Minute 40 vergleichen und sicher entscheiden, dass es derselbe Sprecher ist, weil ihm beide Zeitpunkte gleichzeitig vorliegen. Ein Echtzeitsystem hat diesen Vorteil nie: Es muss Sprache beim Eintreffen labeln, ohne Zugriff auf das Folgende und mit wenig oder keiner Möglichkeit, eine einmal getroffene Entscheidung zu korrigieren. 

Dieser fehlende zukünftige Kontext macht drei konkrete Probleme in Echtzeit deutlich schwieriger lösbar:

  • Latenz vs. Genauigkeit: Ohne die Möglichkeit, die gesamte Unterhaltung vor- und zurückzublicken, gehen kürzere Reaktionszeiten direkt zulasten der Genauigkeit.
  • Überlappende Sprache: Wenn Menschen gleichzeitig sprechen, könnte ein System, das das Audio erneut verarbeitet, die Stimmen entwirren. Ein Echtzeitsystem muss sie unmittelbar einem einzigen Label zuordnen oder auf spezialisierte Modelle zur Erkennung von Überlappungen setzen.
  • Kurze Äußerungen: Ein kurzes „Ja“ oder „Nur zu“ liefert dem System kaum genug Stimmaterial. Ohne umgebenden Kontext muss es dennoch sofort ein Label zuweisen.

Trotz dieser Schwierigkeit können einige Anwendungen nicht warten, bis eine Aufnahme abgeschlossen ist. Live-Untertitel für Meetings und Übertragungen benötigen Sprecherlabels, während Menschen sprechen. Callcenter-Software , die Mitarbeitern während eines Gesprächs Hinweise gibt, muss in Echtzeit wissen, welche Wörter der Kunde verwendet. Sprachagenten , die Gespräche mit mehreren Teilnehmern führen, müssen ohne Verzögerung verfolgen, wer was fragt. In jedem Fall ist ein etwas weniger genaues, aber sofortiges System besser als ein genaueres mit Verzögerung.

Für Workloads, die keine Echtzeitlabels benötigen, etwa Analysen, Compliance-Prüfungen und Transkripterstellung, bleibt die Batch-Diarisierung die bessere Wahl, weil sie deutlich genauer ist.

So bewerten Sie die Leistung der Sprecherdiarisierung

Bei der Messung der Diarisierungsgenauigkeit sind zwei Kennzahlen besonders wichtig: die Diarisierungsfehlerrate (DER) für die Gesamtgenauigkeit und die Jaccard-Fehlerrate (JER), die prüft, ob diese Genauigkeit für jeden Sprecher gilt.

Die DER berechnet konkret den Anteil der gesamten Sprachzeit, der falsch zugeordnet wurde. Sie kombiniert drei Fehlerarten:

  • Fehlalarm-Sprache: Das System hat ein Segment als Sprache gekennzeichnet, obwohl niemand sprach.
  • Übersehene Sprache: Jemand sprach, aber das System hat dies als Stille gekennzeichnet.
  • Sprecherverwechslung: Sprache wurde erkannt, aber dem falschen Sprecher zugeordnet.

DER = (Fehlalarm + übersehene Sprache + Sprecherverwechslung) / gesamte Sprachdauer

Eine DER von 10 % bedeutet, dass die Fehler über diese drei Arten hinweg einem Zehntel der gesamten Sprachzeit entsprechen. Niedriger ist besser, und Werte sind nur vergleichbar, wenn sie unter denselben Bedingungen auf denselben Daten gemessen wurden. Die DER hängt stark von Audioqualität, Sprecheranzahl und dem Anteil überlappender Sprache in der Aufnahme ab.

Die Jaccard-Fehlerrate (JER) misst die Diarisierungsgenauigkeit für jeden Sprecher einzeln und mittelt das Ergebnis anschließend über alle Sprecher. Für jeden Referenzsprecher ordnet der Evaluator das ähnlichste Sprecherlabel des Systems zu und vergleicht die korrekt überlappende Zeit mit der Gesamtzeit, die einem der beiden Sprecher zugewiesen wurde.

Stellen Sie sich beispielsweise ein 60-minütiges Meeting vor, in dem Sprecher A 50 Minuten und Sprecher B 10 Minuten spricht. Ein Diarisierungssystem kennzeichnet 48 von Sprecher As 50 Minuten korrekt, aber nur 4 von Sprecher Bs 10 Minuten. Die Gesamt-DER kann dennoch relativ gut aussehen, weil Sprecher A den Großteil des Meetings einnimmt. Die JER berücksichtigt das schlechte Ergebnis von Sprecher B gleich stark, da sie Sprecher A und Sprecher B vor dem Mitteln ihrer Werte unabhängig bewertet.

JER_speaker = 1 - (correct_overlap / (ref_time + sys_time - correct_overlap))

Die endgültige JER ist der Durchschnitt dieser Fehlerraten pro Sprecher:

JER = (1 / N) * Σ[JER_speaker_i]  für i = 1..N

Die gemeinsame Betrachtung von DER und JER liefert ein vollständigeres Bild der Diarisierungsgenauigkeit: DER für die Gesamtgenauigkeit, JER dafür, ob diese Genauigkeit für alle Teilnehmer gilt, auch für Personen, die seltener sprechen.

Tests mit produktionsnahen Audiodaten

Berechnen Sie bei der Bewertung eines Sprecherdiarisierungssystems sowohl DER als auch JER auf Audio, das Ihren tatsächlichen Einsatzbedingungen entspricht: Ihrer typischen Sprecheranzahl, Ihrer Audioqualität und dem Umfang überlappender Sprache. 

Veröffentlichte Benchmark-Werte können auf sauberen, kontrollierten Datensätzen wie Studio-Aufnahmen gemessen werden, die selten dem entsprechen, wie echte Gesprächsaufnahmen oder Live-Meetings klingen. Ein System mit guten Benchmark-Ergebnissen kann bei verrauschtem, überlappendem Audio aus der Praxis dennoch deutlich schlechter abschneiden. Testen Sie mit Ihren eigenen Daten, bevor Sie sich für ein Diarisierungsprodukt entscheiden.

Starten Sie mit ElevenAPI für Sprecherdiarisierung

Wenn Sie bereit sind, eine Transkriptionsfunktion mit Unterstützung für mehrere Sprecher zu entwickeln, Scribe v2 von ElevenLabs stellt Sprecherdiarisierung über eine einzige Speech to Text-API bereit. Senden Sie Audio mit diarize=true an den Endpunkt. Die JSON-Antwort versieht jedes Wort mit einer Sprecher-ID – für bis zu 32 Sprecher, in mehr als 90 Sprachen und für Dateien mit einer Länge von bis zu 10 Stunden.

Zwei Optionen erweitern die Standardausgabe der Diarisierung. Für Gesprächsaufnahmen kennzeichnet detect_speaker_roles=true Sprecher als Agent und Kunde statt mit anonymen Nummern. Wenn Ihr Workspace registrierte Sprecherprofile hat, kann use_speaker_library=true erkannte Sprecher mit registrierten Stimmen abgleichen und Diarisierung und Identifizierung in einer Anfrage verbinden. 

Ein Diarisierungsschwellenwert ermöglicht es Ihnen, den Kompromiss zwischen zu starker Aufteilung und dem Zusammenführen von Sprechern anzupassen. Sind Ihre Sprecher bereits auf getrennten Audiokanälen isoliert, etwa bei Stereo-Gesprächsaufnahmen, Mehrkanaltranskription ordnet Sprecher nach Kanal zu und überspringt die Diarisierung vollständig.

Der Speech to Text-Schnellstart erläutert die erste Integration Schritt für Schritt. Für regulierte Bereitstellungen ist die Plattform SOC-2-, ISO-27001-, PCI-DSS-L1- und HIPAA-konform; EU-Datenresidenz und ein Modus ohne Datenaufbewahrung sind verfügbar.

Bereit, Sprecherdiarisierung in Ihre Systeme zu integrieren? Starten Sie mit Ihrem API-Key oder sehen Sie sich die ElevenLabs-Dokumentation an, um mehr zu erfahren.

FAQ

Ähnliche Artikel

Erstellen Sie mit hochwertiger KI-Audio