IP Library › Granted Patent US 11,715,462
Granted Patent B2
US 11,715,462 · App. 17/244,891 · Granted Aug 1, 2023

Efficiency adjustable speech recognition system

Inventors: Yu Wu (Beijing, CN); Jinyu Li (Bellevue, WA); Shujie Liu (Beijing, CN); Xie Chen (Bellevue, WA); Chengyi Wang (Beijing, CN)
Assignee: Microsoft Technology Licensing, LLC
G10L15/16G06N3/044G06N3/08G10L15/063G10L15/22
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,715,462
App. No.
17/244,891
Granted
Aug 1, 2023
Kind
B2
Abstract

A computing system is configured to generate a transformer-transducer-based deep neural network. The transformer-transducer-based deep neural network comprises a transformer encoder network and a transducer predictor network. The transformer encoder network has a plurality of layers, each of which includes a multi-head attention network sublayer and a feed-forward network sublayer. The computing system trains an end-to-end (E2E) automatic speech recognition (ASR) model, using the transformer-transducer-based deep neural network. The E2E ASR model has one or more adjustable hyperparameters that are configured to dynamically adjust an efficiency or a performance of E2E ASR model when the E2E ASR model is deployed onto a device or executed by the device.

Claims (62)

1. A computing system comprising:

one or more processors; and

one or more computer-readable media having stored thereon computer-executable instructions that are structured such that, when executed by the one or more processors, cause the computing system to:

generate a transformer-transducer-based deep neural network, the transformer-transducer-based deep neural network comprising a transformer encoder network and a transducer predictor network, and the transformer encoder network having a plurality of layers, each of the plurality of layers including a multi-head attention network sublayer and a feed-forward network sublayer;

train an end-to-end (E2E) automatic speech recognition (ASR) model, using the transformer-transducer-based deep neural network, the E2E ASR model being trained to have one or more adjustable hyperparameters that are configured to dynamically adjust an efficiency or a performance of the E2E ASR model when the E2E ASR model is deployed onto a device or executed by the device; and

provide the E2E ASR model to the device to be used to perform ASR in response to receiving a stream of speech.

2. The computing system of claim 1 , the transducer predictor network comprising one or more long-short-term memory (LSTV) networks.

3. The computing system of claim 1 , each of the multi-head attention network sublayer and the feed-forward network sublayer comprising a layer configured to perform a residual connection and a layer normalization.

4. The computing system of claim 1 , the one or more adjustable hyperparameters includes at least one of:

(1) a number of layers that are to be implemented at the transformer encoder network,

(2) a history window size indicating a number of history frames that are to be considered by a frame of each layer,

(3) a look-ahead window size indicating a number of look ahead frames that are to be considered by a frame of each layer,

(4) a chunk size indicating a total number of frames that are to be considered by a frame of each layer,

(5) an attention mask indicating particular items in a frame index matrix that are to be set as “0”, the frame index representing a particular configuration of the transformer encoder network, or

(6) a transducer path that is to be executed by the transducer predictor network.

5. The computing system of claim 4 , the E2E ASR model configured to perform at least the following at the device:

identify one or more conditions of the device associated with computational power of the device, and

set at least one of the one or more adjustable hyperparameters based on one or more conditions of the device.

6. The computing system of claim 4 , the E2E ASR model configured to perform at least the following at the device:

enumerate a plurality of paths in the transducer predictor network;

determine performance of each of the plurality of paths;

select a particular path among the plurality of paths that has a best performance; and

set the particular path as the transducer path.

7. The computing system of claim 5 , setting the one or more adjustable hyperparameters comprising:

set a maximum chunk size, a maximum history window size, or a maximum look-ahead window size based on the one or more conditions of the device; and

generate the attention mask based on the maximum chunk size, the maximum history window size, or the maximum look-ahead window size.

8. The computing system of claim 7 , wherein the one or more conditions of the device comprises at least one of following hardware conditions of the device (1) a type of processor that is installed on the device, (2) a number of processors that is installed on the device, (3) a type of memory that is installed on the device, or (4) a total amount of memory installed on the device.

9. The computing system of claim 8 , wherein the one or more conditions of the device comprises at least one of following runtime conditions (1) a function of a particular application of the E2E ASR model that is executed by the device, or (2) a current status of the device.

