IP Library Granted Patent US 11,392,639
Granted Patent B2
US 11,392,639 · App. 16/836,850 · Granted Jul 19, 2022

Method and apparatus for automatic speaker diarization

Inventor: Maragathamani Boothalingam (Chennai, IN)
Assignee: Uniphore Software Systems, Inc.
G06F16/65G06F16/685G10L25/93
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,392,639
App. No.
16/836,850
Granted
Jul 19, 2022
Kind
B2
Abstract

A method and an apparatus for automatic speaker diarization is provided. The method includes removing, at a call analytics server (CAS), non-speech portions from a call audio to produce a pre-processed audio, the call audio comprising speech from at least two speakers. Next, the pre-processed audio is divided, at the CAS, to multiple audio segments, each segment corresponding to speech from a single speaker of the at least two speakers. Next, the plurality of segments are clustered, at the CAS, into at least two groups corresponding the at least two speakers.

Claims (40)

1. A method for automatic speaker diarization, the method comprising:

removing, at a call analytics server (CAS), non-speech portions from a call audio to produce a pre-processed audio, the call audio comprising speech from at least two speakers;

dividing, at the CAS, the pre-processed audio to a plurality of audio segments, each segment of the plurality of segments corresponding to speech from a single speaker of the at least two speakers, wherein the dividing comprises:

selecting a first time-window of the call audio at position i−1, and a second time-window of the call audio at position i, the second time-window equal to the first time-window in duration, and the second time-window next and adjacent to the first time-window, where i is an integer greater than 0;

calculating the Kullback-Leibler (KL) divergence measure for each of the first time-window at i−1 and the second-time window at i;

shifting the first time-window and the second window by a duration of a pre-defined time resolution to positions i+1 and i+2, respectively;

calculating the Kullback-Leibler (KL) divergence measure (D) for each of the first time-window at i+1 and the second-time window at i+2; and detecting a change point if the following conditions are met:

D ( i,i+ 1)> D ( i+ 1, i+ 2), and  Condition 1:

D ( i,i+ 1)> D ( i− 1, i ), and  Condition 2:

clustering, at the CAS, the plurality of segments into at least two groups corresponding the at least two speakers.

2. The method of claim 1 , further comprising receiving, at the CAS, the call audio from a call audio source.

3. The method of claim 1 , wherein the removing comprises removing portions comprising at least one of beeps, rings, silence, noise, or music.

4. The method of claim 1 , wherein the clustering comprises: deriving the mel frequency cepstral coefficients (MFCC) values for each audio segment of the plurality of audio segments; calculating numerical array with MFCC values for each audio segment; and perform a clustering technique to yield the at least two groups of audio segments.

5. An apparatus for automatic speaker diarization, the apparatus comprising:

a processor; and

a memory communicably coupled to the processor, wherein the memory comprises computer-executable instructions, which when executed using the processor, perform a method comprising:

removing, at a call analytics server (CAS), non-speech portions from a call audio to produce a pre-processed audio, the call audio comprising speech from at least two speakers,

dividing, at the CAS, the pre-processed audio to a plurality of audio segments, each segment of the plurality of segments corresponding to speech from a single speaker of the at least two speakers, wherein the dividing comprises:

selecting a first time-window of the call audio at position i−1, and a second time-window of the call audio at position i, the second time-window equal to the first time-window in duration, and the second time-window next and adjacent to the first time-window, where i is an integer greater than 0,

calculating the Kullback-Leibler (KL) divergence measure (D) for each of the first time-window at i−1 and the second-time window at i,

shifting the first time-window and the second window by a duration of a pre-defined time resolution to positions i+1 and i+2, respectively,

calculating the Kullback-Leibler (KL) divergence measure for each of the first time-window at i+1 and the second-time window at i+2, and detecting a change point if the following conditions are met:

D ( i,i+ 1)> D ( i+ 1, i+ 2), and  Condition 1:

D ( i,i+ 1)> D ( i− 1, i ), and  Condition 2:

clustering, at the CAS, the plurality of segments into at least two groups corresponding the at least two speakers.

6. The apparatus of claim 1 , wherein the method further comprises receiving, at the CAS, the call audio from a call audio source.

