IP Library Granted Patent US 11,106,715
Granted Patent B1
US 11,106,715 · App. 15/961,842 · Granted Aug 31, 2021

Systems and methods for using heterogeneous graphs to derive object embeddings

Inventors: Cheng Ju (Davis, CA); James Li (Pleasanton, CA); Bram Wasti (Redwood City, CA); Shengbo Guo (San Jose, CA)
Assignee: Facebook, Inc.
G06F16/35G06F16/9024G06F16/951G06N5/046G06N20/00G06Q50/01
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,106,715
App. No.
15/961,842
Granted
Aug 31, 2021
Kind
B1
Abstract

The disclosed computer-implemented method may include (1) maintaining a heterogeneous graph that represents (a) objects of a first type, (b) objects of a second type, and (c) relationships between the objects of the first type and objects of the second type, (2) using features of the objects of the first type to train a first embedding model to generate embeddings of the first type that (a) predict a label of objects of the first type and (b) predict, when combined with embeddings of the second type, graphical relationships in the graph, and (3) using features of each of the objects of the second type to train a second embedding model to generate the embeddings of the second type that predict, when combined with the embeddings of the first type, the graphical relationships in the graph. Various other methods, systems, and computer-readable media are also disclosed.

Claims (78)

1. A computer-implemented method comprising:

maintaining a heterogeneous graph comprising:

first nodes representing objects of a first type;

second nodes representing objects of a second type; and

edges, wherein each of the edges represents a relationship between an object of the first type and an object of the second type;

using features of each of the objects of the first type to train a first embedding model to generate embeddings of the objects of the first type that:

predict a class label of at least a portion of the objects of the first type; and

predict, when combined with embeddings of the objects of the second type, graphical relationships of objects represented in the heterogeneous graph; and

using features of each of the objects of the second type to train a second embedding model to generate the embeddings of the objects of the second type that predict, when combined with the embeddings of the objects of the first type, the graphical relationships of objects represented in the heterogeneous graph.

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

using the embeddings of the objects of the first type to train a label-predicting model to predict the class label of the portion of the objects of the first type; and

using the embeddings of the objects of the first type and the embeddings of the objects of the second type to train a graphical-relationship predicting model to predict the graphical relationships of objects represented in the heterogeneous graph.

3. The computer-implemented method of claim 2 , wherein the first embedding model, the second embedding model, the label-predicting model, and the graphical-relationship predicting model are trained simultaneously.

4. The computer-implemented method of claim 1 , wherein:

the heterogeneous graph is a user-domain graph;

the first nodes represent Internet domains; and

the second nodes represent users of an online system.

5. The computer-implemented method of claim 4 , wherein each of the edges represents one or more interactions between a user of the online system and an Internet domain.

6. The computer-implemented method of claim 4 , further comprising using the embeddings of the Internet domains to identify two or more Internet domains that are closely related in an embedding space of the embeddings of the Internet domains.

7. The computer-implemented method of claim 4 , further comprising using the embeddings of the users to identify two or more users that are closely related in an embedding space of the embeddings of the users.

8. The computer-implemented method of claim 4 , further comprising:

identifying user-provided content items that are candidates for a content feed of a user of the online system;

using at least one of the embeddings of the Internet domains and the embeddings of the users to determine a ranking of the user-provided content items; and

displaying the user-provided content items in the content feed of the user based at least in part on the ranking.

9. The computer-implemented method of claim 1 , wherein the first nodes represent one of:

Internet domains;

Internet resources;

users of an online system; or

groups of the users of the online system.

10. The computer-implemented method of claim 1 , wherein the second nodes represent one of:

Internet domains;

Internet resources;

users of an online system; or

groups of the users of the online system.

11. The computer-implemented method of claim 1 , wherein the first embedding model and the second embedding model are feed-forward neural networks.

12. The computer-implemented method of claim 1 , wherein using the features of each of the objects of the first type to train the first embedding model comprises training the first embedding model to generate the embeddings of the objects of the first type to further predict an additional class label of at least the portion of the objects of the first type.