10. The computing system of claim 9 , the function of the particular application being at least one of (1) a streaming application configured to process a stream of speech in substantially real time, or (2) a post-processing application configured to process a file of a recorded speech.

11. The computing system of claim 10 , wherein the current status of the device comprises at least one of (1) a thermal status of the device, (2) a throttling status of the device, (3) a status of other applications that are currently executing at the device, (4) a battery level of the device, or (5) a battery-saving status of the device.

12. A method for dynamically adjusting an automatic speech recognition (ASR) system based on one or more conditions of a device, comprising:

deploying an end-to-end (E2E) ASR model onto a device, the E2E ASR model being trained using a transformer-transducer-based deep neural network and having one or more adjustable hyperparameters;

determining one or more conditions of the device associated with computational power of the device;

setting at least one of the one or more adjustable hyperparameters based on the determined one or more conditions of the device associated with the computational power of the device; and

performing ASR using the ASR model in response to receiving a stream of speech.

13. The method of claim 12 , wherein:

the E2E ASR model comprises a transformer encoder network and a transducer predictor network;

the transformer encoder network has a plurality of layers, each of which includes a multi-head attention network sublayer and a feed-forward network sublayer, and

each of the multi-head attention network sublayer and the feed-forward network sublayer comprises a layer configured to perform a residual connection and a layer normalization.

14. The method of claim 13 , the transducer predictor network comprising one or more long-short-term memory (LSTM) networks.

15. The method of claim 13 , wherein the one or more adjustable hyperparameters comprising at least one of:

(1) a number of layers that are to be implemented at the transformer encoder network,

(2) a history window size indicating a number of history frames that are to be considered by a frame of each layer,

(3) a look-ahead window size indicating a number of look ahead frames that are to be considered by a frame of each layer,

(4) a chunk size indicating a total number of frames that are to be considered by a frame of each layer,

(5) an attention mask indicating particular items in a frame index matrix that are to be set as “0”, the frame index representing a particular configuration of the transformer encoder network, or

(6) a transducer path that is to be executed by the transducer predictor network.

16. The method of claim 15 , the setting of the transducer path comprising:

enumerating a plurality of paths in the transducer predictor network;

determining a performance of each of the plurality of paths;

selecting a particular path among the plurality of paths that has a best performance; and

setting the particular path as the transducer path.

17. The method of claim 12 , wherein one or more conditions of the device comprises at least one of following hardware conditions: (1) a type of processor that is installed on the device, (2) a number of processors that is installed on the device, (3) a type of memory that is installed on the device, and/or (4) a total amount of memory that is installed on the device.

18. The method of claim 12 , wherein the one or more conditions of the device comprises at least one of following runtime conditions: (1) a function of a particular application that employs the E2E ASR model on the device, or (2) a current status of the device.

19. The method of claim 18 , wherein:

the function of the particular application that employs the E2E ASR model is (1) a streaming application configured to process a stream of speech in substantially real time, or (2) a post-processing application configured to process a file of a recorded speech, and

the current status of the device includes at least one of (1) a thermal status of the device, (2) a throttling status of the device, (3) a status of other applications that are currently executing at the device, (4) a battery level of the device, or (5) a battery-saving status of the device.

20. A computer program product comprising one or more hardware storage devices having stored thereon computer-executable instructions that are structured such that, when the computer-executable instructions are executed by one or more processors of a computing system, the computer-executable instructions cause the computing system to:

generate an end-to-end (E2E) automatic speech recognition (ASR) model, the E2E ASR model being trained using a transformer-transducer-based deep neural network and having one or more adjustable hyperparameters;

determine one or more conditions of the computing system associated with computational power of the computing system;

setting at least one of the one or more adjustable hyperparameters based on the determined one or more conditions of the device associated with the computational power of the computing system; and

perform ASR using the ASR model in response to receiving a stream of speech.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2021
From: WU, YU; LI, JINYU; LIU, SHUJIE; CHEN, XIE; WANG, CHENGYI
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 056104/0622 →
Continuity (1)
Related Publication 20220351718A1 · Nov 3, 2022
Cited By (1)
US 12,640,138