Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
DETERMINATION OF CONTEXT-AWARE USER PREFERENCES
Document Type and Number:
WIPO Patent Application WO/2013/182736
Kind Code:
A1
Abstract:
Embodiments of the present invention provide a method, an apparatus and a computer program product for determining context-aware user preferences. The method comprises recording a context in which one or more items of a mobile device are used. The method further comprises determining one or more sub-context spaces based on a distribution of the context. In addition, the method further comprises forming a corresponding preference pattern for each sub-context space so as to display, when detecting that the mobile device is in one sub-context space, a respective item in accordance with the preference pattern corresponding to the one sub-context space. According to some embodiments of the present invention, in the user preferences related to a context, items frequently used by a user in the context are ranked so that the user can acquire the frequently used items easily and quickly.

Inventors:
CAO HUANHUAN (CN)
TIAN JILEI (CN)
Application Number:
PCT/FI2013/050458
Publication Date:
December 12, 2013
Filing Date:
April 24, 2013
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
NOKIA CORP (FI)
International Classes:
H04W4/02; G06F17/30; H04L67/00; H04M1/2745; H04M1/72454; H04W4/50; H04W24/02
Domestic Patent References:
WO2009007965A22009-01-15
WO2009156563A12009-12-30
WO2010103163A12010-09-16
Foreign References:
US20090105987A12009-04-23
US20110231407A12011-09-22
Other References:
BALADRON, CARLOS ET AL.: "Framework for intelligent service adaptation to user's context in next generation networks.", COMMUNICATIONS MAGAZINE. IEEE., vol. 50, no. 3, March 2012 (2012-03-01), pages 18 - 25
Attorney, Agent or Firm:
NOKIA CORPORATION et al. (Jussi JaatinenKeilalahdentie 4, Espoo, FI)
Download PDF:
Claims:
WHAT IS CLAIMED IS:

1. A method, comprising:

recording a context in which one or more items of a mobile device are used;

determining one or more sub-context spaces based on a distribution of the context; and forming a corresponding preference pattern for each sub-context space so as to display, when detecting that the mobile device is in one sub-context space, a respective item in accordance with the preference pattern corresponding to the one sub-context space.

2. The method according to claim 1, wherein determining the one or more sub-context spaces based on the distribution of the context comprises:

identifying one or more context clusters in the distribution of the context; and

partitioning at least one of the context clusters into one sub-context space.

3. The method according to claim 1, wherein determining the one or more sub-context spaces based on the distribution of the context further comprises:

merging sub-context spaces having similar context distributions for different items.

4. The method according to claim 3, wherein merging the sub-context spaces having similar context distributions for different items further comprises:

comparing context distributions for two items to determine a similarity metric between the context distributions; and

merging sub-context spaces for the two items when the similarity metric is greater than a first threshold.

5. The method according to claim 1, wherein forming the corresponding preference pattern for each sub-context space further comprises:

partitioning overlapped contexts in a plurality of preference patterns into one of the plurality of preference patterns.

6. The method according to claim 5, wherein a greedy algorithm is used to partition the overlapped contexts into one of the plurality of preference patterns.

7. The method according to claim 6, further comprising:

checking changes in ranking among items in the plurality of preference patterns when absorbing the overlapped contexts; and

partitioning the overlapped contexts into a preference pattern in which the change in ranking among the items is small.

8. The method according to claim 1, wherein the sub-context spaces and corresponding preference patterns are stored in the mobile device or in a remote server in the form of a context tree.

9. The method according to claim 8, further comprising:

dynamically or periodically updating the context tree.

10. The method according to claim 1, wherein forming the corresponding preference pattern for each sub-context space comprises:

for each sub-context space, based on at least one property of respective historical use conditions of at least a portion of items in the one or more items, ranking the at least a portion of items to form the corresponding preference pattern.

11. The method according to claim 10, wherein the at least one property comprises at least one of a historical use number, a historical use frequency, a historical use location, historical use time and historical use duration.

12. The method according to any of claims 1-11, wherein the items comprise contact persons in a phonebook or the used applications of the mobile device.

13. The method according to any of claims 1-11, wherein recording the context in which one or more items of the mobile device are used comprises:

recording activities of a user of the mobile device at different time and in different locations.

14. A method, comprising:

detecting one or more items being used in a mobile device and a corresponding context; determining that the context is in a predetermined sub-context space; and

displaying a respective item in accordance with a preference pattern corresponding to the predetermined sub-context space.

15. The method according to claim 14, wherein the predetermined sub-context space and the corresponding preference pattern are stored in the mobile device or in a remote server in the form of a context tree.

16. The method according to claim 15, wherein displaying the respective item in accordance with the preference pattern corresponding to the predetermined sub-context space comprises:

mapping the context to a sub-context space in the context tree; and

determining a preference pattern related to the context by using the preference pattern corresponding to the sub-context space so as to display the respective item.

17. The method according to claim 15, further comprising:

dynamically or periodically updating the context tree based on a situation that the one or more items are used.

18. The method according to any of claims 14-17, wherein the items comprise contact persons in a phonebook or the used applications of the mobile device.

19. The method according to any of claims 14-17, wherein detecting the one or more items being used in the mobile device and the corresponding context comprises:

detecting the one or more items being used by a user of the mobile device and corresponding time and locations.

20. An apparatus, comprising:

at least one processor and at least one memory containing computer program code;

the processor and the memory configured to, with the processor, cause the apparatus to at least perform:

recording a context in which one or more items of a mobile device are used;

determining one or more sub-context spaces based on a distribution of the context; and forming a corresponding preference pattern for each sub-context space so as to display, when detecting that the mobile device is in one sub-context space, a respective item in accordance with the preference pattern corresponding to the one sub-context space.

21. The apparatus according to claim 20, wherein the processor and the memory are configured to, with the processor, cause the apparatus to at least perform:

