21st Century Search and Recommendation: Exploiting Personalisation and Social Media

Using the Internet to find information and interesting content is now one of the most common tasks performed on a computer. Up until recently, search algorithms returned only one-size-fits-all rankings, resulting in very poor performance for ambiguous search queries. Recent work has demonstrated that contextual information such as the interests of the searcher can be utilised to provide more accurate results which have been “personalised” and adapted to the user’s current information need and situation. Likewise, information about the user can be brought to bear to mitigate the problem of information overload and filter content so that users are only shown items they are likely to be interested in. In this book chapter we explore new methods for assisting users to find the information they want by reducing the complexity of the search task through personalisation. We explore this problem from the perspective of web search and then by considering a very common form of new socially-generated data microblogs. We first tackle the problem of search result personalisation in the face of extremely sparse and noisy data from a query log. We describe a novel approach which uses query logs to build personalised ranking models in which user profiles are constructed based on the representation of clicked documents over a topic space. Our experiments show that this model can provide personalised ranked lists of documents which improve significantly over a non-personalised baseline. Further examination shows that the performance of the personalised system is particularly good in cases where prior knowledge of the search query is limited. We then turn our attention to the related problem of recommendation (where the user profile is itself the query) and, more specifically, discuss the possibility of learning user interests from social media data (specifically micro blog posts). We present a short introduction to early work focussing on the difficult task of making use of this vast array of ever-changing data. We demonstrate via experiment that our methods are able to predict, with a high level of precision, which posts will be of interest to users and comment on possibilities for future work. 1 Personalised Search and the Vocabulary Problem As discussed in the MUMIA memorandum of understanding, the sheer volume of data which has become available in the last decade as a result of web becoming more social (the so called web 2.0) will require a new generation of search systems to be developed. This huge new resource will only be useful if the raw data can be transformed into high value information which users can easily manage, understand and exploit. One of the ways to help in making sense of all this data is to use context to intelligently narrow down the amount which is presented to individual users, especially when searching. Search, particularly on the web, is undeniably an important topic in computer science with several very large companies such as Google, Microsoft and Yahoo dedicating large sums of money to research and development in this field. Using a search engine to find information is often listed as one of the most common tasks performed on the Internet [41]. Up until recently, focus was placed primarily on matching short textual queries with documents, resulting in generally excellent performance for a large proportion of search tasks. Modern search systems consider a large number of features when attempting to determine relevant documents and then to optimally rank these documents in a list. Notable breakthroughs have been made by considering features other than simply the content of the documents, such as the Google PageRank algorithm [7] which also considers the hyperlinks between web pages. Search engines provide us with the means to rapidly access information and to narrow down the overwhelming number of web pages and resources available on the web in order to find a small number of relevant items. This is usually achieved via the submission of a typically very short textual query which the search engine must interpret in order to retrieve the most appropriate pages to present to the user [33]. However, understanding a user’s information needs given such a small amount of information is far from a trivial task, especially in cases where the user himself only has a very vague idea of what he is looking for. The traditional approach in Information Retrieval (IR) is to simply return the documents which are in some sense most similar to the query terms, with this often being determined by either proximity in a vector space or via probability theory [16]. As search engines have developed, the scope for dramatically improving result quality has narrowed, making it necessary that researchers focus on more niche problems or leverage new sources of data. A large percentage of searches can now be handled optimally by modern search systems, in the sense that the result the user was looking for is returned at the top rank position, by applying standard IR technology. However, for a smaller number of more “difficult” search queries the opportunity still exists to make significant improvements. These queries are often difficult because they are ambiguous and could potentially be referring to more than one concept or information need (related to the “vocabulary problem”, where people use the same terms to describe different needs [23]). In this case the query terms are not sufficient to return useful results and it is not possible to create a ranked list which is optimal for all users. This is where more contextual information, particularly about the user’s interests, can be utilised to augment the scanty information provided by the query. Other basic forms of context can be put to use, such as time and location [35], however a developing source of additional information for search is the plethora of modern social media sites. These sites do not present simply static content, but rather allow users to interact with each other to share information and thoughts and to connect with each other, forming complex social networks [25]. The sheer volume of information submitted to these services gives a far greater insight into human language and behaviour than has previously been possible. This new data represents an additional source of information about users, their interests, their thoughts and feelings. Users often post web sites they have found and want to share with others, information which could be used to learn what is popular on the web right now and which could be fed into search engines and recommendation algorithms to augment their existing data streams. The responses to questions posted to social networks could even be mined to provide intelligent yet instantaneous answers to similar questions posed by search engine users. Difficult queries (i.e. those which would benefit most from additional context) can often be detected by measures such as click entropy which is simply the entropy of the distribution of prior clicks on different URLs, given the query of interest or by looking at the length of the query [48]. Consider an unambiguous query such as “facebook” where almost all users will want to click on the same URL. In cases such as this, a sensible option is to simply rank the documents in descending order of prior click frequency [19]. Conversely, queries with high click entropy are more complicated to deal with and thus the ideal ranking will likely depend on the person who submitted the query and so a ranking personalised to the interest profile of the user is likely to yield better results. Such profiles are often built by considering searches made by the user prior to the current one and, for each of these, the query terms used and the documents clicked. Alternative sources of profile data, such as a user’s social media history, are often easier to gain access to and may be more abundant, potentially leading to a more granular understanding of the user’s interests. There is however at present little work where this new source of data is exploited, however work has shown that the terms used on Twitter to describe a given URL are useful as descriptions of that web page [28]. In early approaches user profiles were constructed using the raw terms of prior queries or the content of the clicked documents, usually in the form of language models, however this often proves to be ineffective, perhaps because such a representation of interests is too fine-grained given the limited amount of data available. An approach for dealing with this sparsity is to instead base the profile on the main topics discussed in each document. In this work we use query logs to build personalised ranking models in which user profiles are constructed based on the representation of clicked documents over a topic space. However, instead of employing a human-generated ontology, we use latent topic models to determine these topics. This means that the topic space is extracted directly from the query log itself and there is no need for human intervention to define the topics. Our experiments show that by subtly introducing user profiles as part of the ranking algorithm, rather than by re-ranking an existing list, we can provide personalised ranked lists of documents which improve significantly over a non-personalised baseline. Further examination shows that the performance of the personalised system is particularly good in cases where prior knowledge of the search query is limited. This is especially useful as these are the cases where we are unable to rely on prior clicks to determine a good ranked list and must instead rely on the ranking model.