IP Library Granted Patent US 10,380,997
Granted Patent B1
US 10,380,997 · App. 16/108,109 · Granted Aug 13, 2019

Deep learning internal state index-based search and classification

Inventors: Jeff Ward (San Francisco, CA); Adam Sypniewski (Ypsilanti, MI); Scott Stephenson (San Francisco, CA)
Assignee: Deepgram, Inc.
G10L15/16G06N3/08G10L15/02G10L15/063G10L15/22G10L15/30
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 10,380,997
App. No.
16/108,109
Granted
Aug 13, 2019
Kind
B1
Abstract

Systems and methods are disclosed for generating internal state representations of a neural network during processing and using the internal state representations for classification or search. In some embodiments, the internal state representations are generated from the output activation functions of a subset of nodes of the neural network. The internal state representations may be used for classification by training a classification model using internal state representations and corresponding classifications. The internal state representations may be used for search, by producing a search feature from an search input and comparing the search feature with one or more feature representations to find the feature representation with the highest degree of similarity.

Claims (56)

1. A non-transitory computer-readable medium comprising instructions for:

providing a trained speech recognition neural network, the speech recognition neural network including a plurality of layers each having a plurality of nodes;

transcribing speech audio by the speech recognition neural network;

while the speech recognition neural network is transcribing the speech audio, generating one or more feature representations from a subset of nodes, the one or more feature representations representing an internal state of the speech recognition neural network at a plurality of timestamps during transcription, each of the feature representations comprising a vector of quantized values where each of the quantized values is obtained by quantizing an activation output of a node in the subset of nodes;

storing the one or more feature representations;

receiving a first set of classifications for a first portion of the speech audio;

training a classification model, the classification model being different than the trained speech recognition neural network, on a first set of feature representations corresponding to the first portion of the speech audio and the first set of classifications, the first set of feature representations comprising a first subset of the feature representations generated during the speech audio transcription; and

determining a second set of classifications for a second portion of the speech audio by inputting a second set of feature representations corresponding to the second portion of the speech audio into the trained classification model, the second set of feature representations comprising a second subset of the feature representations generated during the speech audio transcription.

2. The non-transitory computer-readable medium of claim 1 , wherein the one or more feature representations comprise thresholded output values of the subset of nodes.

3. The non-transitory computer-readable medium of claim 1 , further comprising instructions for:

applying one or more thresholds to the output of the activation function of each node in the subset of nodes and generating the feature representations from the resulting values.

4. The non-transitory computer-readable medium of claim 3 , wherein the one or more thresholds is a binary threshold.

5. The non-transitory computer-readable medium of claim 3 , wherein the subset of nodes includes nodes from a convolutional neural network layer and a fully connected neural network layer.

6. A non-transitory computer-readable medium comprising instructions for:

providing a trained speech recognition neural network, the speech recognition neural network including a plurality of layers each having a plurality of nodes;

performing inference by the speech recognition neural network on input data, wherein the input data comprises speech audio and performing inference comprises transcribing the speech audio;

while the speech recognition neural network is performing inference on the input data, generating one or more feature representations from a subset of nodes, the one or more feature representations representing an internal state of the speech recognition neural network at a plurality of timesteps, each of the feature representations comprising a vector of quantized values where each of the quantized values is obtained by quantizing an activation output of a node in the subset of nodes;

storing the one or more feature representations;

receiving a first set of classifications for a first portion of the input data;

training a classification model, the classification model being different than the trained speech recognition neural network, on a first set of feature representations corresponding to the first portion of the input data and the first set of classifications, each of the first set of feature representations comprising one of the vectors of quantized values generated during inference on the first portion of the input data; and

determining a second set of classifications for a second portion of the input data by inputting a second set of feature representations corresponding to the second portion of the input data into the trained classification model, each of the second set of feature representations comprising one of the vectors of quantized values generated during inference on the second portion of the input data.

7. The non-transitory computer-readable medium of claim 6 , wherein the one or more feature representations comprise thresholded output values of the subset of nodes.

8. The non-transitory computer-readable medium of claim 6 , further comprising instructions for:

applying one or more thresholds to the output of the activation function of each node in the subset of nodes and generating the feature representations from the resulting values.

9. The non-transitory computer-readable medium of claim 8 , wherein the one or more thresholds is a binary threshold.

10. The non-transitory computer-readable medium of claim 8 , wherein the subset of nodes includes nodes from a convolutional neural network layer and a fully connected neural network layer.

11. A non-transitory computer-readable medium comprising instructions for:

providing a trained speech recognition neural network, the speech recognition neural network including a plurality of layers each having a plurality of nodes;

transcribing speech audio by the speech recognition neural network;

while the speech recognition neural network is transcribing the speech audio, generating one or more feature representations from a subset of nodes, the one or more feature representations representing an internal state of the speech recognition neural network at a plurality of timestamps during transcription, each of the feature representations comprising a vector of quantized values where each of the quantized values is obtained by quantizing an activation output of a node in the subset of nodes;

storing the one or more feature representations;

training a second neural network to generate a search feature based on a text input, the search feature comprising a vector of values, wherein the training is performed based on one or more training examples, each training example comprising a portion of the speech audio and a corresponding subset of the one or more feature representations generated during the speech audio transcription, and wherein the second neural network is different than the trained speech recognition neural network;

receiving a text query and inputting the text query to the second neural network to generate the search feature;

determining a similarity between the search feature and each of the one or more feature representations;

selecting a feature representation with the greatest similarity with the search feature; and

outputting an indication of a portion of the speech audio corresponding to the feature representation with the greatest similarity with the search feature.

12. The non-transitory computer-readable medium of 11 , wherein the one or more feature representations comprise thresholded output values of the subset of nodes.

13. The non-transitory computer-readable medium of claim 11 , further comprising instructions for:

applying one or more thresholds to the output of the activation function of each node in the subset of nodes and generating the set of features from the resulting values.

14. The non-transitory computer-readable medium of claim 13 , wherein the one or more thresholds is a binary threshold.

15. The non-transitory computer-readable medium of claim 13 , wherein the search feature comprises a vector of binary values.

16. A non-transitory computer-readable medium comprising instructions for:

providing a trained speech recognition neural network, the speech recognition neural network including a plurality of layers each having a plurality of nodes;

performing inference by the speech recognition neural network on input data, wherein the input data comprises speech audio and performing inference comprises transcribing the speech audio;

while the speech recognition neural network is performing inference on the input data, generating one or more feature representations from a subset of nodes, the one or more feature representations representing an internal state of the speech recognition neural network at a plurality of timesteps, each of the feature representations comprising a vector of quantized values where each of the quantized values is obtained by quantizing an activation output of a node in the subset of nodes;

storing the one or more feature representations;

training a second neural network to generate a search feature based on a text input, the search feature comprising a vector of values, wherein the training is performed based on one or more training examples, each training example comprising a portion of the speech audio and the corresponding one or more vectors of quantized values generated during the transcription of the portion of the speech audio, and wherein the second neural network is different than the trained speech recognition neural network;

receiving a text query and inputting the text query to the second neural network to generate the search feature;

determining a similarity between the search feature and each of the one or more feature representations;

selecting a feature representation with the greatest similarity with the search feature; and

outputting an indication of a portion of the speech audio corresponding to the feature representation with the greatest similarity with the search feature.

17. The non-transitory computer-readable medium of 16 , wherein the one or more feature representations comprise thresholded output values of the subset of nodes.

18. The non-transitory computer-readable medium of claim 16 , further comprising instructions for:

applying one or more thresholds to the output of the activation function of each node in the subset of nodes and generating the set of features from the resulting values.

19. The non-transitory computer-readable medium of claim 18 , wherein the one or more thresholds is a binary threshold.

20. The non-transitory computer-readable medium of claim 18 , wherein the search feature comprises a vector of binary values.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2018
From: SYPNIEWSKI, ADAM; WARD, JEFF; STEPHENSON, SCOTT
To: DEEPGRAM, INC.
Reel/Frame 047560/0123 →
Continuity (1)
Provisional Application 62703892 · Jul 27, 2018
Cited By (4)
US 12,404,021 US 12,462,790 US 12,579,982 US 12,626,131