IP Library › Granted Patent US 11,436,522
Granted Patent B2
US 11,436,522 · App. 15/898,972 · Granted Sep 6, 2022

Joint representation learning of standardized entities and queries

Inventors: Qi Guo (Sunnyvale, CA); Xianren Wu (San Jose, CA); Bo Hu (Mountain View, CA); Shan Zhou (San Jose, CA); Lei Ni (Belmont, CA); Erik Eugene Buchanan (Mountain View, CA)
Assignee: Microsoft Technology Licensing, LLC
G06N20/00G06F16/248G06F16/24578G06F16/9024G06N3/0454G06N5/04H04L67/306H04L67/535
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,436,522
App. No.
15/898,972
Granted
Sep 6, 2022
Kind
B2
Abstract

An indication of a plurality of different entities in a social networking service is received, including at least two entities having a different entity type. A plurality of user profiles in the social networking service is accessed. A first machine-learned model is used to learn embeddings for the plurality of different entities in a d-dimensional space. A second machine-learned model is used to learn an embedding for each of one or more query terms that are not contained in the indication of the plurality of different entities in the social networking service, using the embeddings for the plurality of different entities learned using the first machine-learned model, the second-machine learned model being a deep structured semantic model (DSSM). A similarity score between a query term and an entity is calculated by computing distance between the embedding for the query term and the embedding for the entity in the d-dimensional space.

Claims (46)

1. A system comprising:

one or more processors; and

a computer-readable medium having instructions stored thereon, which, when executed by the one or more processors, cause the system to:

retrieve an indication of a plurality of different entities in an online system, including at least two entities having a different entity type;

use a first machine-learned model to learn embeddings for the plurality of different entities in a d-dimensional space;

use a second machine-learned model to learn an embedding for each of one or more query terms that are not contained in the indication of the plurality of different entities in the social networking service, using the embeddings for the plurality of different entities learned using the first machine-learned model, the second-machine learned model being a deep structured semantic model (DSSM); and

calculate a similarity score between a query term and an entity by computing a distance between the embedding for the query term and the embedding for the entity in the d-dimensional space.

2. The system of claim 1 , wherein the indication is a standardized entity taxonomy.

3. The system of claim 1 , wherein the instructions further cause the system to:

generate a heterogeneous graph structure comprising a plurality of nodes connected by edges, each node corresponding to a different one of the entities in the plurality of different entities, each edge representing a co-occurrence of entities represented by nodes on each side of the edge in at least one of a plurality of user profiles; and

compute weights for each edge of the heterogeneous graph structure, the weights being based on co-occurrence counts reflecting a number of user profiles in the plurality of user profiles in which corresponding nodes co-occurred, wherein the using the first machine-learned model includes embedding the heterogeneous graph structure into the d-dimensional space.

4. The system of claim 1 , wherein the DSSM comprises a query side and an engaged candidate side, the query side comprising three or more fully-connected layers fed the embeddings for the plurality of different entities learned using the first machine-learned model and the one or more query terms not contained in the indication, the engaged candidate side comprising three or more full-connected layers fed a subset of the embeddings for the plurality of different entities learned using the first machine-learned model, the subset comprising embeddings pertaining to search results engaged with by a first user.

5. The system of claim 3 , wherein a first node from the plurality of nodes corresponds to an entity contained in a first user profile returned to a first user in response to a first search query, and the instructions further cause the system to:

determine that a second node from the plurality of nodes corresponds to an entity to recommend to the first user in response to the first query based on the calculated similarity score; and

present the second node as a recommended addition to the first search query.

6. The system of claim 5 , wherein the presenting of the second node includes displaying the entity corresponding to the second node as a selectable facet in a graphical user interface displaying the first user profile as a search result for the first search query.

7. The system of claim 5 , wherein the presenting of the second node includes displaying the entity corresponding to the second node as an added search term available for query augmentation in a graphical user interface displaying the first user profile as a search result for the first search query.

8. A computer-implemented method, comprising:

retrieving an indication of a plurality of different entities in an online system, including at least two entities having a different entity type;

using a first machine-learned model to learn embeddings for the plurality of different entities in a d-dimensional space;

using a second machine-learned model to learn an embedding for each of one or more query terms that are not contained in the indication of a plurality of different entities in the social networking service, using the embeddings for the plurality of different entities learned using the first machine-learned model, the second-machine learned model being a deep structured semantic model (DSSM); and

calculating a similarity score between a query term and an entity by computing distance between the embedding for the query term and the embedding for the entity in the d-dimensional space.

