Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
USER ATTRIBUTE RANKING
Document Type and Number:
WIPO Patent Application WO/2017/093761
Kind Code:
A1
Abstract:
A method for the selection of a subset of users, from user data comprising user information concerning a plurality of users, for the delivery of a content item, the user data comprising at least one user attribute value associated with a respective user attribute for each of the plurality of users and at least one user attribute value ranking associated with the plurality of users, the method comprising: receiving distribution criteria for the content item, the distribution criteria comprising a plurality of user attribute values associated with respective user attributes and a user distribution limit value; selecting, from the user data, a set of users that are each associated with the plurality of user attribute values of the distribution criteria; calculating an attribute group ranking, for each user of the set of users, based on the user attribute value ranking for each user attribute value of the distribution criteria; and selecting, from the set of users, the subset of users based on the attribute group ranking and the user distribution limit value.

Inventors:
WILKINSON SIMON GEOFFREY CLIFFORD (GB)
Application Number:
PCT/GB2016/053815
Publication Date:
June 08, 2017
Filing Date:
December 02, 2016
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
WEBIGENCE LTD (GB)
International Classes:
G06Q50/00; G06Q10/06; G06Q10/10
Foreign References:
US20140047045A12014-02-13
US20120066252A12012-03-15
US20110252031A12011-10-13
US20110106594A12011-05-05
US20090144272A12009-06-04
Attorney, Agent or Firm:
SLINGSBY PARTNERS LLP (GB)
Download PDF:
Claims:
CLAIMS

1 . A method for the selection of a subset of users, from user data comprising user information concerning a plurality of users, for the delivery of a content item, the user data comprising at least one user attribute value associated with a respective user attribute for each of the plurality of users and at least one user attribute value ranking associated with the plurality of users, the method comprising:

receiving distribution criteria for the content item, the distribution criteria comprising a plurality of user attribute values associated with respective user attributes and a user distribution limit value;

selecting, from the user data, a set of users that are each associated with the plurality of user attribute values of the distribution criteria;

calculating an attribute group ranking, for each user of the set of users, based on the user attribute value ranking for each user attribute value of the distribution criteria; and

selecting, from the set of users, the subset of users based on the attribute group ranking and the user distribution limit value.

2. A method according to any preceding claim, comprising:

delivering the content item to at least one user of the subset of users.

3. A method according to claim 2, wherein delivering the content item comprises sending a reference link to the content item to the at least one user. 4. A method according to claim 2 or 3, wherein delivering the content item comprises sending the content item to a user terminal associated with that user.

5. A method according to any of claims 2 to 4, wherein delivering the content item comprises presenting the content item alongside other content.

6. A method according to any of claims 2 or 5, comprising:

receiving a request for delivery of the content item from at least one user of the subset of users; and in response to the request, delivering the content item to at least one user of the subset of users.

7. A method according to any of claims 2 to 6, comprising:

receiving at least one feedback message from respective users, the feedback message rating the content item.

8. A method according to claim 7, comprising:

updating the user attribute value ranking, based on the at least one feedback message, for each user that sent a feedback message.

9. A method according to any preceding claim, comprising:

receiving at least one user attribute value associated with respective user attributes from a user; and

updating the user attribute value rankings associated with the received user attribute values.

10. A method according to any preceding claim, wherein calculating an attribute group ranking, for each user of the set of users, based on the user attribute value ranking for each user attribute value of the distribution criteria comprises:

combining the user attribute value ranking for each user attribute value of the distribution criteria.

1 1 . A method according to claim 10, wherein combining the user attribute value ranking comprises averaging the user attribute value rankings.

12. A method according to claims 10 or 1 1 , wherein combining the user attribute value ranking comprises applying a respective weighting to at least one of the user attribute value rankings prior to combining the user attribute value ranking.

13. A method according to claim 12, wherein a respective weighting is applied to each of the user attribute value rankings.

14. A method according to any preceding claim, wherein selecting, from the set of users, a subset of users based on the attribute group ranking and the user distribution limit value comprises selecting a number of users equal to the distribution limit value with the highest set of attribute group rankings.

15. A method according to any of claims 1 to 13, wherein selecting, from the set of users, a subset of users based on the attribute group ranking and the user distribution limit value comprises selecting a first number of users less than the distribution limit value with the highest set of attribute group rankings.

16. A method according to claim 15, wherein subsequent to the step of selecting a first number of users less than the distribution limit value with the highest set of attribute group rankings, the method comprises selecting a second number of users equal to the difference between the distribution limit value and the first number of users.

