Chapter 2 Related Work to the user. Subsequent CF approaches automated this process of locating the nearest neigh- bors of the active user. Important early work was done by Resnick et al. (1994)on their GROUPLENS System for recommending Usenet articles, and by Shardanand and Maes(1995) on their RINGo music recommender system. They were the first to correlate the rating be havior between users in order to(1)determine the most similar neighbors and(2)use them to predict interest in new items. This work was expanded upon by Breese et al. (1998)and Herlocker et al. ( 1999), who performed the first large-scale evaluation and optimization of collaborative filtering algorithms. Herlocker et al.(2004)also published important work on evaluating recommender systems, which we adhere to in our experimental setup described in Chapter 3 CF algorithms exploit set of usage patterns that represent user preferences and transac- tions to match them with those of people who share the same tastes or information need After locating a possible match, the algorithm then generate the recommendations. The preference patterns can be directly elicited from the user. A telling example is the amazon website- where customers are asked to rate an item on a scale from 1 to 5 stars. The pat terns can also be inferred implicitly from user actions, such as purchases, reading time, downloads. After gathering the user opinions, either explicitly or implicitly, they are com- monly represented in a user-item ratings matrix, such as the ones shown in Figure 2. 1. The majority of the cells in these matrix are empty, because it is usually impossible for a user to elect, rate, or purchase all items in the system. CF algorithms operate on such a user-item matrix to predict values for the empty entries in the matrix users igure 2.1: Two examples of user-item matrices for a toy data set of six users and eight items. Values in the matrix can be ratings in the case of explicit user opinions (left),or unary in the case of implicit user activity(right) CF algorithms are commonly divided into two types, memory-based algorithms and model- ased algorithms, analogous to the way machine learning algorithms can be categorized into two classes
Chapter 2. Related Work 11 to the user. Subsequent CF approaches automated this process of locating the nearest neighbors of the active user. Important early work was done by Resnick et al. (1994) on their GROUPLENS system for recommending Usenet articles, and by Shardanand and Maes (1995) on their RINGO music recommender system. They were the first to correlate the rating behavior between users in order to (1) determine the most similar neighbors and (2) use them to predict interest in new items. This work was expanded upon by Breese et al. (1998) and Herlocker et al. (1999), who performed the first large-scale evaluation and optimization of collaborative filtering algorithms. Herlocker et al. (2004) also published important work on evaluating recommender systems, which we adhere to in our experimental setup described in Chapter 3. CF algorithms exploit set of usage patterns that represent user preferences and transactions to match them with those of people who share the same tastes or information needs. After locating a possible match, the algorithm then generate the recommendations. The preference patterns can be directly elicited from the user. A telling example is the Amazon website2 where customers are asked to rate an item on a scale from 1 to 5 stars. The patterns can also be inferred implicitly from user actions, such as purchases, reading time, or downloads. After gathering the user opinions, either explicitly or implicitly, they are commonly represented in a user-item ratings matrix, such as the ones shown in Figure 2.1. The majority of the cells in these matrix are empty, because it is usually impossible for a user to select, rate, or purchase all items in the system. CF algorithms operate on such a user-item matrix to predict values for the empty entries in the matrix. u 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 3 2 4 1 4 4 4 3 2 5 3 5 5 2 1 5 5 3 users u 6 items i i 1 8 items i i 8 Explicit ra+ngs Implicit ra+ngs Figure 2.1: Two examples of user-item matrices for a toy data set of six users and eight items. Values in the matrix can be ratings in the case of explicit user opinions (left), or unary in the case of implicit user activity (right). CF algorithms are commonly divided into two types, memory-based algorithms and modelbased algorithms, analogous to the way machine learning algorithms can be categorized into two classes. 2http://www.amazon.com/
Chapter 2 Related Work Memory-based Collaborative Filtering Memory-based algorithms are also known as lazy recommendation algorithms, because they defer the actual computational effort of predict ing a user's interest in an item to the moment a user requests a set of recommendations. The training phase of a memory-based algorithm consists of simply storing all the user ratings into memory. There are two variants of memory-based recommendation and both are based on the k-Nearest Neighbor algorithm from the field of machine learning(Aha et al., 1991) user-based filtering and item-based filtering In user-based filtering, the active user is matched against the ratings matrix to find the neighboring users with which the active user has a history of agreeing. This is typically done using metrics such as Pearsons correlation coefficient or the cosine similarity. Once this neighborhood has been identified, all items in the neighbors' profiles unknown to the active user are considered as possible recommendations and sorted by their frequency in that neighborhood. a weighted aggregate of these frequencies is used to generate the rec- ommendations(Herlocker et al., 1999). Item-based filtering was proposed by Sarwar et al (2001) and is the algorithm of choice of the online store Amazon (Linden et al., 2003).It focuses on finding the most similar items instead of the most similar users. As in user-based filtering, similarities between item pairs are calculated using Pearsons correlation coeffi cient or the cosine similarity(Breese et al., 1998). Items are considered to be similar when the same set of users has purchased them or rated them highly. For each item of an active user, the neighborhood of most similar items is identified. Each of the top k neighbors is placed on a candidate list along with its similarity to the active users item. Similarity scores of items occurring multiple times in the candidate list are added. The candidate list is sorted on these aggregated similarity scores and the top n recommendations are then presented to the user(Sarwar et al., 2001; Karypis, 2001). We explain both algorithms in more detail in Section 4.3 Model-based Collaborative Filtering Also known as eager recommendation algorithms model-based CF algorithms do most of the hard work in the training phase, where they construct a predictive model of the recommendation problem. Generating the recommen- dations is then a quick and straightforward matter of applying the derived model. Many different machine learning algorithms have been applied in recommender systems, such Naive Bayes(Breese et al., 1998)and rule induction(Basu et al., 1998), with more em- phasis on latent factor models in the past decade. Latent factor models try to reduce the dimensionality of the space of user-item ratings by mapping users and items to the same la tent factor space(Koren, 2008). The users and items are then related to each other through these latent factors. The factors can range in ease of interpretation from intuitive, such as movie genres or amount of plot twists, to less well defined dimensions, such as quirky characters, or even completely uninterpretable dimensions of the user-item relation(Koren, 2008). Examples of latent factor techniques applied to recommendation include Singular Value Decomposition(SvD) by Sarwar et al. (2002), factor analysis by Canny(2002), Prob- abilistic Latent Semantic Analysis(PLSA)by Hofmann(2004), and non-negative matrix factorization by Koren(2008) Note that when the similarity computations are pre-computed in, for instance, a nightly cycle, the user based and item-based filtering algorithms both turn into eager recommendation algorithms
Chapter 2. Related Work 12 Memory-based Collaborative Filtering Memory-based algorithms are also known as lazy recommendation algorithms, because they defer the actual computational effort of predicting a user’s interest in an item to the moment a user requests a set of recommendations. The training phase of a memory-based algorithm consists of simply storing all the user ratings into memory. There are two variants of memory-based recommendation and both are based on the k-Nearest Neighbor algorithm from the field of machine learning (Aha et al., 1991): user-based filtering and item-based filtering. In user-based filtering, the active user is matched against the ratings matrix to find the neighboring users with which the active user has a history of agreeing. This is typically done using metrics such as Pearson’s correlation coefficient or the cosine similarity. Once this neighborhood has been identified, all items in the neighbors’ profiles unknown to the active user are considered as possible recommendations and sorted by their frequency in that neighborhood. A weighted aggregate of these frequencies is used to generate the recommendations (Herlocker et al., 1999). Item-based filtering was proposed by Sarwar et al. (2001) and is the algorithm of choice of the online store Amazon (Linden et al., 2003). It focuses on finding the most similar items instead of the most similar users. As in user-based filtering, similarities between item pairs are calculated using Pearson’s correlation coeffi- cient or the cosine similarity (Breese et al., 1998). Items are considered to be similar when the same set of users has purchased them or rated them highly. For each item of an active user, the neighborhood of most similar items is identified. Each of the top k neighbors is placed on a candidate list along with its similarity to the active user’s item. Similarity scores of items occurring multiple times in the candidate list are added. The candidate list is sorted on these aggregated similarity scores and the top N recommendations are then presented to the user (Sarwar et al., 2001; Karypis, 2001). We explain both algorithms in more detail in Section 4.3. Model-based Collaborative Filtering Also known as eager recommendation algorithms, model-based CF algorithms do most of the hard work in the training phase, where they construct a predictive model of the recommendation problem. Generating the recommendations is then a quick and straightforward matter of applying the derived model3 . Many different machine learning algorithms have been applied in recommender systems, such as Naive Bayes (Breese et al., 1998) and rule induction (Basu et al., 1998), with more emphasis on latent factor models in the past decade. Latent factor models try to reduce the dimensionality of the space of user-item ratings by mapping users and items to the same latent factor space (Koren, 2008). The users and items are then related to each other through these latent factors. The factors can range in ease of interpretation from intuitive, such as movie genres or ‘amount of plot twists’, to less well defined dimensions, such as ‘quirky characters’, or even completely uninterpretable dimensions of the user-item relation (Koren, 2008). Examples of latent factor techniques applied to recommendation include Singular Value Decomposition (SVD) by Sarwar et al. (2002), factor analysis by Canny (2002), Probabilistic Latent Semantic Analysis (PLSA) by Hofmann (2004), and non-negative matrix factorization by Koren (2008). 3Note that when the similarity computations are pre-computed in, for instance, a nightly cycle, the userbased and item-based filtering algorithms both turn into eager recommendation algorithms
Chapter 2 Related Work Advantages and Problems of Collaborative Filtering cf algorithms have several ac tages, such as being able to take the quality of an item-or any lack thereof--into account when recommending items, especially in the case of explicit user ratings. For instance, a lo cal band might fall in the same musical genre as an internationally renowned rock band, br this does not guarantee that they are of the same quality. This shows that recognizing the quality of items is clear advantage of CE. By taking actual user preferences into account, CF algorithms can prevent poor recommendations. A second advantage is that CF algorithms are especially useful in domains where content analysis is difficult or costly, such as movie and music recommendation, without requiring any domain knowledge(Burke, 2002) While the quality of CF algorithms tends to improve over time, the biggest problem is the startup phase of the recommender system, when there are already many items in the sys tem, but few users and no ratings. This is commonly referred to as the cold-start problem and means the recommender system cannot generate any recommendations(Schein et al 2002). Solutions to this problem include using other data sets to seed the system, and us ing different recommendation algorithms in this startup phase that do not suffer from this problem. Even after acquiring more ratings from the users, sparsity of the user-item matrix can still be a problem for CE. A second problem is what is referred to as the gray sheep problem according to Claypool et al. (1999), which describes the difficulty of recommend ing for people who are not part of a clear group. Collaborative recommenders work best for user who fit into a specific niche with many similar neighbors(Burke, 1999) 2.1.2 Content-based Filtering Content-based recommendation algorithms, also known as content-based filtering, form the second popular class of algorithms. They can be seen as an extension of the work done on information filtering(Hanani et aL., 2001). Typically, content-based filtering approaches focus on building some kind of representation of the content in a system and then learning a profile of a users interests. The content representations are then matched against the users profile to find the items that are most relevant to that user. As with Ce, the representations of the user profiles are long-term models, and updated as more preference information becomes available(Burke, 2002). Usually, content-based filtering for recommendation is approached as either an IR problem, where document representations have to be matched to user representations on textual similarity; or as a machine learning problem, where the textual content of the representations are incorporated as feature vectors, which are used to train a prediction algorithm. Examples of the IR approach include Whitman and Lawrence (2002)and Bogers and Van den Bosch(2007); examples of the machine learning point of view include Lang (1995)and Mooney and Roy(2000). In Chapter 5 we propose different content-based recommendation algorithms to incorporate the metadata present in social bookmarking systems, so we refer to Section 5. 4 for a more extensive discussion of related work in content-based filtering Advantages and Problems of Content-based Filtering A clear advantage of content based filtering algorithms is that they do not require domain knowledge, and that it is suffi cient to collect implicit feedback from the users about their item preferences. This can make
Chapter 2. Related Work 13 Advantages and Problems of Collaborative Filtering CF algorithms have several advantages, such as being able to take the quality of an item—or any lack thereof—into account when recommending items, especially in the case of explicit user ratings. For instance, a local band might fall in the same musical genre as an internationally renowned rock band, but this does not guarantee that they are of the same quality. This shows that recognizing the quality of items is clear advantage of CF. By taking actual user preferences into account, CF algorithms can prevent poor recommendations. A second advantage is that CF algorithms are especially useful in domains where content analysis is difficult or costly, such as movie and music recommendation, without requiring any domain knowledge (Burke, 2002). While the quality of CF algorithms tends to improve over time, the biggest problem is the startup phase of the recommender system, when there are already many items in the system, but few users and no ratings. This is commonly referred to as the cold-start problem and means the recommender system cannot generate any recommendations (Schein et al., 2002). Solutions to this problem include using other data sets to seed the system, and using different recommendation algorithms in this startup phase that do not suffer from this problem. Even after acquiring more ratings from the users, sparsity of the user-item matrix can still be a problem for CF. A second problem is what is referred to as the ‘gray sheep’ problem according to Claypool et al. (1999), which describes the difficulty of recommending for people who are not part of a clear group. Collaborative recommenders work best for user who fit into a specific niche with many similar neighbors (Burke, 1999). 2.1.2 Content-based Filtering Content-based recommendation algorithms, also known as content-based filtering, form the second popular class of algorithms. They can be seen as an extension of the work done on information filtering (Hanani et al., 2001). Typically, content-based filtering approaches focus on building some kind of representation of the content in a system and then learning a profile of a user’s interests. The content representations are then matched against the user’s profile to find the items that are most relevant to that user. As with CF, the representations of the user profiles are long-term models, and updated as more preference information becomes available (Burke, 2002). Usually, content-based filtering for recommendation is approached as either an IR problem, where document representations have to be matched to user representations on textual similarity; or as a machine learning problem, where the textual content of the representations are incorporated as feature vectors, which are used to train a prediction algorithm. Examples of the IR approach include Whitman and Lawrence (2002) and Bogers and Van den Bosch (2007); examples of the machine learning point of view include Lang (1995) and Mooney and Roy (2000). In Chapter 5 we propose different content-based recommendation algorithms to incorporate the metadata present in social bookmarking systems, so we refer to Section 5.4 for a more extensive discussion of related work in content-based filtering. Advantages and Problems of Content-based Filtering A clear advantage of contentbased filtering algorithms is that they do not require domain knowledge, and that it is suffi- cient to collect implicit feedback from the users about their item preferences. This can make
Chapter 2 Related Work 14 content-based filtering the preferred algorithm in domains where eliciting explicit ratings from users is difficult or cumbersome, and where domain knowledge is hard to come by. A second advantage is that content-based filtering algorithms are better at finding topically similar items than CF algorithms because of their explicit focus on textual similarity. How ever, this can be a disadvantage in domains where content analysis is difficult or impractical to do in large numbers, such as movies and music. Content-based filtering algorithms also tend to get stuck in a well of similarity'(Rashid et al., 2002), where they can only recom- mend items from a narrow serendipitous recommendations can therefore be hard to achieve 2.1.3 Knowledge-based Recommendation All personalized recommendation algorithms attempt to infer which items a user might like. Collaborative filtering algorithms do this based on the behavior of the user and other like-minded users, whereas content-based filtering approaches do this based on the textual representations of the user's interests and the available items. a third class of reco tion algorithms is formed by knowledge-based algorithms. They use rules and patterns, and recommend items based on functional knowledge of how a specific item meets a particular user need(Burke, 2002). Such techniques allow the algorithm to reason about the relation- ship between a user and the available items. This can prevent a recommender system from generating useless recommendations. An example of such a useless recommendation would be recommending milk to a supermarket shopper: the odds of buying milk are so high that milk will always be correlated with everything else in a user's shopping basket, and thus always recommended to the user. Because a knowledge-based recommender system knows what foods ought to go together, it can screen out such useless suggestions(Burke, 1999) Knowledge-based recommender systems often borrow techniques from the field of case ased reasoning(CBR), which is useful for solving constraint-based problems such as the milk' problem. In CBR, users can specify content-based attributes which limit the returned recommendation set. Old problem-solving cases are stored by the CBR system, and new situations are then compared against these old cases with the most similar cases being used for solving the new problem(Burke, 1999; McNee, 2006). Reco mender sing such techniques support rating items on multiple dimensions. An example is the ENTREE restaurant recommender system developed by Burke et al. (1997). ENTREE allows restaurants to be rated on price food quality, atmosphere, service, and other dimensions Advantages and Problems of Knowledge-based Recommendation Rating content on multiple dimensions allows the user to provide a rich specification of his recommendation need, which in turn results in more satisfying recommendations. An second advantage of knowledge-based recommendation is that it does not suffer from the cold start problem, and that it allows for intuitive explanations of why a certain item, such as a restaurant, was recommended. In addition to the ENTREE recommender system, other examples of knowledge-based recommender systems are given by Schmitt and Bergmann(1999), Towle and Quinn(2000), and Van Setten et al.(2004). The biggest problem of knowledge-based algorithms is the need for an explicit knowledge acquisition phase(Burke, 2002), which is
Chapter 2. Related Work 14 content-based filtering the preferred algorithm in domains where eliciting explicit ratings from users is difficult or cumbersome, and where domain knowledge is hard to come by. A second advantage is that content-based filtering algorithms are better at finding topically similar items than CF algorithms because of their explicit focus on textual similarity. However, this can be a disadvantage in domains where content analysis is difficult or impractical to do in large numbers, such as movies and music. Content-based filtering algorithms also tend to get stuck in a ‘well of similarity’ (Rashid et al., 2002), where they can only recommend items from a narrow topic range; serendipitous recommendations can therefore be hard to achieve. 2.1.3 Knowledge-based Recommendation All personalized recommendation algorithms attempt to infer which items a user might like. Collaborative filtering algorithms do this based on the behavior of the user and other like-minded users, whereas content-based filtering approaches do this based on the textual representations of the user’s interests and the available items. A third class of recommendation algorithms is formed by knowledge-based algorithms. They use rules and patterns, and recommend items based on functional knowledge of how a specific item meets a particular user need (Burke, 2002). Such techniques allow the algorithm to reason about the relationship between a user and the available items. This can prevent a recommender system from generating useless recommendations. An example of such a useless recommendation would be recommending milk to a supermarket shopper: the odds of buying milk are so high that milk will always be correlated with everything else in a user’s shopping basket, and thus always recommended to the user. Because a knowledge-based recommender system knows what foods ought to go together, it can screen out such useless suggestions (Burke, 1999). Knowledge-based recommender systems often borrow techniques from the field of casebased reasoning (CBR), which is useful for solving constraint-based problems such as the ‘milk’ problem. In CBR, users can specify content-based attributes which limit the returned recommendation set. Old problem-solving cases are stored by the CBR system, and new situations are then compared against these old cases with the most similar cases being used for solving the new problem (Burke, 1999; McNee, 2006). Recommender systems using such techniques support rating items on multiple dimensions. An example is the ENTREE restaurant recommender system developed by Burke et al. (1997). ENTREE allows restaurants to be rated on price, food quality, atmosphere, service, and other dimensions. Advantages and Problems of Knowledge-based Recommendation Rating content on multiple dimensions allows the user to provide a rich specification of his recommendation need, which in turn results in more satisfying recommendations. An second advantage of knowledge-based recommendation is that it does not suffer from the cold start problem, and that it allows for intuitive explanations of why a certain item, such as a restaurant, was recommended. In addition to the ENTREE recommender system, other examples of knowledge-based recommender systems are given by Schmitt and Bergmann (1999), Towle and Quinn (2000), and Van Setten et al. (2004). The biggest problem of knowledge-based algorithms is the need for an explicit knowledge acquisition phase (Burke, 2002), which is
Chapter 2 Related Work difficult in domains without a rich set of attributes. As a result, knowledge-based recom- mendation is not as popular as the other two classes of algorithms. We do not consider knowledge-based algorithms for our recommendation experiments because we would run into this knowledge acquisition bottleneck when porting our algorithms from one domain to another. Instead, we take a data-driven approach and restrict ourselves to CF and content based filtering in Chapters 4 and 5 because they match the two characteristic information sources available on social bookmarking services: the folksonomy and metadata 2.1.4 Recommending Bookmarks References In this thesis, we focus on recommendation for social bookmarking websites covering two different domains: Web pages and scientific articles. While there is little related work on item recommendation for social bookmarking there have been plenty of stand-alone approaches to recommending Web pages and scientific articles. Most of these are focused around the concept of an Information Management Assistant (or IMA), that locates and recommends relevant information for the user by inferring a model of the user's interests (Budzik and Hammond, 1999). One of the earliest examples of such a personal information agent was the Memex system envisioned by Vannevar Bush, which was a"device in which an individual stores all his books, records, and communications"and offered the possibility of associative links between information, although it lacked automatic suggestion of related information (Bush, 1945) The first real IMAs started appearing in the 1990s and mostly focused on tracking the users browsing behavior to automatically recommend interesting, new Web pages. LETIZIa wa among the first of such pro-active IMAs (Lieberman, 1995), and used a breadth-first search strategy to follow, evaluate, and recommend outgoing links from pages in which the user previously showed an interest. In an IMA scenario, strong user interest in a page is typically inferred using heuristics such as a long dwell time on the page, revisiting it several times, or saving or printing the page. Many other IMAs for recommending Web pages have been pro- since then, among which the SYsKilL WEBERT agent by Pazzani et al. (1996), which allowed users to rate Web pages they visited. It extracted the key terms from those favorite Web pages, and used those to generate queries to be sent to search engines. The search results were then presented to the user as recommendations. Other examples of IMAs that support Web browsing include lira by Balabanovic(1998), WEBWATCHER by Joachims et al. (1997), WEBMATE by Chen and Sycara (1998), and the work by Chirita et al.(2006).The GIVEALINK System by Stoilova et al.(2005)is also worth mentioning because of its similarity to social bookmarking: gIVEALINK is a website that asks users to donate their bookmarks files, effectively creating a social bookmarking website. There are some differences with social bookmarking as we describe it in Section 2.3 though: a users bookmark profile in GIVEALINK is static; a user can only update their bookmarks by re-uploading the entire bookmarks file. Also, GIVEALINK does not support tagging of bookmarks. The bookmarks donated by users are used in tasks such as(personalized) search and recommendation http://www.givealink.org
Chapter 2. Related Work 15 difficult in domains without a rich set of attributes. As a result, knowledge-based recommendation is not as popular as the other two classes of algorithms. We do not consider knowledge-based algorithms for our recommendation experiments because we would run into this knowledge acquisition bottleneck when porting our algorithms from one domain to another. Instead, we take a data-driven approach and restrict ourselves to CF and contentbased filtering in Chapters 4 and 5 because they match the two characteristic information sources available on social bookmarking services: the folksonomy and metadata. 2.1.4 Recommending Bookmarks & References In this thesis, we focus on recommendation for social bookmarking websites covering two different domains: Web pages and scientific articles. While there is little related work on item recommendation for social bookmarking, there have been plenty of stand-alone approaches to recommending Web pages and scientific articles. Most of these are focused around the concept of an Information Management Assistant (or IMA), that locates and recommends relevant information for the user by inferring a model of the user’s interests (Budzik and Hammond, 1999). One of the earliest examples of such a personal information agent was the Memex system envisioned by Vannevar Bush, which was a “device in which an individual stores all his books, records, and communications” and offered the possibility of associative links between information, although it lacked automatic suggestion of related information (Bush, 1945). The first real IMAs started appearing in the 1990s and mostly focused on tracking the user’s browsing behavior to automatically recommend interesting, new Web pages. LETIZIA was among the first of such pro-active IMAs (Lieberman, 1995), and used a breadth-first search strategy to follow, evaluate, and recommend outgoing links from pages in which the user previously showed an interest. In an IMA scenario, strong user interest in a page is typically inferred using heuristics such as a long dwell time on the page, revisiting it several times, or saving or printing the page. Many other IMAs for recommending Web pages have been proposed since then, among which the SYSKILL & WEBERT agent by Pazzani et al. (1996), which allowed users to rate Web pages they visited. It extracted the key terms from those favorite Web pages, and used those to generate queries to be sent to search engines. The search results were then presented to the user as recommendations. Other examples of IMAs that support Web browsing include LIRA by Balabanovic (1998), WEBWATCHER by Joachims et al. (1997), WEBMATE by Chen and Sycara (1998), and the work by Chirita et al. (2006). The GIVEALINK system by Stoilova et al. (2005) is also worth mentioning because of its similarity to social bookmarking: GIVEALINK4 is a website that asks users to donate their bookmarks files, effectively creating a social bookmarking website. There are some differences with social bookmarking as we describe it in Section 2.3 though: a user’s bookmark profile in GIVEALINK is static; a user can only update their bookmarks by re-uploading the entire bookmarks file. Also, GIVEALINK does not support tagging of bookmarks. The bookmarks donated by users are used in tasks such as (personalized) search and recommendation. 4http://www.givealink.org/