identifying one or more context clusters in the distribution of the context; and

partitioning at least one of the context clusters into one sub-context space.

22. The apparatus according to claim 20, wherein the processor and the memory are configured to, with the processor, cause the apparatus to at least perform merging sub-context spaces having similar context distributions for different items.

23. The apparatus according to claim 22, wherein the processor and the memory are configured to, with the processor, cause the apparatus to at least perform:

comparing context distributions for two items to determine a similarity metric between the context distributions; and

merging sub-context spaces for the two items when the similarity metric is greater than a first threshold.

24. The apparatus according to claim 20, wherein the processor and the memory are configured to, with the processor, cause the apparatus to at least perform partitioning overlapped contexts in a plurality of preference patterns into one of the plurality of preference patterns.

25. The apparatus according to claim 24, wherein a greedy algorithm is used to partition the overlapped contexts into one of the plurality of preference patterns.

26. The apparatus according to claim 25, wherein the processor and the memory are configured to, with the processor, cause the apparatus to at least perform: checking changes in ranking among items in the plurality of preference patterns when absorbing the overlapped contexts; and

partitioning the overlapped contexts into a preference pattern in which the change in ranking among the items is small.

27. The apparatus according to claim 20, wherein the sub-context spaces and corresponding preference patterns are stored in the mobile device or in a remote server in the form of a context tree. 28. The apparatus according to claim 27, wherein the context tree is updated dynamically or periodically.

29. The apparatus according to claim 20, wherein the processor and the memory are configured to, with the processor, cause the apparatus to at least perform:

for each sub-context space, based on at least one property of respective historical use conditions of at least a portion of items in the one or more items, ranking the at least a portion of items to form the corresponding preference pattern.

30. The apparatus according to claim 29, wherein the at least one property comprises at least one of a historical use number, a historical use frequency, a historical use location, historical use time and historical use duration.

31. The apparatus according to any of claims 20-29, wherein the items comprise contact persons in a phonebook or the used applications of the mobile device.

32. The apparatus according to any of claims 20-29, wherein the context comprises activities of a user of the mobile device at different time and in different locations.

33. An apparatus, comprising:

at least one processor and at least one memory containing computer program code;

the processor and the memory configured to, with the processor, cause the apparatus to at least perform:

detecting one or more items being used in a mobile device and a corresponding context; determining that the context is in a predetermined sub-context space; and

displaying a respective item in accordance with a preference pattern corresponding to the predetermined sub-context space.

34. The apparatus according to claim 33, wherein the predetermined sub-context space and the corresponding preference pattern are stored in the mobile device or in a remote server in the form of a context tree.

35. The apparatus according to claim 34, wherein the processor and the memory are configured to, with the processor, cause the apparatus to at least perform: mapping the context to a sub-context space in the context tree; and

determining a preference pattern related to the context by using the preference pattern corresponding to the sub-context space so as to display the respective item. 36. The apparatus according to claim 34, wherein the context tree is updated dynamically or periodically based on a situation that the one or more items are used.

37. The apparatus according to any of claims 33-36, wherein the items comprise contact persons in a phonebook or the used applications of the mobile device.

38. The apparatus according to any of claims 33-36, wherein the context comprises activities of a user of the mobile device at different time and in different locations.

39. An apparatus, comprising:

recording means configured to record a context in which one or more items of a mobile device are used;

first determining means configured to determine one or more sub-context spaces based on a distribution of the context; and

forming means configured to form a corresponding preference pattern for each sub-context space so as to display, when detecting that the mobile device is in one sub-context space, a respective item in accordance with the preference pattern corresponding to the one sub-context space.

40. An apparatus, comprising:

detecting means configured to detect one or more items being used in a mobile device and a corresponding context;

second determining means configured to determine that the context is in a predetermined sub-context space; and

displaying means configured to display a respective item in accordance with a preference pattern corresponding to the predetermined sub-context space.

41. A computer program product, comprising at least one computer-readable storage medium having a computer-readable program code portion stored therein, the computer-readable program code portion performing the method according to any of claims 1-13.

42. A computer program product, comprising at least one computer-readable storage medium having a computer-readable program code portion stored therein, the computer-readable program code portion performing the method according to any of claims 14-19.

Description:
DETERMINATION OF CONTEXT- AWARE USER PREFERENCES

FIELD OF THE INVENTION Embodiments of the present invention relate to determining preferences of a user of a mobile device. More particularly, embodiments of the present invention relate to a method, an apparatus and a computer program product for determining context-aware user preferences in a mobile device. BACKGROUND OF THE INVENTION

For users of mobile devices, it is very important to quickly find the contact persons they want to contact from their phonebooks in which a lot of contact persons are recorded. The existing phonebooks already support a search function. By means of the search function, users can find their interested contact persons via various types of inputs in the mobile devices; however it is not very convenient to enter the inputs for searching contact persons in the mobile devices. Ideally, the mobile devices can enable the contact persons whom the users desire to contact directly appear in distinguishing positions in a contact person list, and thereby the users do not need to conduct searching. Some existing smart phonebooks can list the most frequently contacted persons in top positions of the phonebooks, which is more convenient than the ordering in a simple alphabetical order.

It has been noted that a user of a mobile device usually needs to contact different persons in different contexts. Taking the position and time context as an example, some users may contact their friends when they stay at home at weekends while contact their customers and colleagues when they stay in their offices and in work hours. To this end, being capable of automatically ranking the contact persons whom a user is most likely to contact in a particular context is very convenient for the selection of contact persons. Further, such a context-aware phonebook may have personalized customization, since different users may have different patterns for contacting other persons.

