Desired system functionality



next up previous contents
Next: System constraints Up: Problem Statement Previous: Problem Statement

Desired system functionality

We do not believe that collaborative filtering alone will meet the average user's filtering needs. However, we assert that there is a real place to be filled by collaborative filtering, and that collaborative filtering and other filtering methods can be effectively used in tandem to create good filters. The Tapestry system already demonstrates one way to integrate filtering methods by using scoring rules. To demonstrate more uses for collaborative filtering, let us consider some scenarios and describe what queries would be useful to a user in each situation. We will then use these queries as a specification for the types of queries our collaborative filtering system should support.

First, consider a user who has seen a picture of a rock climber and developed a passing interest in climbing. This user might find the newsgroup rec.climbing and want to see whether there is any discussion of interest to her in this newsgroup. She would like to see a list of the articles that members of the group thought were most relevant to the topic of the newsgroup. If these articles look interesting, she may decide that interesting things are discussed in rec.climbing and read further. If the ``best'' articles in rec.climbing do not interest her, she can go on to investigate rec.skydiving. This is an example of an exploratory user.

Second, consider a user who is interested in Microsoft's patent battles. He has used a keyword or profile based filtering system to create a filter which looks for the words ``Microsoft'' and ``patent'' in articles, but due to the large amount of discussion on this topic he still receives too many articles - many of which are redundant, inaccurate, or flames. This user might use a collaborative filter to disregard any article that did not have some number of positive reviews. By cutting off the bottom of the distribution, the user improves the quality of the articles passing on to his keyword filter. This is an example of a refining user.

Third, consider a user who reads comp.arch and wants to be kept up to date on any new developments in the newsgroup but does not want to read all the articles. This user might know some other person who does read all of comp.arch and whose opinion he trusts. Our user would like to see all of the articles the dedicated reader liked; basically asking to see how the group would look if this person were moderating it. This is an example of a custom moderation user.

Fourth, consider a group of people working together on a project and using Net News as a source of information. These people would like to make sure that all of them see any article that any individual thinks is relevant. They do not want to have to each print out the articles and distribute them at meetings since there are likely to be many duplicates. Each of these users would like to be able to combine the opinions of the others and view any article that any user found important. The users basically want to see the articles as if they were being moderated by a collective of the users. This is an example of group moderation. Custom moderation is really just a subset of group moderation where the group size is one.



next up previous contents
Next: System constraints Up: Problem Statement Previous: Problem Statement



David A. Maltz (dmaltz@cs.cmu.edu)