Method and apparatus for automatic speaker diarization
AssigneeUniphore Software Systems
InventorMaragathamani Boothalingam
Life of this patent
Estimating the term…
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.
Claims12
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.
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.
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.
Dependencies are inferred from the claim text.