In the prior art, some methods have been disclosed for ranking the contact persons whom the users of mobile devices frequently contact. For example, the US patent application US20080161059 discloses a method for optimizing the ordering of numbers for specific contact persons based on communication types (e.g. call, SMS and MMS), a method for optimizing the ordering of numbers for specific contact persons based on time of a day and/or a date (and based on communication types), and a method for determining dynamic options or soft keys for numbers of the contact persons based on the most typical communications of that numbers. However, the implementations disclosed by this application are mainly based on simple counters depending on communication types and/or time and date, without a comprehensive consideration of the contexts. The US patent application US2011/0231407 mentions a context-aware phonebook, but it only stays at the concept level and lacks specific implementation means. Apparently, in the prior art, there is no such a technical solution as how to provide users with context-aware phonebooks based on different contexts, e.g. different time or locations.

In addition, a user of a mobile device may usually install many applications in his/her mobile device. If a user interface of a system can list the applications to be most likely used in a given context in the most eye-catching positions on a home screen, the user can avoid the cumbersome process for searching a desired application. Such a function is especially desirable for a mobile phone such as Windows™ Phone platform because its applications are organized in a list. Thus, the applications frequently used in a particular context will show in the eye-catching positions on the home screen in the form of a list so that the user may make an intuitive selection.

Apparently, personal preferences of a user in different contexts need to be considered, so that in a given context, the user preferences related to the given context can be automatically provided to the user to thereby enable the user to avoid cumbersome manual selections.

SUMMARY OF THE INVENTION

For the existing problems in the prior art, embodiments of the present invention provide a method, apparatus and computer program product for determining context-aware user preferences.

According to one exemplary embodiment of the present invention, there is provided a method. The method comprises recording a context in which one or more items of a mobile device are used. The method further comprises determining one or more sub-context spaces based on a distribution of the context. In addition, the method further comprises forming a corresponding preference pattern for each sub-context space so as to display, when detecting that the mobile device is in one sub-context space, a respective item in accordance with the preference pattern corresponding to the one sub-context space.

In one embodiment, determining the one or more sub-context spaces based on the distribution of the context comprises: identifying one or more context clusters in the distribution of the context; and partitioning at least one of the context clusters into one sub-context space. In another embodiment, determining the one or more sub-context spaces based on the distribution of the context further comprises: merging sub-context spaces having similar context distributions for different items.

Further, in this embodiment, merging the sub-context spaces having similar context distributions for different items further comprises: comparing context distributions for two items to determine a similarity metric between the context distributions; and merging the sub-context spaces for the two items when the similarity metric is greater than a first threshold.

In another embodiment, formine the corresrjondine rjreference rattern for each sub-context space further comprises: partitioning overlapped contexts in a plurality of preference patterns into one of the plurality of preference patterns.

Further, in this embodiment, a greedy algorithm is used to partition the overlapped contexts into one of the plurality of preference patterns.

Furthermore, in this embodiment, changes in ranking among items in the plurality of preference patterns are checked when the overlapped contexts are absorbed; and the overlapped contexts are partitioned into a preference pattern in which the change in ranking among the items is small.

In another embodiment, the sub-context spaces and corresponding preference patterns are stored in the mobile device or in a remote server in the form of a context tree. Further, in this embodiment, the context tree is updated dynamically or periodically.

In another embodiment, forming the corresponding preference pattern for each sub-context space comprises: for each sub-context space, based on at least one property of respective historical use conditions of at least a portion of items in the one or more items, ranking the at least a portion of items to form the corresponding preference pattern.

Further, in this embodiment, the at least one property comprises at least one of a historical use number, a historical use frequency, a historical use location, historical use time and historical use duration.

In yet another embodiment, the items comprise contact persons in a phonebook or the used applications of the mobile device.

In yet another embodiment, recording the context in which one or more items of the mobile device are used comprises: recording activities of a user of the mobile device at different time and in different locations.

According to another exemplary embodiment of the present invention, there is provided a method. The method comprises detecting one or more items being used in a mobile device and a corresponding context. The method further comprises determining that the context is in a predetermined sub-context space. In addition, the method further comprises displaying a respective item in accordance with a preference pattern corresponding to the predetermined sub-context space. In one embodiment, the predetermined sub-context space and the corresponding preference pattern are stored in the mobile device or in a remote server in the form of a context tree.

Further, in this embodiment, displaying the respective item in accordance with the preference rattern corresrjondine to the Dredetermined sub-context srace comrjrises: marjrjine the context to a sub-context space in the context tree; and determining a preference pattern related to the context by using the preference pattern corresponding to the sub-context space so as to display the respective item. Furthermore, in this embodiment, the context tree is updated dynamically or periodically based on a situation that the one or more items are used.

In another embodiment, the items comprise contact persons in a phonebook or the used applications of the mobile device.

In yet another embodiment, detecting the one or more items being used in the mobile device and the corresponding context comprises: detecting the one or more items being used in the mobile device and corresponding time and locations. According to yet another exemplary embodiment of the present invention, there is provided an apparatus. The apparatus comprises at least one processor and at least one memory containing computer program code. The processor and the memory are configured to, with the processor, cause the apparatus to at least perform: recording a context in which one or more items of a mobile device are used; and determining one or more sub-context spaces based on a distribution of the context. The processor and the memory are further configured to, with the processor, cause the apparatus to at least perform forming a corresponding preference pattern for each sub-context space so as to display, when detecting that the mobile device is in one sub-context space, a respective item in accordance with the preference pattern corresponding to the one sub-context space.

According to yet another exemplary embodiment of the present invention, there is provided an apparatus. The apparatus comprises at least one processor and at least one memory containing computer program code. The processor and the memory are configured to, with the processor, cause the apparatus to at least perform: detecting one or more items being used in a mobile device and a corresponding context; and determining that the context is in a predetermined sub-context space. The processor and the memory are further configured to, with the processor, cause the apparatus to at least perform displaying a respective item in accordance with a preference pattern corresponding to the predetermined sub-context space. According to yet another exemplary embodiment of the present invention, there is provided an apparatus. The apparatus comprises recording means configured to record a context in which one or more items of a mobile device are used; and first determining means configured to determine one or more sub-context spaces based on a distribution of the context. The apparatus further comprises forming means configured to form a corresponding preference pattern for each sub-context space so as to display, when detecting that the mobile device is in one sub-context space, a respective item in accordance with the preference pattern corresponding to the one sub-context space.

