IP Library Granted Patent US 11,393,487
Granted Patent B2
US 11,393,487 · App. 16/751,094 · Granted Jul 19, 2022

System and method for acoustic echo cancelation using deep multitask recurrent neural networks

Inventors: Amin Fazeli (San Diego, CA); Mostafa El-Khamy (San Diego, CA); Jungwon Lee (San Diego, CA)
Assignee: Samsung Electronics Co., Ltd.
G10L21/0232G06N3/08G06N20/10H04R3/04G10L2021/02082
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,393,487
App. No.
16/751,094
Granted
Jul 19, 2022
Kind
B2
Abstract

A system for performing echo cancellation includes: a processor configured to: receive a far-end signal; record a microphone signal including: a near-end signal; and an echo signal corresponding to the far-end signal; extract far-end features from the far-end signal; extract microphone features from the microphone signal; compute estimated near-end features by supplying the microphone features and the far-end features to an acoustic echo cancellation module including a recurrent neural network including: an encoder including a plurality of gated recurrent units; and a decoder including a plurality of gated recurrent units; compute an estimated near-end signal from the estimated near-end features; and transmit the estimated near-end signal to the far-end device. The recurrent neural network may include a contextual attention module; and the recurrent neural network may take, as input, a plurality of error features computed based on the far-end features, the microphone features, and acoustic path parameters.

Claims (77)

1. A system for performing echo cancellation, the system comprising:

a processor; and

memory storing instructions that, when executed by the processor, cause the processor to:

receive a far-end signal from a far-end device at a near-end device;

record a microphone signal at the near-end device, the microphone signal comprising:

a near-end signal; and

an echo signal corresponding to the far-end signal;

extract a plurality of far-end features from the far-end signal;

extract a plurality of microphone features from the microphone signal;

compute a plurality of estimated near-end features from the microphone signal by supplying the microphone features and the far-end features to an acoustic echo cancellation module comprising a contextual attention neural network comprising:

an encoder comprising a plurality of gated recurrent units configured to encode the microphone features and the far-end features as encoded features;

a contextual attention module configured to compute contextual attention features from the encoded features; and

a decoder comprising a plurality of gated recurrent units configured to decode the estimated near-end features from the contextual attention features;

compute an estimated near-end signal from the estimated near-end features; and

transmit the estimated near-end signal to the far-end device.

2. The system of claim 1 , wherein the encoder comprises one or more of layers of gated recurrent units, and the encoded features correspond to outputs of a last layer of the one or more layers of the gated recurrent units of the encoder,

wherein the encoded features are supplied to a multi-head self-attention layer of the contextual attention module; and

wherein the decoder comprises one or more layers of gated recurrent units, and the estimated near-end features correspond to an output of a last layer of the one or more layers of gated recurrent units of the decoder.

3. The system of claim 2 , wherein the contextual attention module further comprises a multi-head attention layer configured to receive an output of the multi-head self-attention layer.

4. The system of claim 3 , wherein the contextual attention module further comprises a first layer normalization layer between the multi-head self-attention layer and the multi-head attention layer.

5. The system of claim 4 , wherein the contextual attention module further comprises a second layer normalization layer configured to compute the contextual attention features in accordance with outputs from other layers of the contextual attention module.

6. The system of claim 1 , wherein the memory further stores instructions that, when executed by the processor, cause the processor to:

compute a plurality of acoustic path parameters in accordance with prior acoustic path parameters, prior far-end features, and prior microphone features; and

compute a plurality of error features based on the far-end features, the microphone features, and the acoustic path parameters, and

wherein the acoustic echo cancellation module is further configured to compute the plurality of estimated near-end features from the microphone signal based on the error features.

7. The system of claim 1 , wherein the far-end features supplied to the contextual attention neural network comprise a current frame of far-end features and a causal window of a plurality of previous frames of far-end features, and

wherein the microphone features supplied to the contextual attention neural network comprise a current frame of microphone features and the causal window of a plurality of previous frames of microphone features.

8. The system of claim 7 , wherein the estimated near-end features comprise a current frame of estimated near-end features and the causal window of a plurality of previous frames of estimated near-end features, and

wherein the contextual attention neural network is trained by iteratively training a plurality of parameters configuring contextual attention neural network to minimize differences between the estimated near-end features and a plurality of ground truth near-end features of the plurality of training data.

9. The system of claim 8 , wherein the training data is generated by:

loading a corpus of training data comprising recorded utterances from a plurality of different human speakers;