17. A method according to claim 15, wherein subsequent to the step of selecting a first number of users less than the distribution limit value with the highest set of attribute group rankings, the method comprises:

receiving a first number of feedback messages, each feedback message being from a respective user and the feedback message rating the content item; and

selecting a third number of users based on the first number of feedback messages, the first number of users and the distribution limit value. 18. A method according to claim 17, wherein selecting a third number of users comprises selecting a third number of users equal to the difference between the distribution limit value and the first number of feedback messages.

19. A method according to claim 15, wherein the distribution criteria comprises an expiry time and subsequent to the step of selecting a first number of users less than the distribution limit value with the highest set of attribute group rankings, the method comprises:

selecting, until the expiry time, subsequent sets of users based on the number of feedback messages received and the distribution limit value.

20. A method according to any of claims 15 to 19, wherein the method comprises: delivering the content item to at least one user of the subset of users subsequent to each step of selecting a number of users.

21 . A method for generating an overall user ranking for each user of a plurality of users contained in user data comprising user information concerning the plurality of users, the user data comprising at least one user attribute value associated with a respective user attribute for each of the plurality of users, the method comprising: receiving, from a first user, at least one of (i) a user attribute value for a respective user attribute, and (ii) a feedback message for a content item; and

updating the overall user ranking by adjusting the ranking of the first user relative to the other users of the plurality of users based on the at least one of (i) the user attribute value for a respective user attribute, and (ii) the feedback message for a content item.

22. A method according to claim 21 , wherein updating the overall user ranking comprises:

counting, for each user of the plurality of users, the number of user attributes having at least one user attribute value entered by the respective user; and

generating the overall user ranking for each user using the user attribute count for each user.

23. A method according to claim 22, wherein generating the overall user ranking for each user comprises applying a respective weighting to the count of at least one of the user attributes.

24. A method according to claims 22 or 23, comprising counting, for each user of the plurality of users, the number of user attributes available to the respective user for entry of at least one user attribute value, and wherein generating the overall user ranking for each user comprises generating the overall user ranking for each user using the user attribute count for each user and the available user attribute count for each user.

25. A method according to any of claims 22 to 24, comprises generating, for each user, the percentage of user attributes available to the respective user for entry of at least one user attribute value that have at least one user attribute value entered by the respective user; and wherein generating the overall user ranking for each user comprises generating the overall user ranking for each user using the percentage values.

26. A method according to any of claims 19 to 25, wherein updating the overall user ranking comprises:

counting, for each user of the plurality of users, the number of feedback messages received from that respective user; and

generating the overall user ranking for each user using the feedback message count for each user. 27. A method according to claim 26, wherein generating the overall user ranking for each user comprises applying a respective weighting to the count of at least one feedback message.

28. A method substantially as herein described with reference to the accompanying figures.

Description:
USER ATTRIBUTE RANKING

This invention relates to a method for selecting users for content item distribution. There is an increasing desire for items of content to be presented or delivered to a user in an intelligent manner. This is particularly the case as the volume of content that can be delivered to a user is increasing rapidly and so it becomes increasingly difficult and time consuming for a user themselves to select items of content to view from a large database of content. Also, providers of such content may wish to select content items from this large database and provide those items to users who are likely to want to view such content. Such content items may include images, articles, newsletters, and video as well as advertisements and offers for products and services.

It is common for items of content to be offered to users in a simple, undiscerning fashion. For instance, all the visitors to a particular website may be shown a video that details a product that has some relevance to the content of that website. Alternatively, an article may be offered to a user for viewing because that user has recently purchased an product that is the subject of that article. Such methods of selection of content items to display to a user have a low level of personalisation which can lead to low user engagement with those items of content. For instance, a visitor to a particular website may be interested in viewing information on the product that has relevance to the website but may be looking for that information because they have already purchased that product. In addition, a user may have purchased the product (such as a video) as a gift for someone else, or in purchasing that product has exhausted their interest in being offered subsequent products of a similar nature. Therefore, such content items may be items such as a video, an advertisement in the form of a video, slideshow, picture or audio clip, or an piece of audio.