According to vet another exemrjlarv embodiment of the rjresent invention, there is rjrovided an apparatus. The apparatus comprises detecting means configured to detect one or more items being used in a mobile device and a corresponding context; and second determining means configured to determine that the context is in a predetermined sub-context space. The apparatus further comprises displaying means configured to display a respective item in accordance with a preference pattern corresponding to the predetermined sub-context space.

According to yet another exemplary embodiment of the present invention, there is provided a computer program product, comprising at least one computer-readable storage medium having a computer-readable program code portion stored therein, the computer-readable program code portion being configured to perform the method for determining context-aware user preferences according to one embodiment of the present invention.

According to yet another exemplary embodiment of the present invention, there is provided a computer program product, comprising at least one computer-readable storage medium having a computer-readable program code portion stored therein, the computer-readable program code portion being configured to perform the method for using context-aware user preferences according to another embodiment of the present invention.

According to some embodiments of the present invention, a context tree is constructed by detecting preference patterns related to contexts and user preferences related to a given context are determined based on the context tree. In the user preferences related to a context, items frequently used by a user in this context are ranked so that the user can acquire the frequently used items easily and quickly. BRIEF DESCRIPTION OF THE DRAWINGS

Other features, objectives and advantages of respective embodiments of the present invention will become more obvious by making references to the following detailed description of non-limiting embodiments of the present invention in conjunction with the accompanying drawings, in which:

FIG. 1 schematically illustrates a flowchart of a method 100 for determining context-aware user preferences according to one embodiment of the present invention;

FIG. 2 schematically illustrates an example of context distribution for one contact in a two-dimensional context space according to one embodiment of the present invention;

FIG. 3 schematically illustrates a flowchart of a method 300 for determining context-aware user preferences according to another embodiment of the present invention;

FIG. 4 schematically illustrates a flowchart of a method 400 for using context-aware user preferences according to one embodiment of the present invention;

FIG. 5 schematically illustrates an example of preference patterns for different items having a similar context distribution according to one embodiment of the present invention;

FIG. 6 schematically illustrates an example of a context tree according to one embodiment of the present invention;

FIG. 7 schematically illustrates a block diaeram of an arjrjaratus 700 for determining context-aware user preferences according to one embodiment of the present invention;

FIG. 8 schematically illustrates a block diagram of an apparatus 800 for using context-aware user preferences according to one embodiment of the present invention;

FIG. 9 schematically illustrates a block diagram of an apparatus 900 for determining context-aware user preferences according to another embodiment of the present invention; and FIG. 10 schematically illustrates a block diagram of an apparatus 1000 for using context-aware user preferences according to another embodiment of the present invention.

DETAILED DESCRIPTION OF EMBODIMENTS

Embodiments of the present invention are now described and illustrated in detail with reference to the accompanying drawings. It should be understood that the accompanying drawings and embodiments of the present invention only serve as examples, rather than limitations on the protection scope of the present invention.

In the following described method, apparatus and computer program product for determining context-aware user preferences according to embodiments of the present invention, the user preferences are determined by modeling the context-aware user preferences to thereby display items frequently used by a user in this context.

In one embodiment of the present invention, the mobile device may comprise various types of mobile terminals, such as a mobile phone, a personal digital assistant (PDA), a tablet computer and a portable computer. In another embodiment of the present invention, items may be contents displayed or recommended to a user via a mobile device. For example, the items may be contact persons in a phonebook of the mobile device or various specific applications used by the user of the mobile device. These applications, for example, comprise call, short-message service (SMS), multimedia messaging service (MMS) or browser applications (e.g. IE). In addition, the items may further comprise corresponding links in the favorites of the browser.

In yet another embodiment according to the present invention, in different contexts, a user may look for various interested items through a mobile device. A context may be comprised of multiple factors. In one embodiment, the context comprises activities of the user of the mobile device at different time and in different locations. For example, in this context, the user may need to look for relevant contact persons (i.e. items) in a phonebook. In another embodiment, the context comprises the time, the location, the taken vehicle or the specific working state at the position of the user. In yet another embodiment, the context comprises the duration of each call of the user. In yet another embodiment, the context comprises social activities of the user, e.g. attending various meetings. In addition, the context may further comprise the geographic position (obtained, for example, by Beidou satellite navigation, Galileo navigation or GPS measurement) where the mobile device is currently located, or historical sate information about the mobile device being connected to a network and record information on the access history. It needs to be pointed out that the items and contexts in embodiments of the present invention are not limited to the above contents, and various types of data in which a user may use a mobile device to query or look for interested applications or which may be collected for recommending items to the user can be regarded as the contexts in the embodiments of the present invention.

According to one embodiment of the present invention, a context space is constructed by the above contexts, and the context space may comprise one or more sub-context spaces. The sub-context spaces may be two-dimensional and may also be multi-dimensional. In the sub-context spaces, a user may perform operations on items for many times. For example, in a two-dimensional context space constructed by time and geographic areas, when a user relatively frequently contacts relevant contact persons during a particular time period and in a corresponding geographic area, the two-dimensional space constructed by this time period and the corresponding geographic area forms a sub-context space. It needs to be explained that in embodiments of the present invention, when modeling user preferences, it is challenging to determine the granularity of context for modeling context-aware preferences. Specifically, if the granularity is too big, the model cannot exactly capture and fully utilize the context information. If the context model is too complex, it is not convenient to implement it in a mobile device.