13. The computer-implemented method of claim 1 , wherein:

the heterogeneous graph further comprises:

third nodes representing objects of a third type; and

additional edges, wherein each of the additional edges represents a relationship between an object of the first type and an object of the third type;

using the features of each of the objects of the first type to train the first embedding model further comprises training the first embedding model to generate the embeddings of the objects of the first type to further predict, when combined with embeddings of the objects of the third type, graphical relationships of objects represented in the heterogeneous graph; and

the computer-implemented method further comprises using features of each of the objects of the third type to train a third embedding model to generate the embeddings of the objects of the third type that predict, when combined with the embeddings of the objects of the first type, the graphical relationships of objects represented in the heterogeneous graph.

14. A system comprising:

a graph-maintaining module that maintains a heterogeneous graph comprising:

first nodes representing objects of a first type;

second nodes representing objects of a second type; and

edges, wherein each of the edges represents a relationship between an object of the first type and an object of the second type;

an embedding module that:

uses features of each of the objects of the first type to train a first embedding model to generate embeddings of the objects of the first type that:

predict a class label of at least a portion of the objects of the first type; and

predict, when combined with embeddings of the objects of the second type, graphical relationships of objects represented in the heterogeneous graph; and

uses features of each of the objects of the second type to train a second embedding model to generate the embeddings of the objects of the second type that predict, when combined with the embeddings of the objects of the first type, the graphical relationships of objects represented in the heterogeneous graph; and

at least one physical processor configured to execute the graph-maintaining module and the embedding module.

15. The system of claim 14 , further comprising a training module that:

uses the embeddings of the objects of the first type to train a label-predicting model to predict the class label of the portion of the objects of the first type; and

uses the embeddings of the objects of the first type and the embeddings of the objects of the second type to train a graphical-relationship predicting model to predict the graphical relationships of objects represented in the heterogeneous graph.

16. The system of claim 15 , wherein the first embedding model, the second embedding model, the label-predicting model, and the graphical-relationship predicting model are trained simultaneously.

17. The system of claim 14 , wherein:

the heterogeneous graph is a user-domain graph;

the first nodes represent Internet domains;

the second nodes represent users of an online system; and

each of the edges represents one or more interactions between a user of the online system and an Internet domain.

18. The system of claim 17 , further comprising a querying module that:

uses the embeddings of the Internet domains to identify two or more Internet domains that are closely related in an embedding space of the embeddings of the Internet domains; and

uses the embeddings of the users to identify two or more users that are closely related in an embedding space of the embeddings of the users.

19. The system of claim 17 , further comprising:

an identifying module that identifies user-provided content items that are candidates for a content feed of a user of the online system;

a ranking module that uses at least one of the embeddings of the Internet domains and the embeddings of the users to determine a ranking of the user-provided content items; and

a displaying module that displays the user-provided content items in the content feed of the user based at least in part on the ranking.

20. A non-transitory computer-readable medium comprising computer-readable instructions that, when executed by at least one processor of a computing device, cause the computing device to:

maintain a heterogeneous graph comprising:

first nodes representing objects of a first type;

second nodes representing objects of a second type; and

edges, wherein each of the edges represents a relationship between an object of the first type and an object of the second type;

use features of each of the objects of the first type to train a first embedding model to generate embeddings of the objects of the first type that:

predict a class label of at least a portion of the objects of the first type; and

predict, when combined with embeddings of the objects of the second type, graphical relationships of objects represented in the heterogeneous graph; and

use features of each of the objects of the second type to train a second embedding model to generate the embeddings of the objects of the second type that predict, when combined with the embeddings of the objects of the first type, the graphical relationships of objects represented in the heterogeneous graph.

Assignments (2)
CHANGE OF NAME Recorded Jan 27, 2022
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058871/0336 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2018
From: JU, CHENG; LI, JAMES; WASTI, BRAM; GUO, SHENGBO
To: FACEBOOK, INC.
Reel/Frame 047564/0365 →
Cited By (3)
US 12,265,907 US 12,412,395 US 12,602,442