It is therefore desirable for there to be an improved method of selecting target users who are to be offered or delivered particular content items. According to a first aspect of the present invention there is provided a method for the selection of a subset of users, from user data comprising user information concerning a plurality of users, for the delivery of a content item, the user data comprising at least one user attribute value associated with a respective user attribute for each of the plurality of users and at least one user attribute value ranking associated with the plurality of users, the method comprising: receiving distribution criteria for the content item, the distribution criteria comprising a plurality of user attribute values associated with respective user attributes and a user distribution limit value; selecting, from the user data, a set of users that are each associated with the plurality of user attribute values of the distribution criteria; calculating an attribute group ranking, for each user of the set of users, based on the user attribute value ranking for each user attribute value of the distribution criteria; and selecting, from the set of users, the subset of users based on the attribute group ranking and the user distribution limit value. The method may comprise: delivering the content item to at least one user of the subset of users. Delivering the content item may comprise sending a reference link to the content item to the at least one user. Delivering the content item may comprise sending the content item to a user terminal associated with that user. Delivering the content item may comprise presenting the content item alongside other content. The method may comprise: receiving a request for delivery of the content item from at least one user of the subset of users; and in response to the request, delivering the content item to at least one user of the subset of users. The method may comprise: receiving at least one feedback message from respective users, the feedback message rating the content item. The method may comprise: updating the user attribute value ranking, based on the at least one feedback message, for each user that sent a feedback message.

The method may comprise: receiving at least one user attribute value associated with respective user attributes from a user; and updating the user attribute value rankings associated with the received user attribute values.

Calculating an attribute group ranking, for each user of the set of users, based on the user attribute value ranking for each user attribute value of the distribution criteria may comprise: combining the user attribute value ranking for each user attribute value of the distribution criteria. Combining the user attribute value ranking may comprise averaging the user attribute value rankings. Combining the user attribute value ranking may comprise applying a respective weighting to at least one of the user attribute value rankings prior to combining the user attribute value ranking. A respective weighting may be applied to each of the user attribute value rankings.

Selecting, from the set of users, a subset of users based on the attribute group ranking and the user distribution limit value may comprise selecting a number of users equal to the distribution limit value with the highest set of attribute group rankings.

Selecting, from the set of users, a subset of users based on the attribute group ranking and the user distribution limit value may comprise selecting a first number of users less than the distribution limit value with the highest set of attribute group rankings. Subsequent to the step of selecting a first number of users less than the distribution limit value with the highest set of attribute group rankings, the method may comprise selecting a second number of users equal to the difference between the distribution limit value and the first number of users. Subsequent to the step of selecting a first number of users less than the distribution limit value with the highest set of attribute group rankings, the method may comprise: receiving a first number of feedback messages, each feedback message being from a respective user and the feedback message rating the content item; and selecting a third number of users based on the first number of feedback messages, the first number of users and the distribution limit value. Selecting a third number of users may comprise selecting a third number of users equal to the difference between the distribution limit value and the first number of feedback messages.

The distribution criteria may comprise an expiry time and subsequent to the step of selecting a first number of users less than the distribution limit value with the highest set of attribute group rankings, the method may comprise: selecting, until the expiry time, subsequent sets of users based on the number of feedback messages received and the distribution limit value. The method may comprise: delivering the content item to at least one user of the subset of users subsequent to each step of selecting a number of users. According to a second aspect of the present invention there is provided a method for generating an overall user ranking for each user of a plurality of users contained in user data comprising user information concerning the plurality of users, the user data comprising at least one user attribute value associated with a respective user attribute for each of the plurality of users, the method comprising: receiving, from a first user, at least one of (i) a user attribute value for a respective user attribute, and (ii) a feedback message for a content item; and updating the overall user ranking by adjusting the ranking of the first user relative to the other users of the plurality of users based on the at least one of (i) the user attribute value for a respective user attribute, and (ii) the feedback message for a content item.

Updating the overall user ranking may comprise: counting, for each user of the plurality of users, the number of user attributes having at least one user attribute value entered by the respective user; and generating the overall user ranking for each user using the user attribute count for each user. Generating the overall user ranking for each user may comprise applying a respective weighting to the count of at least one of the user attributes.

The method may comprise counting, for each user of the plurality of users, the number of user attributes available to the respective user for entry of at least one user attribute value, and wherein generating the overall user ranking for each user may comprise generating the overall user ranking for each user using the user attribute count for each user and the available user attribute count for each user. The method may comprise generating, for each user, the percentage of user attributes available to the respective user for entry of at least one user attribute value that have at least one user attribute value entered by the respective user; and wherein generating the overall user ranking for each user comprises generating the overall user ranking for each user using the percentage values. Updating the overall user ranking may comprise: counting, for each user of the plurality of users, the number of feedback messages received from that respective user; and generating the overall user ranking for each user using the feedback message count for each user. Generating the overall user ranking for each user may comprise applying a respective weighting to the count of at least one feedback message. The present invention will now be described by way of example with reference to the accompanying drawings. In the drawings:

Figure 1 shows a schematic diagram of a content item delivery system.

Figure 2 shows a schematic illustration of a user attribute ranking.