For example, when only two types of context information are considered, namely, time and position, one way to set the granularity of context can be <Day period, District>. In this case, a context-aware phonebook based on this model will only give a ranking list for a same contact person if the user stays in "Queen District" (i.e. "District") for the whole morning (i.e. "Day period"). Obviously, the granularity of context for such a context model is too big since the contact persons whom the user frequently contacts from AM9:00 to AM10:30 may be different from those from AM10:30 to PM12:00.

However, selecting a small granularity of context may not necessarily achieve a better accuracy. For example, for the above example, if the granularity of time is set to Minute and the granularity of position is set to Location, the context model will be very complex since it will contain 3600 * N context patterns to deal with, where N indicates a number of locations where the user used to visit and the number is usually bigger than several thousands. If the above model considers more context information, such as battery level, the activated profile (general, silent, pager, etc), inactive time, weather, user's activities recognized by 3D accelerometers, etc, the situation to deal with will become much more worse since it is hard for a mobile device with limited storage capacity and computing power to store tens of millions of context-aware preferences.

On the other hand, a too small granularity of context may further bring a data sparseness problem. For example, <Minute, Position> is set to the granularity of context, then it is likely that for each context there are rare data and thus the preference model cannot be built in each context, because too rare data are not meaningful for statistical modeling. Surjrjosine that a given context is <PM12:05-12:06, (latitude=l 15.2347, longitude=38.4517)>, since the time interval is too short, it is very likely to find that there are only two calls of a user occurring in such a context in the past month. Apparently, such a context cannot provide enough sample data and a useful contact person list cannot be built based on such a context.

Therefore, an appropriate granularity of context needs to be selected to model user preferences to thereby accurately reflect the preferences of a user in a particular context.

FIG. 1 schematically illustrates a flowchart of a method 100 for determining context-aware user preferences according to one embodiment of the present invention. It should be understood that steps of the method 100 as illustrated in FIG. 1 are only used for illustration purpose and the method may comprise additional and/or alternative steps.

The method 100 starts at step S101 and then proceeds to step SI 02. In step SI 02, there is recorded a context in which one or more items of a mobile device are used.

Although it is not specifically illustrated in step SI 02, in one embodiment of the present invention, the method 100 may record items frequently used by a user and corresponding context distributions based on the historical device log of the mobile device. In another embodiment of the present invention, the method 100 may record contact persons whom the user frequently contacts and the corresponding context distributions based on groups of the contact persons in a phonebook. In another embodiment of the present invention, the method 100 may record applications frequently used by the user and corresponding context distributions based on the popularity of the applications, e.g. the number of web pages searched by a search engine.

Next, in step SI 03, one or more sub-context spaces are determined based on a distribution of the context. Table 1 schematically illustrates context information of a device log:

Table 1

The context distribution of contact persons can be obtained from the context information of the device log as illustrated in Table 1. In one embodiment, the calls made between a user and his/her contact nersons at different time and in different locations are recorded to obtain the distribution of calls of the user in a two-dimensional space constructed by time and locations, thereby obtaining the context distribution of the calls made between the user and his/her contact persons. Furthermore, one or more sub-context spaces may be determined based on the context distribution.

It needs to be pointed out that only the items frequently used by a user are statically meaningful for determining context-aware preference patterns. For those items not frequently used, they may not be considered in determining the preference patterns. For example, in some embodiments of the present invention, only the items used or accessed more than predetermined times during a period, e.g. 4 times in a month are considered. For these frequently used items, one or more sub-context spaces may be determined based on the distribution of the context in which these items are used.

Returning to FIG. 1, in step SI 04, a corresponding preference pattern is formed for each sub-context space so as to display, when detecting that the mobile device is in one sub-context space, a respective item in accordance with the preference pattern corresponding to the one sub-context space.

Finally, the method 100 ends at step SI 05.

According to some embodiments of the present invention, in the context-aware user preferences, items frequently used by a user in that context are ranked so that the user can acquire the frequently used items conveniently and quickly. For example, using the context-aware preference patterns to rank the contact persons in a phonebook or the applications frequently used by the user of a mobile device, and displaying in eye-catching positions on the mobile device the contact persons to be most likely contacted or N applications to be most likely used can improve the retrieval efficiency for preferred contact persons or applications.

FIG. 2 schematically illustrates an example of the context distribution for one contact person in a two-dimensional context space according to one embodiment of the present invention. In the example as illustrated by FIG. 2, the context is two-dimensional, i.e. taking time (vertical) and location (horizontal) as dimensions, wherein each black dot represents a call record of a user with a contact person at a certain time point indicated by certain vertical time and in a certain position indicated by the horizontal location; the distribution of these block dots reflects the context distribution for that contact person, and the context distribution constructs two context clusters.

In such an example, in the location dimension, different positions may be mapped into integer IDs (such as position 1 or position 2 as shown in FIG. 6) for simplifying the show of the example.

It needs to be pointed out that in a context-aware preference pattern according to one embodiment of the present invention, the context cluster indicates a group of contexts in which the user has an obvious rjreference. which should be considered when determining the context-aware preference patterns for the user.

In one embodiment of the present invention, corresponding sub-context spaces are determined by using the call records frequently used and the corresponding context distributions to thereby form context-aware preference patterns. For example, in the example as illustrated by FIG. 2, the illustrated context distribution has two clusters of contexts A and B, which respectively indicate that calls with the contact person generally concentrate in a specific time period and in a specific geographic area as indicated by A and B. That is, two sub-context spaces may be determined based on context clusters A and B, and the two sub-context spaces reflect a preference pattern for calls made between the user and the contact person.

However, if the call records with the contact person are evenly distributed in a two-dimensional space, it means that the calls with the contact person happen anywhere at any time, rather than at specific time and in a specific location, and thus no sub-context space can be formed. Such a case may not be considered in modeling context distributions.

