Presentation on theme: "Content-based Recommendation Systems"— Presentation transcript:
1Content-based Recommendation Systems Group: Tippy
2Group Members Nerin George Deepan Murugan Thach Tran Goal Models + PresentationDeepan MuruganDomain Models + PresentationThach TranStrategies + Presentation
3Outline Introduction Item Representation User Profiles Manual Recommendation MethodsLearning A User ModelClassification Learning AlgorithmsDecision Trees and Rule InductionNearest Neighbour MethodsConclusionsQ & A
4IntroductionThe WWW is growing exponentially. Many websites become enormous in term of size and complexityUsers need help in finding items that are in accordance with their interestsRecommendationContent-based recommendation: recommend an item to a user based upon a description of the item and a profile of the user’s interests
5IntroductionPazzani, M. J., & Billsus, D. (2007). Content- Based Recommendation Systems. Lecture Notes in Computer Science. (4321),
6Related Research Recommender systems present items (e.g., movies, books, music, images, web pages, news, etc.) that are likely of interest to the usercompare the user’s profile to some reference characteristics to predict whether the user would be interested in an unseen itemReference characteristicsInformation about the unseen item content-based approachUser’s social environment collaborative filtering approach
7Item Representation Items stored in a database table Structured data Small number of attributesEach item is described by the same set of attributesKnown set of values that the attributes may haveStraightforward to work withUser’s profile contains positive rating for 1001, 1002, 1003Would the user be interested in say Oscars (French cuisine, table service)?IDNameCuisineServiceCost1001Mike’s PizzaItalianCounterLow1002Chris’s CaféFrenchTableMedium1003Jacques BistroHigh
8Item RepresentationInformation about item could also be free text; e.g., text description or review of the restaurant, or news articlesUnstructured dataNo attribute names with well-defined valuesNatural language complexitySame word with different meaningsDifferent words with same meaningNeed to impose structure on free text before it can be used in recommendation algorithm
9TF*IDF WeightingFirst, stemming is applied to get the root forms of words“compute”, “computation”, “computer”, “computes”, etc., are represented by one termCompute a weight for each term that represents the importance or relevance of that term
10TF*IDF Weighting Term frequency tft,d of a term t in a document d Inverse document frequency idft of a term tTF*IDF weightingnt,d is term count of t in dN is number of documents in the collectiondft is number of documents that contains term t
11TF*IDF WeightingThe term with highest weight occur more often in that document than in other documents more central to the topic of the documentLimitationsThis method does not capture the context in which a word is used“This restaurant does not serve vegetarian dishes”The term “vegetarian” might still have significant weight according to the method and the restaurant might get classified into a group of restaurants which serve vegetarian food.
12User ProfilesA profile of the user’s interests is used by most recommendation systemsThis profile consists of two main types of informationA model of the user’s preferences. E.g., a function that for any item predicts the likelihood that the user is interested in that itemUser’s interaction history. E.g., items viewed by a user, items purchased by a user, search queries, etc.
13User ProfilesUser’s history will be used as training data for a machine learning algorithm that creates a user model“Manual” recommending approachesUser customisationProvide “check box” interface that let the users construct their own profiles of interestsA simple database matching process is used to find items that meet the specified criteria and recommend these to users.
14User Profiles Limitations Require efforts from users Cannot cope with changes in user’s interestsDo not provide a way to determine order among recommending items
15User Profiles “Manual” recommending approaches Rule-based RecommendationThe system has rules to recommend other products based on user historyRule to recommend sequel to a book or movie to customers who purchased the previous item in the seriesCan capture common reasons for making recommendations
16Learning a User ModelCreating a model of the user’s preference from the user history is a form of classification learningThe training data (i.e., user’s history) could be captured through explicit feedback (e.g., user rates items) or implicit observing of user’s interactions (e.g., user bought an item and later returned it is a sign of user doesn’t like the item)Implicit method can collect large amount of data but could contains noise while data collected through explicit method is perfect but the amount collected could be limited
17Learning a User ModelNext, a number of classification learning algorithms are reviewedThe main goal of these classification learning algorithms is to learn a function that model the user’s interestsApplying the function on a new item can give the probability that a user will like this item or a numeric value indicating the degree of interest in this item
18Decision Trees and Rule Induction Given the history of user’s interests as training data, build a decision tree which represents the user’s profile of interestWill the user like an inexpensive Mexican restaurant?CuisineServiceCostRatingItalianCounterLowNegativeFrenchTableMedPositive…
19Decision Trees and Rule Induction Well-suited for structured dataIn unstructured data, the number of attributes becomes too enormous and consequently, the tree becomes too large to provide sufficient performanceRIPPER: a rule induction algorithm based on the same principles but provide better performance in classifying textRIPPER is a rule induction algorithm closely related to decision trees that operates in a similar fashion to the recursive data partitioning approach described above. Despite the problematic inductive bias, however, RIPPER performs competitively with other state-of-the-art text classification algorithms. In part, the performance can be attributed to a sophisticated post-pruning algorithm that optimizes the fit of the induced rule set with respect to the training data as a whole. Furthermore, RIPPER supports multi-valued attributes, which leads to a natural representation for text classification tasks, i.e., the individual words of a text document can be represented as multiple feature values for a single feature. While this is essentially a representational convenience if rules are to be learned from unstructured text documents, the approach can lead to more powerful classifiers for semi-structured text documents. For example, the text contained in separate fields of an message, such as sender, subject, and body text, can be represented as separate multi-valued features, which allows the algorithm to take advantage of the document’s structure in a natural fashion.
20Nearest Neighbour Methods Simply store all the training data in memoryTo classify a new item, compare it to all stored items using a similarity function and determine the “nearest neighbour” or the k nearest neighbours.The class or numeric score of the previously unseen item can then be derived from the class of the nearest neighbour.
21Nearest Neighbour Methods unseen item needed to be classifiedpositive rated itemsnegative rated itemsk = 3: negativek = 5: positive
22Nearest Neighbour Methods The similarity function depends on the type of dataStructured data: Euclidean distance metricUnstructured data (i.e., free text): cosine similarity function
23Euclidean Distance Metric Distance between A and BAttributes which are not measured quantitatively need to be labeled by numbers representing their categoriesCuisine attribute: 1=Frech, 2=Italian, 3=Mexican.ItemAttr. XAttr. YAttr. ZAXAYAZABXBYBZB
24Cosine Similarity Function Vector space modelAn item or a document d is represented as a vectorwt,d is the tf*idf weight of a term t in a document dThe similarity between two items can then be computed by the cosine of the angle between two vectors
25Nearest Neighbour Methods Despite the simplicity of the algorithm, its performance has been shown to be competitive with more complex algorithms
26Other Classification Learning Algorithms Relevance Feedback and Rocchio’s AlgorithmLinear ClassifiersProbabilistic Methods and Naïve BayesThese are more complex methods which have been described in the paper but we don’t have time to cover them in this presentation
27ConclusionsCan only be effective in limited circumstances. It is not straightforward to recognise the subtleties in contentDepend entirely on previous selected items and therefore cannot make predictions about future interests of usersThese shortcomings can be addressed by collaborative filtering (CF) techniquesCF is the dominant technique nowadays thanks to the popularity of Web 2.0/Social Web conceptMany recommendation system utilise a hybrid of content-based and collaborative filtering approaches
28Summary Content-based Recommendation Item Representation User Profiles Manual Recommendation MethodsLearning A User ModelDecision Trees and Rule InductionNearest Neighbour Methods