7. The apparatus of claim 1 , wherein the removing comprises removing portions comprising at least one of beeps, rings, silence, noise, or music.

8. The apparatus of claim 1 , wherein the clustering comprises: deriving the mel frequency cepstral coefficients (MFCC) values for each audio segment of the plurality of audio segments; calculating numerical array with MFCC values for each audio segment; and perform a clustering technique to yield the at least two groups of audio segments.

9. A non-transitory computer-readable storage medium, the computer-readable storage medium including instructions that when executed by a computer, cause the computer to:

remove, at a call analytics server (CAS), non-speech portions from a call audio to produce a pre-processed audio, the call audio comprising speech from at least two speakers;

divide, at the CAS, the pre-processed audio to a plurality of audio segments, each segment of the plurality of segments corresponding to speech from a single speaker of the at least two speakers, wherein the dividing comprises:

select a first time-window of the call audio at position i−1, and a second time-window of the call audio at position i, the second time-window equal to the first time-window in duration, and the second time-window next and adjacent to the first time-window, where i is an integer greater than 0;

calculate the Kullback-Leibler (KL) divergence measure for each of the first time-window at i−1 and the second-time window at i; shift the first time-window and the second window by a duration of a pre-defined time resolution to positions i+1 and i+2, respectively;

calculate the Kullback-Leibler (KL) divergence measure (D) for each of the first time-window at i+1 and the second-time window at i+2; and detect a change point if the following conditions are met:

D ( i,i+ 1)> D ( i+ 1, i+ 2), and  Condition 1:

D ( i,i+ 1)> D ( i− 1, i ), and  Condition 2:

cluster, at the CAS, the plurality of segments into at least two groups corresponding the at least two speakers.

10. The computer-readable storage medium of claim 9 , wherein the instructions further configure the computer to receive, at the CAS, the call audio from a call audio source.

11. The computer-readable storage medium of claim 9 , wherein the remove comprises removing portions comprising at least one of beeps, rings, silence, noise, or music.

12. The computer-readable storage medium of claim 9 , wherein the clustering comprises: derive the mel frequency cepstral coefficients (MFCC) values for each audio segment of the plurality of audio segments; calculate numerical array with MFCC values for each audio segment; and perform a clustering technique to yield the at least two groups of audio segments.

Assignments (5)
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Sep 30, 2025
From: UNIPHORE SOFTWARE SYSTEMS INC.
To: TRINITY CAPITAL INC., AS ADMINISTRATIVE AGENT
Reel/Frame 072992/0769 →
RELEASE OF SECURITY INTEREST Recorded Sep 15, 2025
From: TRIPLEPOINT VENTURE GROWTH BDC CORP.
To: UNIPHORE TECHNOLOGIES INC.; UNIPHORE TECHNOLOGIES NORTH AMERICA INC.; UNIPHORE SOFTWARE SYSTEMS INC.; JACADA, INC.
Reel/Frame 072894/0387 →
SECURITY INTEREST Recorded Jan 20, 2023
From: UNIPHORE TECHNOLOGIES INC.; UNIPHORE TECHNOLOGIES NORTH AMERICA INC.; UNIPHORE SOFTWARE SYSTEMS INC.; COLABO, INC.
To: HSBC VENTURES USA INC.
Reel/Frame 062440/0619 →
PLAIN ENGLISH INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jan 11, 2023
From: UNIPHORE TECHNOLOGIES INC.; UNIPHORE SOFTWARE SYSTEMS INC.
To: TRIPLEPOINT VENTURE GROWTH BDC CORP., AS COLLATERAL AGENT
Reel/Frame 062352/0267 →
SECURITY INTEREST Recorded Dec 22, 2021
From: UNIPHORE TECHNOLOGIES INC.; UNIPHORE TECHNOLOGIES NORTH AMERICA INC.; UNIPHORE SOFTWARE SYSTEMS INC.; JACADA, INC.
To: TRIPLEPOINT VENTURE GROWTH BDC CORP., AS COLLATERAL AGENT
Reel/Frame 058463/0425 →
Continuity (1)
Related Publication 20210303619A1 · Sep 30, 2021
Cited By (1)
US 12,640,160