FIG. 3 schematically illustrates a flowchart of a method 300 for determining context-aware user preferences according to another embodiment of the present invention. It should be understood that steps of the method 300 as illustrated in FIG. 3 are only used for illustration purpose and the method 300 may comprise additional and/or alternative steps.

The method 300 starts at step S301 and then proceeds to step S302. In step S302, there is recorded a context in which one or more items of a mobile device are used. Here, the implementation of step S302 is the same as that of step SI 02 in method 100 as described with reference to FIG. 1, and thus the detailed description of step SI 02 are also applicable to step S302.

Then, in step S303, one or more sub-context spaces are determined based on a distribution of the context.

In one embodiment of the present invention, by identifying one or more context clusters in the distribution of the context in which a certain item is used, and partitioning at least one of the context clusters into one sub-context space, a sub-context space corresponding to the item can be determined.

Further, in another embodiment of the present invention, the specific implementation to determine whether the context distribution of a certain item form some context clusters is to perform a density based clustering algorithm (e.g., DBSCAN) on them. DBSCAN is a typical density based clustering algorithm, and it defines the cluster as a maximum collection of density connected points, can partition an area with an enough high density into clusters, and can find clustering of arbitrary shapes in a space database. Clusters generated according to the clustering algorithm can reach a certain density requirement.

In the clustering results generated usine the densitv based clustering akorithm. onlv the context clusters which contain β different contexts more than a predetermined second threshold are regarded as being meaningful and will be used as context-aware preference patterns.

Then, the method 300 proceeds to steps S304. In step S304, the method 300 merges sub-context spaces having similar context distributions for different items.

In one embodiment of the present invention, sub-context spaces having similar context distributions for different items are merged to make the context space more compact, thereby reducing the complexity of the preference patterns. After the merging, each context-aware preference pattern will correspond to one sub-context space.

Further, in this embodiment, in order to merge the preference patterns, some similarity metric criterions may be firstly defined, and then context distributions for two items are compared to obtain the similarity metric between the context distributions. When the similarity metric is greater than a predetermined first threshold, the sub-context spaces for the two items are merged into one sub-context space.

Then, in step S305, the method 300 forms a corresponding preference pattern for each sub-context space so as to display, when detecting that the mobile device is in one sub-context space, a respective item in accordance with the preference pattern corresponding to the one sub-context space.

In one embodiment of the present invention, for each sub-context space, based on at least one property of respective historical use conditions of at least a portion of items in the one or more items, the at least a portion of items are ranked to form corresponding preference patterns.

Further, in this embodiment, the at least one property comprises at least one of a historical use number, a historical use frequency, a historical use location, historical use time and historical use duration.

Then, in step S306, the method 300 partitions overlapped contexts in a plurality of preference patterns into one of the plurality of preference patterns.

In one embodiment of the present invention, some contexts appear in more than one sub-context space so that these contexts belong to a plurality of preference patterns and are regarded as overlapped contexts. For example, in a two-dimensional space constructed by time and locations, in sub-context space 1, the time period is 5:00 pm to 7:00 pm and the geographic area is "office." In sub-context space 2, the time period is 7:00 pm to 9:00 pm and the geographic area is "home." When a user discusses with his/her colleagues about certain work via a mobile device at home, this call will be partitioned into the sub-context space 2. In fact, based on the call content and the contact person, this call being partitioned to the sub-context space 1 can more accurately reflect the preference of the user. In this case, a greedy algorithm can be used to partition the overlapped context into an appropriate preference pattern. Specifically, for each overlapped context, it is checked which context cluster's preference pattern will be impacted least when absorbing the context, and then assigning the overlapped context to that context cluster. The greedy algorithm is repeatedly used until all overlapped contexts are assigned to corresponding context clusters.

For example, when a certain context belongs to two sub-context spaces, it is firstly removed from the two sub-context spaces, and the two sub-context spaces with the context being removed respectively form two different preference patterns C and D. Subsequently, the context is respectively added to the two sub-context spaces, and the two sub-context spaces containing the context respectively form two different preference patterns C and D'. Finally, a change between the ranking of items in the sub-context spaces C and C, and the change between the ranking of items in the sub-context spaces D and D' are compared. If the change between the ranking of items in the sub-context space C and the ranking of items in the sub-context space C is smaller than the change between the ranking of items in the sub-context space D and the ranking of items in the sub-context space D', it is regarded that such adding has less impact on the preference pattern C and the context can be partitioned into the less impacted preference pattern C.

Alternatively or optionally, an average value of the position changes of each item in the sub-context spaces C and C may be calculated and the average value of the position changes of each item in the sub-context spaces D and D' may be calculated. If the average value of the position changes in the sub-context space C is smaller than the average value of the position changes in the sub-context space D', it can be regarded that such adding has less impact on the preference pattern C.

Finally, the method 300 ends at step S307.

In one embodiment of the present invention, the sub-context spaces and corresponding preference patterns are stored in the mobile device or in a remote server in the form of a context tree.

In another embodiment of the present invention, the context tree is updated dynamically or periodically. In yet another embodiment of the present invention, the modeling process for a context-aware preference model is executed periodically to achieve incremental training for the context distribution to thereby update a context-aware preference pattern.

FIG. 4 schematically illustrates a flowchart of a method 400 for using context-aware user preferences according to one embodiment of the present invention. It should be understood that steps of the method 400 as illustrated in FIG. 4 are only used for illustration purpose and the method 400 may comprise additional and/or alternative steps.

The method 400 starts at sterj S401 and then rjroceeds to sterj S402. In sterj S402. items beine used in a mobile device and a corresponding context are detected. As described above, one or more sub-context spaces are determined based on a distribution of the context so that each context is associated with one or more sub-context spaces. Then, in step S403, it is determined that the context is in a predetermined sub-context space. Specifically, since each context is associated with one or more sub-context spaces, whether the context is in a predetermined sub-context space can be determined by comparing a sub-context space associated with the context to the predetermined sub-context space. When the context is in the predetermined sub-context space, the method 400 proceeds to step S404.

