IP Library Granted Patent US 11,461,537
Granted Patent B2
US 11,461,537 · App. 16/827,830 · Granted Oct 4, 2022

Systems and methods of data augmentation for pre-trained embeddings

Inventors: Keld Lundgaard (Cambridge, MA); Cameron Wolfe (Austin, TX)
Assignee: Salesforce, Inc.
G06F40/151G06F17/18G06K9/628G06K9/6256G06K9/6289G06N3/04G06N3/08G06N20/10G06N20/00
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,461,537
App. No.
16/827,830
Granted
Oct 4, 2022
Kind
B2
Abstract

Systems and methods are provided for generating textual embeddings by tokenizing text data and generating vectors to be provided to a transformer system, where the textual embeddings are vector representations of semantic meanings of text that is part of the text data. The vectors may be averaged for every token of the generated textual embeddings and concatenating average output activations of two layers of the transformer system. Image embeddings may be generated with a convolutional neural network (CNN) from image data, wherein the image embeddings are vector representations of the images that are part of the image data. The textual embeddings and image embeddings may be combined to form combined embeddings to be provided to the transformer system.

Claims (53)

1. A method comprising:

generating, by a server, textual embeddings by tokenizing text data and generating vectors to be provided to a transformer system, wherein the textual embeddings are vector representations of semantic meanings of text that is part of the text data;

averaging, by the server, the vectors for every token of the generated textual embeddings and concatenating average output activations of two layers of the transformer system;

generating, by the server, image embeddings with a convolutional neural network (CNN) from image data, wherein the image embeddings are vector representations of the images that are part of the image data, by:

providing an original image to the CNN to retrieve activation maps at each layer of the CNN; and

using the activation maps, generating a resulting image embedding by performing a global average pooling on a convolutional layer of the CNN to determine a value for every channel; and

combining, by the server, the textual embeddings and image embeddings to form combined embeddings to be provided to the transformer system; and

transmitting, by the server, the combined embeddings.

2. The method of claim 1 , further comprising:

applying, by the server, at least one of the group consisting of: weighted averaging, and weighted pooling to at least one of the textual embeddings and the image embeddings.

3. The method of claim 1 , further comprising:

predicting, by the server, a ratio between at least two original product classes of an electronic catalog based on at least a portion of the combined embeddings provided to the transformer system.

4. The method of claim 1 , further comprising:

applying, by the server, at least one data augmentation selected from the group consisting of: embedding mixup, embedding stitchup, embedding softened mixup, and embedding softened stitchup.

5. The method of claim 4 , wherein the embedding mixup comprises:

generating, by the server, a weighted average of embedding inputs for two separate inputs selected from the group consisting of: the textual embeddings and the image embeddings.

6. The method of claim 4 , wherein the embedding stitchup comprises:

generating, by the server, a combination of two unique training examples by randomly sample elements from two vectors of at least one from the group consisting of: the vectors of the text, and the vectors of the images.

7. The method of claim 6 , wherein the embedding stitchup further comprises:

generating, by the server, a weighted average of two label vectors of the vectors of the text, wherein the label vectors are textual labels of items.

8. The method of claim 6 , wherein the embedding stitchup randomly samples a ratio of each embedding.

9. The method of claim 4 , wherein embedding softened mixup, or the embedding softened stitchup comprises:

generating, by the server, a weighted average of two target vectors of at least one from the group consisting of: the vectors of text, and the vectors of the images to generate a predicted soft target vector.

10. The method of claim 9 , wherein the predicted soft target vector represents the ratio sampled from each of two input vectors for the transformer system, wherein the two input vectors are selected from the group consisting of: the vectors of text, and the vectors of the images.

11. The method of claim 10 , further comprising:

randomly perturbing, by the server, values of the predicted soft target by subtracting a random value from one or more positive classes and adding a value to one or more negative classes.

12. The method of claim 11 , wherein a total probability of one is spread across the one or more negative classes.

13. The method of claim 1 , further comprising:

classifying, by the server, the combined embeddings.

14. The method of claim 1 , wherein the combining the embeddings comprises:

concatenating, by the server, the textual embeddings and image embeddings with each other to create a single vector.

15. A system comprising:

a server having a processor and a memory to:

generate textual embeddings by tokenizing text data and generating vectors to be provided to a transformer system, wherein the textual embeddings are vector representations of semantic meanings of text that is part of the text data;

average the vectors for every token of the generated textual embeddings and concatenate average output activations of two layers of the transformer system;

generate image embeddings with a convolutional neural network (CNN) from image data, wherein the image embeddings are vector representations of the images that are part of the image data, by:

providing an original image to the CNN to retrieve activation maps at each layer of the CNN; and

using the activation maps to generate a resulting image embedding by performing a global average pooling on a convolutional layer of the CNN to determine a value for every channel; and

combine the textual embeddings and image embeddings to form combined embeddings to be provided to a transformer system; and

transmit the combined embeddings.

16. The system of claim 15 , wherein the server applies at least one of the group consisting of: weighted averaging, and weighted pooling to at least one of the textual embeddings and the image embeddings.

17. The system of claim 15 , wherein the server predicts a ratio between at least two original product classes of an electronic catalog based on at least a portion of the combined embeddings provided to the transformer system.

18. The system of claim 15 , wherein the server applies at least one data augmentation selected from the group consisting of: embedding mixup, embedding stitchup, embedding softened mixup, and embedding softened stitchup.

19. The system of claim 18 , wherein the server generates the embedding mixup by generating a weighted average of embedding inputs for two separate inputs selected from the group consisting of: the textual embeddings and the image embeddings.

20. The system of claim 18 , wherein the server generates the embedding stitchup by generating a combination of two unique training examples by randomly sample elements from two vectors of at least one from the group consisting of: the vectors of the text, and the vectors of the images.

21. The system of claim 20 , wherein the server generates the embedding stitchup by generating a weighted average of two label vectors of the vectors of the text, wherein the label vectors are textual labels of items.

22. The system of claim 20 , wherein the embedding stitchup randomly samples a ratio of each embedding.

23. The system of claim 18 , wherein server generates the embedding softened mixup or the embedding softened stitchup, by generating a weighted average of two target vectors of the output vectors to generate a predicted soft target vector.

24. The system of claim 23 , wherein the predicted soft target vector represents the ratio sampled from each of two input vectors for the transformer system.

25. The system of claim 24 , wherein the server randomly perturbs values of the predicted soft target by subtracting a random value from one or more positive classes and adding a value to one or more negative classes.

26. The system of claim 25 , wherein a total probability of one is spread across the one or more negative classes.

27. The system of claim 15 , wherein the server classifies the combined embeddings.

28. The system of claim 15 , wherein the server combines the embeddings by concatenating the textual embeddings and image embeddings with each other to create a single vector.

Assignments (2)
CHANGE OF NAME Recorded Dec 18, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069717/0480 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 24, 2020
From: LUNDGAARD, KELD; WOLFE, CAMERON
To: SALESFORCE.COM, INC.
Reel/Frame 052205/0888 →
Continuity (3)
Provisional Application 62967137 · Jan 29, 2020
Provisional Application 62934714 · Nov 13, 2019
Related Publication 20210141995A1 · May 13, 2021
Cited By (2)
US 12,242,964 US 12,493,998