IP Library Granted Patent US 11,645,514
Granted Patent B2
US 11,645,514 · App. 16/530,457 · Granted May 9, 2023

Out-of-domain encoder training

Inventors: Ming Tan (Malden, MA); Dakuo Wang (Cambridge, MA); Mo Yu (Clifton, NJ); Haoyu Wang (Somerville, MA); Yang Yu (Acton, MA); Shiyu Chang (Elmsford, NY); Saloni Potdar (Arlington, MA)
Assignee: International Business Machines Corporation
G06N3/08G06N20/00G06F17/16
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,645,514
App. No.
16/530,457
Granted
May 9, 2023
Kind
B2
Abstract

A computer-implemented method includes using an embedding network to generate prototypical vectors. Each prototypical vector is based on a corresponding label associated with a first domain. The computer-implemented method also includes using the embedding network to generate an in-domain test vector based on at least one data sample from a particular label associated with the first domain and using the embedding network to generate an out-of-domain test vector based on at least one other data sample associated with a different domain. The computer-implemented method also includes comparing the prototypical vectors to the in-domain test vector to generate in-domain comparison values and comparing the prototypical vectors to the out-of-domain test vector to generate out-of-domain comparison values. The computer-implemented method also includes modifying, based on the in-domain comparison values and the out-of-domain comparison values, one or more parameters of the embedding network.

Claims (78)

1. A computer-implemented method of training an encoder, the computer-implemented method comprising:

using an embedding network to generate prototypical vectors, each prototypical vector based on a corresponding label associated with a first domain;

using the embedding network to generate an in-domain test vector based on at least one data sample from a particular label associated with the first domain;

using the embedding network to generate an out-of-domain test vector based on at least one other data sample associated with a different domain;

comparing the prototypical vectors to the in-domain test vector to generate in-domain comparison values;

comparing the prototypical vectors to the out-of-domain test vector to generate out-of-domain comparison values; and

modifying, based on the in-domain comparison values and the out-of-domain comparison values, one or more parameters of the embedding network to generate one or more modified parameters for the embedding network.

2. The computer-implemented method of claim 1 , wherein modifying the one or more parameters of the embedding network comprises modifying one or more weights of the embedding network.

3. The computer-implemented method of claim 1 , further comprising determining a maximum likelihood of a true label based on the in-domain test vector, the in-domain test vector generated based on a training data sample selected from a label associated with the first domain.

4. The computer-implemented method of claim 3 , wherein the maximum likelihood of the true label is determined based on

L

in

=

expa

(

x

i

in

,

s

l

i

in

)

l

expa

(

x

i

in

,

s

l

i

in

)

.

5. The computer-implemented method of claim 3 , wherein modifying the one or more parameters of the embedding network comprises:

selecting particular parameters that minimize a distance between the in-domain test vector and a particular prototypical vector associated with the maximum likelihood of the true label, wherein the particular parameters correspond to the one or more modified parameters.

6. The computer-implemented method of claim 5 , wherein minimizing the distance between the out-of-domain test vector and the particular prototypical vector is based on L gt =max[0, M 2 −max(F(x i in , S i in ))].

7. The computer-implemented method of claim 1 , wherein modifying the one or more parameters of the embedding network comprises:

selecting particular parameters that maximize distances between the out-of-domain test vector and the prototypical vectors, wherein the particular parameters correspond to the one or more modified parameters.

8. The computer-implemented method of claim 7 , wherein maximizing the distances between the out-of-domain test vector and the prototypical vectors is based on L ood =max[0, max(F(x j out , S l in )−M 1 )].

9. The computer-implemented method of claim 1 , further comprising:

randomly selecting a first group of one or more data samples from a first label associated with the first domain; and

randomly selecting a second group of one or more data samples from a second label associated with the first domain.

10. The computer-implemented method of claim 9 , further comprising:

encoding, using the embedding network, each data sample in the first group of one or more data samples to generate corresponding first sample vectors; and

encoding, using the embedding network, each data sample in the second group of one or more data samples to generate corresponding second sample vectors.

11. The computer-implemented method of claim 10 , further comprising:

performing an average-pooling operation on the first sample vectors to generate a first prototypical vector; and

performing the average-pooling operation on the second sample vectors to generate a second prototypical vector, wherein the prototypical vectors include at least the first prototypical vector and the second prototypical vector.

12. An apparatus comprising:

a processor; and

a memory coupled to the processor and storing instructions that, when executed by the processor, cause the processor to perform operations comprising:

using an embedding network to generate prototypical vectors, each prototypical vector based on a corresponding label associated with a first domain;

using the embedding network to generate an in-domain test vector based on at least one data sample from a particular label associated with the first domain;

using the embedding network to generate an out-of-domain test vector based on at least one other data sample associated with a different domain;

comparing the prototypical vectors to the in-domain test vector to generate in-domain comparison values;

comparing the prototypical vectors to the out-of-domain test vector to generate out-of-domain comparison values; and

modifying, based on the in-domain comparison values and the out-of-domain comparison values, one or more parameters of the embedding network to generate one or more modified parameters for the embedding network.

13. The apparatus of claim 12 , wherein modifying the one or more parameters of the embedding network comprises modifying one or more weights of the embedding network.

14. The apparatus of claim 12 , wherein the operations further comprise, for in-domain test data, performing an average pooling operation on each embedding per label to generate a respective prototypical vector.

15. The apparatus of claim 12 , wherein the operations further comprise determining a particular label that has a highest degree of similarity α(x i in , S l i in ) to the in-domain test vector.

16. The apparatus of claim 12 , wherein the operations further comprise classifying a particular test vector as “out-of-domain” if a similarity α(x i in , S l i in ) between the particular test vector and each prototypical vector is lower than a threshold.

17. A computer program product for training an encoder, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to perform operations comprising:

using an embedding network to generate prototypical vectors, each prototypical vector based on a corresponding label associated with a first domain;

using the embedding network to generate an in-domain test vector based on at least one data sample from a particular label associated with the first domain;

using the embedding network to generate an out-of-domain test vector based on at least one other data sample associated with a different domain;

comparing the prototypical vectors to the in-domain test vector to generate in-domain comparison values;

comparing the prototypical vectors to the out-of-domain test vector to generate out-of-domain comparison values; and

modifying, based on the in-domain comparison values and the out-of-domain comparison values, one or more parameters of the embedding network to generate one or more modified parameters for the embedding network.

18. The computer program product of claim 17 , wherein modifying the one or more parameters of the embedding network comprises modifying one or more weights of the embedding network.

19. The computer program product of claim 17 , wherein the operations further comprise, for in-domain test data, performing an average pooling operation on each embedding per label to generate a respective prototypical vector.

20. The computer program product of claim 17 , wherein the operations further comprise determining a particular label that has a highest degree of similarity α(x i in , S l i in ) to the in-domain test vector.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 2, 2019
From: TAN, MING; WANG, DAKUO; YU, MO; WANG, HAOYU; YU, YANG; CHANG, SHIYU; POTDAR, SALONI
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 049944/0740 →
Continuity (1)
Related Publication 20210034965A1 · Feb 4, 2021