Figure 3 shows a flow chart illustrating a content delivery process. Figure 4 shows a flow chart illustrating an update process for an overall user rank.

The following description is presented to enable any person skilled in the art to make and use the invention, and is provided in the context of a particular application. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art.

The general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the present invention. Thus, the present invention is not intended to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein.

The present invention relates to a method for selecting a subset of users of a plurality of users for the delivery of a content item. The plurality of users each being associated with at least one user attribute value ranking. The method comprises receiving distribution criteria for the content item, the distribution criteria comprising a plurality of user attribute values associated with respective user attributes and a user distribution limit value. The set of users are then selected from the plurality of users that each have the plurality of user attribute values associated with them. An attribute group ranking is then calculated for each user of the set of users which is based on the user attribute value ranking for each user attribute value of the distribution criteria. The subset of users is then selected based on the attribute group ranking of the users and the user distribution limit value. Figure 1 shows an example system that can be used to permit the selection and display of content items to a user. The system comprises a server 10. It will be appreciated that whilst reference may be made to a single server 10, this server could be part of a cluster of servers or may be a virtual server running in a cloud-based, virtual environment. The server 10 may comprise a processing section 12 and a storage location 14. The server may be capable of implementing methods described herein to process user data regarding user attributes and select content items to display to a user. These methods may be implemented and controlled by the processing section 12. The processing section could perform its methods using dedicated hardware, using a general purpose processor executing software code, or using a combination of the two. A processor 16 executes software code stored in a non-transient way in software memory 18 in order to perform its methods. The processing section can read/write data from/to storage location 14. The storage location 14 may be in the form of a memory. Storage location 14 may comprise non- volatile memory, may be in the form of an array of discrete banks of memory such as hard disks. Whilst shown in Figure 1 as schematically being part of server 10, the storage location 14 may be separate to server 10 and connected to server 10. The above described user data and associated databases may be stored in storage location 14.

The server 10 may be connected to a computer network 20 to permit the transfer of user data and communication with other entities that may wish to interact with the user data. Computer network 20 may be made up of many network segments that are connected together and so may be a large distributed network such as the internet or another public network.

Also connected to computer network 20 may be a user terminal 30. Typically the user terminal 30 will be remote from the server 10. User terminal 30 may be located in a different country and even on a different continent from server 10. User terminal may be a computer, such as a desktop or laptop computer, a portable device, such as a laptop, tablet computer or smartphone, or a smart TV or other device that can connect to remove servers using computer network 20 to access remove content located on servers such as server 10. As shown in Figure 1 , the user terminal 30 may comprise a housing 32. The user terminal may comprise a battery 34, a processing section 36 and a memory 38. The user terminal 30 may also comprise a user interface constituted by a display 40 and a series of user-actuable switches 42. The display and switches could be combined into a touchscreen device. The user terminal 30 may comprise a wireless communication device 44 for communicating with computer network 20. The user terminal 30 may comprise a wired communication device for communicating with computer network 20.

The user terminal 30 may be capable of permitting a user to interact with server 10 to supply information regarding the user and/or be capable of permitting interaction with server 10 to interrogate user data and associated databased stored on server 10. These methods may be implemented and controlled by the processing section 36. The processing section 36 could perform its methods using dedicated hardware, using a general purpose processor executing software code, or using a combination of the two. A processor 46 executes software code stored in a non-transient way in software memory 48 in order to perform its methods. The processing section can read/write data from/to memory 38. The memory 38 may be a storage location for data. Memory 38 may comprise non-volatile memory, may be in the form of an array of discrete banks of memory such as hard disks. Whilst shown in Figure 1 as schematically being part of user terminal 30, the memory 38 may be separate to user terminal 30 and connected to user terminal 30.

In Figure 1 , user terminal 30 is shown schematically displaying a content item 50 within an application window 52, such as an internet browser window or dedicated display application, using display 40. Whilst traditionally internet browsers may have been a separate application running on user terminal 30, it will be appreciated that the term internet browser may encompass a part of another application that displays a webpage within that application. In this case the internet browser itself may be embodied by and/or be part of the other application.

Whilst Figure 1 only illustratively shows one user terminal 30 it will be appreciated that the system shown in figure 1 may comprise a plurality of user terminals 30. Those user terminals 30 may be used to deliver content items to a user. Those user terminals 30 may also be used to supply data to server 10 to select which users and which content items to display to a particular user or group of users.

