Method and system for processing social media data for content recommendation
US-2018121549-A1 · May 3, 2018 · US
US11514333B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11514333-B2 |
| Application number | US-201815966203-A |
| Country | US |
| Kind code | B2 |
| Filing date | Apr 30, 2018 |
| Priority date | Apr 30, 2018 |
| Publication date | Nov 29, 2022 |
| Grant date | Nov 29, 2022 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A computing device receives a message including a request for a recommendation. A representation of a hypothetical ideal recommendation to provide in response to the message is determined based on the message content. Data regarding entities that are potential recommendations are retrieved from a data store, the data regarding each entity including a representation of the entity (e.g., a vector) derived from factual information about the entity and opinions of other users of the entity. Ranking scores are determined for at least a subset of the entities based on the difference between the entity representations and the representation of the hypothetical ideal recommendation. An entity to recommend is selected based on the ranking scores and a reply to the message is sent that identifies the selected entity.
Opening claim text (preview).
What is claimed is: 1. A method comprising: receiving a message at a computing device, the message including content; generating an input vector based on the content of the message and entities with which a user has indicated an affinity; applying a machine-learned model to map the input vector to a representation of a hypothetical ideal recommendation to provide to the user in response to the message, wherein the machine-learned model was trained using training data including a user request for recommendations and a response to the user request made by another user, the response including a user-recommended entity, training the machine-learned model comprising: generating a vector representation of the user-recommended entity as a positive example; generating a vector representation of another entity selected from a corpus as a negative example; determining a first distance in vector space between the hypothetical ideal recommendation vector and the positive example; determining a second distance in vector space between the hypothetical ideal recommendation vector and the negative example; and updating the machine-learned model based on the first distance and the second distance; retrieving, from a data store, data regarding a plurality of entities, the data regarding each entity including a corresponding entity representation derived from both factual information about the entity and opinions of other users of the entity; calculating difference metrics for the entity representations that indicate a degree of difference between a corresponding entity representation and the representation of the hypothetical ideal recommendation; determining, based on the difference metrics, ranking scores for at least a subset of the plurality of entities; selecting an entity to recommend based on the ranking scores; and sending a reply to the message, the reply identifying the selected entity. 2. The method of claim 1 , wherein determining the representation of the hypothetical ideal recommendation comprises: generating a first vector based on the content of the message; generating a second vector based on entities with which the user has indicated an affinity; combining the first vector and the second vector to generate the input vector. 3. The method of claim 2 , wherein generating the second vector based on entities with which the user has previously indicated an affinity comprises: retrieving, from a data store, vector representations of the entities with which the user has previously indicated an affinity; and combining the vector representations of the entities with which the user has previously indicated an affinity to generate the second vector. 4. The method of claim 1 , wherein training the machine-learned model further comprises: generating a vector representation of the user request for recommendations; and applying the machine-learned model to the vector representation of the user request for recommendations to generate a hypothetical ideal recommendation vector. 5. The method of claim 1 , wherein the entity representation for a given entity is generated by: retrieving entity description data and user affinity data from a data store, the entity description data including factual information about the given entity, and the user affinity data indicating opinions of other users regarding the given entity; generating a first vector based on the factual information; generating a second vector based on the user affinity data; and combining the first vector and the second vector to produce the entity representation. 6. The method of claim 1 , further comprising: analyzing the message content to determine an intent of the user; querying a knowledge graph, based on the determined intent of the user, to identify a second plurality of entities, the second plurality of entities including the given entity; determining an affinity score for the given entity based on a model of the user, the affinity score indicating an affinity between the user and the given entity, wherein the ranking score for the given entity is further based on the affinity score. 7. The method of claim 1 , further comprising querying a knowledge graph, based on the determined intent of the user, to identify a second plurality of entities, the second plurality of entities including the given entity, wherein determining the ranking score for the given entity includes: determining a first ranking score based on the measure of difference between the entity representation corresponding to the given entity and the representation of the hypothetical ideal recommendation; determining a second ranking score based on an affinity score for the given entity based on a model of the user; and combining the first ranking score and the second ranking score to calculate a total ranking score. 8. A non-transitory computer-readable medium storing computer program instructions executable by a processor to perform operations comprising: receiving a message at a computing device, the message including content; generating an input vector based on the content of the message and entities with which a user has indicated an affinity; applying a machine-learned model to map the input vector to a representation of a hypothetical ideal recommendation to provide to the user in response to the message, wherein the machine-learned model was trained using training data including a user request for recommendations and a response to the user request made by another user, the response including a user-recommended entity, training the machine-learned model comprising: generating a vector representation of the user-recommended entity as a positive example; generating a vector representation of another entity selected from a corpus as a negative example; determining a first distance in vector space between the hypothetical ideal recommendation vector and the positive example; determining a second distance in vector space between the hypothetical ideal recommendation vector and the negative example; and updating the machine-learned model based on the first distance and the second distance; retrieving, from a data store, data regarding a plurality of entities, the data regarding each entity including a corresponding entity representation derived from both factual information about the entity and opinions of other users of the entity; calculating difference metrics for the entity representations that indicate a degree of difference between a corresponding entity representation and the representation of the hypothetical ideal recommendation; determining, based on the difference metrics, ranking scores for at least a subset of the plurality of entities; selecting an entity to recommend based on the ranking scores; and sending a reply to the message, the reply identifying the selected entity. 9. The non-transitory computer-readable medium of claim 8 , wherein determining the representation of the hypothetical ideal recommendation comprises: generating a first vector based on the content of the message; generating a second vector based on entities with which the user has indicated an affinity; combining the first vector and the second vector to generate the input vector. 10. The non-transitory computer-readable medium of claim 9 , wherein generating the second vector based on entities with which the user has previously indicated an affinity comprises: retrieving, from a data store, vector representations of the entities with which the user has previously indicated an affinity; and combining the vector representations of the entities with which the user has previously indicated an affinity to generate the second vector.
Recurrent networks, e.g. Hopfield networks · CPC title
Advertisements · CPC title
Knowledge representation; Symbolic representation · CPC title
Backpropagation, e.g. using gradient descent · CPC title
Knowledge engineering; Knowledge acquisition · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.