IP Library Granted Patent US 11,010,179
Granted Patent B2
US 11,010,179 · App. 15/967,342 · Granted May 18, 2021

Aggregating semantic information for improved understanding of users

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,010,179
App. No.
15/967,342
Granted
May 18, 2021
Kind
B2
Abstract

In one embodiment, a method includes receiving a user input by the first user from a client system associated with a first user, parsing the user input to identify one or more n-grams associated with the user input, accessing a user profile associated with the first user, wherein the user profile is stored in a first data store, accessing ontology data based on the one or more identified n-grams from one or more information graphs, wherein the one or more information graphs are stored in one or more second data stores, respectively, determining contextual information associated with the user input, generating semantic information by aggregating the user profile, ontology data, and contextual information, generating a feature representation for the identified one or more n-grams based on the semantic information, and resolving one or more entities associated with the one or more n-grams based on the feature representation.

Claims (63)

1. A method comprising, by one or more computing systems:

receiving, from a client system associated with a first user, a user input by the first user;

parsing the user input to identify one or more n-grams associated with the user input corresponding to one or more slots, wherein the one or more slots are associated with one or more confidence scores, respectively, and wherein each of the one or more slots associates the corresponding n-gram with a semantic category;

accessing a user profile associated with the first user, wherein the user profile is stored in a first data store;

accessing ontology data based on the one or more identified n-grams from one or more information graphs, wherein the one or more information graphs are stored in one or more second data stores, respectively;

determining contextual information associated with the user input;

generating semantic information by aggregating the user profile, ontology data, and contextual information, wherein the semantic information is used to modify one or more of the confidence scores associated with one or more of the slots, respectively;

generating a feature representation for the identified one or more n-grams based on the semantic information and the one or more modified confidence score; and

resolving one or more entities associated with the one or more n-grams by associating one or more of the slots with the one or more entities based on the feature representation.

2. The method of claim 1 , wherein generating the feature representation for the identified one or more n-grams comprises:

determining the one or more slots corresponding to the one or more n-grams, wherein the one or more slots are associated with the one or more confidence scores, respectively;

modifying the confidence scores based on the semantic information; and

generating the feature representation for the one or more n-grams based on the modified confidence scores.

3. The method of claim 2 , wherein the one or more confidence scores are determined based on a baseline model.

4. The method of claim 3 , wherein the baseline model is determined based on the one or more information graphs.

5. The method of claim 1 , wherein the contextual information is determined based on a plurality of content objects associated with the first user.

6. The method of claim 5 , wherein the plurality of content objects comprise one or more of:

news feed posts;

news feed comments;

messages; or

search history data.

7. The method of claim 1 , further comprising determining a domain, an intent, and the one or more slots corresponding to the user input based on the generated feature representation.

8. The method of claim 7 , wherein the determining of the domain, intent, and the one or more slots is based on a machine-learning model.

9. The method of claim 8 , further comprising sending the determined domain, the determined intent, and the resolved entities to an assistant xbot.

10. The method of claim 9 , further comprising:

generating a personalized communication content based on the determined domain, the determined intent, and the resolved entities; and

sending, via the assistant xbot, the personalized communication content to the client system associated with the first user.

11. The method of claim 9 , further comprising:

executing, by the one or more computing systems, a task based on the determined domain, the determined intent, and the resolved entities;

upon a completion of the execution of the task, generating a personalized communication content comprising an acknowledgement of the completion; and

sending, via the assistant xbot, the personalized communication content to the client system associated with the first user.

12. The method of claim 1 , wherein the contextual information comprises information associated with the client system.

13. The method of claim 1 , wherein the user input comprises one or more of:

a character string;

an audio clip;

an image; or

a video.

14. The method of claim 1 , wherein the one or more information graphs comprise one or more of a social graph, a knowledge graph, or a concept graph.

15. The method of claim 1 , wherein determining the contextual information is based on one or more long-short term memory (LSTM) networks, wherein the one or more LSTM networks generates a probability of the user input being associated with the contextual information based on a plurality of content objects associated with the first user.

16. The method of claim 1 , wherein generating the feature representation is based on one or more long-short term memory (LSTM) networks, wherein the one or more LSTM networks summarizes one or more vectors representing the one or more n-grams of the user input to one vector.

17. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:

receive, from a client system associated with a first user, a user input by the first user;

parse the user input to identify one or more n-grams associated with the user input corresponding to one or more slots, wherein the one or more slots are associated with one or more confidence scores, respectively, and wherein each of the one or more slots associates the corresponding n-gram with a semantic category;

access a user profile associated with the first user, wherein the user profile is stored in a first data store;

access ontology data based on the one or more identified n-grams from one or more information graphs, wherein the one or more information graphs are stored in one or more second data stores, respectively;

determine contextual information associated with the user input;

generate semantic information by aggregating the user profile, ontology data, and contextual information, wherein the semantic information is used to modify one or more of the confidence scores associated with one or more of the slots, respectively;

generate a feature representation for the identified one or more n-grams based on the semantic information and the one or more modified confidence score; and

resolve one or more entities associated with the one or more n-grams by associating one or more of the slots with the one or more entities based on the feature representation.

18. A system comprising: one or more processors; and a non-transitory memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to:

receive, from a client system associated with a first user, a user input by the first user;

parse the user input to identify one or more n-grams associated with the user input corresponding to one or more slots, wherein the one or more slots are associated with one or more confidence scores, respectively, and wherein each of the one or more slots associates the corresponding n-gram with a semantic category;

access a user profile associated with the first user, wherein the user profile is stored in a first data store;

access ontology data based on the one or more identified n-grams from one or more information graphs, wherein the one or more information graphs are stored in one or more second data stores, respectively;

determine contextual information associated with the user input;

generate semantic information by aggregating the user profile, ontology data, and contextual information, wherein the semantic information is used to modify one or more of the confidence scores associated with one or more of the slots, respectively;

generate a feature representation for the identified one or more n-grams based on the semantic information and the one or more modified confidence score; and

resolve one or more entities associated with the one or more n-grams by associating one or more of the slots with the one or more entities based on the feature representation.

19. The method of claim 1 , wherein each of the one or more slots is associated with one or more confidence scores corresponding to one or more slot-types, respectively, and wherein resolving each of the one or more entities comprises:

adjusting the one or more confidence scores associated with each slot based on the feature representation;

ranking the one or more slot-types based on the adjusted one or more confidence scores;

selecting a top-ranked slot-type; and

identifying the entity based on the selected slot-type.

Assignments (2)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 11, 2018
From: NATARAJAN, VIVEK; LIU, BAIYANG; LIU, XIAOHU; ALY, AHMED
To: FACEBOOK, INC.
Reel/Frame 045779/0753 →