The system shown in figure 1 also comprises a content item store 56. Content item store 56 may be configured as a server as per server 10 and may comprise a processing section and storage location. The content items stored in content item store 56 may be delivered directly to a user terminal 30 when selected by server 10 rather than being stored or delivered by server 10. Content item store 56 may be operated by a third party relative to the server 10. Alternatively, content item store 56 may be part of server 10 or at least under the same control as server 10.

The methods for ranking users and selecting users to distribute content items to will now be described with reference to the figures. Server 10 may store user data associating a plurality of users each to at least one of a plurality of user attributes. This user data may be used to select a set of users that a content item is to be delivered to. The selection may be based on distribution criteria that may be provided by a content item provider. The distribution criteria make use of user attribute values that the users have entered against at least one user attribute. This is so that the content item can be targeted at users who have indicated that they are interested in content related to that type. User attribute values and the user attributes can also be used as part of a system for ranking the level of participation of the user within the content item distribution system. User attributes and user attribute values are described in more detail below.

Figure 3 shows a flow chart illustrating the content delivery process. As shown in step 301 , the users of the content item delivery system may use a user terminal 30 to access an interface running on the server, for example by means of a website or by means of an API that can be accessed from a discrete application running on the user terminal 30. The users can use the interface to associate and/or input user attribute values regarding themselves to the user data concerning details of the particular user. The user data may be structured so that at least one user attribute value can be associated with a user attribute. A particular user attribute may be capable of only permitting one user attribute value to be stored against it. For example, there may be some user attributes where more than one entry of a user attribute value is permitted where the user attribute is a category of information about the user. This could be attributes such as interests where it is expected that the user would enter more than one value. I.e. A user attribute may be a definition of a category of information about the user. For instance, the user attribute might be a user's favourite colour and the user attribute value might be blue. In addition, there may be some user attributes where only one entry of a user attribute value is permitted to be entered against a user attribute. This could be for attributes concerning facts about the user where it is expected that the user would enter only one value. I.e. A user attribute value may be a description of a specific piece of information about the user.

It will be appreciated that user attributes may describe a wide range of information about the user. Therefore, the list give below of some examples of user attributes may be supplemented by any additional information that is directly associated with the user or alternatively information surrounding that user.

The user attributes and the user attribute values that can be entered against the user attributes may comprise at least some of the following: - Demographic information concerning the user. For example, user attributes regarding demographic information might include: the user's gender, the user's current weight, the user's height, and/or the user's hair colour. Such user attributes are likely to either only accept having one user attribute value that can be entered against them or alternatively only a low number of user attribute values entered against them.

- Location information concerning the user. For example, user attributes regarding location information might include: the user's current residence locality (for instance city or county), the user's birth/home location, the user's full address, the user's current residence country, and/or the user's current location. Such user attributes are likely to either only accept having one user attribute value that can be entered against them or alternatively only a low number of user attributes values entered against them.

- Comestible consumption information concerning the user. For example, user attributes regarding comestible consumption information might include: the user's favourite types of food, the user's favourite types of takeaway food, and/or the amount of fruit and vegetables a user consumes a day/week/month. Such user attributes are likely to accept having more than one user attribute value entered against them.

- Beverage consumption information concerning the user. For example, user attributes regarding beverage consumption information might include: the user's favourite types of drink, the user's favourite types of alcoholic drink, and/or the amount of alcoholic drinks a user consumes in a day/week/month. Such user attributes are likely to accept having more than one user attribute value entered against them.

- Transport information concerning the user. For example, user attributes regarding transport information might include: make of the user's car, model of the user's car, user's usual means of transport to work.

- Entertainment information concerning the user. For example, user attributes regarding entertainment information might include: the user's favourite films, the number of times the user attends the cinema during a week/month/year, the user's favourite films, the user's favourite sports team(s), and/or the user's usual pastimes.

- Holiday/travel information concerning the user. For example, user attributes regarding holiday/travel information might include: the user's last holiday location, the user's next holiday location, and/or list of places the user would like to visit.

As mentioned above, it will be appreciated that the list given above is non-exhaustive and all manner of information concerning the user may be collected and stored along the lines of those user attributes and user attribute values described above.

As discussed briefly above and as shown at step 302, each user within the system may be ranked per user attribute. In this way the plurality of users in the system may be ranked according to each user attribute that they have entered. The system may be configured so that when the user initially enters a user attribute value against a particular user attribute the user starts with the lowest current ranking for that user attribute. The ranking may be on a per user attribute value basis which means that the set of users who have entered a particular user attribute value against a user attribute may be ranked within that set of users rather than ranking all users who have entered any user attribute value against a particular user attribute. Undertaking the ranking on a per user attribute value basis means that if the user is moved through the ranking the change in ranking is immediately reflected within the ranking of a particular user attribute value. If however the ranking was done on a per user attribute basis then a promotion through the user attribute ranking could occur without a similar promotion through the particular user attribute value ranking for the user attribute value that the user has entered. This is because there may be other users higher/lower in the ranking who have entered other user attribute values which would mean that although a user's ranking within that user attribute would have changed the user may still be in the same ranking position relative to the users who have entered that particular user attribute value.

