The present teaching relates to methods, systems and programming for content presentation to a user. Particularly, the present teaching is directed to methods, systems, and programming for personalized content presentation based on a user's interest in a particular topic.
The amount of information a person can access without much effort through the Internet can be overwhelming. Too much information can impede cognition and decision making, just like too little information can. The overwhelming amount of information tends to shorten the attention span to a particular piece of information because the cognitive power of a person did not significantly increase with the amount of accessible information the Internet made available. One effect of the shorter attention span is that a person tends to be more easily distracted. From the perspective of an Internet content provider, the distraction may be that a competitor draws away a person's attention. Therefore, selectively presenting content that is appealing to a person helps to retain the person's attention and gain a competitive edge.
Content presented in a browser or an app may be organized in a content stream. A content stream is a popular format especially for news, threads of discussion in online forums, and search results from a search engine.
The organization within a content stream (e.g., the titles and snippets in
While what is appealing varies from one user to another, existing techniques failed to take into consideration characteristics of the user to whom the content is selected to be presented. In addition, traditional systems for presenting content to a user did not provide a way to ascertain characteristics of the user or establish a link between the user's characteristics and what appeals to her.
Therefore, there is a need to provide a solution for personalized content presentation to avoid the above-mentioned drawbacks.
The teachings disclosed herein relate to methods, systems, and programming for content presentation to a user. More particularly, the present teaching relates to methods, systems, and programming for personalized content presentation based on a user's interest in a particular topic.
In one example, a method, implemented on a machine having at least one processor, storage, and a communication platform connected to a network for personalized presentation of content is provided. A first reference to a first content item is provided to a user. An input is received from the user indicating that the user is following the first reference to access the first content item. A likelihood is calculated, where the likelihood represents how likely the user will be interested in an additional content item similar to the first content item. An actionable representation of the additional content item is provided to the user. The actionable representation comprises an additional reference to the additional content item. The actionable representation is presented in a manner determined based on the calculated likelihood.
In another example, a system having at least one processor, storage, and a communication platform connected to a network for personalized presentation of content is provided. The system comprises a presentation personalization unit, a user activity detection unit, and a topic exploration likelihood calculator. The presentation personalization unit is configured to provide, to a user, a first reference to a first content item. The user activity detection unit is configured to receive an input from the user indicating that the user is following the first reference to access the first content item. The topic exploration likelihood calculator is configured to calculate a likelihood that the user will be interested in an additional content item similar to the first content item. The presentation personalization unit is further configured to provide, to the user, an actionable representation of the additional content item. The actionable representation comprises an additional reference to the additional content item. The actionable representation is presented in a manner determined based on the calculated likelihood.
Other concepts relate to software for personalized presentation of content. A software product, in accord with this concept, includes at least one non-transitory machine-readable medium and information carried by the medium. The information carried by the medium may be executable program code data regarding parameters in association with a request or operational parameters, such as information related to a user, a request, or a social group, etc.
In one example, a non-transitory machine readable medium having information recorded thereon for personalized presentation of content is provided. The recorded information, when read by the machine, causes the machine to perform the following. A first reference to a first content item is provided to a user. An input is received from the user indicating that the user is following the first reference to access the first content item. A likelihood is calculated, where the likelihood represents how likely the user will be interested in an additional content item similar to the first content item. An actionable representation of the additional content item is provided to the user. The actionable representation comprises an additional reference to the additional content item. The actionable representation is presented in a manner determined based on the calculated likelihood.
The methods, systems and/or programming described herein are further described in terms of exemplary embodiments. These exemplary embodiments are described in detail with reference to the drawings. These embodiments are non-limiting exemplary embodiments, in which like reference numerals represent similar structures throughout the several views of the drawings, and wherein:
In the following detailed description, numerous specific details are set forth by way of examples in order to provide a thorough understanding of the relevant teachings. However, it should be apparent to those skilled in the art that the present teachings may be practiced without such details. In other instances, well known methods, procedures, components, and/or circuitry have been described at a relatively high-level, without detail, in order to avoid unnecessarily obscuring aspects of the present teachings.
The present disclosure describes method, system, and programming aspects of effective and selective personalized content presentation. Selectively presenting content is especially beneficial to both an Internet content provider and the user who receives the content, in the era of mobile devices. Mobile devices, due to their smaller sizes, have limited amount of space available on a display. Content that is more likely to appeal to the recipient thus should be given more of the limited space to improve the experience of the use and discourage distraction.
According to various embodiments of the present teaching, a method of personalized presentation of content items may be used to overcome the issues associated with conventional organizations of a content stream. For example, if it has been determined that after a particular user follows a first reference to first content item on a subject, she is likely to follow additional references to additional content items on that subject, then these additional references may be presented as a collapsible group adjacent to the first reference. The additional references may not be presented if the user did not follow the first reference or if the user is not likely to follow the additional references.
The likelihood for the user to follow the additional references may be determined based on characteristics of the user, which includes but not limited to: information from a user profile of the user, location information of the user, and the user's engagement with respect to the first content item. The likelihood may also be determined based on social interest related to the first content item and news related to the first content item. The collapsible group may be presented in either an expanded form or a condensed form, depending on the likelihood that the user is predicted to follow the additional references.
Additional novel features will be set forth in part in the description which follows, and in part will become apparent to those skilled in the art upon examination of the following and the accompanying drawings or may be learned by production or operation of the examples. The novel features of the present teachings may be realized and attained by practice or use of various aspects of the methodologies, instrumentalities and combinations set forth in the detailed examples discussed below.
Thus, the collapsible group may be presented in the expanded form as shown in
It can be understood by one skilled in the art that the content stream in the present teaching is not limited to one-dimensional lists. For example, the titles in
Users 710 may be of different types such as users connected to the network 720 via desktop computers 710-1, laptop computers 710-2, a built-in device in a motor vehicle 710-3, or a mobile device 710-4. A user 710 may send a request to the publisher 730 via the network 720 and receive a response to the request from the publisher 730. The response may include a personalized page and/or personalized content items related to the request.
The page personalization engine 740 can help the publisher 730 to generate the personalized page, based on the user's characteristics and/or historical interest(s). In this embodiment, the page personalization engine 740 directly connects to the network 720 and can communicate with the users 710 directly via the network 720.
The page personalization engine 740 can retrieve a user profile of the user from the user profile database 750. The user profile database 750 stores user profiles for different users of the publisher 730 and/or the page personalization engine 740. Each of the stored user profiles may include information related to a user, including but not limited to: demographic information of the user, historical behaviors of the user.
The content sources 760 include multiple content sources 760-1, 760-2 . . . 760-3, such as vertical content sources. A content item source 760 may correspond to a website hosted by an entity, whether an individual, a business, or an organization such as USPTO.gov, a content item provider such as cnn.com and Yahoo.com, a social network website such as Facebook.com, or a content feed source such as tweeter or blogs. The publisher 730 and the page personalization engine 740 may access information from any of the content sources 760-1, 760-2 . . . 760-3. For example, the publisher 730 may fetch content, e.g., websites, through its web crawler to build a web page.
The user activity detection unit 902 in this example may monitor user activities from different users. The user activities may include either an action or inaction from a user. An action from a user may include pressing, swiping, clicking, rotating, zooming, scrolling, etc. An example of inaction from a user may be a dwell time within which the user does not provide any input. In addition to traditional user activities like mouse clicking or keyboard typing related to links to search results provided to a user, more user activities related to manipulation of a content item provided to a user can be detected and utilized for generating a personalized content presentation.
In one situation, a user is presented with a page including a first reference to a first content item and optionally a second reference to a second content item. The second content item may be on a different subject from the first content item. The first and second references may be arranged spatially adjacent to each other. The user activity detection unit 902 may detect an activity from the user, where the activity represents that the user desires to access the first content item by following the first reference to navigate away from the original page. The user activity detection unit 902 may also detect activities from the user during her access to the first content item and an activity representing a request to come back to the original page. The user activity detection unit 902 may then send to the content presentation personalization controller 904 information related to the detected activities.
The first reference and the second reference may be hyperlinks or any other suitable actionable representations. The first and second content items may be in the form of a hypertext file, a script, a media file (e.g., audio, video), or any content that may be perceived by the user, through any suitable program or app.
The content presentation personalization controller 904 in this example determines that the user 910 has requested for a web page, e.g. after accessing a first content item the user sent a request to come back to the original page including the first reference to the first content item. In this situation, since the user 910 has accessed the first content item, it can be determined whether to provide more content items similar to the first content item in the page or not. This may be determined based on a likelihood that the user 910 will follow the more content items to be added. To calculate the likelihood, the content presentation personalization controller 904 may evaluate user engagement of the user during the access to the first content item, detect location information of the user, and obtain social interest, breaking news, and/or popular news related to the first content item. Based on the information detected or collected by the content presentation personalization controller 904, the content presentation personalization controller 904 can generate presentation control information. The content presentation personalization controller 904 may then send the presentation control information to the topic exploration likelihood estimation unit 906 for calculating the likelihood and to the page personalization unit 908 for generating a personalized page.
The topic exploration likelihood estimation unit 906 in this example retrieves a user profile of the user and calculates a topic exploration likelihood for the user based at least in part on the user profile. The topic exploration likelihood represents how likely the user 910 will follow additional content items related to the same topic as that of the first content item, if the additional content items are added to the page, i.e. if the topic is explored with the additional content items. The topic exploration likelihood estimation unit 906 may determine a topic or subject of the first content item, e.g. based on the presentation control information sent by the content presentation personalization controller 904.
The topic exploration likelihood estimation unit 906 may select or determine a likelihood calculation model to calculate the likelihood based on the topic and/or the presentation control information. For example, if the first content item is related to a hot topic drawing many social interests and there are many breaking news related to the topic, a model having more weights on the social interests and breaking news can be selected so that unless the user has shown explicit dislikes regarding the topic, more breaking news and more social interests lead to higher likelihood for the user to follow additional content items about the topic. For example, if the user has shown high engagement during her access to the first content item, e.g. by activities like frequent and active clicks, scrolls, zooms in, etc., another model may be selected so that even if the topic is not popular among social interests, the user is very likely to follow references to additional content items about the topic due to her engagement regarding the first content item related to the topic. In another example, a model can be selected based on the user's location. If the user is detected to be located in Hawaii, for example, after the user accessed a first content item related to Hawaii, there is a high likelihood for the user to follow additional references to additional content items related to Hawaii.
After the topic exploration likelihood is calculated, the topic exploration likelihood estimation unit 906 may send the topic exploration likelihood to the page personalization unit 908 for generating a personalized page based on the topic exploration likelihood. The page personalization unit 908 in this example generates a personalized page based on the topic exploration likelihood and one or more likelihood related thresholds. A likelihood related threshold may be determined based on a user interest level of the user 910 when the topic is not explored, i.e. there is no additional content item about the topic to be presented. The page personalization unit 908 may predict a user interest level without topic exploration based on the presentation control information sent by the content presentation personalization controller 904 and/or a user profile of the user 910. The page personalization unit 908 may then generate or update the likelihood related threshold(s) based on the prediction.
In one example, a first likelihood related threshold is 0.6, which means if the topic exploration likelihood is greater than 0.6, the topic of first content item is explored as an actionable representation in an expanded form during the personalized page presentation, because the likelihood is high enough to ascertain a click from the user 910 on one of the additional references about the topic. In another example, a second likelihood related threshold is 0.4, which means if the topic exploration likelihood is less than 0.4, the topic of first content item is not explored at all during the personalized page presentation, because the topic exploration likelihood is lower than another likelihood that the user 910 will follow a second reference to a second content item about a different topic. In case the topic exploration likelihood is between the first and second likelihood related thresholds, the topic of first content item may be explored as an actionable representation in a condensed form during the personalized page presentation so that the user 910 has an option to click the actionable representation to explore the topic herself.
Thus, based on comparisons between the topic exploration likelihood and the likelihood related thresholds, a page presentation mode can be determined. According to the page presentation mode, the page personalization unit 908 may generate a personalized page or personalized content items based on content items retrieved from the content sources 760. The personalized page can be either sent directly to the user 910 as shown in
At 1014, a user profile of the user is retrieved and analyzed. At 1016, a topic exploration likelihood is calculated for the user, e.g. based on the user profile. At 1018, a user interest level without topic exploration is predicted. At 1020, one or more likelihood related thresholds are determined, e.g. based on the predicted user interest level. At 1022, a page presentation mode is determined based on the one or more likelihood related thresholds and the calculated topic exploration likelihood, e.g. by comparing the topic exploration likelihood with the one or more likelihood related thresholds. At 1024, a personalized page is generated based on the presentation mode. The personalized page may be sent to the user at 1026, either directly or via the publisher 730.
It can be understood that other user activities can be determined based on user actions or inactions described above. For example, typing on the touchscreen can be detected when the user 1120 is clicking on a corresponding zone on the touchscreen. It can also be understood that more units related to user actions and/or inactions can be included in the user activity detection unit 902, e.g., units for detecting keyboard inputs and/or mouse inputs when the user 1120 is using a desktop or laptop.
Each detection unit in the user activity detection unit 902 may detect a user activity within a detection period. The user activity detection unit 902 may send to the content presentation personalization controller 904 user activity information including information related to detected user activities.
The user engagement evaluation unit 1304 in this example evaluates a user's engagement regarding some content. For example, the user engagement evaluation unit 1304 may evaluate how engaged the user is when she accessed the first content item related to a first topic. The evaluation may be based on one or more engagement related thresholds 1305 stored in the content presentation personalization controller 904. In one example, when a user's engagement level regarding a topic is higher than a first engagement related threshold, the user engagement evaluation unit 1304 may inform the presentation control information generator 1306 to generate presentation control information based on the engagement only without considering other information like social interest. This can save processing time and energy because the engagement level regarding the topic from the user is high enough to make a decision to explore the topic. In another example, when a user's engagement level regarding a topic is lower than a second engagement related threshold, the user engagement evaluation unit 1304 may inform the presentation control information generator 1306 to generate presentation control information based on the engagement only without considering other information like social interest. This can save processing time and energy because the engagement level regarding the topic from the user is low enough to make a decision not to explore the topic. In yet another example, when the user's engagement level regarding a topic is between the first and second engagement related thresholds, the user engagement evaluation unit 1304 may inform the presentation control information generator 1306 to generate presentation control information based on the engagement as well as other information like social interest. This is because the engagement level regarding the topic from the user is neither high nor low enough to make a decision about topic exploration based on the engagement alone.
The presentation control information generator 1306 in this example obtains information about social interest from a social interest database 1310 in the content presentation personalization controller 904, information about breaking/popular news from a breaking and popular news database 1320 in the content presentation personalization controller 904, and information about the user's location from the user location detector 1308. The user location detector 1308 in this example detects the user's location, e.g. based on information sent by a device being used by the user to connect to the network 720. The user location detector 1308 may send information related to the user's location to the presentation control information generator 1306.
The social interest obtained by the presentation control information generator 1306 may be related to a topic of the first content item that has been accessed by the user. For example, if the topic of the first content item is “sports”, social interest on “sports” can be retrieved by the presentation control information generator 1306 from the social interest database 1310. The breaking/popular news obtained by the presentation control information generator 1306 may also be related to the topic of the first content item that has been accessed by the user. For example, if the topic of the first content item is “finance”, breaking/popular news related to “finance” can be retrieved by the presentation control information generator 1306 from the breaking and popular news database 1320. The topic of the first content item can be derived based on information about the analyzed user activities sent by the user activity analyzer 1302. The presentation control information generator 1306 may generate presentation control information based on at least one of: user engagement level sent by the user engagement evaluation unit 1304, user location information sent by the user location detector 1308, social interest retrieved from the social interest database 1310, and breaking/popular news retrieved from the breaking and popular news database 1320.
In one embodiment, the user activity analyzer 1302 determines that the user has not accessed any content related to a topic before clicks on a reference to a web page, e.g. when a new user first log into a website. In this embodiment, the user activity analyzer 1302 inform the presentation control information generator 1306 about the user's situation and state. The presentation control information generator 1306 may generate presentation control information based on the user's demographic information input by the user during registration or based on most popular and hot topics from the social interest at that moment.
At 1405, whether the user has accessed some content about a subject is determined. If so, engagement level of the user regarding the content is evaluated at 1406 and the process moves on to 1408. If not, the process goes directly to 1412, where presentation control information is generated, e.g. based on the user's demographic information.
At 1408, location information of the user is detected. At 1410, social interest and/or breaking/popular news related to the subject are obtained. Then at 1412, presentation control information is generated based on at least one of: the user's engagement level, the location information of the user, social interest about the subject, and breaking/popular news related to the subject. In accordance with various embodiments, the presentation control information may also comprise: user information like user identification (ID) and content information related to the content the user has accessed.
The user profile retriever 1504 in this example retrieves and analyzes a user profile of the user, e.g. based on the user ID sent by the control information analyzer 1502. Based on the analysis at the user profile retriever 1504, the user profile retriever 1504 may estimate or determine topics of the user's interest and send these topics to the topic exploration likelihood calculator 1508. The content topic analyzing unit 1506 in this example analyzes topic of the content accessed by the user. For example, if the user has accessed a first content item, and the control information analyzer 1502 has passed the information about the first content item, the user profile retriever 1504 may determine one or more topics related to the first content item and send the topics to the topic exploration likelihood calculator 1508.
The topic exploration likelihood calculator 1508 in this example receives topics of the user's interest from the user profile retriever 1504, topics related to the first content item accessed by the user from the content topic analyzing unit 1506, and presentation control information from the control information analyzer 1502. The topic exploration likelihood calculator 1508 may select one of a plurality of likelihood calculation models 1509 stored in the topic exploration likelihood estimation unit 906, based on the received information. For example, if the first content item is related to a hot topic drawing many social interests and there are many breaking news related to the topic, a model having more weights on the social interests and breaking news can be selected so that unless the user has shown explicit dislikes regarding the topic, more breaking news and more social interests lead to higher likelihood for the user to follow additional content items about the topic. For example, if the user has shown high engagement during her access to the first content item, e.g. by activities like frequent and active clicks, scrolls, zooms in, etc., another model may be selected so that even if the topic is not popular among social interests, the user is very likely to follow references to additional content items about the topic due to her engagement regarding the first content item related to the topic. In another example, a model can be selected based on the user's location. If the user is detected to be located in Hawaii, for example, after the user accessed a first content item related to Hawaii, there is a high likelihood for the user to follow additional references to additional content items related to Hawaii. In yet another example, if the user is interested in music based on the user profile analyzed at the user profile retriever 1504, a model may be selected to consider whether the first content item is related to music. If so, there is a high likelihood for the user to follow additional references to additional content items related to music. Thus, the topic exploration likelihood calculator 1508 may select a likelihood calculation model 1509 for the user, and calculate a topic exploration likelihood based on the selected model.
Calculating the likelihood at the topic exploration likelihood calculator 1508 may be carried out by using a supervised learning model. A supervised learning model attempts to generalize a function or mapping from inputs to outputs which can then be used speculatively to generate an output for previously unseen inputs. A supervised learning model is trained on labeled examples, i.e., input where the desired output is known. Each labeled example may be a pair consisting of an input object (typically a vector) and a desired output value (also called the supervisory signal).
In the context of this disclosure, it is possible to train the supervised learning model using labeled examples including characteristics of this particular user who accessed the topic and characteristics of the first content item as the input and whether this particular user is interested in additional content items on the same subject of the first content item. Sometimes, characteristics of this particular user may not be available or may not be detailed. For example, certain characteristics of this particular user such gender, age, income, spending habits, and history of content access (e.g., past reading behavior, past exploration pattern for a subject similar to the subject of the first content item, session time) may be unknown. The supervised learning model may be trained using labeled examples including only the available characteristics (e.g., the coarse location of this particular user because it is almost always determinable from the IP address, phone number, access to mobile access point (e.g., Wi-Fi hotspot, mobile network base station)), or using labeled examples including characteristics of other users similar to this particular user (e.g., in terms of having near coarse location with this particular user, having the same gender, similar age, similar income). The supervised learning model may be probabilistic—it infers a probability of an output (e.g., the probability this particular user is interested in the additional content items) conditioned on an input (e.g., the characteristics of this particular user and the characteristics of the first content item).
The content retrieving unit 1702 in this example receives presentation control information from the content presentation personalization controller 904. The content retrieving unit 1702 may analyze the presentation control information to determine a request for a web page from a user. The content retrieving unit 1702 can retrieve content from the content sources 760 to be presented in the web page requested by the user. The content retrieving unit 1702 may also determine whether the user has accessed some content about a subject or topic. For example, if the content retrieving unit 1702 determines the user has accessed a first content item related to a topic, the content retrieving unit 1702 may pass this information to the page presentation determiner 1704 to determine a way to present the web page and pass the information to the user interest level predictor 1706 to predict the user's interest level on the content other than the first item in the web page. In one embodiment, if the user has not accessed any content item yet, the content retrieving unit 1702 may pass the content from retrieved from the content sources 760 to the presentation personalization unit 1708 for generating the page requested by the user. In another embodiment, if the user has accessed content related to a topic and the page presentation determiner 1704 determines to present additional content items related to the topic, the content retrieving unit 1702 may retrieve the additional content items from the content sources 760 and send them to the presentation personalization unit 1708 to generate a personalized page.
The page presentation determiner 1704 in this example receives the topic exploration likelihood information from the topic exploration likelihood estimation unit 906 and determines a way or a mode to present the web page, based on the received topic exploration likelihood information. The page presentation determiner 1704 may compare the topic exploration likelihood with one or more likelihood related thresholds 1705 stored in the page personalization unit 908 to determine how to present the web page. For example, if the topic exploration likelihood with respect to a topic is greater than a likelihood related threshold, additional content items related to the topic are determined to be presented in the web page.
The one or more likelihood related thresholds 1705 may be generated or updated by the user interest level predictor 1706. The user interest level predictor 1706 in this example predicts the user's interest on content items other than the first content item in the page, after the user accessed the first content item. In this case, the user's interest is related to a likelihood for the user to follow the other content items when there is no topic exploration.
The user interest level predictor 1706 may predict this user interest level based on a user profile of the user retrieved from the user profile database 750. For example, if the other content items are related to topics that are not interesting to the user based on his/her user profile, a low user interest level is determined. A low likelihood related threshold may be generated according to the low user interest level. For example, if the other content items are related to topics that are very interesting to the user based on his/her user profile, a high user interest level is determined. A high likelihood related threshold may be generated according to the high user interest level. In one embodiment, the other content items include a second content item related to the same topic as the first content item. Then the user's interest regarding the second content item is predicted by the user interest level predictor 1706 and used to generate a likelihood related threshold 1705.
In some embodiments, a plurality of likelihood related thresholds can be generated based on the user's interest level when there is no topic exploration. For example, a first likelihood related threshold is 0.8 so that the topic exploration likelihood has to be higher than 0.8 to allow additional content items related to the topic presented in the page in an expanded form. A second likelihood related threshold is 0.4 so that: if the topic exploration likelihood is lower than 0.4, no additional content item related to the topic is presented in any form; if the topic exploration likelihood is higher than 0.4 but lower than 0.8, additional content items related to the topic may be presented in the page in a condensed form, as shown in
The presentation personalization unit 1708 in this example receives content items sent by the content retrieving unit 1702 and page presentation information from the page presentation determiner 1704, and generates a web page. The web page may have a personalized presentation based on the page presentation mode determined by the page presentation determiner 1704. For example, as shown in
At 1805, it is determined whether the user has accessed content about a subject. If so, at 1806, the user's interest level regarding other content items in the page is predicted when there is no topic exploration regarding the subject, and the process moves on to 1808. Otherwise, at 1820, a web page is generated and sent to the user. This web page may not be personalized or may be personalized based on the user's demographic information.
At 1808, one or more likelihood related thresholds are determined. At 1810, a topic exploration likelihood regarding the subject is obtained for the user. At 1812, a page presentation mode is determined based on the topic exploration likelihood and the one or more likelihood related thresholds. At 1814, more content related to the subject is retrieved. As described above, the step at 1814 may not happen if the topic exploration likelihood is lower than some threshold. At 1816, a personalized page is generated based on the page presentation mode and sent to the user.
To implement the present teaching, computer hardware platforms may be used as the hardware platform(s) for one or more of the elements described herein. The hardware elements, operating systems, and programming languages of such computers are conventional in nature, and it is presumed that those skilled in the art are adequately familiar therewith to adapt those technologies to implement the processing essentially as described herein. A computer with user interface elements may be used to implement a personal computer (PC) or other type of work station or terminal device, although a computer may also act as a server if appropriately programmed. It is believed that those skilled in the art are familiar with the structure, programming, and general operation of such computer equipment and as a result the drawings should be self-explanatory.
The computer 2000, for example, includes COM ports 2002 connected to and from a network connected thereto to facilitate data communications. The computer 2000 also includes a CPU 2004, in the form of one or more processors, for executing program instructions. The exemplary computer platform includes an internal communication bus 2006, program storage and data storage of different forms, e.g., disk 2008, read only memory (ROM) 2010, or random access memory (RAM) 2012, for various data files to be processed and/or communicated by the computer, as well as possibly program instructions to be executed by the CPU 2004. The computer 2000 also includes an I/O component 2014, supporting input/output flows between the computer and other components therein such as user interface elements 2016. The computer 2000 may also receive programming and data via network communications.
Hence, aspects of the method of personalized content presentation, as outlined above, may be embodied in programming. Program aspects of the technology may be thought of as “products” or “articles of manufacture” typically in the form of executable code and/or associated data that is carried on or embodied in a type of machine readable medium. Tangible non-transitory “storage” type media include any or all of the memory or other storage for the computers, processors or the like, or associated modules thereof, such as various semiconductor memories, tape drives, disk drives and the like, which may provide storage at any time for the software programming.
All or portions of the software may at times be communicated through a network such as the Internet or various other telecommunication networks. Such communications, for example, may enable loading of the software from one computer or processor into another. Thus, another type of media that may bear the software elements includes optical, electrical, and electromagnetic waves, such as used across physical interfaces between local devices, through wired and optical landline networks and over various air-links. The physical elements that carry such waves, such as wired or wireless links, optical links or the like, also may be considered as media bearing the software. As used herein, unless restricted to tangible “storage” media, terms such as computer or machine “readable medium” refer to any medium that participates in providing instructions to a processor for execution.
Hence, a machine readable medium may take many forms, including but not limited to, a tangible storage medium, a carrier wave medium or physical transmission medium. Non-volatile storage media include, for example, optical or magnetic disks, such as any of the storage devices in any computer(s) or the like, which may be used to implement the system or any of its components as shown in the drawings. Volatile storage media include dynamic memory, such as a main memory of such a computer platform. Tangible transmission media include coaxial cables; copper wire and fiber optics, including the wires that form a bus within a computer system. Carrier-wave transmission media can take the form of electric or electromagnetic signals, or acoustic or light waves such as those generated during radio frequency (RF) and infrared (IR) data communications. Common forms of computer-readable media therefore include for example: a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD or DVD-ROM, any other optical medium, punch cards paper tape, any other physical storage medium with patterns of holes, a RAM, a PROM and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave transporting data or instructions, cables or links transporting such a carrier wave, or any other medium from which a computer can read programming code and/or data. Many of these forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to a processor for execution.
Those skilled in the art will recognize that the present teachings are amenable to a variety of modifications and/or enhancements. For example, although the implementation of various components described above may be embodied in a hardware device, it can also be implemented as a software only solution—e.g., an installation on an existing server. In addition, the dynamic relation/event detector and its components as disclosed herein can be implemented as a firmware, firmware/software combination, firmware/hardware combination, or a hardware/firmware/software combination.
While the foregoing has described what are considered to be the best mode and/or other examples, it is understood that various modifications may be made therein and that the subject matter disclosed herein may be implemented in various forms and examples, and that the teachings may be applied in numerous applications, only some of which have been described herein. It is intended by the following claims to claim any and all applications, modifications and variations that fall within the true scope of the present teachings.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/CN2014/081853 | 7/8/2014 | WO | 00 |