WO2008026001A1 - Computer system with gauge - Google Patents

Computer system with gauge Download PDF

Info

Publication number
WO2008026001A1
WO2008026001A1 PCT/GB2007/003319 GB2007003319W WO2008026001A1 WO 2008026001 A1 WO2008026001 A1 WO 2008026001A1 GB 2007003319 W GB2007003319 W GB 2007003319W WO 2008026001 A1 WO2008026001 A1 WO 2008026001A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
gauge
questions
website
level
Prior art date
Application number
PCT/GB2007/003319
Other languages
French (fr)
Inventor
Alastair Simpson
Peter Bryant
Geoff Baker
Mark Eardley
Steven Robinson
Daniel Bell
Original Assignee
Icom Limited
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Icom Limited filed Critical Icom Limited
Publication of WO2008026001A1 publication Critical patent/WO2008026001A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising

Definitions

  • the present invention relates to computer systems comprising gauges and in particular but not exclusively, to a gauge for display on a website.
  • HTML-type designs Although basic web technologies include HTML-type designs, other technologies such as FlashTM and multimedia, are also used on occasion to attract the attention of a browsing internet user.
  • Another important aspect is the provision of content to users through websites. As the amount of content available increases it is more and more difficult to ensure content presented to any given user is relevant to that user.
  • a gauge for display on a website, the gauge displaying a moveable level representing a measure of an input received from a user of the website, wherein the level of the gauge is effected by at least one of: a first means for tracking a frequency of usage of the user of the website and updating the moveable level accordingly; and a second means for generating a series of questions to a user and updating the level of the gauge depending on a level of progress of the questions answered by the user.
  • a server for hosting a website arranged to display a gauge comprising: means for receiving an input to the website from a user; and an engine for controlling a level of the gauge depending on the input received from the user.
  • a gauge for a website having a movable level being controlled by an engine that is arranged to receive an input to the website from the user, the engine is arranged to affect the movable level of the gauge depending on the received input from the user such that the user is encouraged to increase interaction with the website.
  • a gauge for a website having a moveable level representing a quantity of input received from a user of the website, and wherein the gauge having at least one predetermined threshold level such that when the moveable level exceeds the threshold level a reward is given to the user thereby encouraging the user to increase the quantity of input to exceed said threshold level.
  • the predetermined threshold level is sustained for a predetermined duration.
  • the reward is that a previously inaccessible part of the website becomes accessible.
  • the reward is at least one of a tangible reward for example money or credit on a card.
  • a method for encouraging a user to input information to a website comprising: displaying a gauge on the website, the gauge having a movable level indicating a degree of the information input by the user; and generating a profile representing interests of the user based on the information input by the user.
  • a content engine of a website for controlling the moveable level of a gauge representing a degree of knowledge acquired about a user of the website, the content engine comprising: a database for storing a plurality of questions for each user; a generating unit for predicting an answer to each of the questions; a scoring unit for assigning a confidence value representing the engine's confidence in the accuracy of the predicted answers; and a control unit for ordering the questions based on the confidence value such that the questions, having predicted answers with lowest confidence values, are asked to the user first.
  • a method for acquiring knowledge from a user by asking questions using a website comprising: storing a plurality of questions in a data store of the website; generating a predicted answer to each of the questions; assigning a confidence value to each of the predicted answers representing the confidence in the accuracy of the predicted answers; and ordering the questions based on the confidence value in such a manner that the questions having predicted answers with the lowest confidence values are asked to the user first.
  • Figure 1 shows a basic communication system according to an embodiment of the present invention
  • Figure 2 shows a server of an ASP (Application Service Provider) for supporting a website according to an embodiment of the present invention
  • Figure 3 shows exemplary data structures of an embodiment of the content engine
  • Figure 4 shows an example of scoring for a behaviour
  • Figure 5 shows exemplary predicted data structures of an embodiment of the content engine
  • Figure 6 shows a screenshot of a homepage with links to a plurality of channels
  • Figure 7 shows a screenshot of a channel with a channel gauge and a series of questions posed to a user of the website
  • Figure 8 shows three different levels of auto-locking once separate threshold levels of the gauge have been reached
  • Figure 9 shows two different levels of a gauge
  • Figure 10 shows two different views of a gauge of the user having the highest usage of the website and another user's gauge measured in relation to the highest usage
  • Figure 11 shows a level 2 gauge
  • Figure 12 shows exemplary functionality of the content engine for ordering questions to be posed to a user according to one embodiment
  • Figure 13 shows an overview of a process leading to creation of a relevance resource for use in provision of relevant content to users
  • Figure 14 shows a flowchart leading to the ordering of questions and incrementing the gauges
  • Figure 15 shows a Venn diagram representative of the relatedness between sets of users
  • Figure 16 shows an index listing for determining interactions between sets of users
  • Figure 17 shows a specific example of an index listing applied by a statistical engine.
  • Figure 1 shows a communication system, which for example comprises the internet for interconnecting a plurality of devices. Examples of these devices are the computer terminals 102 and the mobile phone 104. It should also be appreciated that other terminal devices, for example laptops, PDAs (Personal Digital Assistants), loaded with the appropriate web browsing functionality are able to browse a website hosted by the server 106.
  • PDAs Personal Digital Assistants
  • the server is owned and maintained by an ASP (Application Service Provider) which provides a website or web portal application for registered users.
  • ASP Application Service Provider
  • the web portal application is concerned with providing life choices in advance for young people and is tailored to provide relevant information content depending on the personal interests and attributes of each user that is registered with the ASP 106.
  • Figure 2 shows an example of the functionality of the computer system, such as server 106.
  • the various elements of functionality represented in Figure 2 can be implemented by way of computer programs or software responsible for performing the various functions of the web portal.
  • the interface 202 is likely to be HTML-based software for supporting a website that can be browsed by respective user terminals 102, 104.
  • the content engine 204 is used to build up knowledge of a particular user, through prompting the user to input information about their interests or behaviour, and based thereon to sort the relevance of content stored in either a local content source 206, or a remote content source 208, or a combination of remote and local content sources, in order to provide a user with knowledge which most closely matches the user's interests.
  • the content engine is also able to build up a profile, representing the interests and personal attributes of a user, depending on their input to the website.
  • One way of doing this is by generating a set of questions to be answered by the user. Further batches of questions are also asked to the user over time and can be based on existing knowledge of the user, for example based on answers to previous questions, or monitoring user browsing behaviour. This is explained in more detail below.
  • Figure 3 shows exemplary elements of a content engine 204, including three primary data structures ("tables"): Users 300, Content 302 and Categories 304. These primary tables each have a relationship table between them: Classification 306, Behaviour 308 and Profile 310. Specifically, the classification relational table 306 defines the relation between the category 304 and content 302 primary tables. The profile relational table 310 defines the relation between the users 300 and category 304 primary tables. The behaviour relational table 308 defines the relation between users 300 and content 302. As will be appreciated, each such table will in practice contain very many more entries than shown.
  • the content engine is coupled to a statistical engine 205 and a component labelled I-portfolio 207, which contains user profile information representative of user's interests and/or attributes.
  • the components 205 and 207 are provided within the content engine 204. In other embodiments they may not be present at all.
  • the user profile information of preferred embodiments includes information declared by users, information derived from tracking usage and further information deduced (predicted) based on statistical analysis of declared and/or derived information of all users.
  • the table of users associates a unique number (UID) with each of the users known to the system 106. So for the example shown in Figure 3 the lists of known users are Ed, Chris and Justin, which are associated with UIDl, UID2 and UID3 respectively.
  • the user table 300 is also able to hold (or have a link to): login details, contact and/or other personal information for the user. It is not so important as to the form of data stored about a user, rather the purpose is to allow a unique identifier (for example a numerical code) to be assigned to uniquely identify each of the users that accesses the service provided by the system 106.
  • the content table 302 associates a unique document identifier (DID), for example a number, to each piece of content that the system is aware of (i.e. either from a local source of content 206 or a remote source of content 208, 208').
  • the content table 302 generally holds a link (e.g. a filename or web URL) rather than the content itself.
  • a link e.g. a filename or web URL
  • the content may take the form of a news article, a movie trailer, a photo, a music track, etc and/or groups or parts of such items.
  • anything which may be discretely identified may be recorded as a piece of content, since all that is needed is for the system to assign a DID for the corresponding content to be discretely identifiable.
  • the category table 304 associates a unique category identifier (CID), for example a number, to each category that has been generated by the system.
  • Categories are grouping/classification mechanisms for example for users and/or content. Categories for example might include: the genre of film content (horror, romance, thriller etc), declared user groups (e.g. sailing special interest forum) or even socio-demographic groupings (age, wealth, personality type etc .) .
  • the three relationship tables: classification 306, profile 310 and behaviour 308 are many-to-many linking tables. In one embodiment they are implemented using relational databases, wherein each relational database is able to record unique identifiers (IDs) showing a relationship between the two items which these IDs refer to.
  • IDs unique identifiers
  • an SQL mechanism for holding many to many relationships allowing the content engine to record that one user is interested in many items of content, and conversely that one item of content is of interest to many users.
  • the profile table 310 records the relationship between users and categories (i.e. which categories of information each user is interested in).
  • the profile table 310 thus has UID and CID entries to indicate these relationships.
  • the classification table 306 records the relationship between content items and categories (i.e. which of the classifications the content is associated with).
  • the table thus has DID and CID columns to hold these relationships.
  • this table is typically populated from meta-data already included with the content itself. For example, locally held content already has meta-tags that give classification information. Content sourced from the internet may also have meta-tag information.
  • the behaviour table 308 records the relationship between users and content (i.e. which of the content items a user has looked at).
  • the table thus has UID and CID columns to hold these relationships.
  • Each of the above tables is initially relatively sparsely populated such that tables only record data that is known to be substantially factually correct.
  • Information declared by a user and regarding that user is regarded as substantially factually correct. Such declared information can for example be built up by the system generating questions which it prompts the user to answer, as will be described in more detail later.
  • a given user may have no declared profile entries or may have very limited entries in the behaviour table (if they are a new or infrequent user of the content). That is, the behaviour data is the table which records the relation between users and the content that they access. This information is derived from browsing behaviour over time. Obviously overtime, as the user accesses content via the system, more entries will exist for that user in the behaviour table.
  • each of the relational tables 306, 308 and 310 are extended to include a "scoring" column. See the exemplary table 308' of Fig. 4. This is used to store a numeric value representing the relatedness ('strength' of the relationship) between two items.
  • the relatedness score may then be used to determine the overall relevance as will be explained in more detail below. All relationships within the system also have date (timestamp) and relatedness score values associated with them.
  • the relatedness score is either directly given by the user (their own rating of how important something is) or a value automatically assigned by the system based on a prediction of how strong the users actions suggest the relationship is (e.g. buying a piece of content would give a higher score than simply browsing to it from a free hyper-link).
  • a relatedness score could for example be a mark out of 10 or a percentage, where in the example of Figure 4 the content identified as DID3 is more relevant to a particular user (UIDl), than another piece of content DID 5. This is represented in that the former relationship has a higher score "8" as compared to the latter "5".
  • relational tables 306, 308 and 310 and predicted relatedness scores within them comprise predicted relationship information obtained through relatedness calculations by the statistical engine 205. See for example the predicted information of tables 506, 508 and 510 of Fig. 5. This predicted information generally mirrors the type of information in the declared or derived tables 306, 308 and 310, respectively. However, it is generated in instances (not necessarily all instances) where actual declared or derived relationships are not available. Predicted information is referred to herein as "deduced" information because it is deduced from declared and/or derived information based on statistical analysis. In this case the date is used to record a timestamp of when the calculation was performed.
  • Figure 5 shows the predicted tables which include this so-called deduced information. Specifically, Figure 5 shows that in this embodiment each of the relational tables 306, 308 and 310 comprise corresponding "predicted" tables 506, 508 and 510.
  • the form of the predicted data structures for example whether a separately recorded table or whether new entries within existing tables, is immaterial.
  • tables 306, 308 and 310 relate to information that has either been declared by users or derived from usage patterns in practice, whereas the information in exemplary predicted tables 506, 508 and 510 has been predicted by the ASP.
  • the system uses the statistical engine 205, which performs a statistical analysis on the information to deduce "predicted" relationships.
  • An exemplary type of statistical analysis is explained hereinafter with reference to Figs. 15 to 17. The following prediction tables result:
  • a predicted profile table 510 comprising an indication of types of information each user is probably most likely to be interested in. For example an entry in a predicted profile might reflect "interest in horror movies" i.e. a type of film.
  • a predicted classification table 506 comprising an indication of the categories each piece of content should most probably be included in (i.e. auto generation of meta-data or similar for the content).
  • a predicted behaviour table 508 which predicts the pieces of content that each user is most likely to be interested in. For example, an entry in a predicted behaviour table might indicate an "interest in Scary Movie2 trailor" i.e. a specific item of content. Accordingly, we may expect predicted "types" of interest to be related to an interest in specific items of content - indeed it is this circular relationship which is exploited to derive and test predictions.
  • First and second inputs 1302, 1304 between which a relationship is to be determined are supplied to a scoring and relevance engine 1306 capable of performing the relevance determination described herein.
  • One or more further relevant factors 1308 may also be taken into account in the determination of overall relevance.
  • the relevance of content to a user is determined and the relevant factors taken into account may include " relatedness score" (user or predicted), “recency” (date stamp of the relationship), “popularity” (number of readers), “peer group ratings”, and “category interests”.
  • the relevance engine outputs a relevance score 1310, which is the measure of extent of the relationship and which is also suitable for achieving a comprehensive relevance ranking of content.
  • This provides a relevance resource 1320 ranking all content (or defined sub-sets of content) in ascending order of relevance to a particular user.
  • the relevance engine can be coupled with suitable types of filters 1350 (or several filters) in order to facilitate provision of relevant content to users.
  • filters 1350 or several filters
  • one type of useful filter to couple with relevance resource is a search filter which applies search criteria from a user to filter the content of the relevance resource to provide particularly relevant search results to the user.
  • Another type of suitable filter is for example a channel configuration filter or a channel content filter. These are basic types of filters which assist content providers (say operators of a website or portal) in pushing the most relevant channel configurations and most relevant channel content, respectively, toward users.
  • Another type of filter is an advertising content filter for supplying particularly relevant advertising content to users.
  • a filter is any mechanism for applying real time interests (or expected current interests) of users to the relevance resource and to assisting with either a
  • this element of the score is of limited use to the user as they have already rated the document. It is however important for the overall relevance determination and validation of the rankings.
  • related users is itself a predicted relationship table with an associated score. This predicted table is calculated by the weighted summation of user to document relatedness scores and user to category relatedness scores.
  • Advertisers are typically interested in reaching users most likely to respond to adverts or promotions.
  • advertising filters are a particularly useful type of filter 1312 for coupling to the relevance resource 1320. For example a ranking of advertising content taking to account user and category relationships yields strong results, allowing advertisers reach highly relevant target audiences among the general public.
  • the website hosted by the server 106 is responsible for providing relevant content to a user depending on the personal interests and attributes of that user.
  • the content engine 106 also has a Q&A generator for prompting prioritised questions to a user in an attempt to obtain a more accurate profile of each user.
  • the Q&A generator 1272 has a scoring unit 1274 which assigns a confidence score to each predicted answer. The accuracy of the profile is therefore likely to improve over time as users continue to input more information about themselves. The more information that is input by the user, the more accurate the profile that is built up for that user in the content engine 204 of the server 106 is likely to be.
  • the website has a tool which not only encourages frequent interaction with the website, but also maintains the interest of the user over a prolonged period of time.
  • a tool should drive usage and declarations of users so that the user profile and hence also the relevance determination improves.
  • the scoring algorithms should take the changing interests of the user into account. In effect, elements of changing data are given a half-life weighting which is analogous to radioactive decay. That is, the more recent a declared value the more weight is given to it.
  • a visual gauge in effect representing a user's commitment to the system and also entitlements within it.
  • An example of a suitable visual gauge 600 is shown in the screenshot of the home page of the website shown in Figure 6.
  • Figure 6 shows the master gauge 600, which according to a preferred embodiment is always visible adjacent to navigation bar of the website.
  • the home page of the website comprises a search bar
  • the home page also comprises a plurality of channels 603, 604, 606, 608, 610, 612, 614 and 616. These channels provide different categories of information, for example divided into: a "HEADLINE NEWS” channel 603, a "MOVIES” channel 604, a "SPORT” channel 606, a "MUSIC” channel 608, a "TV” channel 610, a "STYLE” channel 612, an
  • Figure 7 shows a screen shot of the MY WORLD/"MOVIES” input screen, wherein the content engine 204 of the website server 106 generates a plurality of questions which are presented to the user for their response.
  • Figure 7 shows the channel gauge 700 which is representative of the commitment of a particular user for a particular channel, i.e. "Chris” and his "MOVIES”.
  • the master gauge 600 which according to one embodiment is an aggregate representation of each of the respective channel gauges, taking into account commitment to the system as a whole.
  • the screenshot of Figure 7 also shows a plurality of questions 702, which the user is prompted to respond to. These questions are generated by the content engine 204 and in response to answers completed by the user, the content engine 204 is able to build up a more detailed profile for the user. More specifically, the particular type of questions in Figure 7 are such that the user's responses can be used to build a filtering mechanism for ensuring that content related to "MOVIES" is filtered so as to match the preferences of the user.
  • the channel gauge is set up so that it dynamically displays the progress of the user in completing a series of tests or questions posed by the content engine. That is, the channel gauge is automatically increased as the user proceeds through completing a series of questions.
  • the channel gauge is based on usage behaviours, for example on the frequency over a period of time that the user accesses the contents and services of a particular channel.
  • the channel gauge may be configured to increase depending on a combination of the amount of questions answered as well as the frequency of use of a particular channel.
  • the magnitude at which the channel gauge is increased depends on the priority (or order) of a question that is answered by a user, which will be explained in more detail with reference to Figure 14.
  • each user inputs information into the system by completing batches of questions 702 about their preferences, which enables the system to set up individual filters.
  • the gauges i.e. both the channel and master gauge
  • at least 60% of the master gauge is value driven by data input from the user. That is, the level of the master gauge can be moved to at least 60% by the user completing a plurality of questions.
  • a configurable proportion can be set. This could be 60% or some other value.
  • derived information is ideally more useful and accurate than declared information, and as such a lower value, of say 40% rather than 60%, might be used.
  • a further 20% of the master gauge is driven by the frequency of visits to the website/channel over a particular time period, for example days, weeks or months.
  • a further 20% of the master gauge 600 is dependent on the frequency of a user visiting and viewing content across the site, which will effectively cause the reading on the master gauge to increase.
  • the remaining 20% is retained and used when ad-hoc questions are successfully responded to by users.
  • the purpose of this is to allow ad hoc queries to be created and rewarded if responses are desired by the system or its administrators.
  • Figure 8 shows that the gauges can also be configured to have various threshold levels or settings. In this embodiment, there are three threshold levels shown, wherein once a user gets to a certain level that user is given an entitlement in that the gauge automatically locks in the threshold reading such that the gauge is not allowed to degrade below this point.
  • the protection levels of the gauge are configured to also take into account a time period of sustained usage.
  • Figure 1 For example, Figure 1
  • FIG 8 A shows the first auto-lock, which occurs when the gauge increases to 30% of its total capacity. This is known as level one protection, and in order to gain this level of auto-lock protection a user must maintain this level of commitment for a predetermined period, for example one week.
  • Figure 8B shows the second auto-lock level which is set at 50% of the total capacity of the gauge. Therefore, in order that a user is able to achieve second level of auto-lock protection, the user needs to sustain a relevant commitment for a period of one month for example.
  • the respective auto-locks will engage and will be locked for a fixed period, for example one year or possibly permanently.
  • the user can then be safe in the knowledge that the gauge cannot degrade below these respective levels for the predetermined period.
  • the threshold gauge can degrade, but will not go below the protection at which the user's latest auto-lock was invoked.
  • the advantage of this is that it will encourage the user to either use the website and/or increase input about himself through tests in order to get knowledge of the user to a particular level as indicated by the gauge. This response allows the system to capture new relevance data on the user and to improve accuracy of scoring and relevance determinations.
  • the user interface is also able to show the user(s), had they not achieved locked status, when they would have fallen below the locked threshold level, which will encourage users to stay above this level when the fixed period comes to an end.
  • the system shows user benefits which would be available to them at higher levels of entitlement. That is, by setting thresholds which the user can work towards, will not only stimulate web usage, but will potentially also build up the profile representing the website's knowledge of the interests and personal attributes of the user.
  • the gauge reading (at channel or master gauge level) is representative of certain entitlements built up by the user through commitment to the system, such as entitlements to access certain areas of the website and/or specific content and/or participate in certain promotions.
  • a loyalty scheme is introduced to compliment the specified levels of protection such that when the user arrives at a respective level of protection, the user will receive a particular type of loyalty card. For example, at 30% the user receives a bronze loyalty card, at 50% the user receives a silver loyalty card and at 80% the user receives a gold loyalty card. These cards entitle the user to receive additional benefits and incentives, for example exclusive previously unseen movie trailers that are not visible to those not in possession of a particular type of loyalty card.
  • These loyalty cards can either take the form of an actual physical financial transaction card that is sent to the user or in an alternative embodiment, i.e. a virtual card which for example can be displayed in a particular portion of the website interface for a registered user.
  • the latter embodiment could for example simply take the form of a small credit card-like icon located somewhere on the navigation tool bar, which changes colour depending on the type of loyalty card assigned to a user. Obviously, the more loyal the customer, the higher the type of card and the more benefits accrued to the user.
  • a physical credit card-sized token could be sent to the user, for example linked to a Pre-pay MaestroTM card.
  • the physical card need not be linked to an actual direct debit account, and could for example merely comprise a virtual account number that stores for example an amount of virtual currency. That is, in the example of accessing the previously unseen movie trailer, a value for accessing that movie trailer could be assigned with a particular value of virtual currency units. If the user has sufficient virtual currency units in his account, which for example can be accessed a unique identity number stored on the physical credit card, then the user is able to download the relevant movie trailer.
  • the virtual currency built up is again representative of a user's commitment to the site and is therefore advantageous in encouraging user's loyalty to the website.
  • the virtual currency links in with a gauge in order to provide the ability of giving away rewards outside of the loyalty card embodiments. That is, users can accumulate a series of credits, for example depending on the level of a gauge which they can redeem for mobile phone ring tones, wallpaper, etc. Obviously, these are examples and for example the user can also choose to exchange the series of credits to access areas of the website which are otherwise locked.
  • a user will be aware of the actual reward or credit that will be accrued to his account if the user reaches a particular level on a gauge, but in a different embodiment the user will also be kept in suspense, wherein previously locked areas of the website can be unlocked if a particular level of the gauge has been reached.
  • virtual currency contributions can be dependent upon increased gauge reading, whereby the level of the gauge can indeed be increased.
  • the virtual currency mechanism therefore also encourages users to complete questions or for example write up diary blogs to be used by for example "peer groups” and by the system.
  • Figure 9 shows an example of a decreasing gauge. Specifically, Figure 9A shows a particular level of the reading on the gauge depending on the usage at a particular point in time. However, Figure 9B shows that the level of the gauge has decreased at a later point in time.
  • the change, i.e. decrease, in the gauge shown in Figure 9B can be effected in a plurality of different ways:
  • the gauge is to represent the user's progress through a plurality of batches of questions. However, once a batch of questions has been answered by the user, a further batch of questions may be generated by the content engine 204 and as a result the gauge 600 will be automatically decreased by a relevant amount to indicate the progress through the next set of questions. The master gauge 600 will decrease as a result of a reduction of the specific channel gauge(s) 700.
  • Figure 10 shows an embodiment which is peculiar to the master gauge 600 in that the master gauge of all other users is set depending on the highest level obtained by the master gauge of any user.
  • the first proportion of each gauge is capable of being fulfilled through input from the user and/or web usage, but wherein a further proportion is dependent on the frequency of use of the relevant user.
  • the embodiment of Figure 10 takes this principle one step further in that this further proportion of the reading of the gauge is in fact dependent on the frequency of each user relative to the user having the highest frequency of usage.
  • the remaining portion of the gauge is retained and used when specific questions are successfully responded to by users.
  • the purpose of this is to allow ad hoc queries to be created and rewarded if responses are given.
  • a user is able to achieve the full 100%, but the threshold level will be set to decay quite quickly.
  • This embodiment has the advantage of promoting competition among the users to be the "100%" user.
  • Figure 1OA shows the maximum level of the highest user at 80%. However, it should be appreciated that a portion of the final 20% will also be displayed depending on the highest user's actual relative usage (not shown).
  • Figure 1OB shows the master gauge of the other users which is in effect at a level of 80% in relation to the maximum level of the highest user.
  • an additional incentive can be provided to all users, by for example, advertising on the website an offer that if a particular number of users is able to maintain each of their gauges at a specified level for a specified period of time, all of those users will progress to a second or higher level gauge.
  • the higher level gauge offering further rewards and is more advanced and intelligent than the current gauge.
  • An example of such an incentive for moving to a higher gauge could for example be that the website offers the incentive that if a minimum of 3000 users are able to maintain a level of 85% for a period of one year, those users will be eligible for an upgrade to the level two gauge.
  • This type of incentive encourages users to inform other friends to register with the website and/or encourage users in their peer group to meet the required frequency usage levels in order to reach the accumulative user target. In so doing, the usage of the website is increased, the subscribed base of registered users is increased and the knowledge of each of the users is increased. This increases accuracy of the relevance determination based for example on an increased knowledge of a given user and an increased knowledge of that user' s peer group .
  • the embodiment of using a second or higher level gauge might segment the community of users and/or complicate algorithms, in which case the embodiment of using a single gauge with configurable threshold settings (for example at 20%, 50% or 80%) might be preferred.
  • Figure 11 shows an example of the level two gauge, which is automatically loaded at a level of 10%, wherein those users that have achieved the level two gauge can never drop back down to level one, which enables the content engine of the system to increase more batches of questions.
  • the gauge can be used in combination with the predictive ability of the system to obtain more accurate information about the user (i.e. the user's profile) in a shorter period of time. That is, the information provided to a user can either be declared, derived or predicted. The predicted information is deduced from declared and derived inputs.
  • the system is able to use relational tables as shown in Figures 3 and 5 to predict (deduce) the answers to a vast selection of stored questions.
  • the system is able to ascertain what knowledge is lacking and hence which questions are most important in gaining a more effective knowledge of the user and to prioritise questions so that the most pertinent questions for improving relevance determinations are asked to the user first.
  • the user may be rewarded with a corresponding increase in the magnitude of the gauge 600 when the or each most pertinent question is answered. The higher the order of the question, the more important it is and the more the magnitude of the gauge is increased when answered.
  • the embodiment of Figure 12 shows that the content engine 204 comprises a Q&A (question and answer) generator 1272 and an order unit 1270.
  • the Q&A generator is arranged to generate questions for a particular user in order to obtain an even more accurate profile representing the user's interests and attributes. That is, a set of pre-programmed questions can be input from a human designer. It should be appreciated that the list of such questions is likely to vary both in number and content, since certain questions might be deemed more relevant for a particular application.
  • the list of questions and answers can be stored in at least one of the databases 206, 208 and 208'.
  • the Q&A generator 1272 is controlled by an order unit 1270, which prioritises the questions into a specific order. The order is based on ascertaining which of the questions are most valuable in gaining information about a particular user and those deemed most valuable are given highest priority. That is, the Q&A generator 1272 is able to predict an answer to each question for a user and based thereon, assigns a confidence score to such a predicted answer as an indication of how confident the system is of the predicted answer, i.e. how well the system knows the particular interests or attributes of a user.
  • a low confidence score indicates that the system has relatively little information on which to base its prediction.
  • Those questions that the system ascertains it knows least about a user are given highest priority by the order unit and are the first to be asked to the user.
  • the user is provided with the incentive to answer such questions first since they will have a corresponding magnitude weighting by which a relevant master or channel gauge is increased accordingly.
  • the gauge has threshold values, which may be the auto-lock thresholds or other thresholds, which when reached provide various benefits to the user and therefore it is in the user's best interests to answer those questions that result in the biggest corresponding increase in the gauge, i.e. the most important questions (or those which the system considers it knows least well about the user).
  • the accuracy of the profile of a user is likely to improve over time as the user answers more questions.
  • the effect of the gauge and predicted answer capability of the system allows it to order questions so that the most relevant questions are asked to the user first in order to gain the most valuable information as soon as possible.
  • the advantage of this is that the system is able to optimise itself dynamically in constantly updating the order based on the input information from the user to reconfigure the order of questions to be asked to obtain the most accurate profile of a user in the shortest time. In this way, the performance of the relevance determination is maintained at a higher level of accuracy.
  • the order unit 1270 operates with the confidence scoring unit 1274 to ensure that when a particular weighting is assigned to a particular question, the other questions are de-weighted accordingly. In one embodiment, this is simply achieved by subtracting the weighting value that the content engine assigned to the answered question from the weighting values of the remaining set of questions. This enables dynamic weighting whilst preserving the overall gauge values.
  • a given user has a set of associated questions stored in one or more of the databases ⁇ 206, 208, 208' and the Q&A generator 1272 and order unit 1270 are able to use information from other users to arrive at a candidate list of predicted answers.
  • the system either (i) looks at same peer group users with similar attributes and checks to see if they have answered the or each question unanswered by the given user; or (ii) looks for users which have answered the or each question unanswered by the given user and checks to see if they are same peer group or at least share attributes with the given user. In this way, a candidate list of predicted answers can be drawn up, each predicted answer having a confidence score determined as explained hereinafter.
  • Figure 14 shows a flowchart according to one embodiment in which the channel gauge is incremented by a degree of magnitude based on the order of the question answered by a user.
  • Step 1402 represents how the system uses information about other users of a peer group to predict candidate answers to unanswered questions relating to a given user.
  • the Q&A generator 1272 has a scoring unit 1274 which assigns a confidence score (CS) to each predicted answer.
  • the confidence score is a value indicative of the confidence that the system has in the accuracy of the predicted answer. The lower the confidence score value the less confident the system is of the accuracy of the predicted answer. It is these questions which are most important to the system since they demonstrate the aspects of the user's profile that are least known.
  • the confidence score generated by the scoring unit 1274 and assigned to each predicted answer is dependent on the number of users whose information (i.e. positive or negative answers to the question) has contributed to the predicted answer. That is, the system is able to deduce predictive information from other users with similar interests based on the relational tables shows in Figure 5.
  • the confidence score is calculated by the previous accuracy of the predicted answer to the actual answer. That is, if the predicted answer proved correct in 99 out of 100 times the question was posed, the confidence score will be very high.
  • step 1406 shows that the Q&A generator 1272 is able to generate a predicted answer score (PAS), which according to a preferred embodiment is a numeric identifier.
  • PAS is a numeric identifier which references a particular answer to a particular question. For example, if a question Ql has three possible answers Al, A2 and A3, then each of these can be assigned a unique numerical identifier as shown in table 1.
  • the PAS allows the system to easily reference and parse databases for establishing quickly which answers have been given to particular questions.
  • the system undergoes the following steps to generate a confidence score.
  • the system is able to run a parsing procedure which identifies which of the users have answered a question that a particular user has not answered.
  • the system also is able to run a parsing procedure which identifies which other users have answered a question in common with the particular user.
  • the system is able to take into account the sample size, i.e. the number of users that have answered that question. The larger the sample size, the bigger the confidence score.
  • Table 2 shows a first user that has been asked 5 questions Ql to Q5.
  • the next step is to look at how these users (user 1, user 17 and user 29) answered Ql, Q2 and Q3 with a view to determining which attributes they share in common with User 1.
  • the attribute information corresponding to user 17, user 29 and user 54 are therefore presented respectively in Table 3, 4 and 5 below.
  • the system will have a reasonably high confidence that the answer which User 1 is likely to give for Q5 would be Al, since user 1 has much in common with users 29 and 54. Thus, a high confidence score will be assigned.
  • the system is able to quickly assess each users likely answer to a particular questions and give a confidence rating of the system's confidence in the accuracy of such a predicted answer. In this way, the system is able to rapidly establish which questions might be most relevant to a particular user and to prioritise these questions to be asked to each user first.
  • a determination of the confidence score weighting to be assigned is established according to one embodiment , which is now described.
  • Q IAI the number of people answering Qi with answer Ai and Qi ⁇ be the total number of people answering question Ql.
  • this Pu value may be calculated and stored in the user-to-user relatedness tables. It is another measure of the relatedness of the users.
  • Equation (1) N is the total number of users.
  • Such confidence parameters can lead to a confidence score, optionally taking into account other criteria in addition to the above confidence parameter.
  • Step 1410 of the flowchart in Fig. 14 the question is asked to the user in the order that is determined by the value of the confidence score, i.e. the lower confidence score the earlier the question is asked.
  • Step 1412 indicates the stage when the user actually provides their answer to a question.
  • Step 1414 indicates a feedback loop that is able to provide self-testing if desired in a particular embodiment. Specifically, the actual answer given by the user can be fed back to the content engine 204 and compared to the predicted answer. The difference can be used in a plurality of different ways, one of which is to update the predictive information deduced by the content engine so as to render it more accurate.
  • a further embodiment is able to use neural network techniques to self-tune the prediction algorithms.
  • Step 1416 represents a channel gauge incrementing in response to receiving the answer to the question from the user.
  • the magnitude of increase is determined by the order of the question (or the confidence score value assigned to each question).
  • the weighting of the increase is in proportion with the position in the order. That is, Q7 ordered in position "1" is worth most to the specific channel, since the content engine 204 is most unsure of its accuracy, and is thus rewarded accordingly.
  • the master gauge can also be incremented appropriately. It should be appreciated that the degree of increase in the magnitude of the master gauge is flexible and may or may not be as significant as that in relation to the channel gauge, since there are potentially a plurality of different channels each with their own set of questions and confidence score values.
  • the order of the questions is also a function of a commercial value modifier (CVM) value, which is an algorithm that is applied to the confidence score so as to change the order appropriately.
  • CVM commercial value modifier
  • the advantage of the CVM is that it enables the system to ask questions that are perceived to be valuable because of specific commercial opportunities that are deemed potentially more profitable, for example a particular research project.
  • the Campaign Management Tool is a web, or information system based, control interface that allows a campaign manager to create model target groups utilising any defining factor available to the content engine. Once a model target group of users is identified, the campaign manager can enter CVM's to adjust the order of questions that are asked of the members of the model target group.
  • the CVM readjusts the order of the questions to be asked based on those deemed most important to the system in light of the CVM adjustment and are the first to be asked.
  • the CMT is also able to use the management tool to spot and plot trends between users manually. Moreover, the CMT is also the interface that enables the updating of specific incentives for the gauge with reference to particular projects. For example, a particular type of mobile phone may be upgraded depending on whether a group of users achieves a certain threshold target value.
  • a peer-group Users often declare themselves members of peer groups, for example by joining online groups or forums. Alternatively, or in ' addition, users may be deemed to belong to a peer group based on user behaviour, for example the system can identify relatedness of users based on browsing behaviour. Alternatively, or in addition, the content engine 204 is able to deduce over time for individual users certain content that various users might be interested in and thereby draw predictions about relatedness of users. This is a type of deduced peer group. For example from the behaviour tables (of Figure 3 and Figure 5), a particular user UIDl might be interested in a plurality of pieces of content DID2, DID3, DID7.
  • the content engine is able to parse the information in this table and notice that another user UID2 is also interested in similar content and has accessed DID2 and DID7. If these shared pieces of content DID2 and DID7 are related to for example a particular category CID5 (or a new category can be generated for these peer group users), then a peer group can be formed consisting of the users UIDl and UID2. Thus, in addition to the information that UIDl might retrieve normally, the content engine 204 is further allowed to retrieve information that users in that user's peer group are interested in.
  • peer group relationship it is thus possible for a peer group relationship to be "deduced" as was the case for the other predicted relationships 506, 508 and 510 referred to in Figure 5.
  • Such peer groups would be deduced by performing a statistical analysis that aims to establish the degree of relatedness that might exist between particular users, or the content they access, in order to establish whether a user should be joined to a particular peer group.
  • embodiments of the content engine are able to deduce the predicted relatedness for entries in each of the primary tables 300, 302 and 304. While Figure 4 showed an embodiment wherein the score that determined the relatedness was declared by a user for a relational table, each of the primary tables has a further column populated by predicted relatedness scores. That is, the content engine is able to score how related each of the primary items are to other items based on how they are used by various peer groups of users. These scores are referred to hereinbefore as "relatedness scores”.
  • the extra scoring column (not shown) represented how each piece of content is related to each other piece of content based on usage (i.e. people who were interested in content A were also interested in content B). By grouping content in this manner it is also possible to generate categories of related content.
  • the extra scoring column (not shown) represents how each category is related to other categories based on usage.
  • the socio-demographic category Y has a close affinity for ⁇ orror' movies.
  • the extra scoring column (not shown) represents how each user is related to other users in terms of their interests, which allows the grouping of users into predicted peer groups of users having similar interests, i.e. deduced user peer groups.
  • a statistical engine 205 is provided with software able to generate the aforementioned deduced information (i.e. predicted tables).
  • the functional aspects of exemplary software are described herein but it will be appreciated such software may take a number of different forms. However, the properties of an exemplary statistical engine 205 are most easily described with reference to the Venn diagram of Figure 15. For each of the predicted tables, the statistical engine is required to determine the extent of the relationship between items in tables.
  • Figure 15 between the set of users 1572 interested in content DIDl and the set of users 1574 interested in content DID2. Since we know the overall size of the users population 1576 (for example those registered with the ASP), the statistical engine is able to use this as a reference to determine the statistical likelihood of the intersection (overlap 1578) occurring by chance. The difference between the intersection in practice and the expected intersection based on overall the population of users indicates the extent which these pieces of content are linked by a theme of common interest (i.e. the extent of relationship between two pieces of content, referred to herein as "relatedness").
  • This type of statistical determination may be used to determine predicted contents of any of the predicted tables 506, 508, 510 and the like. According to another embodiment, it has been appreciated that the computing power needed to perform such statistical manipulations in working scenarios is prohibitive, or at least very inefficient.
  • the statistical processing is achieved by a combination of index and inverted-index processing techniques.
  • inverted indexes are generated and stored locally each time a statistical analysis is performed.
  • the content engine maintains these indexes and updates them each time a new analysis generates relevant entries for inclusion therein.
  • Figure 16 shows a basic relational database "select statement" approach which could be used to calculate the intersection 1578 between the two sets of users describe in Figure 15.
  • the upper block of Figure 16 represents the first set of users 1572 that were interested in the first piece of content DIDl.
  • the relevant users are identified by their UIDs such that the users UIDl, UID2 and UID5 are all interested in content DIDl.
  • the lower block of Figure 16 represents the second set of users 1574 that were interested in the second piece of content DID2.
  • the relevant users are identified by the UIDs such that the users UID2, UID5, UID7 and UID9 were all interested in content DID2.
  • an inverted (de-normalised) index for the same relationship, this assumes content DIDl is of interest to users UID1,UID2, UID5 and that content DID2 is of interest to users UID2, UID5, UID7, UID9.
  • the statistical engine is able to rapidly parse each set of inverted indices to establish that the intersection between these two sets is UID2 and UID5. That is, the users UID2 and UID5 access both DIDl and DID2.
  • the inverted index i.e. UID lists offer advantages in their own right in terms of reduced processing time, and this is potentially even further enhanced by being able to parse such-lists in parallel (i.e. simultaneously);—
  • Figure 17 shows an example of the application of the inverted index technique described in Figure 15 for determining the relatedness of all content to a given piece of content i.e. the relatedness of the entry of content DIDl to all other entries in the content table 302.
  • the statistical engine 205 extracts all the inverted indexes (UIDs) for all the users that have shown an interest in content DIDl .
  • the inverted content index list 1700 comprising UIDl, UID5, UID7, UID9 is generated. Then, each of the UID indexes can be processed in parallel to rapidly calculate the intersection (overlap) between all of these sets.
  • the statistical engine used to calculate relatedness operates, as already mentioned, based on statistical techniques that take into consideration the size of overlapping sets.
  • the relatedness is based on the intersection of the two overlapping user index lists UID5 and UID7.
  • the affect of each of these index lists should be inversely proportional to the size of each of these index lists.
  • UID5 is a list comprising 2 entries
  • UID7 is a list comprising 5 entries and therefore the former has an affect of 1/2
  • the latter only has an affect of 1/5. This must then also be adjusted to take account of the maximum value possible for this document, which is naturally the same as the relatedness value for a document with itself- DIDl in this case.
  • an optional factor may be added regarding the 'popularity' of the item delta 2 in the example to help ensure popular content precedes less popular content.
  • each user score is weighted by a factor of I(UIDl->DIDl) *(l - modulus( I(UID5->DIDl) - I(UIDl->DIDl)/max I).
  • I(UID1->DID1) Score for User
  • I(user->doc) is the score of the given document with respect to a given user.
  • a profile table 310 can be built up by the ASP 106, for example in response to the user answering a series of questions posed by the ASP.
  • the questions are grouped into batches of questions by the ASP 106 wherein the answers supplied by the user to a previous batch of questions are processed by a content engine 204, and based on the answers, the subsequent batch of questions prepared by the content engine are able to take into account the answers supplied to the previous batch of questions.
  • the content engine 204 of the ASP 106 is able to ask progressively more relevant questions to the user and hence has the advantage of increasing the accuracy of the declared profile 310 of a user.
  • a gauge of a first user reflects contribution from the gauges of other users.
  • the first user has directly introduced one or more of the other users
  • the profile information of the first user records this fact and establishes links to the profiles of the introduced uses such that usage of the system by the introduced users benefits the level of the gauge belonging to the first user according to predetermined rules. For example, in one embodiment a predetermined portion of the gauge
  • an indirectly introduced user is any user in a chain of introduction leading back to a user who is directly introduced by the first user. The number of introductions which are recorded in such chains
  • a further embodiment is suitable for use for example with a content aggregator.
  • a browser bar displaying a gauge is effective over a number of different proprietary platforms and also while users surf the Internet.
  • the system may
  • individual user profile information may be built from users who browse on a single proprietary website, and / or on a number of proprietary websites, and /or while browsing on the wider Internet.
  • individual user profile information is built up while users engage a plurality of proprietary platforms including, but not limited to: an educational and careers
  • portals 25 portal, a content aggregation portal, a movies portal, and a music portal. These portals are accessible from both mobile and desk-based computing terminals.

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

There is provided a computer system having an engine for generating a gauge for display on a website, the gauge displaying a moveable level representing a measure of an input received from a user of the website. The level of the gauge is effected by at least one of: a first means for tracking a frequency of usage of the user of the website and updating the moveable level accordingly and a second means for generating a series of questions to a user and updating the level of the gauge depending on a level of progress of the questions answered by the user.

Description

Computer System with Gauge
Field of the Invention
The present invention relates to computer systems comprising gauges and in particular but not exclusively, to a gauge for display on a website.
Background of the Invention
The prevalence of the internet and associated technologies is very important in the modern age. One of the potentially most important features of any website is its ability to attract and retain users onto the website. As such, professional web designers advertise their services to various companies in order to design a website with the relevant eye appeal desired by the company advertising its products and services. Indeed, web design and the various eye-catching technologies associated with it have become big business, since a website is often a user's first experience of a particular company whose service or product is being viewed.
Although basic web technologies include HTML-type designs, other technologies such as Flash™ and multimedia, are also used on occasion to attract the attention of a browsing internet user.
Another important aspect is the provision of content to users through websites. As the amount of content available increases it is more and more difficult to ensure content presented to any given user is relevant to that user.
Therefore, it would be advantageous to provide a website which is able to attract browsing users and to maintain their attention over an extended period of time. Indeed, due to the massive content viewable over the internet it is useful to have a tool displayed on a website that is able to encourage users to maintain their presence on a particular website, and more particularly to do so for an extended period of time. Summary of the Invention
Various aspects of the invention are set out for example in appended claims 1-100.
According to a first aspect of the present invention there is provided a gauge for display on a website, the gauge displaying a moveable level representing a measure of an input received from a user of the website, wherein the level of the gauge is effected by at least one of: a first means for tracking a frequency of usage of the user of the website and updating the moveable level accordingly; and a second means for generating a series of questions to a user and updating the level of the gauge depending on a level of progress of the questions answered by the user.
According to another aspect of the invention there is provided a server for hosting a website arranged to display a gauge, the server comprising: means for receiving an input to the website from a user; and an engine for controlling a level of the gauge depending on the input received from the user.
According to yet another aspect of the invention there is provided a gauge for a website, the gauge having a movable level being controlled by an engine that is arranged to receive an input to the website from the user, the engine is arranged to affect the movable level of the gauge depending on the received input from the user such that the user is encouraged to increase interaction with the website.
According to another aspect of the invention there is provided a gauge for a website, the gauge having a moveable level representing a quantity of input received from a user of the website, and wherein the gauge having at least one predetermined threshold level such that when the moveable level exceeds the threshold level a reward is given to the user thereby encouraging the user to increase the quantity of input to exceed said threshold level.
Preferably, wherein the predetermined threshold level is sustained for a predetermined duration.
Preferably, wherein the reward is that a previously inaccessible part of the website becomes accessible. Alternatively, wherein the reward is at least one of a tangible reward for example money or credit on a card.
According to another aspect of the invention there is provided a method for encouraging a user to input information to a website, the method comprising: displaying a gauge on the website, the gauge having a movable level indicating a degree of the information input by the user; and generating a profile representing interests of the user based on the information input by the user.
According to yet another aspect of the invention there is provided a content engine of a website for controlling the moveable level of a gauge representing a degree of knowledge acquired about a user of the website, the content engine comprising: a database for storing a plurality of questions for each user; a generating unit for predicting an answer to each of the questions; a scoring unit for assigning a confidence value representing the engine's confidence in the accuracy of the predicted answers; and a control unit for ordering the questions based on the confidence value such that the questions, having predicted answers with lowest confidence values, are asked to the user first.
According to yet another aspect of the present invention there is provided a method for acquiring knowledge from a user by asking questions using a website, the method comprising: storing a plurality of questions in a data store of the website; generating a predicted answer to each of the questions; assigning a confidence value to each of the predicted answers representing the confidence in the accuracy of the predicted answers; and ordering the questions based on the confidence value in such a manner that the questions having predicted answers with the lowest confidence values are asked to the user first.
Brief Description of the Drawings
Embodiments of the present invention will now be described by way of example only with reference to the accompanying drawings: Figure 1 shows a basic communication system according to an embodiment of the present invention;
Figure 2 shows a server of an ASP (Application Service Provider) for supporting a website according to an embodiment of the present invention;
Figure 3 shows exemplary data structures of an embodiment of the content engine;
Figure 4 shows an example of scoring for a behaviour;
Figure 5 shows exemplary predicted data structures of an embodiment of the content engine;
Figure 6 shows a screenshot of a homepage with links to a plurality of channels;
Figure 7 shows a screenshot of a channel with a channel gauge and a series of questions posed to a user of the website;
Figure 8 shows three different levels of auto-locking once separate threshold levels of the gauge have been reached;
Figure 9 shows two different levels of a gauge;
Figure 10 shows two different views of a gauge of the user having the highest usage of the website and another user's gauge measured in relation to the highest usage; and
Figure 11 shows a level 2 gauge;
Figure 12 shows exemplary functionality of the content engine for ordering questions to be posed to a user according to one embodiment;
Figure 13 shows an overview of a process leading to creation of a relevance resource for use in provision of relevant content to users;
Figure 14 shows a flowchart leading to the ordering of questions and incrementing the gauges;
Figure 15 shows a Venn diagram representative of the relatedness between sets of users; Figure 16 shows an index listing for determining interactions between sets of users; and
Figure 17 shows a specific example of an index listing applied by a statistical engine.
Description
Figure 1 shows a communication system, which for example comprises the internet for interconnecting a plurality of devices. Examples of these devices are the computer terminals 102 and the mobile phone 104. It should also be appreciated that other terminal devices, for example laptops, PDAs (Personal Digital Assistants), loaded with the appropriate web browsing functionality are able to browse a website hosted by the server 106.
More particularly, the server is owned and maintained by an ASP (Application Service Provider) which provides a website or web portal application for registered users. According to a preferred embodiment, the web portal application is concerned with providing life choices in advance for young people and is tailored to provide relevant information content depending on the personal interests and attributes of each user that is registered with the ASP 106.
Figure 2 shows an example of the functionality of the computer system, such as server 106. The various elements of functionality represented in Figure 2 can be implemented by way of computer programs or software responsible for performing the various functions of the web portal. For example, the interface 202 is likely to be HTML-based software for supporting a website that can be browsed by respective user terminals 102, 104. The content engine 204 is used to build up knowledge of a particular user, through prompting the user to input information about their interests or behaviour, and based thereon to sort the relevance of content stored in either a local content source 206, or a remote content source 208, or a combination of remote and local content sources, in order to provide a user with knowledge which most closely matches the user's interests.
The content engine is also able to build up a profile, representing the interests and personal attributes of a user, depending on their input to the website. One way of doing this is by generating a set of questions to be answered by the user. Further batches of questions are also asked to the user over time and can be based on existing knowledge of the user, for example based on answers to previous questions, or monitoring user browsing behaviour. This is explained in more detail below.
Figure 3 shows exemplary elements of a content engine 204, including three primary data structures ("tables"): Users 300, Content 302 and Categories 304. These primary tables each have a relationship table between them: Classification 306, Behaviour 308 and Profile 310. Specifically, the classification relational table 306 defines the relation between the category 304 and content 302 primary tables. The profile relational table 310 defines the relation between the users 300 and category 304 primary tables. The behaviour relational table 308 defines the relation between users 300 and content 302. As will be appreciated, each such table will in practice contain very many more entries than shown. Although the configuration disclosed herein is not to be regarded as limiting, the content engine is coupled to a statistical engine 205 and a component labelled I-portfolio 207, which contains user profile information representative of user's interests and/or attributes. In some embodiments, the components 205 and 207 are provided within the content engine 204. In other embodiments they may not be present at all. As will be explained in more detail hereinafter, the user profile information of preferred embodiments includes information declared by users, information derived from tracking usage and further information deduced (predicted) based on statistical analysis of declared and/or derived information of all users.
The primary and various relational tables of this user profile information are explained in more detail below.
The table of users associates a unique number (UID) with each of the users known to the system 106. So for the example shown in Figure 3 the lists of known users are Ed, Chris and Justin, which are associated with UIDl, UID2 and UID3 respectively. In a further embodiment, the user table 300 is also able to hold (or have a link to): login details, contact and/or other personal information for the user. It is not so important as to the form of data stored about a user, rather the purpose is to allow a unique identifier (for example a numerical code) to be assigned to uniquely identify each of the users that accesses the service provided by the system 106. The content table 302 associates a unique document identifier (DID), for example a number, to each piece of content that the system is aware of (i.e. either from a local source of content 206 or a remote source of content 208, 208'). The content table 302 generally holds a link (e.g. a filename or web URL) rather than the content itself. There is no restriction on the definition or format of the content. For example, the content may take the form of a news article, a movie trailer, a photo, a music track, etc and/or groups or parts of such items. However, anything which may be discretely identified may be recorded as a piece of content, since all that is needed is for the system to assign a DID for the corresponding content to be discretely identifiable.
The category table 304 associates a unique category identifier (CID), for example a number, to each category that has been generated by the system. Categories are grouping/classification mechanisms for example for users and/or content. Categories for example might include: the genre of film content (horror, romance, thriller etc), declared user groups (e.g. sailing special interest forum) or even socio-demographic groupings (age, wealth, personality type etc .) .
It should be appreciated that in order for unique identifiers (i.e. UID, CID and DID) to be assigned to new users, categories and content respectively; the content engine is equipped with known functionality (not shown in Figure 2) that is able to tag and identify these respective items.
The three relationship tables: classification 306, profile 310 and behaviour 308 are many-to-many linking tables. In one embodiment they are implemented using relational databases, wherein each relational database is able to record unique identifiers (IDs) showing a relationship between the two items which these IDs refer to. For example, an SQL mechanism for holding many to many relationships, allowing the content engine to record that one user is interested in many items of content, and conversely that one item of content is of interest to many users.
The profile table 310 records the relationship between users and categories (i.e. which categories of information each user is interested in). The profile table 310 thus has UID and CID entries to indicate these relationships.
The classification table 306 records the relationship between content items and categories (i.e. which of the classifications the content is associated with). The table thus has DID and CID columns to hold these relationships. In one embodiment, this table is typically populated from meta-data already included with the content itself. For example, locally held content already has meta-tags that give classification information. Content sourced from the internet may also have meta-tag information.
The behaviour table 308 records the relationship between users and content (i.e. which of the content items a user has looked at). The table thus has UID and CID columns to hold these relationships.
Each of the above tables is initially relatively sparsely populated such that tables only record data that is known to be substantially factually correct. Information declared by a user and regarding that user is regarded as substantially factually correct. Such declared information can for example be built up by the system generating questions which it prompts the user to answer, as will be described in more detail later. However, a given user may have no declared profile entries or may have very limited entries in the behaviour table (if they are a new or infrequent user of the content). That is, the behaviour data is the table which records the relation between users and the content that they access. This information is derived from browsing behaviour over time. Obviously overtime, as the user accesses content via the system, more entries will exist for that user in the behaviour table.
In a preferred embodiment each of the relational tables 306, 308 and 310 are extended to include a "scoring" column. See the exemplary table 308' of Fig. 4. This is used to store a numeric value representing the relatedness ('strength' of the relationship) between two items.
The relatedness score may then be used to determine the overall relevance as will be explained in more detail below. All relationships within the system also have date (timestamp) and relatedness score values associated with them.
In the case of declared and derived data the relatedness score is either directly given by the user (their own rating of how important something is) or a value automatically assigned by the system based on a prediction of how strong the users actions suggest the relationship is (e.g. buying a piece of content would give a higher score than simply browsing to it from a free hyper-link). A relatedness score could for example be a mark out of 10 or a percentage, where in the example of Figure 4 the content identified as DID3 is more relevant to a particular user (UIDl), than another piece of content DID 5. This is represented in that the former relationship has a higher score "8" as compared to the latter "5". In a preferred embodiment the relational tables 306, 308 and 310 and predicted relatedness scores within them comprise predicted relationship information obtained through relatedness calculations by the statistical engine 205. See for example the predicted information of tables 506, 508 and 510 of Fig. 5. This predicted information generally mirrors the type of information in the declared or derived tables 306, 308 and 310, respectively. However, it is generated in instances (not necessarily all instances) where actual declared or derived relationships are not available. Predicted information is referred to herein as "deduced" information because it is deduced from declared and/or derived information based on statistical analysis. In this case the date is used to record a timestamp of when the calculation was performed.
Figure 5 shows the predicted tables which include this so-called deduced information. Specifically, Figure 5 shows that in this embodiment each of the relational tables 306, 308 and 310 comprise corresponding "predicted" tables 506, 508 and 510. In practice, the form of the predicted data structures, for example whether a separately recorded table or whether new entries within existing tables, is immaterial.
Broadly speaking, the difference is that tables 306, 308 and 310 relate to information that has either been declared by users or derived from usage patterns in practice, whereas the information in exemplary predicted tables 506, 508 and 510 has been predicted by the ASP. To achieve this the system uses the statistical engine 205, which performs a statistical analysis on the information to deduce "predicted" relationships. An exemplary type of statistical analysis is explained hereinafter with reference to Figs. 15 to 17. The following prediction tables result:
- A predicted profile table 510 comprising an indication of types of information each user is probably most likely to be interested in. For example an entry in a predicted profile might reflect "interest in horror movies" i.e. a type of film.
- A predicted classification table 506 comprising an indication of the categories each piece of content should most probably be included in (i.e. auto generation of meta-data or similar for the content).
- A predicted behaviour table 508 which predicts the pieces of content that each user is most likely to be interested in. For example, an entry in a predicted behaviour table might indicate an "interest in Scary Movie2 trailor" i.e. a specific item of content. Accordingly, we may expect predicted "types" of interest to be related to an interest in specific items of content - indeed it is this circular relationship which is exploited to derive and test predictions.
With reference to Figure 13, relevance determinations within the system are driven by the summation of weighted scores. Exactly which items are taken into account and how these are weighted and summed is a configurable element of the system. First and second inputs 1302, 1304 between which a relationship is to be determined are supplied to a scoring and relevance engine 1306 capable of performing the relevance determination described herein. One or more further relevant factors 1308 may also be taken into account in the determination of overall relevance. In the example illustrated below the relevance of content to a user is determined and the relevant factors taken into account may include " relatedness score" (user or predicted), "recency" (date stamp of the relationship), "popularity" (number of readers), "peer group ratings", and "category interests". A skilled person will appreciate that different factors should be taken into account for different types of relationship. The relevance engine outputs a relevance score 1310, which is the measure of extent of the relationship and which is also suitable for achieving a comprehensive relevance ranking of content. This provides a relevance resource 1320 ranking all content (or defined sub-sets of content) in ascending order of relevance to a particular user.
As will be apparent to a skilled person, the relevance engine can be coupled with suitable types of filters 1350 (or several filters) in order to facilitate provision of relevant content to users. For example one type of useful filter to couple with relevance resource is a search filter which applies search criteria from a user to filter the content of the relevance resource to provide particularly relevant search results to the user. Another type of suitable filter is for example a channel configuration filter or a channel content filter. These are basic types of filters which assist content providers (say operators of a website or portal) in pushing the most relevant channel configurations and most relevant channel content, respectively, toward users. Another type of filter is an advertising content filter for supplying particularly relevant advertising content to users.
It should be appreciated that a filter is any mechanism for applying real time interests (or expected current interests) of users to the relevance resource and to assisting with either a
"push" of relevant content to the user (e.g. advert) of "pull" of relevant content from the user (e.g. search results). Consider the case of user to document predicted scores. For a given document there may be consideration of:
1) Any explicit existing relatedness score for the document by this user (declared or derived) weighted by date.
Effect: Documents explicitly flagged of interest have higher relevance. Newer documents have higher relevance.
Note: this element of the score is of limited use to the user as they have already rated the document. It is however important for the overall relevance determination and validation of the rankings.
2) Any matching categories for the user and document with their associated scores weighted by a factor based on the product of the two scores and date.
Effect: Documents which are of a type the user has declared an interest in are of higher relevance. Newer interests have higher relevance.
3) A factor to allow for the number of users who have expressed an interest in the document (declared or derived).
Popular content has higher relevance.
4) Any scores for this document from peer group or otherwise "related users" weighted by the relatedness score to this user.
Effect: How other users have rated this document effects it's relevance with respect to a given user. The more similar the other user is to this user, the more effect their rating will have.
Note: related users is itself a predicted relationship table with an associated score. This predicted table is calculated by the weighted summation of user to document relatedness scores and user to category relatedness scores.
Advertisers are typically interested in reaching users most likely to respond to adverts or promotions. Hence advertising filters are a particularly useful type of filter 1312 for coupling to the relevance resource 1320. For example a ranking of advertising content taking to account user and category relationships yields strong results, allowing advertisers reach highly relevant target audiences among the general public.
Thus, in summary the website hosted by the server 106 is responsible for providing relevant content to a user depending on the personal interests and attributes of that user. With reference to Fig. 12, the content engine 106 also has a Q&A generator for prompting prioritised questions to a user in an attempt to obtain a more accurate profile of each user. The Q&A generator 1272 has a scoring unit 1274 which assigns a confidence score to each predicted answer. The accuracy of the profile is therefore likely to improve over time as users continue to input more information about themselves. The more information that is input by the user, the more accurate the profile that is built up for that user in the content engine 204 of the server 106 is likely to be. Moreover, since the interests of a user are likely to vary over time, it is desirable that the website has a tool which not only encourages frequent interaction with the website, but also maintains the interest of the user over a prolonged period of time. Preferably such a tool should drive usage and declarations of users so that the user profile and hence also the relevance determination improves. The scoring algorithms should take the changing interests of the user into account. In effect, elements of changing data are given a half-life weighting which is analogous to radioactive decay. That is, the more recent a declared value the more weight is given to it.
According to an embodiment of the present invention, there is provided a visual gauge in effect representing a user's commitment to the system and also entitlements within it. An example of a suitable visual gauge 600 is shown in the screenshot of the home page of the website shown in Figure 6. Specifically, Figure 6 shows the master gauge 600, which according to a preferred embodiment is always visible adjacent to navigation bar of the website.
According to an embodiment, the home page of the website comprises a search bar
602 enabling the user to enter a search string to try and find a particular document to be displayed. The home page also comprises a plurality of channels 603, 604, 606, 608, 610, 612, 614 and 616. These channels provide different categories of information, for example divided into: a "HEADLINE NEWS" channel 603, a "MOVIES" channel 604, a "SPORT" channel 606, a "MUSIC" channel 608, a "TV" channel 610, a "STYLE" channel 612, an
"OUT AND ABOUT" channel 614 and a "TRAVEL" channel 616. A user may select any of these categories and will be redirected to a new web page representing that channel. Each of the channels having their own channel gauge representing a user's input into the system.
For example, Figure 7 shows a screen shot of the MY WORLD/"MOVIES" input screen, wherein the content engine 204 of the website server 106 generates a plurality of questions which are presented to the user for their response. Specifically, Figure 7 shows the channel gauge 700 which is representative of the commitment of a particular user for a particular channel, i.e. "Chris" and his "MOVIES". Above the navigation bar is displayed the master gauge 600 which according to one embodiment is an aggregate representation of each of the respective channel gauges, taking into account commitment to the system as a whole.
The screenshot of Figure 7 also shows a plurality of questions 702, which the user is prompted to respond to. These questions are generated by the content engine 204 and in response to answers completed by the user, the content engine 204 is able to build up a more detailed profile for the user. More specifically, the particular type of questions in Figure 7 are such that the user's responses can be used to build a filtering mechanism for ensuring that content related to "MOVIES" is filtered so as to match the preferences of the user.
According to a first embodiment, the channel gauge is set up so that it dynamically displays the progress of the user in completing a series of tests or questions posed by the content engine. That is, the channel gauge is automatically increased as the user proceeds through completing a series of questions. Alternatively, or in addition, the channel gauge is based on usage behaviours, for example on the frequency over a period of time that the user accesses the contents and services of a particular channel. Indeed, the channel gauge may be configured to increase depending on a combination of the amount of questions answered as well as the frequency of use of a particular channel. According to one embodiment the magnitude at which the channel gauge is increased depends on the priority (or order) of a question that is answered by a user, which will be explained in more detail with reference to Figure 14.
Users who commit time to answering questions and/or in usage on the system build for example rewards such as increased access and/or entitlements within (and preferably also outside) the system. Their increased reward is reflected by an increased reading on the channel and master gauges respectively. According to one embodiment, each user inputs information into the system by completing batches of questions 702 about their preferences, which enables the system to set up individual filters. The gauges (i.e. both the channel and master gauge) increases when a user completes their batch of questions. In this embodiment at least 60% of the master gauge is value driven by data input from the user. That is, the level of the master gauge can be moved to at least 60% by the user completing a plurality of questions. It should be appreciated that a system architect can tailor these settings such that according to alternative embodiments, a configurable proportion can be set. This could be 60% or some other value. For example, in a web business application, derived information is arguably more useful and accurate than declared information, and as such a lower value, of say 40% rather than 60%, might be used.
According to one embodiment, a further 20% of the master gauge is driven by the frequency of visits to the website/channel over a particular time period, for example days, weeks or months. Thus, a further 20% of the master gauge 600 is dependent on the frequency of a user visiting and viewing content across the site, which will effectively cause the reading on the master gauge to increase.
The remaining 20% is retained and used when ad-hoc questions are successfully responded to by users. The purpose of this is to allow ad hoc queries to be created and rewarded if responses are desired by the system or its administrators.
Figure 8 shows that the gauges can also be configured to have various threshold levels or settings. In this embodiment, there are three threshold levels shown, wherein once a user gets to a certain level that user is given an entitlement in that the gauge automatically locks in the threshold reading such that the gauge is not allowed to degrade below this point.
According to a preferred embodiment, the protection levels of the gauge are configured to also take into account a time period of sustained usage. For example, Figure
8 A shows the first auto-lock, which occurs when the gauge increases to 30% of its total capacity. This is known as level one protection, and in order to gain this level of auto-lock protection a user must maintain this level of commitment for a predetermined period, for example one week.
Figure 8B shows the second auto-lock level which is set at 50% of the total capacity of the gauge. Therefore, in order that a user is able to achieve second level of auto-lock protection, the user needs to sustain a relevant commitment for a period of one month for example.
Finally, a third auto-lock protection level is invoked when the user has sustained 80% commitment as dictated by the reading of the gauge for three months.
If the user manages to sustain the levels of input and/or frequency of usage for the required period, the respective auto-locks will engage and will be locked for a fixed period, for example one year or possibly permanently. The user can then be safe in the knowledge that the gauge cannot degrade below these respective levels for the predetermined period. For example, once the user has provided the necessary input at sustained frequency of usage for the website for the required time, the threshold gauge can degrade, but will not go below the protection at which the user's latest auto-lock was invoked. The advantage of this is that it will encourage the user to either use the website and/or increase input about himself through tests in order to get knowledge of the user to a particular level as indicated by the gauge. This response allows the system to capture new relevance data on the user and to improve accuracy of scoring and relevance determinations.
According to a further embodiment, the user interface is also able to show the user(s), had they not achieved locked status, when they would have fallen below the locked threshold level, which will encourage users to stay above this level when the fixed period comes to an end. In a further embodiment, the system shows user benefits which would be available to them at higher levels of entitlement. That is, by setting thresholds which the user can work towards, will not only stimulate web usage, but will potentially also build up the profile representing the website's knowledge of the interests and personal attributes of the user.
In a preferred embodiment, the gauge reading (at channel or master gauge level) is representative of certain entitlements built up by the user through commitment to the system, such as entitlements to access certain areas of the website and/or specific content and/or participate in certain promotions.
Furthermore, a loyalty scheme is introduced to compliment the specified levels of protection such that when the user arrives at a respective level of protection, the user will receive a particular type of loyalty card. For example, at 30% the user receives a bronze loyalty card, at 50% the user receives a silver loyalty card and at 80% the user receives a gold loyalty card. These cards entitle the user to receive additional benefits and incentives, for example exclusive previously unseen movie trailers that are not visible to those not in possession of a particular type of loyalty card.
These loyalty cards can either take the form of an actual physical financial transaction card that is sent to the user or in an alternative embodiment, i.e. a virtual card which for example can be displayed in a particular portion of the website interface for a registered user.
The latter embodiment could for example simply take the form of a small credit card-like icon located somewhere on the navigation tool bar, which changes colour depending on the type of loyalty card assigned to a user. Obviously, the more loyal the customer, the higher the type of card and the more benefits accrued to the user.
For the physical loyalty card, a physical credit card-sized token could be sent to the user, for example linked to a Pre-pay Maestro™ card. The physical card need not be linked to an actual direct debit account, and could for example merely comprise a virtual account number that stores for example an amount of virtual currency. That is, in the example of accessing the previously unseen movie trailer, a value for accessing that movie trailer could be assigned with a particular value of virtual currency units. If the user has sufficient virtual currency units in his account, which for example can be accessed a unique identity number stored on the physical credit card, then the user is able to download the relevant movie trailer.
In general, the virtual currency built up is again representative of a user's commitment to the site and is therefore advantageous in encouraging user's loyalty to the website. Put another way, the virtual currency links in with a gauge in order to provide the ability of giving away rewards outside of the loyalty card embodiments. That is, users can accumulate a series of credits, for example depending on the level of a gauge which they can redeem for mobile phone ring tones, wallpaper, etc. Obviously, these are examples and for example the user can also choose to exchange the series of credits to access areas of the website which are otherwise locked.
This is also an advantageous embodiment in its own right in that a user would be naturally curious to find out what lies behind sections of a website which are blocked. For example, a section of a website might be marked "locked until reading of 50%" or "locked until 2000 units". Thus, a user understand that he can unlock this area of the website if 2000 virtual currency units are attained by inputting information to the website. Thus, different embodiments of the present invention are able to offer reward mechanisms for the user depending on the amount of usage and/or loyalty to the website, which will be reflected in the reading of each gauge. Often, a user will be aware of the actual reward or credit that will be accrued to his account if the user reaches a particular level on a gauge, but in a different embodiment the user will also be kept in suspense, wherein previously locked areas of the website can be unlocked if a particular level of the gauge has been reached.
According to a further embodiment, virtual currency contributions can be dependent upon increased gauge reading, whereby the level of the gauge can indeed be increased.
The virtual currency mechanism therefore also encourages users to complete questions or for example write up diary blogs to be used by for example "peer groups" and by the system.
Figure 9 shows an example of a decreasing gauge. Specifically, Figure 9A shows a particular level of the reading on the gauge depending on the usage at a particular point in time. However, Figure 9B shows that the level of the gauge has decreased at a later point in time. The change, i.e. decrease, in the gauge shown in Figure 9B can be effected in a plurality of different ways:
i) through lack of usage;
ii) when the user has not completed or updated information that has "timed out". This is for example the case when the website is aware of certain events that should have been completed by a user. For example, the website having built up a profile of the user, will be aware of the user's age and educational status and a time out will occur if for example GCSE results have not been entered within one month after having been announced;
iii) when a new batch of questions has been introduced. For example one embodiment of the gauge is to represent the user's progress through a plurality of batches of questions. However, once a batch of questions has been answered by the user, a further batch of questions may be generated by the content engine 204 and as a result the gauge 600 will be automatically decreased by a relevant amount to indicate the progress through the next set of questions. The master gauge 600 will decrease as a result of a reduction of the specific channel gauge(s) 700.
Figure 10 shows an embodiment which is peculiar to the master gauge 600 in that the master gauge of all other users is set depending on the highest level obtained by the master gauge of any user. As previously explained, according to one embodiment the first proportion of each gauge is capable of being fulfilled through input from the user and/or web usage, but wherein a further proportion is dependent on the frequency of use of the relevant user. The embodiment of Figure 10 takes this principle one step further in that this further proportion of the reading of the gauge is in fact dependent on the frequency of each user relative to the user having the highest frequency of usage.
In this embodiment, it should be understood that no user will actually be able to achieve 100%, but rather will achieve various fractions of this further proportion, depending on an algorithm that calculates the respective relative frequency of usage of each user compared to the most frequent user. However, even the most frequent user will not be able to achieve the full 100%, but will have the largest fraction of this further proportion displayed on his/her own master gauge 600.
The remaining portion of the gauge is retained and used when specific questions are successfully responded to by users. The purpose of this is to allow ad hoc queries to be created and rewarded if responses are given.
In an alternative embodiment, a user is able to achieve the full 100%, but the threshold level will be set to decay quite quickly. This embodiment has the advantage of promoting competition among the users to be the "100%" user.
Thus, in preferred embodiments none of the users, including the most frequent user, will ever reach 100% ensuring that the incentive for interactive input continues for all users. Specifically, Figure 1OA shows the maximum level of the highest user at 80%. However, it should be appreciated that a portion of the final 20% will also be displayed depending on the highest user's actual relative usage (not shown). On the other hand, Figure 1OB shows the master gauge of the other users which is in effect at a level of 80% in relation to the maximum level of the highest user. In a further embodiment, an additional incentive can be provided to all users, by for example, advertising on the website an offer that if a particular number of users is able to maintain each of their gauges at a specified level for a specified period of time, all of those users will progress to a second or higher level gauge. The higher level gauge offering further rewards and is more advanced and intelligent than the current gauge.
An example of such an incentive for moving to a higher gauge could for example be that the website offers the incentive that if a minimum of 3000 users are able to maintain a level of 85% for a period of one year, those users will be eligible for an upgrade to the level two gauge. This type of incentive encourages users to inform other friends to register with the website and/or encourage users in their peer group to meet the required frequency usage levels in order to reach the accumulative user target. In so doing, the usage of the website is increased, the subscribed base of registered users is increased and the knowledge of each of the users is increased. This increases accuracy of the relevance determination based for example on an increased knowledge of a given user and an increased knowledge of that user' s peer group .
In any event, it is up to a system programmer to tailor the content engine to suit their needs. For example, it might be decided that the embodiment of using a second or higher level gauge might segment the community of users and/or complicate algorithms, in which case the embodiment of using a single gauge with configurable threshold settings (for example at 20%, 50% or 80%) might be preferred.
Figure 11 shows an example of the level two gauge, which is automatically loaded at a level of 10%, wherein those users that have achieved the level two gauge can never drop back down to level one, which enables the content engine of the system to increase more batches of questions.
In a preferred embodiment, the gauge can be used in combination with the predictive ability of the system to obtain more accurate information about the user (i.e. the user's profile) in a shorter period of time. That is, the information provided to a user can either be declared, derived or predicted. The predicted information is deduced from declared and derived inputs. The system is able to use relational tables as shown in Figures 3 and 5 to predict (deduce) the answers to a vast selection of stored questions. Moreover, the system is able to ascertain what knowledge is lacking and hence which questions are most important in gaining a more effective knowledge of the user and to prioritise questions so that the most pertinent questions for improving relevance determinations are asked to the user first. The user may be rewarded with a corresponding increase in the magnitude of the gauge 600 when the or each most pertinent question is answered. The higher the order of the question, the more important it is and the more the magnitude of the gauge is increased when answered.
The embodiment of Figure 12 shows that the content engine 204 comprises a Q&A (question and answer) generator 1272 and an order unit 1270. The Q&A generator is arranged to generate questions for a particular user in order to obtain an even more accurate profile representing the user's interests and attributes. That is, a set of pre-programmed questions can be input from a human designer. It should be appreciated that the list of such questions is likely to vary both in number and content, since certain questions might be deemed more relevant for a particular application. The list of questions and answers can be stored in at least one of the databases 206, 208 and 208'.
The Q&A generator 1272 is controlled by an order unit 1270, which prioritises the questions into a specific order. The order is based on ascertaining which of the questions are most valuable in gaining information about a particular user and those deemed most valuable are given highest priority. That is, the Q&A generator 1272 is able to predict an answer to each question for a user and based thereon, assigns a confidence score to such a predicted answer as an indication of how confident the system is of the predicted answer, i.e. how well the system knows the particular interests or attributes of a user.
A low confidence score indicates that the system has relatively little information on which to base its prediction. Those questions that the system ascertains it knows least about a user are given highest priority by the order unit and are the first to be asked to the user. The user is provided with the incentive to answer such questions first since they will have a corresponding magnitude weighting by which a relevant master or channel gauge is increased accordingly. The gauge has threshold values, which may be the auto-lock thresholds or other thresholds, which when reached provide various benefits to the user and therefore it is in the user's best interests to answer those questions that result in the biggest corresponding increase in the gauge, i.e. the most important questions (or those which the system considers it knows least well about the user). The accuracy of the profile of a user, representing the user's interests and attributes as stored in the I-portfolio database 207, is likely to improve over time as the user answers more questions. The effect of the gauge and predicted answer capability of the system allows it to order questions so that the most relevant questions are asked to the user first in order to gain the most valuable information as soon as possible. The advantage of this is that the system is able to optimise itself dynamically in constantly updating the order based on the input information from the user to reconfigure the order of questions to be asked to obtain the most accurate profile of a user in the shortest time. In this way, the performance of the relevance determination is maintained at a higher level of accuracy.
In order to simplify the process of incrementing the gauge appropriately depending on the set of questions being answered by the user, the order unit 1270 operates with the confidence scoring unit 1274 to ensure that when a particular weighting is assigned to a particular question, the other questions are de-weighted accordingly. In one embodiment, this is simply achieved by subtracting the weighting value that the content engine assigned to the answered question from the weighting values of the remaining set of questions. This enables dynamic weighting whilst preserving the overall gauge values.
A given user has a set of associated questions stored in one or more of the databases 206, 208, 208' and the Q&A generator 1272 and order unit 1270 are able to use information from other users to arrive at a candidate list of predicted answers.
To do this the system either (i) looks at same peer group users with similar attributes and checks to see if they have answered the or each question unanswered by the given user; or (ii) looks for users which have answered the or each question unanswered by the given user and checks to see if they are same peer group or at least share attributes with the given user. In this way, a candidate list of predicted answers can be drawn up, each predicted answer having a confidence score determined as explained hereinafter.
Figure 14 shows a flowchart according to one embodiment in which the channel gauge is incremented by a degree of magnitude based on the order of the question answered by a user.
Step 1402 represents how the system uses information about other users of a peer group to predict candidate answers to unanswered questions relating to a given user. The Q&A generator 1272 has a scoring unit 1274 which assigns a confidence score (CS) to each predicted answer. The confidence score is a value indicative of the confidence that the system has in the accuracy of the predicted answer. The lower the confidence score value the less confident the system is of the accuracy of the predicted answer. It is these questions which are most important to the system since they demonstrate the aspects of the user's profile that are least known.
According to one embodiment, the confidence score generated by the scoring unit 1274 and assigned to each predicted answer, is dependent on the number of users whose information (i.e. positive or negative answers to the question) has contributed to the predicted answer. That is, the system is able to deduce predictive information from other users with similar interests based on the relational tables shows in Figure 5.
In one embodiment, the confidence score is calculated by the previous accuracy of the predicted answer to the actual answer. That is, if the predicted answer proved correct in 99 out of 100 times the question was posed, the confidence score will be very high.
Specifically, step 1406 shows that the Q&A generator 1272 is able to generate a predicted answer score (PAS), which according to a preferred embodiment is a numeric identifier. Specifically, the PAS is a numeric identifier which references a particular answer to a particular question. For example, if a question Ql has three possible answers Al, A2 and A3, then each of these can be assigned a unique numerical identifier as shown in table 1.
Table 1
Figure imgf000023_0001
The PAS allows the system to easily reference and parse databases for establishing quickly which answers have been given to particular questions.
According to one embodiment, the system undergoes the following steps to generate a confidence score.
1) An initialisation step in which a PAS identifier is assigned to each potential answer for each' question.
2) The system is able to run a parsing procedure which identifies which of the users have answered a question that a particular user has not answered.
3) The system also is able to run a parsing procedure which identifies which other users have answered a question in common with the particular user.
4) The questions answered in common are then weighted (this can either be a positive or negative weighting) as an indication of the relevance of the question to the particular user.
5) Finally, the system is able to take into account the sample size, i.e. the number of users that have answered that question. The larger the sample size, the bigger the confidence score.
Consider the physical example, which is now provided below.
Table 2 shows a first user that has been asked 5 questions Ql to Q5.
Table 2
Figure imgf000024_0001
In response to Ql, the user answered according to a first possibility, i.e. QlAl . For Q2, user 1 answered with a third possible answer. For Q3, the user answered with a second possible answer. For questions Q4 and Q5, the user has not given an answer. Each of these possible answers is identified uniquely with a PAS (as described in step 1 above), which enables the system to parse the database of users, questions and answers in determining quickly and efficiently who has what in common.
So in the example of Table 2, it is possible to quickly establish which other users have answered questions that the user has not answered (as described in step 2 above). Thus, who else has answered Q4 or Q5? The parsing procedure reveals for example that user 17, user 29 and user 54 have answered Q4 or Q5.
The next step (see step 3 described above) is to look at how these users (user 1, user 17 and user 29) answered Ql, Q2 and Q3 with a view to determining which attributes they share in common with User 1. The attribute information corresponding to user 17, user 29 and user 54 are therefore presented respectively in Table 3, 4 and 5 below.
Table 3
Figure imgf000025_0001
Table 4
Figure imgf000025_0002
Figure imgf000026_0001
Table 5
Figure imgf000026_0002
It can be seen from Tables 4 and 5 that's users 29 and 54 share enough attributes in common with user 1 to be regarded as "like user 1".
As per step 4, the system will have a reasonably high confidence that the answer which User 1 is likely to give for Q5 would be Al, since user 1 has much in common with users 29 and 54. Thus, a high confidence score will be assigned.
On the other hand, since only one of the common users (i.e. user 54) answered A3 to Q4, a lower confidence score will be assigned to the possibility that user 1 's answer to Q4 will be A3. Compare this to Q5, where at least two of the common users have answered in common to Q5 therefore increasing the confidence as a result of the increased sample size (in line with step 5 above).
Thus, the system is able to quickly assess each users likely answer to a particular questions and give a confidence rating of the system's confidence in the accuracy of such a predicted answer. In this way, the system is able to rapidly establish which questions might be most relevant to a particular user and to prioritise these questions to be asked to each user first.
A determination of the confidence score weighting to be assigned is established according to one embodiment , which is now described.
Assume a particular user has answered questions Ql...Qn with answers Al ...An respectively. Let QIAI be the number of people answering Qi with answer Ai and Qiτ be the total number of people answering question Ql.
Then - is the probability of answering Qi with answer Ai.
Figure imgf000027_0001
Now assume Qi ....Qm when m < n is the set of questions which user U has answered identically to our given user. Then the probability of this is:
Figure imgf000027_0002
Let's call this Pu. According to one embodiment this Pu value may be calculated and stored in the user-to-user relatedness tables. It is another measure of the relatedness of the users.
Now consider a question Qx, which the particular user has not answered and the system would like to predict the confidence of answer Ax.
First consider the set of all users who have answered Ax and have answered at least one other answer in common with our user. Let's call this Uset. Our confidence parameter becomes
Equation (1)
Figure imgf000027_0003
Where N is the total number of users.
Such confidence parameters can lead to a confidence score, optionally taking into account other criteria in addition to the above confidence parameter.
At step 1410 of the flowchart in Fig. 14 the question is asked to the user in the order that is determined by the value of the confidence score, i.e. the lower confidence score the earlier the question is asked. Step 1412 indicates the stage when the user actually provides their answer to a question. Step 1414 indicates a feedback loop that is able to provide self-testing if desired in a particular embodiment. Specifically, the actual answer given by the user can be fed back to the content engine 204 and compared to the predicted answer. The difference can be used in a plurality of different ways, one of which is to update the predictive information deduced by the content engine so as to render it more accurate. A further embodiment is able to use neural network techniques to self-tune the prediction algorithms.
Step 1416 represents a channel gauge incrementing in response to receiving the answer to the question from the user. The magnitude of increase is determined by the order of the question (or the confidence score value assigned to each question). The weighting of the increase is in proportion with the position in the order. That is, Q7 ordered in position "1" is worth most to the specific channel, since the content engine 204 is most unsure of its accuracy, and is thus rewarded accordingly.
At step 1418, the master gauge can also be incremented appropriately. It should be appreciated that the degree of increase in the magnitude of the master gauge is flexible and may or may not be as significant as that in relation to the channel gauge, since there are potentially a plurality of different channels each with their own set of questions and confidence score values.
According to a further embodiment, the order of the questions is also a function of a commercial value modifier (CVM) value, which is an algorithm that is applied to the confidence score so as to change the order appropriately. The advantage of the CVM is that it enables the system to ask questions that are perceived to be valuable because of specific commercial opportunities that are deemed potentially more profitable, for example a particular research project. The Campaign Management Tool (CMT) is a web, or information system based, control interface that allows a campaign manager to create model target groups utilising any defining factor available to the content engine. Once a model target group of users is identified, the campaign manager can enter CVM's to adjust the order of questions that are asked of the members of the model target group. Therefore, by using the CVM it is possible to re-order the questions which gives a preferential weighting to a targeted group of users. For example, if "predicted answer 1" has a confidence score of "25" and "predictive answer 2" has a confidence score of "80" then the question corresponding to "predictive answer 1" will be ordered before the question corresponding the "predictive answer 2". However, a manually inputted CVM could alter the confidence score assigned to "predictive answer 2" to lower it. For example, "80" multiplied by a CVM of 0.25 results in an modified confidence score value of "20", making it an answer of lesser value than "predicted answer 1", which has a confidence score of "25". Thus, the CVM readjusts the order of the questions to be asked based on those deemed most important to the system in light of the CVM adjustment and are the first to be asked.
The CMT is also able to use the management tool to spot and plot trends between users manually. Moreover, the CMT is also the interface that enables the updating of specific incentives for the gauge with reference to particular projects. For example, a particular type of mobile phone may be upgraded depending on whether a group of users achieves a certain threshold target value.
It is useful to discuss what is meant by a peer-group. Users often declare themselves members of peer groups, for example by joining online groups or forums. Alternatively, or in ' addition, users may be deemed to belong to a peer group based on user behaviour, for example the system can identify relatedness of users based on browsing behaviour. Alternatively, or in addition, the content engine 204 is able to deduce over time for individual users certain content that various users might be interested in and thereby draw predictions about relatedness of users. This is a type of deduced peer group. For example from the behaviour tables (of Figure 3 and Figure 5), a particular user UIDl might be interested in a plurality of pieces of content DID2, DID3, DID7. The content engine is able to parse the information in this table and notice that another user UID2 is also interested in similar content and has accessed DID2 and DID7. If these shared pieces of content DID2 and DID7 are related to for example a particular category CID5 (or a new category can be generated for these peer group users), then a peer group can be formed consisting of the users UIDl and UID2. Thus, in addition to the information that UIDl might retrieve normally, the content engine 204 is further allowed to retrieve information that users in that user's peer group are interested in.
It is thus possible for a peer group relationship to be "deduced" as was the case for the other predicted relationships 506, 508 and 510 referred to in Figure 5. Such peer groups would be deduced by performing a statistical analysis that aims to establish the degree of relatedness that might exist between particular users, or the content they access, in order to establish whether a user should be joined to a particular peer group.
As mentioned earlier, embodiments of the content engine are able to deduce the predicted relatedness for entries in each of the primary tables 300, 302 and 304. While Figure 4 showed an embodiment wherein the score that determined the relatedness was declared by a user for a relational table, each of the primary tables has a further column populated by predicted relatedness scores. That is, the content engine is able to score how related each of the primary items are to other items based on how they are used by various peer groups of users. These scores are referred to hereinbefore as "relatedness scores".
For the content table 302, the extra scoring column (not shown) represented how each piece of content is related to each other piece of content based on usage (i.e. people who were interested in content A were also interested in content B). By grouping content in this manner it is also possible to generate categories of related content.
For the category table 304, the extra scoring column (not shown) represents how each category is related to other categories based on usage. For example, the socio-demographic category Y has a close affinity for Ηorror' movies.
For the users table 300, the extra scoring column (not shown) represents how each user is related to other users in terms of their interests, which allows the grouping of users into predicted peer groups of users having similar interests, i.e. deduced user peer groups.
A statistical engine 205 is provided with software able to generate the aforementioned deduced information (i.e. predicted tables). The functional aspects of exemplary software are described herein but it will be appreciated such software may take a number of different forms. However, the properties of an exemplary statistical engine 205 are most easily described with reference to the Venn diagram of Figure 15. For each of the predicted tables, the statistical engine is required to determine the extent of the relationship between items in tables.
For example, to calculate the relatedness of two pieces of content (represented by DIDl and DID2), it is necessary to consider the intersection (or overlap 1578 as shown in
Figure 15) between the set of users 1572 interested in content DIDl and the set of users 1574 interested in content DID2. Since we know the overall size of the users population 1576 (for example those registered with the ASP), the statistical engine is able to use this as a reference to determine the statistical likelihood of the intersection (overlap 1578) occurring by chance. The difference between the intersection in practice and the expected intersection based on overall the population of users indicates the extent which these pieces of content are linked by a theme of common interest (i.e. the extent of relationship between two pieces of content, referred to herein as "relatedness").
This type of statistical determination may be used to determine predicted contents of any of the predicted tables 506, 508, 510 and the like. According to another embodiment, it has been appreciated that the computing power needed to perform such statistical manipulations in working scenarios is prohibitive, or at least very inefficient.
A further advantageous embodiment is now described for performing this type of processing. In particular, according to a preferred embodiment the statistical processing is achieved by a combination of index and inverted-index processing techniques. In practice, inverted indexes are generated and stored locally each time a statistical analysis is performed. The content engine maintains these indexes and updates them each time a new analysis generates relevant entries for inclusion therein.
Figure 16 shows a basic relational database "select statement" approach which could be used to calculate the intersection 1578 between the two sets of users describe in Figure 15.
That is, the upper block of Figure 16 represents the first set of users 1572 that were interested in the first piece of content DIDl. The relevant users are identified by their UIDs such that the users UIDl, UID2 and UID5 are all interested in content DIDl.
The lower block of Figure 16 represents the second set of users 1574 that were interested in the second piece of content DID2. The relevant users are identified by the UIDs such that the users UID2, UID5, UID7 and UID9 were all interested in content DID2. Thus, using an inverted (de-normalised) index for the same relationship, this assumes content DIDl is of interest to users UID1,UID2, UID5 and that content DID2 is of interest to users UID2, UID5, UID7, UID9. Using this inverted index, the statistical engine is able to rapidly parse each set of inverted indices to establish that the intersection between these two sets is UID2 and UID5. That is, the users UID2 and UID5 access both DIDl and DID2.
It is possible to process such inverted index lists in parallel using for example an optimised merge-sort algorithm. Thus, the inverted index (i.e. UID) lists offer advantages in their own right in terms of reduced processing time, and this is potentially even further enhanced by being able to parse such-lists in parallel (i.e. simultaneously);—
Figure 17 shows an example of the application of the inverted index technique described in Figure 15 for determining the relatedness of all content to a given piece of content i.e. the relatedness of the entry of content DIDl to all other entries in the content table 302.
In order to perform this determination, the statistical engine 205 extracts all the inverted indexes (UIDs) for all the users that have shown an interest in content DIDl . Thus, the inverted content index list 1700 comprising UIDl, UID5, UID7, UID9 is generated. Then, each of the UID indexes can be processed in parallel to rapidly calculate the intersection (overlap) between all of these sets.
Additionally this approach is highly efficient since the compact nature of (inverted) index lists means all data required for relatedness determinations may be loaded and held in a local memory of the statistical engine to be processed simultaneously. When indexing the entire database, or a large part of it, the control process can be configured to work on items already in local memory first, minimising delays due to slower memory access-based operations.
The statistical engine used to calculate relatedness operates, as already mentioned, based on statistical techniques that take into consideration the size of overlapping sets. Considering the example shown in Figure 17, it can be seen for example that for DID5, the relatedness is based on the intersection of the two overlapping user index lists UID5 and UID7. Moreover, the affect of each of these index lists should be inversely proportional to the size of each of these index lists. UID5 is a list comprising 2 entries, whereas UID7 is a list comprising 5 entries and therefore the former has an affect of 1/2, whereas the latter only has an affect of 1/5. This must then also be adjusted to take account of the maximum value possible for this document, which is naturally the same as the relatedness value for a document with itself- DIDl in this case.
In a further embodiment, an optional factor may be added regarding the 'popularity' of the item delta 2 in the example to help ensure popular content precedes less popular content.
Where scoring is available for the relationship tables this is additionally used to refine the output from the relatedness algorithm. In this case each user score is weighted by a factor of I(UIDl->DIDl) *(l - modulus( I(UID5->DIDl) - I(UIDl->DIDl)/max I).
Numeric Explanation:
I(UID1->DID1) = Score for User
(l-modulus(I(UID5->DIDl)-I(UIDl->DIDl)/max I) = difference between user 1 and user 5 scores on a scale of 0 to 1; where l=very similar and 0=not very similar
Example:
Suppose UID 1 Scores DID 1 at 9 (on scale of 0- 10) and UID5 scores DID 1 at 8
Our subsequent relationship score would be: 9*(l-mod(8-9)/10)
=9*(l-l/10) = 9*9/10 = 8.1
Where I(user->doc) is the score of the given document with respect to a given user.
It should be appreciated that the primary tables can be built up with declared information. For example, a profile table 310 can be built up by the ASP 106, for example in response to the user answering a series of questions posed by the ASP. According to an embodiment the questions are grouped into batches of questions by the ASP 106 wherein the answers supplied by the user to a previous batch of questions are processed by a content engine 204, and based on the answers, the subsequent batch of questions prepared by the content engine are able to take into account the answers supplied to the previous batch of questions. In this way, the content engine 204 of the ASP 106 is able to ask progressively more relevant questions to the user and hence has the advantage of increasing the accuracy of the declared profile 310 of a user.
In a further embodiment, a gauge of a first user reflects contribution from the gauges of other users. In this case the first user has directly introduced one or more of the other users
5 and, as a consequence, the profile information of the first user records this fact and establishes links to the profiles of the introduced uses such that usage of the system by the introduced users benefits the level of the gauge belonging to the first user according to predetermined rules. For example, in one embodiment a predetermined portion of the gauge
— — — - level'accrued byarrintroduced useris reflectedin the-levehof the-first userrPreferablyrthe—
10 system is configured such that a portion the gauge level of all directly introduced users contributes to the gauge level of the first user. In one embodiment, the contribution from introduced users extends to indirectly introduced users. In this context an indirectly introduced user is any user in a chain of introduction leading back to a user who is directly introduced by the first user. The number of introductions which are recorded in such chains
15 and rules according to which gauge levels are shared up the chain of introduction are configurable aspects of the system.
A further embodiment is suitable for use for example with a content aggregator. In this embodiment a browser bar displaying a gauge is effective over a number of different proprietary platforms and also while users surf the Internet. Alternatively, the system may
20 apply the principles when a user surfs the internet. Accordingly, individual user profile information may be built from users who browse on a single proprietary website, and / or on a number of proprietary websites, and /or while browsing on the wider Internet. In the preferred embodiment individual user profile information is built up while users engage a plurality of proprietary platforms including, but not limited to: an educational and careers
25 portal, a content aggregation portal, a movies portal, and a music portal. These portals are accessible from both mobile and desk-based computing terminals.
Those skilled in the art will appreciate that while the foregoing has described what is considered to be the best mode and, where appropriate, other modes of performing the invention or inventions described herein, the inventions should not be limited to the specific 30 apparatus configurations and methods disclosed in this description. Embodiments within the scope of the novel and inventive concept can be implemented in any available way. Embodiments may comprise individually advantageous features and/or any combinations of the plurality of advantageous features described. Those skilled in the art will recognise that such inventions have a broad range of applications in many different types of computing and relevance determination applications.

Claims

CLAIMS:
1. A gauge for display on a website, the gauge displaying a moveable level representing a measure of an input received from a user of the website, wherein the level of the gauge is effected by at least one of: a first means for tracking a frequency of usage of the user of the website and updating the moveable level accordingly; and a second means for generating a series of questions to a user and updating the level of the gauge depending on a level of progress of the questions answered by the user.
2. The gauge of claim 1, wherein both the first and second means effect the level of the gauge.
3. The gauge of claim 1 or 2, wherein at least one of the first and second means are used to build up a profile representing interests and personal attributes of each user.
4. The gauge of any preceding claim, wherein the gauge being controlled by a control engine on a sever, the server also having a data store for storing a predetermined threshold level, the control engine being arranged to offer the user a virtual reward when the moveable level exceeds the predetermined threshold level.
5. The gauge of claim 4, wherein the virtual reward is that the user is able to unlock a previously locked area of the website.
6. The gauge of claim 4, wherein the virtual reward is a virtual currency credited to a virtual account of the user, allowing the user to redeem said virtual currency for at least one of a physical product or a downloadable file from the website.
7. A server for hosting a website arranged to display a gauge, the server comprising: means for receiving an input, to the website from a user; and an engine for controlling a level of the gauge depending on the input received from the user.
8. The server of claim 7, wherein the input is at least one of a series of questions generated by the control engine for completion by the user and a usage of the website by the user in accessing webpages.
9. The server of claim 7 or 8, wherein the input for effecting the level of the gauge is also based on a time period at which the input remains at said level.
10. The server of any of claims 7 to 9, wherein the server further comprising a database for storing a predetermined threshold value wherein the user having an incentive to increase the input so such that the level of the gauge reaches said predetermined threshold value whereupon the user is granted a reward.
11. The server according to claim 10, wherein the reward being at least one of: unlocking a previously locked portion of the website; a loyalty card having an account that is credited with virtual currency for use on the website; and a loyalty card having a pre-pay account that is credited with currency.
12. The server according to claims 11, wherein the level of the gauge being a percentage- based indication.
13. The server of any of preceding claims 7 to 12 wherein the website comprises a plurality of channels for selection by a user, each channel having an independent channel gauge that is effected by the input of the user for each channel.
14. The server of claim 13, wherein the corresponding channel gauges are aggregated to give the level of the gauge of the website.
15. A gauge for a website, the gauge having a movable level being controlled by an engine that is arranged to receive an input to the website from the user, the engine is arranged to affect the movable level of the gauge depending on the received input from the user such that the user is encouraged to increase interaction with the website.
16. A gauge for a website, the gauge having a moveable level representing a quantity of input received from a user of the website, and wherein the gauge having at least one predetermined threshold level such that when the moveable level exceeds the threshold level a previously inaccessible part of the website becomes accessible thereby encouraging the user to increase the quantity of input to exceed said threshold level.
17. A method for encouraging a user to input information to a website, the method comprising: displaying a gauge on the website, the gauge having a movable level indicating a degree of the information input by the user; and generating a profile representing interests of the user based on the information input by the user.
18. A content engine of a website for controlling the moveable level of a gauge representing a degree of knowledge acquired about a user of the website, the content engine comprising: a database for storing a plurality of questions for each user; a generating unit for predicting an answer to each of the questions; a scoring unit for assigning a confidence value representing the engine's confidence in the accuracy of the predicted answers; and a control unit for ordering the questions based on the confidence value such that the questions, having predicted answers with lowest confidence values, are asked to the user first.
19. The content engine of claim 9, wherein the moveable level is incremented by an amount which corresponds to the ordering of the question answered by the user.
20. The content engine of claim 18 or 19, wherein the generating unit is able to predict an answer to each of the questions based on deduced information.
21. The content engine of claim 20, wherein the deduced information is deduced statistically such as to determine the relatedness between information.
22. The content engine of claim 20, wherein the deduced information is deduced from information acquired from at least one other user that is treated as being sufficiently similar to the user.
23. The content engine of claim 22, wherein the at least one other user is treated as being sufficiently similar in having in common at least one interest and/or attribute as the user.
24. The content engine of claim 20, wherein the deduced information is deduced from answers received from other users that are deemed to be similar to the user according to predefined conditions.
25. The content engine of any of claims 18 to 24, wherein the confidence value is based on the number of users whose information contributed to predicting an answer for each question.
26. The content engine of any of claims 18 to 25, wherein the ordering of the questions is affected by a modifier factor that modifies the confidence value.
27. The content engine of claim 26, wherein the modifier factor enables the ordering of questions to be altered based on an external requirement.
28. The content engine of claim 27, wherein the external requirement is to place emphasis on a commercial research project perceived to be profitable.
29. The content engine of claim 27, wherein the modifier factor enables the targeting of focus groups having a plurality of users.
30. A method for acquiring knowledge from a user by asking questions using a website, the method comprising: storing a plurality of questions in a data store of the website; generating a predicted answer to each of the questions; assigning a confidence value to each of the predicted answers representing the confidence in the accuracy of the predicted answers; and ordering the questions based on the confidence value in such a manner that the questions having predicted answers with the lowest confidence values are asked to the user first.
31. A method according to claim 30, further comprising the step of: receiving the answer to each question from the user; and increasing a level of a gauge by an increase in magnitude that is related to the ordering of the question answered.
32. A method of claim 31 , further comprising the steps of: feeding back the answer received from the user; and comparing the received answer with the predicted answer enabling self-testing.
33. A method of claim 31 or 32, wherein the gauge is at least one of a channel and a master gauge.
34. A method of operating a computer system for use in determining the relevance of content to users, the method comprising: providing a user profile indicating interests and/or attributes of a particular user; presenting questions from a set of questions to said particular user, answers to said questions being used to update the user profile; prioritising the order of asking questions of said set of questions based on aspects of the user profile regarded as lacking information.
35. A method as in claim 34, wherein said step of prioritising comprises determining a set of predicted answers for questions unanswered by said particular user.
36. A method as in claim 35, wherein said step of determining comprises parsing information from like users who have answered one or more of the questions unanswered by said particular user and predicting answers to said unanswered questions based on answers provided by the like users.
37. A method as in claim 34 or 35, wherein said step of prioritising comprises determining a confidence score for each said predicted answer and presenting a first unanswered question to said particular user of a second unanswered question based on the first unanswered question having a lower confidence score than the second unanswered question.
38. A method as in any of claims 35-37, wherein a predicted answer to a question unanswered by said particular user is selected from a plurality of candidate answers according to a principle which indicates the candidate answer with the highest confidence score.
39. A method as in any of claims 34-38, wherein the computer system is capable of dynamically updating priority of questions to be put to said particular user as questions are answered by said particular user.
40. A method as in any of claims 34-39, wherein each unanswered question to be put to said particular user is allocated a weight corresponding to the importance of its answer.
41. A method as in claim 40, wherein said weight also corresponds to the amount by which a gauge displayed to a user is increased when the relevant question is answered.
42. A method as in claim 40 or 41, wherein when a first question having a particular weight is answered by a user the system records the answer and adjusts the weight of other questions according to the importance of their answers in light of the answer to the first question.
43. A method as in any of claims 37-42, wherein determination of a confidence score takes into account the number of users whose answers have been considered to arrive at the predicted answer.
44. A method as in any of claims 37-43, wherein determination of a confidence score takes into account usage behaviour of one or more users of the system.
45. A method as in any of claims 37-44, wherein the determination of a confidence score takes into account previous accuracy of predicted answers in respect of the same user.
46. A method as in any of claims 37-45, wherein a process for determining a confidence score relating to a predicted answer for an unanswered question of said particular user comprises identifying which of a plurality of users has answered the particular question.
47. A method as in claims 37-46, wherein a process for determining a confidence score relating to a predicted answer for an unanswered question of said particular user comprises establishing a plurality of users with shared interests and/or attributes.
48. A method as in any of claims 37-47, wherein a process for determining a confidence score relating to a predicted answer for an unanswered question of said particular user comprises identifying each question answered by other users and weighting the confidence score to take into account the degree to which other users share attributes and/or interests with said particular user.
49. A method as in any of claims 37-48, wherein a process for determining a confidence score relating to a predicted answer for an unanswered question of said particular user comprises assigning answers of users with identifiers such that answers can be efficiently parsed.
50. A method as in any of claims 34-49, wherein the step of prioritising the order of asking of questions takes into account an indication of the commercial value of the answer to one or more questions.
51. A method as in any of claims 34-50, wherein the step of prioritising the order of asking of questions takes into account a desire to target a predetermined user group with one or more questions.
52. A computer system for making relevance determinations regarding the relevance of content to a user, the computer system comprising: user profiles recording interests and/or attributes of individual users; a question generator adapted to present questions of a set of questions to a particular user; prioritising means capable of prioritising questions from among the set of questions based on confidence scores of predicted answers to said questions.
53. A computer system for determining the relevance of an item of content to a particular user, comprising: a user profile recording interests and/or attributes of a user; means for tracking a browsing behaviour of a user; and a module for updating said user profile based on results of said tracking.
54. A computer system as in claim 52 or 53, further comprising a relevance determination engine capable of determining relevance of an item of content to a particular user based on said user profile.
55. A method of operating a computer system for determining the relevance of an item of content to a user, the method comprising: generating a user profile recording interests and/or attributes of the user; presenting questions of a set of questions to a user; updating said user profile based on responses to said questions; and determining the relevance of an item of content based on said updated user profile.
56. A method of operating a computer system for determining the relevance of an item of content to a user, the method comprising: generating a user profile recording interests and/or attributes of the user; tracking browser behaviour of a user and updating said user profile based on said tracking; and determining the relevance of an item of content based on said updated user profile.
57. A method according to claim 56, wherein the user profile updated relates to the user tracked.
58. A method according to claim 56 or 57, wherein the user profile updated relates to a user other than the user tracked and the computer system takes into account a relationship between the user to which the profile relates and the user which is tracked.
59. A method of operating a computer system for determining the relevance of content to a user, the method comprising: providing user profiles recording interests and/or attributes of individual users; building information in said user profiles based on inputs from one or more users; displaying a gauge to a user representative of the status of the user profile relating to that user.
60. A method as in claim 59, wherein questions to be put to a user are prioritised based on one or more of (i) answers to previous questions from a user; and (ii) tracking usage behaviour of a user.
61. A method as in any of claims 59 or 60, wherein said user profile is updated and said displayed gauge is updated to reflect one or more of (i) answers to previous questions from a user; and (ii) tracking usage behaviour of a user.
62. A method as in any of claim 60 or 61, wherein said gauge is updated by an amount dependent upon the significance of information added to said user profile.
63. A method as in claim 62, wherein said gauge is updated by an amount dependent upon the priority of a question answered.
64. A method as in any of claims 59-63, wherein there is provided a master gauge representative of overall user inputs to the system and a plurality of channel gauges each representative of user inputs to a particular channel of the system.
65. A method as in claim 64, wherein said master gauge displays a reading based on some assessment of said plurality of channel gauges.
66. A method as in any of claims 59-65, wherein a proportion of a gauge reading is attributable to information declared by a user.
67. A method as in any of claims 59-66, wherein a proportion of a gauge reading is attributable to usage behaviour of a user.
68. A method as in any of claims 59-67, wherein a proportion of a gauge reading is attributable to responses to ad hoc questioning driven by a system administrator.
69. A method as in any of claims 59-68, wherein a reading of a gauge cannot fall below a threshold level for a predetermined period of time after the threshold has been exceeded.
70. A method as in claim 69, wherein there is provided a plurality of threshold levels below which the level of the gauge cannot fall once exceeded.
71. A method as in claim 69 or 70, wherein exceeding a threshold is only recognised by the system when the threshold has been exceeded for a predetermined period of time.
72. A method of operating a computer system, the method comprising: providing a reward scheme based on a user's inputs to a website; displaying at least one gauge comprising a movable level representative of a user's input to the website; rewarding said user for the level of user input to the website only once said gauge displays an input for that user above a predetermined threshold.
73. A method as in claim 72, wherein a user is rewarded by making previously inaccessible areas of said website accessible to said user.
74. A method as in claim 72 or 73, wherein a user is awarded by making one or more predetermined items of content available for download by said user.
75. A method as in any of claims 72-74, wherein said gauge is displayed to a group of users and said group of users is rewarded once said respective gauges display inputs for the user group above a predetermined threshold.
76. A method as in any of claims 72-75, wherein the or each user is rewarded only once said threshold has been exceeded for a predetermined period of time.
77. A method as in any of claims 72-76, wherein a reward comprises currency units.
78. A method as in claim 77, wherein said currency units are redeemable in exchange for privileges or offers on said website or an associated website.
79. A method as in any of claims 72-78, wherein different levels of input reflected on a gauge are associated with differing rewards.
80. A method as in any of claims 72-79, wherein a reading on a gauge is decreased based on one or more of:
(i) lack of usage of the website; (ii) aging user profile information; and
(iii) introduction of one or more new questions to be put to a user.
81. A method as in any of claims 72-80, wherein the maximum achievable reading on a gauge of a particular user is determined by reference to the reading of a gauge of another user.
82. A method as in claim 81, wherein the maximum achievable reading of the gauges of a plurality of users depends on the reading of the corresponding gauge of the user with the highest reading of all a users.
83. A method as in claim 81 or 82, wherein the proportion of achievable reading of a gauge attributable to declared information is dependent upon the reading of the gauge of the user with the current highest reading attributable to declared information.
84. A method as in any of claims 81-83, wherein the proportion of achievable reading of a gauge attributable to information derived from usage is dependent upon the reading of the gauge of the user with the current highest reading attributable to usage.
85. A method as in any of claims 81-84, wherein the proportion of achievable reading of a gauge attributable to information from ad hoc questioning is dependent upon the reading of the gauge of the user with the current highest reading attributable to ad hoc questioning.
86. A method as in any of claims 72-85, wherein the method is a method of controlling access to content of a website.
87. A method as in any of claims 72-86, wherein a user is unable to achieve a 100% reading on a gauge. . - - . - . . _ .
88. A method as in any of claims 72-87, wherein a user is able to achieve a 100% reading on a gauge and said 100% reading is arranged to decline over a period of time.
89. A computer system comprising user profile information and provided with an engine for controlling a level of a movable gauge representative of input from a individual user, wherein said user profile information comprises a plurality of different types of information selected from information declared a user; information derived from monitoring usage behaviour of the user; and information deduced about the user based on statistical analysis, the computer system comprising: a module for generating a series of questions to a user from a list of questions, including a unit for determining responses to said questions; and a module for controlling the level of said movable gauge based on said determining step.
90. A computer system as in claim 89, comprising a monitoring module for tracking and determining interests and/or attributes of a user's usage of one or more websites, and wherein the level of said movable gauge takes into account information derived form said tracking.
91. A computer system as in claim 89 or 90, comprising a statistical analysis module for predicting interests and/or attributes of a user based on one or more of information declared by the user and information about the user derived based on usage behaviour.
92. A computer system as in any of claims 89-91, comprising a control engine configurable to offer a user a reward when the movable level of a gauge exceeds a predetermined threshold level.
93. A computer system as in any of claims 89-92, comprising a confidence scoring module operable to assign a confidence score to an item of information in a user profile.
94. A computer system as in any of claims 89- 93, comprising a confidence scoring module operable to assign a confidence score to a predicted item of information in a user profile.
95. A computer system as in any of claims 93 or 94, comprising an ordering unit for prioritising the order in which questions generated by the question generation module are presented to the user such that a question relating to user profile information having a low confidence score is presented ahead of a question with a higher confidence score.
96 A computer system as in any of claims 93 or 95, comprising an ordering unit which can take into account a commercial value modifier.
97. A computer system as in any of claims 89-96, comprising a plurality of different channels and/or portals, and wherein said engine of the computer system generates and controls a level of a gauge for one or more of said individual channels or portals.
98. A computer system as in any of claims 89-97, comprising a plurality of different channels and/or portals, and wherein said engine of the computer system generates and controls a level of a gauge for a master gauge representing a type of aggregate user input on a plurality of said different channels and/or portals.
99. A computer system substantially as described and/or claimed hereinbefore.
100. A computer system according to any of claims 89 - 99, comprising ones or more of the additional features of claims 1 - 88.
PCT/GB2007/003319 2006-09-01 2007-09-03 Computer system with gauge WO2008026001A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB0617292.8 2006-09-01
GB0617292A GB0617292D0 (en) 2006-09-01 2006-09-01 Gauge

Publications (1)

Publication Number Publication Date
WO2008026001A1 true WO2008026001A1 (en) 2008-03-06

Family

ID=37137224

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB2007/003319 WO2008026001A1 (en) 2006-09-01 2007-09-03 Computer system with gauge

Country Status (2)

Country Link
GB (1) GB0617292D0 (en)
WO (1) WO2008026001A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014201333A1 (en) * 2013-06-14 2014-12-18 Tigerapps Systems, apparatuses and methods for providing a price point to a consumer for products in an electronic shopping cart of the consumer
US10140291B2 (en) 2016-06-30 2018-11-27 International Business Machines Corporation Task-oriented messaging system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010032115A1 (en) * 1999-12-23 2001-10-18 Michael Goldstein System and methods for internet commerce and communication based on customer interaction and preferences
US20020049701A1 (en) * 1999-12-29 2002-04-25 Oumar Nabe Methods and systems for accessing multi-dimensional customer data
US20030229533A1 (en) * 2002-06-06 2003-12-11 Mack Mary E. System and method for creating compiled marketing research data over a computer network
US20050171839A1 (en) * 2004-01-29 2005-08-04 Richard Corriere Communication system for business marketing including a point system to motivate users
US20060089874A1 (en) * 2004-10-22 2006-04-27 Newman Christian D Generating income for a beneficiary organisation and loyalty points using purchases by a consumer

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010032115A1 (en) * 1999-12-23 2001-10-18 Michael Goldstein System and methods for internet commerce and communication based on customer interaction and preferences
US20020049701A1 (en) * 1999-12-29 2002-04-25 Oumar Nabe Methods and systems for accessing multi-dimensional customer data
US20030229533A1 (en) * 2002-06-06 2003-12-11 Mack Mary E. System and method for creating compiled marketing research data over a computer network
US20050171839A1 (en) * 2004-01-29 2005-08-04 Richard Corriere Communication system for business marketing including a point system to motivate users
US20060089874A1 (en) * 2004-10-22 2006-04-27 Newman Christian D Generating income for a beneficiary organisation and loyalty points using purchases by a consumer

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014201333A1 (en) * 2013-06-14 2014-12-18 Tigerapps Systems, apparatuses and methods for providing a price point to a consumer for products in an electronic shopping cart of the consumer
US10140291B2 (en) 2016-06-30 2018-11-27 International Business Machines Corporation Task-oriented messaging system
US11144733B2 (en) 2016-06-30 2021-10-12 International Business Machines Corporation Task-oriented messaging system

Also Published As

Publication number Publication date
GB0617292D0 (en) 2006-10-11

Similar Documents

Publication Publication Date Title
US11403351B2 (en) Personalization techniques using image clouds
Todd et al. Different cognitive processes underlie human mate choices and mate preferences
US8095408B2 (en) System and method for facilitating network connectivity based on user characteristics
US9165060B2 (en) Content creation and management system
CN102890696B (en) Social network based contextual ranking
Wei et al. A survey of recommendation systems in electronic commerce
US8762310B2 (en) Evaluating recommendations
US20100030713A1 (en) Content engine
US20080109245A1 (en) Method and system for managing domain specific and viewer specific reputation on online communities
US20120290399A1 (en) Web Optimization and Campaign Management in a Syndicated Commerce Environment
US20090216639A1 (en) Advertising selection and display based on electronic profile information
US20080109491A1 (en) Method and system for managing reputation profile on online communities
US20140040029A1 (en) Systems and methods for organizing and displaying social media content
WO2015106353A1 (en) Item classification method and selection system for electronic solicitation
US9489352B1 (en) System and method for providing content to users based on interactions by similar other users
CN107862532B (en) User feature extraction method and related device
WO2009002525A1 (en) System and method for providing targeted content
Chiru et al. Movie Recommender system using the user's psychological profile
Kim et al. A preference scoring technique for personalized advertisements on Internet storefronts
WO2008026001A1 (en) Computer system with gauge
JP2006195974A (en) Platform managing display as target of advertisement in computer network
US20240053972A1 (en) Systems and methods for generating enquiries and responses based on application metadata
Gu et al. A smart-device news recommendation technology based on the user click behavior
Popper Bringing It All Together in a Framework of Sponsored Search
Park et al. Using Temporal Information in Collaborative Filtering: An Empirical Study.

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07804125

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07804125

Country of ref document: EP

Kind code of ref document: A1