In step S404, a respective item is displayed in accordance with a preference pattern corresponding to the predetermined sub-context space. As described above, there exist one or more corresponding preference patterns for each sub-context space. Items corresponding to a given context are comprised in these preference patterns, e.g. contact persons in a call at specific time and in a specific location.

In one embodiment of the present invention, the method 400 maps a given context to a sub-context space in the context tree, and uses the preference pattern (e.g., contact person preference, application usage preference) corresponding to the sub-context space to determine a preference pattern associated with the context to display the respective item.

In another embodiment of the present invention, the predetermined sub-context space and the corresponding preference pattern are stored in the mobile device or in a remote server in the form of a context tree.

In yet another embodiment of the present invention, the context tree is updated dynamically or periodically based on a situation that the one or more items are used.

Finally, the method 400 ends at steps S405.

In some embodiments of the present invention, the method 400 indexes the sub-context spaces through a context tree so that a user can quickly find a sub-context space matching a given particular context to thereby display a respective item.

FIG. 5 schematically illustrates an example of preference patterns for different items having similar context distributions according to one embodiment of the present invention. The top 5A in FIG. 5 illustrates a sub-context space for one contact person, and the bottom 5B illustrates a sub-context space for another contact person. As illustrated in FIG. 5, since the two contact persons have similar attributes for a user (for example, both belong to relatives, friends or colleagues of the user), both of them have similar sub-context spaces, and the two sub-context spaces can be merged based on the step S304 as illustrated in the method 300. FIG. 6 schematically illustrates an example of a context tree according to one embodiment of the present invention. As illustrated in FIG. 6, Context 1 {(Monday), (6:00 am - 6:01 am), (Location 1)}, Context 2{(Tuesday), (6:00 am - 6:01 am), (Location 2)} and Context 3 {(Tuesday), (6:02 am - 6:03 am), (Location 1)} can be mapped to a same sub-context space, while the sub-context space is associated with one preference pattern. Each element in the table as illustrated at the bottom of FIG. 6 indicates a preference pattern for one sub-context space.

In the example as illustrated in FIG. 6, the context tree is a context space with a three-dimensional structure, the three dimensions comprising week, time and location. In another example of the present invention, the context tree may further comprise more dimensions, e.g. vehicle, call duration, working state or social activity dimensions.

It needs to be explained that when a certain context cannot be found in the context tree, it indicates that the context does not belong to any sub-context space and may not have an obvious impact on the preferences of a user. In this case, for this context, a preference pattern irrelevant to the context can be used, e.g., a pattern totally based on the usage frequency or an ordering pattern in a traditional alphabetical order. FIG. 7 schematically illustrates a block diagram of an apparatus 700 for determining context-aware user preferences according to one embodiment of the present invention. As illustrated in FIG.7, the apparatus 700 comprises recording means 701 configured to record a context in which one or more items of a mobile device are used; first determining means 702 configured to determine one or more sub-context spaces based on a distribution of the context; and forming means 703 configured to form a corresponding preference pattern for each sub-context space so as to display, when detecting that the mobile device is in one sub-context space, a respective item in accordance with the preference pattern corresponding to the one sub-context space. In one embodiment of the present invention, the first determining means 702 is further configured to identify one or more context clusters in the distribution of the context, and to partition at least one of the context clusters into one sub-context space.

In another embodiment of the present invention, the first determining means 702 is further configured to merge the sub-context spaces having similar context distributions for different items.

Further, in this embodiment, the first determining means 702 is further configured to compare context distributions for two items to determine a similarity metric between the context distributions, and to merge the sub-context spaces for the two items when the similarity metric is greater than a first threshold.

In yet another embodiment of the present invention, the forming means 703 is further configured to rartition overlarjrjed contexts in a rjluralitv of rjreference ratterns into one of the plurality of preference patterns.

Further, in this embodiment, a greedy algorithm is used to partition the overlapped contexts into one of the plurality of preference patterns.

Furthermore, in this embodiment, the forming means 703 is further configured to check changes in ranking among items in the plurality of preference patterns when absorbing the overlapped contexts, and to partition the overlapped contexts into a preference pattern in which the change in ranking among the items is small.

In yet another embodiment of the present invention, the sub-context spaces and corresponding preference patterns are stored in the mobile device or in a remote server in the form of a context tree. In yet another embodiment of the present invention, the context tree is updated dynamically or periodically.

In yet another embodiment of the present invention, the forming means 703 is configured to, for each sub-context space, based on at least one property of respective historical use conditions of at least a portion of items in the one or more items, rank the at least a portion of items to form the corresponding preference pattern.

Further, in this embodiment, the at least one property comprises at least one of a historical use number, a historical use frequency, a historical use location, historical use time and historical use duration.

FIG. 8 schematically illustrates a block diagram of an apparatus 800 for using context-aware user preferences according to one embodiment of the present invention. As illustrated in FIG. 8, the apparatus 800 comprises detecting means 801 configured to detect one or more items being used in a mobile device and a corresponding context; second determining means 802 configured to determine that the context is in a predetermined sub-context space; and displaying means 803 configured to display a respective item in accordance with a preference pattern corresponding to the predetermined sub-context space. In one embodiment of the present invention, the predetermined sub-context space and the corresponding preference pattern are stored in the mobile device or in a remote server in the form of a context tree.

Further, in this embodiment, the displaying means 803 is configured to map the context to a sub-context space in the context tree, and to determine a preference pattern related to the context by using a preference pattern corresponding to the sub-context space so as to display a respective item.

In another embodiment of the rjresent invention, the context tree is undated dvnamicallv or periodically based on a situation that the one or more items are used.