The above situation regarding the preference for user attribute value ranking over user attribute ranking is shown in Figure 2. In figure 2, the users 1 to user 10 are shown in ranked order down the table 100. In the table the users are ordered with user 1 (usrl ) being at the top and user 10 (usrl 0) being at the bottom of the table. A user attribute is shown in column 101 with three user attribute values A, B and C. As can be seen in figure 2, if user 7 (usr7) is promoted three places in the ranking to be above user 4 (usr4) then whilst the user 7's ranking relative to all of the users in the system has been promoted, the position of user 7 relative to the other users (usrl , usr3, usr7, usr8, usr10) with an attribute value of A has not changed. User 7 is still in third position relative to the users who have entered a user attribute value of A for user attribute 101. In the case that users had been ranked according to their entered user attribute value in column 101 then user 7, and assuming a same change of three in the ranking for the user attribute value A for user attribute 101 , then user 7 would have risen to ranking place 1 relative to the other users who had entered user attribute value A.

As discussed above, when a user enters a user attribute value for a particular user attribute the user may be assigned a user attribute value rank lowest relative to the other users who have entered the same user attribute value for that user attribute. Alternatively, there may be a number of users that have been identified as being inactive in the system, or have been flagged as abusing the system for some reason, details of this are given below. In those cases, when a user enters a user attribute value for a particular user attribute the user may be given a user attribute value rank at a starting position which is above these inactive and/or abusing users. In this case the starting position given to the user is higher than the lowest ranking position. Each user attribute value that has been entered in to the system may have a similar ranking system whereby users who have added that particular user attribute value to a user attribute are ranked by the user attribute value that they have entered.

The user may progress up and down through the ranking for each user attribute value ranking. The users position in the user attribute value ranking can depend on:

- Providing feedback on a content item that the user has viewed. The feedback process will be discussed in more detail below. The providing of feedback, by a user, on a content item may cause the user's ranking for any user attribute values that were used to select that user to provide the content item to be incremented so that the user's ranking increases promoting the user up the ranking. By moving the user up the ranking for particular user attribute value the user is more likely to receive content items that are related to that user attribute value.

- The users who provide feedback on content items may be logged for a predetermined period of time and then the user attribute value rankings adjusted based on the relative activity of the users during that period. For instance, a user's ranking may be increased if a user has been the most active, or above average in activity over a predetermined time period and/or a user's ranking may be reduced if a user has been inactive or below average activity over a predetermined time period.

- Not viewing or not providing feedback on a content item that was supplied to the user for viewing. If the user does not view a content item that has been selected to be presented to a user or does not provide feedback on a content item that was selected for viewing by the user based on the user attribute value that the user has entered for that user attribute, then the user's ranking for any user attribute values that were used to select that user to offer that content item may be decreased demoting the user down the ranking. By moving the user down the ranking for particular user attribute value the user is less likely to receive content items that are related to that user attribute value. In addition, they may still receive and/or be offered the content item but only after it has been offered to users with a higher ranking.

- Changing the user attribute value to another user attribute value entered in to the user attribute may cause the user's ranking to be reset back to the starting position as per when the user enters a user attribute value for a user attribute for the first time. If the new user attribute value is similar to the old user attribute value then the ranking for the user attribute value may be carried over to the new user attribute value, alternatively the ranking for the user attribute value may be reduced by a predetermined amount to account for and/or penalise a changes to the user attribute values.

- Detection of abuse of the content delivery system. For instance, the system may detect when a user provides the same or similar feedback for every content item that is viewed, or detect when a user provides a repeating pattern of feedback results for content items that have been viewed.

A set of users can be selected, from the plurality of users that have entered their user attribute values in to the user attribute database, to being provided with a content item. This selection can be based on distribution criteria that may be supplied by a content item owner. The content item owner may select at least one user attribute and provide at least one user attribute value for each selected user attribute which can form part of the distribution criteria for a content item. The content item owner may also select a number of users that the content item is to be delivered to. This number of users may be less than the total number of users that match the specific set of user attribute values that form part of the distribution criteria. The distribution criteria may also set out groups of user attribute values and the user's user attribute values may only need to match one group of user attribute values to be selected to be provided with the content item. In this way the distribution criteria may comprise one or more groups of user attribute values and a user distribution limit value.

