User-powered recommendation system

US8943081B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-8943081-B2
Application numberUS-61689209-A
CountryUS
Kind codeB2
Filing dateNov 12, 2009
Priority dateNov 17, 2008
Publication dateJan 27, 2015
Grant dateJan 27, 2015

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Recommendation systems are widely used in Internet applications. In current recommendation systems, users only play a passive role and have limited control over the recommendation generation process. As a result, there is often considerable mismatch between the recommendations made by these systems and the actual user interests, which are fine-grained and constantly evolving. With a user-powered distributed recommendation architecture, individual users can flexibly define fine-grained communities of interest in a declarative fashion and obtain recommendations accurately tailored to their interests by aggregating opinions of users in such communities. By combining a progressive sampling technique with data perturbation methods, the recommendation system is both scalable and privacy-preserving.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method for generating a recommendation, the method comprising: receiving a user-defined recommendation request issued by a user as a user query; receiving a user-defined declarative community definition; selecting a sampling group belonging to a community defined by the declarative community definition; for each particular member in the sampling group, retrieving, from a recommendation database, a particular rating data of each particular member based on the user-defined recommendation request; for each particular rating data, generating a particular perturbed rating data, such that there is a predetermined probability that the particular perturbed rating data is different from a respective particular rating data; aggregating all the particular perturbed rating data into a plurality of perturbed rating data; and generating the recommendation based on the plurality of perturbed rating data. 2. The method of claim 1 , further comprising: receiving a user-defined item constraint; and generating the recommendation based on the user-defined item constraint. 3. The method of claim 1 , wherein the user-defined declarative community definition comprises a predicate on user attributes. 4. The method of claim 1 , wherein: the community is split into a plurality of disjoint sampling groups; each particular disjoint sampling group in the plurality of disjoint sampling groups has a particular size; particular sizes decrease exponentially from a first size to a second size; and the sampling group selected is a disjoint sampling group with a smallest size such that an accuracy level of the plurality of perturbed rating data is one of greater than and equal to a user-defined accuracy level. 5. The method of claim 1 , wherein selecting a sampling group comprises: splitting the community into a plurality of disjoint sampling groups, wherein each particular disjoint sampling group in the plurality of disjoint sampling groups has a particular size, and wherein particular sizes decrease exponentially from a largest size to a smallest size; and selecting a particular disjoint sampling group based on a user-defined sampling rate. 6. The method of claim 1 , further comprising: receiving a user-defined recommendation algorithm; and generating the recommendation based on the user-defined recommendation algorithm. 7. An apparatus for generating a recommendation, the apparatus comprising: a processor; and a memory to store computer program instructions, the computer program instructions when executed on the processor cause the processor to perform operations comprising: receiving a user-defined recommendation request issued by a user as a user query; receiving a user-defined declarative community definition; selecting a sampling group belonging to a community defined by the declarative community definition; for each particular member in the sampling group, retrieving, from a recommendation database, a particular rating data of each particular member based on the user-defined recommendation request; for each particular rating data, generating a particular perturbed rating data, such that there is a predetermined probability that the particular perturbed rating data is different from a respective particular rating data; aggregating all the particular perturbed rating data into a plurality of perturbed rating data; and generating the recommendation based on the plurality of perturbed rating data. 8. The apparatus of claim 7 , the operations further comprising: receiving a user-defined item constraint; and generating the recommendation based on the user-defined item constraint. 9. The apparatus of claim 7 , wherein: the community is split into a plurality of disjoint sampling groups; each particular disjoint sampling group in the plurality of disjoint sampling groups has a particular size; particular sizes decrease exponentially from a first size to a second size; and the sampling group selected is a disjoint sampling group with a smallest size such that an accuracy level of the plurality of perturbed rating data is one of greater than and equal to a user-defined accuracy level. 10. The apparatus of claim 7 , the operations further comprising: receiving a user-defined recommendation algorithm; and generating the recommendation based on the user-defined recommendation algorithm. 11. The apparatus of claim 7 , wherein the selecting a sampling group comprises: splitting the community into a plurality of disjoint sampling groups, wherein each particular disjoint sampling group in the plurality of disjoint sampling groups has a particular size, and wherein particular sizes decrease exponentially from a largest size to a smallest size; and selecting a particular disjoint sampling group based on a user-defined sampling rate. 12. A non-transitory computer readable medium storing computer program instructions for generating a recommendation, which, when executed on a processor, cause the processor to perform a method comprising: receiving a user-defined recommendation request issued by a user as a user query; receiving a user-defined declarative community definition; selecting a sampling group belonging to a community defined by the declarative community definition; for each particular member in the sampling group, retrieving, from a recommendation database, a particular rating data of each particular member based on the user-defined recommendation request; for each particular rating data, generating a particular perturbed rating data, such that there is a predetermined probability that the particular perturbed rating data is different from a respective particular rating data; aggregating all the particular perturbed rating data into a plurality of perturbed rating data; and generating the recommendation based on the plurality of perturbed rating data. 13. The computer readable medium of claim 12 , wherein the method further comprises: receiving a user-defined item constraint; and generating the recommendation based on the user-defined item constraint. 14. The non-transitory computer readable medium of claim 12 , wherein: the community is split into a plurality of disjoint sampling groups; each particular disjoint sampling group in the plurality of disjoint sampling groups has a particular size; particular sizes decrease exponentially from a first size to a second size; and the sampling group selected is a disjoint sampling group with a smallest size such that an accuracy level of the plurality of perturbed rating data is one of greater than and equal to a user-defined accuracy level. 15. The non-transitory computer readable medium of claim 12 , wherein the method further comprises: receiving a user-defined recommendation algorithm; and generating the recommendation based on the user-defined recommendation algorithm. 16. The non-transitory computer readable medium of claim 12 , wherein selecting a sampling group comprises: splitting the community into a plurality of disjoint sampling groups, wherein each particular disjoint sampling group in the plurality of disjoint sampling groups has a particular size, and wherein particular sizes decrease exponentially from a largest size to a smallest size; and selecting a particular disjoint sampling group based on a user-defined sampling rate.

Assignees

Inventors

Classifications

  • G06N7/01Primary

    Probabilistic graphical models, e.g. probabilistic networks · CPC title

  • Grouping and aggregation · CPC title

  • for rating content, e.g. scoring a recommended movie · CPC title

  • G11B27/105Primary

    of operating discs · CPC title

  • Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US8943081B2 cover?
Recommendation systems are widely used in Internet applications. In current recommendation systems, users only play a passive role and have limited control over the recommendation generation process. As a result, there is often considerable mismatch between the recommendations made by these systems and the actual user interests, which are fine-grained and constantly evolving. With a user-powere…
Who is the assignee on this patent?
Ramakrishnan Kadangode K, Srivastava Divesh, Cho Tae Won, and 3 more
What technology area does this patent fall under?
Primary CPC classification G06N7/01. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 27 2015 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).