IP Library Granted Patent US 12,462,145
Granted Patent B2
US 12,462,145 · App. 18/479,775 · Granted Nov 4, 2025

Progressive neural networks

Inventors: Neil Charles Rabinowitz (Hertfordshire, GB); Guillaume Desjardins (London, GB); Andrei-Alexandru Rusu (London, GB); Koray Kavukcuoglu (London, GB); Raia Thais Hadsell (London, GB); Razvan Pascanu (Letchworth Garden City, GB); James Kirkpatrick (London, GB); Hubert Josef Soyer (London, GB)
Assignee: DeepMind Technologies Limited
G06N3/045G06F17/16G06N3/08
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 12,462,145
App. No.
18/479,775
Granted
Nov 4, 2025
Kind
B2
Abstract

Methods and systems for performing a sequence of machine learning tasks. One system includes a sequence of deep neural networks (DNNs), including: a first DNN corresponding to a first machine learning task, wherein the first DNN comprises a first plurality of indexed layers, and each layer in the first plurality of indexed layers is configured to receive a respective layer input and process the layer input to generate a respective layer output; and one or more subsequent DNNs corresponding to one or more respective machine learning tasks, wherein each subsequent DNN comprises a respective plurality of indexed layers, and each layer in a respective plurality of indexed layers with index greater than one receives input from a preceding layer of the respective subsequent DNN, and one or more preceding layers of respective preceding DNNs, wherein a preceding layer is a layer whose index is one less than the current index.

Claims (81)

1 . A method performed by one or more computers, the method comprising:

processing inputs using a sequence of deep neural networks (DNNs),

wherein each DNN in the sequence of DNNs has been trained to perform a respective machine learning task of a sequence of machine learning tasks, wherein the sequence of DNNs comprises:

a first DNN that corresponds to a first machine learning task of the sequence of machine learning tasks, wherein

(i) the first DNN comprises a first plurality of indexed layers, and

(ii) each layer in the first plurality of indexed layers is configured to receive a respective layer input and process the respective layer input to generate a respective layer output; and

one or more subsequent DNNs corresponding to one or more respective subsequent machine learning tasks of the sequence of machine learning tasks, wherein

(i) each subsequent DNN comprises a respective plurality of indexed layers, and

(ii) each layer in a respective plurality of indexed layers with index i greater than one receives input from

(i) a preceding layer of the respective subsequent DNN, and

(ii) one or more preceding layers of respective preceding DNNs through respective outputs of respective non-linear lateral connections, wherein a preceding layer is a layer whose index is one less than the index i, and wherein the respective non-linear lateral connections represent a learned, non-linear transformation of the respective layer outputs of the one or more preceding layers of the respective preceding DNNs; and

(iii) each layer in the respective plurality of indexed layers with index i greater than one:

generates a respective activation by processing (i) the input received from the preceding layer of the respective subsequent DNN and (ii) the respective outputs of each of the respective non-linear lateral connections applied to the respective layer outputs of the one or more preceding layers of the respective preceding DNNs;

wherein processing the inputs comprises:

processing a first input for a last machine learning task of the sequence of machine learning task;

processing the first input using the respective DNNs of the sequence of DNNs, and

using a last subsequent DNN in the sequence to generate a last subsequent DNN output for performing the last machine learning task.

2 . The method of claim 1 wherein the non-linear lateral connections comprise a single hidden layer multilayer perceptron, MLP.

3 . The method of claim 1 wherein a subsequent DNN is a convolutional neural network and wherein the non-linear lateral connections to the convolutional neural network comprise 1×1 convolutions followed by a non-linearity.

4 . The method of claim 1 , wherein each layer with index equal to one in a respective plurality of indexed layers receives a respective subsequent DNN input.

5 . The method of claim 1 , wherein (i) the first plurality of indexed layers comprises L hidden layers, and (ii) each respective plurality of indexed layers s comprises M s hidden layers, wherein each layer in the first plurality of indexed layers comprises a hidden activation h i (1) ∈ n i , where n i represents a number of hidden units at layer i≤L, wherein each layer in a respective plurality of indexed layers s comprises a hidden activation h j (s) ∈ n j , where n j represents a number of hidden units at layer j≤M s , and, wherein the sequence of classification tasks comprises k classification tasks, and wherein an activation of the k-th subsequent DNN is given by

h i (k) =σ( W i (k) h i-1 (k) +U ij (k) σ( V ij (k) α i-1 (<k) h i-1 (<k) ))

wherein h i (k) represents an activation of the k-th subsequent DNN, W i (k) ∈ n 1 ×n i-1 represents a weight matrix of layer i of the k-th subsequent DNN, U ij (k) ∈ n 1 ×n j represents lateral connections from layer i of the k-th subsequent DNN to layer i−1 of the j-th subsequent DNN, σ represents an element-wise non linearity, V ij (k) ∈ n i-1 ×n i-1 (≤k) represents a projection matrix and α i-1 (<k) is a learned scalar.