9. The computer-implemented method of claim 8 , wherein the indication is a standardized entity taxonomy.

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

generating a heterogeneous graph structure comprising a plurality of nodes connected by edges, each node corresponding to a different one of the entities in the plurality of different entities, each edge representing a co-occurrence of entities represented by nodes on each side of the edge in at least one of a plurality of user profiles; and

computing weights for each edge of the heterogeneous graph structure, the weights being based on co-occurrence counts reflecting a number of user profiles in the plurality of user profiles in which corresponding nodes co-occurred, wherein the using the first machine-learned model includes embedding the heterogeneous graph structure into the d-dimensional space.

11. The computer-implemented method of claim 8 , wherein the DSSM comprises a query side and an engaged candidate side, the query side comprising three or more fully-connected layers fed the embeddings for the plurality of different entities learned using the first machine-learned model and the one or more query terms not contained in the indication, the engaged candidate side comprising three or more full-connected layers fed a subset of the embeddings for the plurality of different entities learned using the first machine-learned model, the subset comprising embeddings pertaining to search results engaged with by a first user.

12. The computer-implemented method of claim 10 , wherein a first node corresponds to an entity contained in a first user profile returned to a first user in response to a first search query, and the method further comprises:

determining that a second node corresponds to an entity to recommend to the first user in response to the first search query based on the calculated similarity score; and

presenting the second node as a recommended addition to the first search query.

13. The computer-implemented method of claim 12 , wherein the presenting of the second node includes displaying the entity corresponding to the second node as a selectable facet in a graphical user interface displaying the first user profile as a search result for the first query.

14. The computer-implemented method of claim 12 , wherein the presenting of the second node includes displaying the entity corresponding to the second node as an added search term available for query augmentation in a graphical user interface displaying the first user profile as a search result for the first query.

15. A non-transitory machine-readable storage medium comprising instructions, which when implemented by one or more machines, cause the one or more machines to perform operations comprising:

retrieving an indication of a plurality of different entities in an online system, including at least two entities having a different entity type;

using a first machine-learned model to learn embeddings for the plurality of different entities in a d-dimensional space;

using a second machine-learned model to learn an embedding for each of one or more query terms that are not contained in the indication of a plurality of different entities in the social networking service, using the embeddings for the plurality of different entities learned using the first machine-learned model, the second-machine learned model being a deep structured semantic model (DSSM); and

calculating a similarity score between a query term and an entity by computing distance between the embedding for the query term and the embedding for the entity in the d-dimensional space.

16. The non-transitory machine-readable storage medium method of claim 15 , wherein the indication is a standardized entity taxonomy.

17. The non-transitory machine-readable storage medium method of claim 15 , wherein the instructions further comprise:

generating a heterogeneous graph structure comprising a plurality of nodes connected by edges, each node corresponding to a different one of the entities in the plurality of different entities, each edge representing a co-occurrence of entities represented by nodes on each side of the edge in at least one of a plurality of user profiles; and

computing weights for each edge of the heterogeneous graph structure, the weights being based on co-occurrence counts reflecting a number of user profiles in the plurality of user profiles in which corresponding nodes co-occurred, wherein the using the first machine-learned model includes embedding the heterogeneous graph structure into the d-dimensional space.

18. The non-transitory machine-readable storage medium of claim 15 , wherein the DSSM comprises a query side and an engaged candidate side, the query side comprising three or more fully-connected layers fed the embeddings for the plurality of different entities learned using the first machine-learned model and the one or more query terms not contained in the indication, the engaged candidate side comprising three or more full-connected layers fed a subset of the embeddings for the plurality of different entities learned using the first machine-learned model, the subset comprising embeddings pertaining to search results engaged with by a first user.

19. The non-transitory machine-readable storage medium of claim 17 , wherein a first node corresponds to an entity contained in a first user profile returned to a first user in response to a first search query, and the instructions further comprise:

determining that a second node corresponds to an entity to recommend to the first user in response to the first search query based on the calculated similarity score; and

presenting the second node as a recommended addition to the first search query.

20. The non-transitory machine-readable storage medium of claim 19 , wherein the presenting of the second node includes displaying the entity corresponding to the second node as a selectable facet in a graphical user interface displaying the first user profile as a search result for the first search query.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2018
From: GUO, QI; WU, XIANREN; HU, BO; ZHOU, SHAN; NI, LEI; BUCHANAN, ERIK EUGENE
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 045533/0560 →
Continuity (1)
Related Publication 20190258963A1 · Aug 22, 2019