# US 2019/0244108 A1 · System and Method For Pseudo-Task Augmentation in Deep Multitask Learning

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2019/0244108 A1
- Document ID: US20190244108A1
- Status: Published application
- Kind: A1
- Application number: 16/270,681
- Filed: 2019-02-08
- Published: 2019-08-08
- Earliest claimed: 2018-02-08
- Assignees: Cognizant Technology Solutions U.S. Corporation
- Applicants: Cognizant Technology Solutions U.S. Corporation
- Inventors: Elliot Meyerson; Risto Miikkulainen
- Web page: https://patentgrep.com/patent/US20190244108A1

## CPC

- G06N 3/082: modifying the architecture, e.g. adding, deleting or silencing nodes or connections
- G06N 3/084: Backpropagation, e.g. using gradient descent
- G06N 3/044: Recurrent networks, e.g. Hopfield networks
- G06N 3/0442: characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
- G06N 3/045: Combinations of networks
- G06N 3/0455: Auto-encoder networks; Encoder-decoder networks
- G06N 3/0464: Convolutional networks [CNN, ConvNet]
- G06N 3/09: Supervised learning
- G06N 3/0985: Hyperparameter optimisation; Meta-learning; Learning-to-learn
- G06N 3/048: Activation functions
- G06N 3/063: using electronic means
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS

## Abstract

A multi-task (MTL) process is adapted to the single-task learning (STL) case, i.e., when only a single task is available for training. The process is formalized as pseudo-task augmentation (PTA), in which a single task has multiple distinct decoders projecting the output of the shared structure to task predictions. By training the shared structure to solve the same problem in multiple ways, PTA simulates the effect of training towards distinct but closely-related tasks drawn from the same universe. Training dynamics with multiple pseudo-tasks strictly subsumes training with just one, and a class of algorithms is introduced for controlling pseudo-tasks in practice.

## Claims

### Claim 1

A neural network-based model coupled to memory and running on one or more parallel processors, comprising:
an encoder that processes an input and generates an encoding;
numerous decoders
that are grouped into sets of decoders in dependence upon corresponding classification tasks,
that respectively receive the encoding as input from the encoder, thereby forming encoder-decoder pairs which operate independently of each other when performing the corresponding classification tasks, and
that respectively process the encoding and produce classification scores for classes defined for the corresponding classification tasks; and
a trainer that jointly trains the encoder-decoder pairs over one thousand to millions of backpropagation iterations to perform the corresponding classification tasks.

### Claim 2 (depends on 1)

The neural network-based model of claim 1, wherein the trainer is further configured to comprise:
a forward pass stage that processes training inputs through the encoder and resulting encodings through the decoders to compute respective activations for each of the training inputs;
a backward pass stage, that, over each of the one thousand to millions of backpropagation iterations,
determines gradient data for the decoders for each of the training inputs in dependence upon a loss function,
averages the gradient data determined for the decoders, and
determines gradient data for the encoder by backpropagating the averaged gradient data through the encoder;
an update stage that modifies weights of the encoder in dependence upon the gradient data determined for the encoder; and
a persistence stage that, upon convergence after a final backpropagation iteration, persists in the memory the modified weights of the encoder derived by the training to be applied to future classification tasks.

### Claim 3 (depends on 1)

The neural network-based model of any of claims 1, further configured to use a combination of the modified weights of the encoder derived by the training and modified weights of a particular one of the decoders derived by the training to perform a particular one of the classification tasks on inference inputs, and
wherein the inference inputs are processed by the encoder to produce encodings, followed by the particular one of the decoders processing the encodings to output classification scores for classes defined for the particular one of the classification tasks.

### Claim 4 (depends on 1)

The neural network-based model of claim 1, further configured to use a combination of the modified weights of the encoder derived by the training and modified weights of two or more of the decoders derived by the training to respectively perform two or more of the classification tasks on inference inputs, and
wherein the inference inputs are processed by the encoder to produce encodings, followed by the two or more of the decoders respectively processing the encodings to output classification scores for classes defined for the two or more of the classification tasks.

### Claim 5 (depends on 1)

The neural network-based model of claim 1, wherein each training input is annotated with a plurality of task-specific labels for the corresponding classification tasks.

### Claim 6 (depends on 1)

The neural network-based model of any of claim 1, wherein a plurality of training inputs for the corresponding classification tasks are fed in parallel to the encoder as input in each forward pass iteration, and
wherein each training input is annotated with a task-specific label for a corresponding classification task.

### Claim 7 (depends on 1)

The neural network-based model of claim 1, wherein the loss function is cross entropy that uses either a maximum likelihood objective function, a policy gradient function, or both.

### Claim 8 (depends on 1)

The neural network-based model of claim 1, wherein the encoder is a convolutional neural network (abbreviated CNN) with a plurality of convolution layers arranged in a sequence from lowest to highest.

### Claim 9 (depends on 1)

The neural network-based model of claim 1, wherein the encoding is convolution data.

### Claim 10 (depends on 1)

The neural network-based model of claim 1, wherein each decoder further comprises at least one decoder layer and at least one classification layer.

### Claim 11 (depends on 1)

The neural network-based model of claim 1, wherein the decoder is a fully-connected neural network (abbreviated FCNN) and the decoder layer is a fully-connected layer.

### Claim 12 (depends on 1)