As shown at step 303, the distribution criteria for a content item may be received at server 10 from the content item owner. The content item owner may use a user terminal 30 as described above to access a website or API running on server 10 to provide the distribution criteria to the system. Alternatively, if the content item owner and the distribution system are under the same control then the distribution criteria may be provided to server 10 by an entity that is also controlling server 10.

As shown at step 304, once the server 10 has received the distribution criteria for the content item, the server 10 can select the set of users from the plurality of users based on the distribution criteria. The selection can involve selecting the set of users that have user attribute values for respective user attributes that match the user attribute values defined in the distribution criteria. As shown at step 305, the set of users selected above can then be filtered to form a subset of the set of users based on the user distribution limit value. The subset may comprise a number of users equal to the user distribution limit value. Alternatively, the subset may comprise a number of users less that the user distribution limit value. In the second case additional users may be selected from the set of users at a later time for a second offer of delivery of the content item to the selected users. In this way the subset may comprise a number of users less than or equal to the user distribution limit value defined in the distribution criteria.

The selection of the subset of users is based on the users' individual ranking for each user attribute value that is part of the distribution criteria. The users' individual ranking for each user attribute value that is part of the distribution criteria is combined to create an attribute group ranking for each user. Each user can then be ordered according to this attribute group ranking. The attribute group ranking provides one ranking value for each user that takes in to account their activity for the user attribute values that are part of the distribution criteria. Thus this attribute group ranking, combined with the user distribution limit value, allows the system to pick the users that are most likely to interact with the content item based on their activity in the user attribute areas that form part of the distribution criteria. The combination of the users' individual ranking for each user attribute value may be in the form of an average of each of the individual rankings. A weighting factor may be applied to at least one of the users' individual rankings to form the user's attribute group ranking. The weighting factor can be used to adjust the significance of an individual attribute value ranking in the combined attribute group ranking. The weighting for at least one or each user attribute value ranking may comprise:

- A predefined weighting value for a respective user attribute value ranking.

- A popularity factor for the respective user attribute value. The popularity factor may correspond to a low weighting if a user attribute value has been populated by a large number of users: i.e. is a popular attribute value. The popularity factor may correspond to a high weighting if a user attribute value has been populated by a low number of users: i.e. is a rare attribute value. The popularity factor may be calculated based on all users in the system that have entered that user attribute value in to the respective user attribute or may be calculated based on the group of users selected using the distribution criteria discussed above.

- A popularity factor for the respective user attribute. The popularity factor may correspond to a low weighting if a user attribute has been populated by a large number of users: i.e. is a popular attribute. The popularity factor may correspond to a high weighting if a user attribute has been populated by a low number of users: i.e. is a rare attribute. The popularity factor may be calculated based on all users in the system that have entered that user attribute value in to the respective user attribute or may be calculated based on the group of users selected using the distribution criteria discussed above.

The subset of users may then be selected based on the attribute group ranking. The subset of users may comprise a number of users equal to the user distribution limit value and so the users may be selected by picking a number of users with the highest attribute group ranking that is equal to the user distribution limit value. Alternatively, as discussed above an initial number of users may be selected that is less that the user distribution limit value and again this initial number of users may be selected by picking a number of users with the highest attribute group ranking that is equal to the initial number of users. At a later time, as discussed below, more users may be selected and these again may be selected using the attribute group ranking by selecting the next highest ranked group of users.

As shown at step 306, once the subset of users has been selected, the server 10 may be configured to offer the content item for viewing by the user. This offer may be in the form of an offer message that is sent to a user terminal 30 that is associated with that user. The user may then interact with this offer message and request to be shown the content item. The content item may be delivered with the offer message, or alternatively the offer message may include a reference (i.e. in the form of a URL) to a location where the content item can be accessed. As discussed above, the content item may be stored in content item store 56 that may be under the same control as server 10 or alternatively may be under the control of a separate entity.

The content item may be displayed alongside other content and so the server 10 may be configured to send the content item to the user in response to the user requesting that other content. For instance, the content item may be displayed on a web page alongside other content such as an article. In this case steps 306 and 307, may be replaced with a single step in which the user is taken to have requested the content item when the user requests the other content and thus the content item is then subsequently displayed.

