Some embodiments and methods in accordance with the present invention will now be described by way of example only, and with reference to the accompanying drawings, in which:
With reference to the method illustrated in
In parallel with this procedure, search data is acquired at 4, using the search query from 1 to identify the search and searches similar to it, and also the identity of the requesting user, and thus the identity of a group associated with that user. The membership of the group has been defined by the user, and in this example is a user-defined online co-user list. Then group search information 5 related to that group is accessed via path 6 to retrieve information on similar previous searches carried out by members of the group. The retrieved information 7 includes an indication of the relevance of documents retrieved in previous similar searches to members of the group, determined, for example, by the behavior of members of the group connected with previous search results. The retrieved group search information 7 and initial search results 3 are used to generate final search results at 8. The retrieved group search information 7 is consulted at 8 to determine what weightings should be applied to certain documents or categories of documents based on their importance to members of the group in connection with previous searches. These weightings are applied to the initial search results to re-rank them and generate final search results at 8.
The behavior of the user is monitored as he or she acts on the search results. Information such as the category, or categories, of documents selected by the user to consider, document identity, address, time spent at a certain pages or links followed, is collected at 9 and then forwarded via path 10 to be included in the group search information 5, together with the search query. The information is combined with the other information already held so that it is not identifiable as having come from a particular user. However, in other methods in accordance with the invention, the information is arranged in a way that it is possible if desired to determine with which member of the group the information is associated.
In an alternative method, the search query terms used at 4 are acquired from the search application 2, indicated by a broken line in
With reference to
When the user enters the search query at interface 11, he or she also causes an instruction to be sent to a processor 14 to check that user's group membership by accessing a group membership store 15. This store 15 holds data which identifies those user-defined co-user lists that are associated with that user, any online communities that the user has joined and memberships of any other types of group which might be available for the user to choose to join. The identities of those groups to which the user belongs are then transmitted to the processor 14. In this example, the user is determined to belong to an online community group G1, and two user-defined co-user lists, groups G2 and G3, the members of groups G2 and G3 having been previously defined by the user making a positive choice to add certain individuals to the lists. Having acquired data concerning which groups the user has joined, the processor 14 then interrogates a table 16 holding lists of groups and their members to identify a group or group that has a member who belongs to group G2 or G3 and also to another user-defined co-user list to which the user initiating the search query does not belong. This is used to identify groups G4 and G5 that are related to the groups G2 and G3 that the user belongs to but to which the user does not him- or her-self belong. The number of related groups retrieved may be limited by processor 14 so as to ensure that a maximum number of groups and related groups are under consideration, to avoid overload.
The identities of groups G1, G2 and G3, and related groups G4 and G5, are transmitted to a database access controller 17, which also receives search query data from the search application 12. The controller 17 accesses group search information databases 18, 19, 20, 21 and 22, each of which is associated with a respective one of groups G1 to G5, using the search query data to retrieve group search information relevant to the particular query that the user has made. The group search information is information concerning previous searches made by members of that group, including the relative usefulness of previous search results to those members. The group search information is applied on line 23 to group weighting unit 24, which adjusts the group search information such that that originating from members of user-defined co-user lists G2 and G3 is weighted to have more influence than that from members of online community group G1, and that of related groups G4 and G5 is given the least significance.
The group-weighted output is then applied to ranking unit 25 which uses the indication of relative importance to members of the groups represented by the output to adjust weightings of the initial search results to re-rank them into an order which reflects that relative importance. The final search results so obtained are then presented to the user who made the query at display 26. The behavior of the user as he or she considers the results is monitored at 27 and applied to analyzer 28 to rate the search results in terms of usefulness to that user as evinced by the user's behavior. The results of the analysis and the search query that led to the search results are then transmitted on line 29 to the group search information databases 18, 19 and 20 that are associated with the groups G1, G2 and G3 to which the user belongs. This data is used to update the databases 18, 19 and 20 so that it is available for later searches involving any of these groups.
In an alternative arrangement, as indicated by broken line 30, an option is given to the user to access the initial search results stored in store 13 in addition to the enhanced results obtained by using weightings derived from the group search information. The user's behavior in assessing the two sets of results is monitored at 27 and data representative of that behavior is transmitted to the analyzer 28 to provide additional input information for analysis.
With reference to
The present invention may be embodied in other specific forms, or performed using other steps, without departing from its spirit or essential characteristics. The described embodiments and methods are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes that come within the meaning and range of equivalency of the claims are to be embraced within their scope.