The neural network-based model of claim 1, wherein the classification layer is a sigmoid classifier.

### Claim 13 (depends on 1)

The neural network-based model of claim 1, wherein the classification layer is a softmax classifier.

### Claim 14 (depends on 1)

The neural network-based model of claim 1, wherein the encoder is a recurrent neural network (abbreviated RNN), including long short-term memory (LSTM) network or gated recurrent unit (GRU) network.

### Claim 15 (depends on 1)

The neural network-based model of claim 1, wherein the encoding is hidden state data.

### Claim 16 (depends on 1)

The neural network-based model of claim 1, wherein each decoder is a recurrent neural network (abbreviated RNN), including long short-term memory (LSTM) network or gated recurrent unit (GRU) network.

### Claim 17 (depends on 1)

The neural network-based model of claim 1, wherein each decoder is a convolutional neural network (abbreviated CNN) with a plurality of convolution layers arranged in a sequence from lowest to highest.

### Claim 18 (depends on 1)

The neural network-based model of claim 1, wherein the encoder is a fully-connected neural network (abbreviated FCNN) with at least one fully-connected layer.

### Claim 19 (depends on 1)

The neural network-based model of claim 1, wherein at least some of the decoders are of a first neural network type, at least some of the decoders are of a second neural network type, and at least some of the decoders are of a third neural network type.

### Claim 20 (depends on 1)

The neural network-based model of claim 1, wherein at least some of the decoders are convolutional neural networks (abbreviated CNNs) with a plurality of convolution layers arranged in a sequence from lowest to highest, at least some of the decoders are recurrent neural networks (abbreviated RNNs), including long short-term memory (LSTM) networks or gated recurrent unit (GRU) networks, and at least some of the decoders are fully-connected neural networks (abbreviated FCNNs).

### Claim 21 (depends on 1)

The neural network-based model of claim 1, wherein the input, the training inputs, and the inference inputs are selected from the group consisting of image data, text data and genomic data.

### Claim 22 (depends on 1)

The neural network-based model of claim 1, further configured to comprise an initializer that initializes the decoders with random weights.

### Claim 23 (depends on 1)

The neural network-based model of claim 1, further configured to comprise the initializer that freezes weights of some decoders for certain number of backpropagation iterations while updating weights of at least one high performing decoder among the decoders over the certain number of backpropagation iterations, and
wherein the high performing decoder is identified based on performance on validation data.

### Claim 24 (depends on 1)

The neural network-based model of claim 1, further configured to comprise the initializer that periodically and randomly drops out weights of the decoders after certain number of backpropagation iterations.

### Claim 25 (depends on 1)

The neural network-based model of claim 1, further configured to comprise the initializer that periodically perturbs weights of the decoders after certain number of backpropagation iterations by adding random noise to the weights.

### Claim 26 (depends on 1)

The neural network-based model of claim 1, further configured to comprise the initializer that periodically perturbs hyperparameters of the decoders after certain number of backpropagation iterations by randomly changing a rate at which weights of the decoders are randomly dropped out.

### Claim 27 (depends on 1)

The neural network-based model of claim 1, further configured to comprise the initializer that identifies at least one high performing decoder among the decoders after every certain number of backpropagation iterations and copies weights and hyperparameters of the high performing decoder to the other decoders, and
wherein the high performing decoder is identified based on performance on validation data.

### Claim 28

A neural network-implemented method, including:
processing an input through an encoder and generating an encoding;
processing the encoding through numerous decoders and producing classification scores for classes defined for corresponding classification tasks, wherein the decoders are grouped into sets of decoders in dependence upon the corresponding classification tasks and respectively receive the encoding as input from the encoder, thereby forming encoder-decoder pairs which operate independently of each other; and
jointly training the encoder-decoder pairs over one thousand to millions of backpropagation iterations to perform the corresponding classification tasks.

### Claim 29

A non-transitory computer readable storage medium impressed with computer program instructions, which, when executed on a processor, implement a method comprising:
processing an input through an encoder and generating an encoding;
processing the encoding through numerous decoders and producing classification scores for classes defined for corresponding classification tasks, wherein the decoders are grouped into sets of decoders in dependence upon the corresponding classification tasks and respectively receive the encoding as input from the encoder, thereby forming encoder-decoder pairs which operate independently of each other; and
jointly training the encoder-decoder pairs over one thousand to millions of backpropagation iterations to perform the corresponding classification tasks.

### Claim 30

A pseudo-task augmentation system, comprising:
an underlying multitask model that embeds task inputs into task embeddings;
a plurality of decoder models that project the task embeddings into distinct classification layers;
wherein a combination of the multitask model and a decoder model in the plurality of decoder models defines a task model, and a plurality of task models populate a model space; and
a traverser that traverses a model space and determines a distinct loss for each task model in the model based on a distinct gradient during training.

### Claim 31 (depends on 30)

The pseudo-task augmentation system of claim 30, wherein a task coupled with a decoder model and its parameters defines a pseudo-task for the underlying multitask model.

### Claim 32 (depends on 30)

The pseudo-task augmentation system of claim 30, further comprising a selector that selects a best performing decoder model for a given task.

### Claim 33 (depends on 30)

pseudo-task augmentation system of claim 30, wherein the decoder models have one linear layer of weights from shared output to a classification layer.