FIG. 9 schematically illustrates a block diagram of an apparatus 900 for determining context-aware user preferences according to another embodiment of the present invention. As illustrated in FIG. 9, the apparatus 900 comprises a data processor (DP) 901 and memory (MEM) 903 coupled to the data processor 901. The memory 903 stores a program (PROG) 902.

Embodiments of the present invention can be implemented by software executed by the data processor 901, or implemented by hardware, or implemented by the combination of software and hardware.

The memory 903 can be of any appropriate type adapted to the local technical environment, and can be implemented by using any appropriate data storing technology, including but not limited to a semiconductor based storage device, a magnetic storage device and system, and an optical storage device and system. Although FIG. 9 only illustrates one memory unit, the apparatus 900 may comprise a plurality of physically different memory units. DP 901 can be of any appropriate type adapted to the local technical environment, and can include but not limited to one or more of a general-purpose computer, a special-purpose computer, a micro-processor, a digital signal processor (DSP) and a processor based multi-core processor architecture. The apparatus 900 may comprise a plurality of processors.

As illustrated in FIG. 9, the data processor 901 and the memory 903 are configured to, with the data processor 901, cause the apparatus 900 to at least perform: recording a context in which one or more items of a mobile device are used; determining one or more sub-context spaces based on a distribution of the context; and forming a corresponding preference pattern for each sub-context space so as to display, when detecting that the mobile device is in one sub-context space, a respective item in accordance with the preference pattern corresponding to the one sub-context space. In one embodiment of the present invention, the data processor 901 and the memory 903 are configured to, with the data processor 901, cause the apparatus 900 to at least perform: identifying one or more context clusters in the distribution of the context; and partitioning at least one of the context clusters into one sub-context space. In another embodiment of the present invention, the data processor 901 and the memory 903 are configured to, with the data processor 901, cause the apparatus 900 to at least perform merging the sub-context spaces having similar context distributions for different items.

Further, in this embodiment, the data processor 901 and the memory 903 are configured to, with the data processor 901, cause the apparatus 900 to at least perform: comparing context distributions for two items to determine a similarity metric between the context distributions; and merging the sub-context spaces for the two items when the similarity metric is greater than a first threshold. In yet another embodiment of the present invention, the data processor 901 and the memory 903 are configured to, with the data processor 901, cause the apparatus 900 to at least perform partitioning overlapped contexts in a plurality of preference patterns into one of the plurality of preference patterns.

Further, in this embodiment, a greedy algorithm is used to partition the overlapped contexts into one of the plurality of preference patterns.

Furthermore, in this embodiment, the data processor 901 and the memory 903 are configured to, with the data processor 901, cause the apparatus 900 to at least perform: checking changes in ranking among items in the plurality of preference patterns when absorbing the overlapped contexts; and partitioning the overlapped contexts into a preference pattern in which the change in ranking among the items is small. In yet another embodiment of the present invention, the sub-context spaces and corresponding preference patterns are stored in the mobile device or in a remote server in the form of a context tree.

In yet another embodiment of the present invention, the context tree is updated dynamically or periodically.

In yet another embodiment of the present invention, the data processor 901 and the memory 903 are configured to, with the data processor 901, cause the apparatus 900 to at least perform: for each sub-context space, based on at least one property of respective historical use conditions of at least a portion of items in the one or more items, ranking the at least a portion of items to form the corresponding preference pattern.

Further, in this embodiment, the at least one property comprises at least one of a historical use number, a historical use frequency, a historical use location, historical use time and historical use duration.

FIG. 10 schematically illustrates a block diagram of an apparatus 1000 for using context-aware user preferences according to another embodiment of the present invention. As illustrated in FIG.10, the apparatus 1000 comprises a data processor (DP) 1001 and memory (MEM) 1003 coupled to the data processor 1001. The memory 1003 stores a program (PROG) 1002.

As illustrated in FIG. 10, the data processor 1001 and the memory 1003 are configured to, with the data processor 1001, cause the apparatus 1000 to at least perform: detecting one or more items being used in a mobile device and a corresponding context; determining that the context is in a predetermined sub-context space. Furthermore, the data processor 1001 and the memory 1003 are configured to, with the data processor 1001, cause the apparatus 1000 to at least perform displaying a respective item in accordance with a preference pattern corresponding to the predetermined sub-context space. In one embodiment of the present invention, the predetermined sub-context space and the corresponding preference pattern are stored in the mobile device or in a remote server in the form of a context tree. Further, in this embodiment, the data processor 1001 and the memory 1003 are configured to, with the data processor 1001, cause the apparatus 1000 to at least perform: mapping the context to a sub-context space in the context tree; and determining a preference pattern related to the context by using a preference pattern corresponding to the sub-context space so as to display a respective item.

In another embodiment of the present invention, the context tree is updated dynamically or periodically based on a situation that the one or more items are used.

Exemplary embodiments of the present invention are described above with reference to the flowcharts and block diagrams as illustrated in the accompanying drawings. It needs to be explained that the embodiments of the present invention may further employ the form of a computer program product accessed by a computer-usable or computer-readable medium, and these media provide program code for use by a computer or any instruction executing system or for use in combination with them. For illustration purpose, computer-usable or computer-readable mechanism may be any tangible means, which may comprise, store, communicate, broadcast or transmit programs for use by an instruction executing system, apparatus or device, or for use in combination with them.

It should be noted that to facilitate understanding of the embodiments of the present invention, some more specific technical details that are well-known to those skilled in the art and may be necessary for implementing embodiments of the present invention are omitted in the above descriptions. The specification of the present invention is provided for illustration and description purposes, rather than exhausting or limiting the present invention to the disclosed form. For those of ordinary skills in the art, many modifications and changes are available.

Thus, selecting and describing the embodiments is to better explain the principle and the actual application of the present invention, and to enable those of ordinary skills in the art to understand that, without departure from the spirit of the present invention, all modifications and variations fall into the protection scope of the present invention limited by the claims.