Personalized content recommendations
Abstract
Methods, systems and computer program products for providing personalized education content recommendations are disclosed. A computer-implemented method may include receiving information describing a body of content, receiving data describing an interaction of a user with one or more elements of the body of content, receiving a context that includes one or more criteria associated with the body of content, generating a list of modules from the body of content based on the data describing the interaction of the user with the one or more elements of the body of content in view of the context, and providing the generated list of modules to an interested party.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method comprising:
accessing, by the hardware processor, data describing an interaction of a user with one or more elements of a body of content; accessing, by the hardware processor, a context comprising one or more criteria associated with the body of content; providing a ranker topology implemented using an actor-based framework that outputs a score for each of a plurality of modules from the body of content, wherein the actor-based framework comprises a plurality of actors that are each a code unit, wherein at least one of the plurality of actors subscribes to one or more pieces of information from another of the plurality of actors, performs one or more calculations, and publishes one or more pieces of information to still another of the plurality of actors, and wherein the one or more calculations produce information that contributes to the score output by the ranker topology for each of the plurality of modules from the body of content; generating, by the hardware processor, a ranked list of modules from the body of content based on the data describing the interaction of the user with the one or more elements of the body of content in view of the context using the ranker topology; and providing, by the hardware processor, the generated ranked list of modules to an interested party.
2 . The method of claim 1 , wherein the data describing the interaction of the user with the one or more elements of the body of content is generated by the interaction of the user with the one or more elements of the body of content.
3 . The method of claim 2 , wherein the list of modules is generated from the body of content based on the context in view of information about the user.
4 . The method of claim 1 , further comprising:
receiving, by the hardware processor, a request to provide a personalized list of modules for a user from the body of content based on one or more computed characteristics of the user with respect to one or more aspects of the body of content.
5 . The method of claim 1 , further comprising:
receiving, by the hardware processor, at least one event comprising information about a user interaction with a module in the body of content.
6 . The method of claim 5 , further comprising:
adjusting, by the hardware processor, at least one attribute associated with the user based on the event.
7 . The method of claim 5 , further comprising:
adjusting, by the hardware processor, at least one attribute associated with at least one of the modules in the body of content based on the event.
8 . The method of claim 1 , wherein the information describing the body of content comprises one or more relationships between at least two modules in the body of content.
9 . The method of claim 1 , wherein the information describing the body of content comprises one or more relationships between at least two concepts associated with the body of content.
10 . The method of claim 1 , wherein the information describing the body of content is a graph comprising one or more relationships between at least one module and at least one concept that are associated with the body of content.
11 . The method of claim 1 , wherein the interested party is a party providing one or more modules in the body of content to a user.
12 . The method of claim 11 , further comprising:
receiving, by the hardware processor, information from the content provider indicating whether the generated list of modules was used to determine the one or more modules provided to the user.
13 . The method of claim 1 , wherein the providing comprises:
transmitting, by the hardware processor, the generated list of modules to the interested party.
14 . The method of claim 1 , further comprising adjusting the body of content based on one or more interactions with one or more elements of the body of content.
15 . The method of claim 14 , wherein adjusting the body of content comprises at least one of: removing one or more elements from the body of content, adjusting a placement of one or more elements within the body of content, modifying one or more elements within the body of content, or reformulating one or more elements within the body of content.
16 . A system, comprising:
a memory; and a hardware processor coupled to the memory configured to:
access data that describes an interaction of a user with one or more elements of a body of content;
access a context comprising one or more criteria associated with the content;
provide a ranker topology implemented using an actor-based framework that outputs a score for each of a plurality of modules from the body of content, wherein the actor-based framework comprises a plurality of actors that are each a code unit, wherein at least one of the plurality of actors subscribes to one or more pieces of information from another of the plurality of actors, performs one or more calculations, and publishes one or more pieces of information to still another of the plurality of actors, and wherein the one or more calculations produce information that contributes to the score output by the ranker topology for each of the plurality of modules from the body of content;
generate a ranked list of modules from the body of content based on the data that describes the interaction of the user with the one or more elements of the body of content in view of the context using the ranker topology; and
provide the generated ranked list of modules to an interested party.
17 . The system of claim 16 , wherein to generate is to:
compute a score for each of a plurality of modules from the body of content based on the context.
18 . The system of claim 16 , wherein to generate is to:
rank a plurality of modules from the body of content using a score computed for each of a plurality of modules.
19 . The system of claim 16 , wherein to generate is to:
rank a plurality of modules from the body of content using a score computed for each of a plurality of modules in view of information about the user.
20 . A non-transitory computer readable medium having instructions stored thereon that, when executed by a hardware processor, cause the hardware processor to perform operations comprising:
accessing, by the hardware processor, data describing an interaction of a user with one or more elements of a body of content; accessing, by the hardware processor, a context comprising one or more criteria associated with the body of content;
providing a ranker topology implemented using an actor-based framework that outputs a score for each of a plurality of modules from the body of content, wherein the actor-based framework comprises a plurality of actors that are each a code unit, wherein at least one of the plurality of actors subscribes to one or more pieces of information from another of the plurality of actors, performs one or more calculations, and publishes one or more pieces of information to still another of the plurality of actors, and wherein the one or more calculations produce information that contributes to the score output by the ranker topology for each of the plurality of modules from the body of content;
generating, by the hardware processor, a ranked list of modules from the body of content based on the data describing the interaction of the user with one or more elements of the body of content in view of the context using the ranker topology;
providing, by the hardware processor, the generated ranked list of modules to an interested party.Join the waitlist — get patent alerts
Track US2019286675A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.