As shown at step 307, once the user has requested that they are shown the content item, the user may be prompted for feedback on the content item. Thus, server 10 may receive a feedback message from the user indicating that they have consumed the content item (for example by viewing the content item or listening to the content item). The feedback message may comprise a content item rating. The content item rating gives the user's indication of the relevance and/or enjoyment of the content item to the user. The content item rating may be in the form of a numeric rating. The numeric rating may run from 1 to 4. One extreme of the numeric rating may indicate a low relevance and/or enjoyment and the other extreme of the numeric rating may indicate a high relevance and/or enjoyment.

In the case where the first subset of users that was selected is less than the user distribution limit value, the feedback messages from the user permit a determination about the further selection of users after a predefined period of time. The predefined period of time may be part of the distribution criteria and may be a reselection time period. The reselection time period may define a time period after which a second subset of users are selected based on the attribute group ranking. As discussed above, the second subset of users may be selected by selecting the next highest ranked group of users. The second subset of users may be the remaining number of users required to reach the user distribution limit value above the number of users that have provided feedback. Such reselection may be repeated a number of times until the number of users that have provided feedback is equal to the user distribution limit value. Alternatively, the offering of the content item may terminate when an expiry time, which forms part of the distribution criteria, is reached. The offer message may be withdrawn from those users that received it, and did not provide feedback, before the subsequent subset of users was selected. In one implementation of the selection of further subsets of users, individual users may be offered the content item in turn in dependence on their attribute group ranking. Thus the user with the highest attribute group ranking may be offered the content item first followed by each user with a lower attribute group ranking in turn. In such a case each subset of users may have only one user present in the subset and the reselection of users may occur as many times as is required to offer, and deliver, the content item to the number of users of the user distribution limit value.

As discussed above and as shown at step 308, the feedback messages provided by the users can be used, by server 10, to update the user rankings for the user attribute values that formed part of the distribution criteria.

The system may also be capable of generating an overall user ranking for each individual user relative to the plurality of users in the user attribute database. This overall user ranking may be updated periodically as the users interact with the system, for example by providing feedback on content items and/or by adding or changing user attribute values.

The overall user ranking for each user may be calculated based on the following.

The total number of attributes for which a user has added at least one user attribute value. The higher the number of attributes that have been filled in by the user relative to the other users in the system the higher the overall user ranking that particular user may obtain. Likewise, the lower the number of attributes that have been filled in by the user relative to the other users in the system the lower the overall user ranking that particular user may obtain. The total number of attributes may be a count of the user attributes that a user has added. The total number of attributes that a user has filled in may be calculated as a percentage of the total available user attributes for the user to fill in. This is because certain user attributes may cause other sets of user attributes to become available to a user to fill in. This means certain users may have more user attributes available to them, and thus perhaps filled in, than other users. Thus when the user enters or deletes a user attribute value the user's overall ranking may be updated.

Some user attributes in the above total may be assigned a value other than one in the total of the number of attributes for which a user has added at least one user attribute. In other words, the value of a user attribute in that total can be weighted. In this way, account can be taken of the amount of users that have entered user attribute values against a particular user attribute. With user attributes that have a large number of users that have entered user attribute values contributing less towards the total than user attributes that have a lower number of users.

The number of feedback messages to content items that have been received by the user. The higher the number of feedback messages received by the user relative to the other users in the system may lead to a higher overall user ranking. The lower the number of feedback messaged received by the user relative to the other users in the system may lead to a lower overall user ranking. The calculation of the number of feedback messages received from the user may be weighted by the recentness of the feedback messages. Therefore, the number of feedback messages may be divided in to a set of time periods with a lower weighting being assigned to those time periods that are further from the present.

Figure 4 shows a flow chart of the update process for the overall user rank. Therefore, the server 10 may receive a user attribute value from a user for entry against a particular user attribute as shown at step 401 and/or the server 10 may receive a feedback message from the user for a content item as shown at step 402. In response to this receiving step, the server 10 may update the overall user ranking for the plurality of users as shown at step 403. The update to the overall user ranking may be based on, as described above, the number of attributes for which a user has entered at least one user attribute value and/or the number of feedback messages received by each user.

The overall user ranking can be used to reflect the user's participation in the content item delivery system.

The applicant hereby discloses in isolation each individual feature described herein and any combination of two or more such features, to the extent that such features or combinations are capable of being carried out based on the present specification as a whole in the light of the common general knowledge of a person skilled in the art, irrespective of whether such features or combinations of features solve any problems disclosed herein, and without limitation to the scope of the claims. The applicant indicates that aspects of the present invention may consist of any such individual feature or combination of features. In view of the foregoing description it will be evident to a person skilled in the art that various modifications may be made within the scope of the invention.




 
Previous Patent: REFLECTIVE COATING

Next Patent: A NON-CONTACT SENSOR