Personalized Web Search by Mapping User Queries to Categories Fang Liu Presented by Jing Zhang CS491CXZ February 26, 2004
Background Different users use same key words such as “apple” can be fruit or computer Category hierarchy can’t fit in one screen Users are impatient to identify hierarchy before submit query
Central problem How to personalize web search by mapping user queries to categories?
Key ideas of this paper Build profile (both user and general profile) on search history Deduce appropriate categories based on user’s profile Associate query key words with category Return top 3 categories to user each time
Methods to map key words to category Use both user profile and general profile Use user profile only Use general profile only
Build user profiles (1) Tree representation of search record
Build user profiles (2) Predefined Input Output
Build general profile First two level of ODP category hierarchy (619 categories) Row1 Row2
Algorithms to learn profiles Linear Least Squares Fit (LLST) Rocchio-based Algorithm K-Nearest Neighbor (kNN) Adaptive Learning
LLSF Singular Value Decomposition
Pseudo-LLSF (pLLSF)
Ricchio-based Algorithm (bRocchio) where m is the number of documents in DT, N i is the number of documents that are related to the i-th category, and M(i,j) is the average weight of the j-th term in all documents that are related to the i-th category.
kNN where q is the query; c j is the j-th category; d i is a document among the k nearest neighbors of q and the i-th row vector in DT, Cos(q, d i ) is the cosine similarity between q and d i, and DC(i,j) denotes whether d i is related to the j-th category.
Adaptive Learning (aRocchio)
Data sets for the experiment
Performance Evaluation where n is the number of related categories to the query, score ci is the score of a related category c i that is ranked among the top 3, rank ci is the rank of c i and ideal_rank ci is the highest possible rank for c i
Experiment Results (1) Batch Learning Method
Experiment Results (2) Comparison of Mapping methods
Experiment Results (3) Adaptive Learning (aRocchio)
Discussions Why user 1 have lowest accuracy and user 3 have highest accuracy for batch learning method?