6 . The method of claim 1 , wherein the sequence of machine learning tasks comprises independent classification tasks.

7 . The method of claim 1 , wherein the sequence of deep neural networks (DNNs) has been trained by performing operations comprising:

for a first machine learning task in the sequence:

training a first DNN in the sequence that corresponds to the first classification task to perform the first classification task, wherein (i) the first DNN comprises an input layer, an output layer, and a first plurality of indexed hidden layers, and (ii) each layer in the first plurality of indexed hidden layers is configured to receive a respective layer input and process the layer input to generate a respective layer output;

for each subsequent machine learning task in the sequence:

training a subsequent DNN corresponding to the classification task to perform the classification task, wherein (i) the subsequent DNN comprises a respective input layer, a respective output layer, and a respective plurality of indexed hidden layers, and (ii) each layer in a respective plurality of indexed hidden layers of said each subsequent DNN with index, i, greater than one receives input from (i) a preceding hidden layer of the subsequent DNN, and (ii) one or more preceding hidden layers of respective preceding DNNs, through respective non-linear lateral connections, wherein a preceding layer is a layer whose index is one less than the index, i.

8 . The method of claim 7 , wherein the sequence of machine learning tasks comprises independent classification tasks.

9 . The method of claim 7 , wherein (i) the first DNN comprises one or more respective DNN parameters, and (ii) each subsequent DNN comprises one or more respective subsequent DNN parameters, and

wherein training each subsequent DNN comprises setting preceding DNN parameters of preceding DNNs to constant values.

10 . The method of claim 7 , wherein training each subsequent DNN further comprises adjusting values of the respective subsequent DNN parameters using a machine learning training technique.

11 . The method of claim 1 , wherein the sequence of machine learning tasks includes one or more speech recognition tasks.

12 . The method of claim 11 , wherein the speech recognition tasks include one or more hotword detection tasks, where each hotword detection task requires the recognition of a different hotword or sequence of hotwords.

13 . One or more non-transitory computer-readable media storing instructions that when executed by one or more computers cause the one or more computers to perform operations comprising:

processing inputs using a sequence of deep neural networks (DNNs),

wherein each DNN in the sequence of DNNs has been trained to perform a respective machine learning task of a sequence of machine learning tasks, wherein the sequence of DNNs comprises:

a first DNN that corresponds to a first machine learning task of the sequence of machine learning tasks, wherein

(i) the first DNN comprises a first plurality of indexed layers, and

(ii) each layer in the first plurality of indexed layers is configured to receive a respective layer input and process the respective layer input to generate a respective layer output; and

one or more subsequent DNNs corresponding to one or more respective subsequent machine learning tasks of the sequence of machine learning tasks, wherein

(i) each subsequent DNN comprises a respective plurality of indexed layers, and

(ii) each layer in a respective plurality of indexed layers with index i greater than one receives input from

(i) a preceding layer of the respective subsequent DNN, and

(ii) one or more preceding layers of respective preceding DNNs through respective outputs of respective non-linear lateral connections, wherein a preceding layer is a layer whose index is one less than the index i, and wherein the respective non-linear lateral connections represent a learned, non-linear transformation of the respective layer outputs of the one or more preceding layers of the respective preceding DNNs; and

(iii) each layer in the respective plurality of indexed layers with index i greater than one:

generates a respective activation by processing (i) the input received from the preceding layer of the respective subsequent DNN and (ii) the respective outputs of each of the respective non-linear lateral connections applied to the respective layer outputs of the one or more preceding layers of the respective preceding DNNs;

wherein processing the inputs comprises:

processing a first input for a last machine learning task of the sequence of machine learning task;

processing the first input using the respective DNNs of the sequence of DNNs, and

using a last subsequent DNN in the sequence to generate a last subsequent DNN output for performing the last machine learning task.

14 . A system comprising one or more computers and one or more storage devices storing instructions that when executed by the one or more computers cause the one or more computers to perform operations comprising:

processing inputs using a sequence of deep neural networks (DNNs),

wherein each DNN in the sequence of DNNs has been trained to perform a respective machine learning task of a sequence of machine learning tasks, wherein the sequence of DNNs comprises:

a first DNN that corresponds to a first machine learning task of the sequence of machine learning tasks, wherein

(i) the first DNN comprises a first plurality of indexed layers, and

(ii) each layer in the first plurality of indexed layers is configured to receive a respective layer input and process the respective layer input to generate a respective layer output; and

one or more subsequent DNNs corresponding to one or more respective subsequent machine learning tasks of the sequence of machine learning tasks, wherein

(i) each subsequent DNN comprises a respective plurality of indexed layers, and

(ii) each layer in a respective plurality of indexed layers with index i greater than one receives input from