selecting a plurality of pairs of human speakers;

for each pair of human speakers:

concatenating multiple utterances of a first speaker of the pair of human speakers to generate a training far-end signal;

transforming the concatenated utterances to simulate an acoustic path to generate a training echo signal;

padding an utterance of a second speaker of the pair of human speakers to generate a training near-end signal having a length equal to the training far-end signal; and

mixing the training echo signal with the training near-end signal to generate a training microphone signal.

10. The system of claim 9 , wherein the transforming the concatenated utterances comprises convolving the far-end signal with a room impulse response of a simulated room.

11. The system of claim 10 , wherein the transforming the concatenated utterances further comprises:

applying hard clipping to the far-end signal to generate a clipped far-end signal; and

applying sigmoidal distortion to the clipped far-end signal.

12. A system for performing echo cancellation, the system comprising:

a processor; and

memory storing instructions that, when executed by the processor, cause the processor to:

receive a far-end signal from a far-end device;

record a microphone signal comprising:

a near-end signal; and

an echo signal corresponding to the far-end signal;

extract a plurality of far-end features from the far-end signal;

extract a plurality of microphone features from the microphone signal;

compute a plurality of acoustic path parameters in accordance with prior acoustic path parameters, prior far-end features, and prior microphone features;

compute a plurality of error features based on the far-end features, the microphone features, and the acoustic path parameters;

compute a plurality of estimated near-end features from the microphone signal by supplying the microphone features, the far-end features, and the error features to an acoustic echo cancellation module comprising a recurrent neural network comprising:

an encoder comprising a plurality of gated recurrent units configured to encode the microphone features and the far-end features as encoded features; and

a decoder comprising a plurality of gated recurrent units configured to decode the estimated near-end features based on the encoded features;

compute an estimated near-end signal from the estimated near-end features; and

transmit the estimated near-end signal to the far-end device.

13. The system of claim 12 , wherein the acoustic echo cancellation module further comprises a contextual attention module configured to compute contextual attention features from the encoded features, and

wherein the decoder is configured to compute the estimated near-end features based on the contextual attention features.

14. The system of claim 12 , wherein the far-end features supplied to the acoustic echo cancellation module comprise a current frame of far-end features and a causal window of a plurality of previous frames of far-end features,

wherein the microphone features supplied to the acoustic echo cancellation module comprise a current frame of microphone features and the causal window of a plurality of previous frames of microphone features, and

wherein the error features supplied to the acoustic echo cancellation module comprise a current frame of error features and the causal window of a plurality of previous frames of error features.

15. The system of claim 12 , wherein the estimated near-end features comprise a current frame of estimated near-end features and a causal window of a plurality of previous frames of estimated near-end features, and

wherein the recurrent neural network is trained by iteratively training a plurality of parameters configuring the recurrent neural network to minimize differences between the estimated near-end features and a plurality of ground truth near-end features of the plurality of training data.

16. The system of claim 15 , wherein the training data is generated by:

loading a corpus of training data comprising recorded utterances from a plurality of different human speakers;

selecting a plurality of pairs of human speakers;

for each pair of human speakers:

concatenating multiple utterances of a first speaker of the pair of human speakers to generate a training far-end signal;

transforming the concatenated utterances to simulate an acoustic path to generate a training echo signal;

padding an utterance of a second speaker of the pair of human speakers to generate a training near-end signal having a length equal to the training far-end signal; and

mixing the training echo signal with the training near-end signal to generate a training microphone signal.

17. The system of claim 16 , wherein the transforming the concatenated utterances comprises convolving the far-end signal with a room impulse response of a simulated room.

18. The system of claim 17 , wherein the transforming the concatenated utterances comprises:

applying hard clipping to the far-end signal to generate a clipped far-end signal; and

applying sigmoidal distortion to the clipped far-end signal.

19. The system of claim 12 , wherein the far-end features, the microphone features, and the estimated near-end features comprise log short time Fourier transform features in logarithmic spectral space.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 9, 2020
From: FAZELI, AMIN; EL-KHAMY, MOSTAFA; LEE, JUNGWON
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 052357/0188 →
Continuity (5)
Continuation In Part 16573573 · Sep 17, 2019
Provisional Application 62914875 · Oct 14, 2019
Provisional Application 62838146 · Apr 24, 2019
Provisional Application 62825681 · Mar 28, 2019
Related Publication 20200312346A1 · Oct 1, 2020
Cited By (3)
US 12,555,170 US 12,670,920 US 12,700,418