(i) a preceding layer of the respective subsequent DNN, and

(ii) one or more preceding layers of respective preceding DNNs through respective outputs of respective non-linear lateral connections, wherein a preceding layer is a layer whose index is one less than the index i, and wherein the respective non-linear lateral connections represent a learned, non-linear transformation of the respective layer outputs of the one or more preceding layers of the respective preceding DNNs; and

(iii) each layer in the respective plurality of indexed layers with index i greater than one:

generates a respective activation by processing (i) the input received from the preceding layer of the respective subsequent DNN and (ii) the respective outputs of each of the respective non-linear lateral connections applied to the respective layer outputs of the one or more preceding layers of the respective preceding DNNs;

wherein processing the inputs comprises:

processing a first input for a last machine learning task of the sequence of machine learning task;

processing the first input using the respective DNNs of the sequence of DNNs, and

using a last subsequent DNN in the sequence to generate a last subsequent DNN output for performing the last machine learning task.

15 . The system of claim 14 , wherein the non-linear lateral connections comprise a single hidden layer multilayer perceptron, MLP.

16 . The system of claim 14 , wherein a subsequent DNN is a convolutional neural network and wherein the non-linear lateral connections to the convolutional neural network comprise 1×1 convolutions followed by a non-linearity.

17 . The system of claim 14 , wherein each layer with index equal to one in a respective plurality of indexed layers receives a respective subsequent DNN input.

18 . The method of claim 14 , wherein (i) the first plurality of indexed layers comprises L hidden layers, and (ii) each respective plurality of indexed layers s comprises M s hidden layers, wherein each layer in the first plurality of indexed layers comprises a hidden activation h i (1) ∈ n i , where n i represents a number of hidden units at layer i≤L, wherein each layer in a respective plurality of indexed layers s comprises a hidden activation h j (s) ∈ n j , where n j represents a number of hidden units at layer j≤M s , and, wherein the sequence of classification tasks comprises k classification tasks, and wherein an activation of the k-th subsequent DNN is given by

h i (k) =σ( W i (k) h i-1 (k) +U ij (k) σ( V ij (k) α i-1 (<k) h i-1 (<k) ))

wherein h i (k) represents an activation of the k-th subsequent DNN, W i (k) ∈ n 1 ×n i-1 represents a weight matrix of layer i of the k-th subsequent DNN, U ij (k) ∈ n 1 ×n j represents lateral connections from layer i of the k-th subsequent DNN to layer i−1 of the j-th subsequent DNN, σ represents an element-wise non linearity, V ij (k) ∈ n i-1 ×n i-1 (≤k) represents a projection matrix and α i-1 (<k) is a learned scalar.

19 . The system of claim 14 , wherein the sequence of machine learning tasks comprises independent classification tasks.

20 . The system of claim 14 , wherein the sequence of deep neural networks (DNNs) has been trained by performing operations comprising:

for a first machine learning task in the sequence:

training a first DNN in the sequence that corresponds to the first classification task to perform the first classification task, wherein (i) the first DNN comprises an input layer, an output layer, and a first plurality of indexed hidden layers, and (ii) each layer in the first plurality of indexed hidden layers is configured to receive a respective layer input and process the layer input to generate a respective layer output;

for each subsequent machine learning task in the sequence:

training a subsequent DNN (corresponding to the classification task to perform the classification task, wherein (i) the subsequent DNN comprises a respective input layer, a respective output layer, and a respective plurality of indexed hidden layers, and (ii) each layer in a respective plurality of indexed hidden layers of said each subsequent DNN with index, i, greater than one receives input from (i) a preceding hidden layer of the subsequent DNN, and (ii) one or more preceding hidden layers of respective preceding DNNs, through respective non-linear lateral connections, wherein a preceding layer is a layer whose index is one less than the index, i.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 6, 2025
From: DEEPMIND TECHNOLOGIES LIMITED
To: GDM HOLDING LLC
Reel/Frame 071498/0210 →
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY POSTAL CODE FROM "EC4A 3WT" TO "EC4A 3TW" PREVIOUSLY RECORDED AT REEL: 065169 FRAME: 0563. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Dec 28, 2023
From: GOOGLE INC.
To: DEEPMIND TECHNOLOGIES LIMITED
Reel/Frame 066142/0176 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2023
From: RABINOWITZ, NEIL CHARLES; DESJARDINS, GUILLAUME; RUSU, ANDREI-ALEXANDRU; KAVUKCUOGLU, KORAY; HADSELL, RAIA THAIS; PASCANU, RAZVAN; KIRKPATRICK, JAMES; SOYER, HUBERT JOSEF
To: GOOGLE INC.
Reel/Frame 065169/0453 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2023
From: GOOGLE, INC.
To: DEEPMIND TECHNOLOGIES LIMITED
Reel/Frame 065169/0563 →