Title: PeertoPeer P2P Recommender Systems RS: a research proposal
1Peer-to-Peer (P2P)Recommender Systems (RS)a
research proposal
- Paolo Massa
- PhD student University of Trento
- paolo.massa_at_dit.unitn.it
2Summary
- What are Recommender Systems (RS)?
- Advantages and disadvantages
- New vision (P2P)
- Which new challenges and possibilities and how to
use them? - Two testbeds
- A distributes scientific papers alerter
- A recommender embedded on a weblogs network
3What is a traditional RS?
- Traditional RSs are big servers (usually web
servers). - The users can interact using a client (usually a
web browser). - The server collects information of users
preferences on items through their interaction
with the server, implicitly or explicitly. - Based on these information, the server gives
recommendations on which items the user will like.
Keep in mind Amazon.com!
4How traditional RS recommends? (1)
- Content-based (recommend items similar to ones
you liked)
Price
Year
Subject
Author
10
1999
Machine learning
Alice
Item1
15
2001
Phisics
Bob
Item2
56
2000
Math
Charlie
Item3
5How traditional RS recommends? (2)
- Collaborative or Social Filtering (recommend
items liked by users similar to you)
Item1
Item2
Item3
Item4
5
User1
3
1
5
User2
5
5
1
User3
User4
6Problems with centralized RSs
- A RS needs to collect a lot of data from a lot of
users. - Users history on amazon.com cant be used on
barnesandnobles.com (it is in their hard disks!) - If RS server is down (temp or forever) or not
reachable, the user cant use the service. - Difficult to enter in the market. Big companies
can win other markets as well (global monopoly). - Privacy policies are defined by RS server.
7From centralized RS to P2P RS
Every peer disposes of all the Users profiles.
8What are Users profiles?
- A peer profile is
- Ratings on items
- (what you like)
- Ratings on peers
- (who you like/trust)
- How peers get profiles?
- Exchange
- Publish and fetch
9Who and how generates recommendations?
IDEA Every peer can now make recommendations on
behalf of its user, using only the data it
currently has. SUB-IDEA If a peer has not
enough memory or CPU, it can ask recommendations
to other (trusted) peers.
10Info used by RS to recommend
Every peer has the same complete information? NO
- Every peer keeps its view of the items and of
other peers, based on - personal interests,
- personal trust on peers,
- limitations (memory, CPU)
11What I plan to do?
- Design new recommendation algorithms
- Facing new challenges
- The peer has to actively go fetching users
profile from other peers and it can choose how
frequent and from whom (information
propagation... gossiping algorithms) - The peer can send signed profiles of other
peers - Exploting new possibilities
- The peer can weight every peers contribution
differently based on past interactions and other
peers opinions (trust/reputation metrics). - Identity/Privacy no more central authentication
service, so pseudonymous based on public key
121st testbed A distributes scientific papers
alerter
Peer application Profile papers I like, read,
cite topics structure researchers I like
(trust) Recs Papers, Researchers, Conferences
131st testbed A distributes scientific papers
alerter
- STATE OF THE PROJECT
- Application defined
- Protocol coded in Java using JXTA for anonymous,
signed and crypted P2P communication - Graphical User Interface coded in Java
- No recommendation engine up to now (First
release, I plan to use and extend an open source
collaborative filtering system Alkindi) - PROBLEM
- difficult to get widely used this application!
142nd testbed A recommender embedded on weblogs
network
HTTP//COCOA.ITC.IT Users can create a
compilation of classical music and download
it. USERS 1400 daily ITEMS 11.000 MP3s
(librettos, midis, ) TOPIC music (interesting
and involving) Just find a way to give direction
and tools to this army of indexers, commenters,
creators
152nd testbed A recommender embedded on weblogs
network
- WEBLOG (or BLOG) frequently updated, easy to
maintain web site arranged chronologically (the
newer entries are usually at the top). - INTERESTING
- Google bought Blogger.com (and its company)
- Stanford and Harvard are promoting use for
students - Information are provided in HTML (for humans) and
XML (for machines). Semantic web - It is a distributed database of relationships.
162nd testbed A recommender embedded on weblogs
network
Peer blog Profile comments/citations on
tracks compilations, trust on other peer Recs
Tracks, Compilations, Bloggers
172nd testbed A recommender embedded on weblogs
network
- STATE OF PROJECT
- Setting up the blog hosting tool (Movable Type)
and integrating in cocoa.itc.it - Thinking ways for cocoaBloggers to provide
semantic information. - Thinking the recommender algorythm.
18P2P RS
19What about the Items Info?
- Items Info are NOT on peers!
- They can be on a different repository
- Centralized repository (as a website)
- Distributed file storage (as Freenet or Docster)
- but even a physical library!
- Only requirement
- items are identified by a unique id (URI)
20Ginopa communication protocol
- Peers exchange these (signed) messages
- Opinions on papers
- Ratings (peer12 rates item278 as 7/10 explicit
on 10oct02) - Cocitations (peer13 cites item12, item16 in my
paper on KM) - Codirectoring (peer45 puts item1, item6 in dir
know manag) - Opinions on peers (Peer31 trusts Peer12 as 0/10
on 14Aug02) - Recommendation requests (please, give me a
recommendation!) - Protocol (mainly pull to prevent DoS)
- AskMsg ReplyMsg with hash(AskMsg)
- Every msg is signed and can be safely forwarded
21Ginopa state of project
- Defined application
- Coded in Java using JXTA protocol for anonymous,
signed and crypted P2P communication - Coded in Java the Graphical User Interface
- No recommendation engine up to now (First
release, I plan to use and extend an open source
collaborative filtering system Alkindi)
22How traditional RS recommends?
23How traditional RS recommends?
- Users profile is set of ratings
- Collaborative Filtering
Item1
Item2
Item1
Item1
5
User1
?
3
1
5
User2
5
5
1
User3
5
User4
24New vision of RS exchanged info
RATINGS
(I rate Item74 as 7/10 on 23Oct02)peer31
Peer31 rates Item74 as 7/10 on 23Oct02
25New vision of RS exchanged info
TRUSTS/REPUTATIONS
(I trust Peer12 as 0/10 on 18Aug02)peer31
Peer31 trusts Peer12 as 0/10 on 18Aug02
26Ginopa alternative
- What if the application fails in getting widely
used? - Create and adapt Recommendation algorithms to the
community of semantic web which is already
publishing (on participants web sites) a lot of
user profiles expressed by some semantically
well-defined XML-based formats (RSS, RDF, FOAF,
SMBmeta and XFML).
271st testbed A distributes scientific papers
alerter
- Funtionalities
- Suggest Papers
- Export HTML, XML, BibTex, RIS
- Ask Recommendations
- Express Ratings, Keywords, Summaries
- Suggest/Remind conferences (in tree)
- Suggest Users (in tree)
- Drag Drop Papers
- Manage peers trust
282nd testbed A recommender embedded on a weblogs
site
- USERS 1400 daily users willing to contribute
with their passion and knowledge for music. - ITEMS 11.000 MP3s, Composers Biographies, 400
Opera's Librettos, 2.000 photos of composers,
rare scores, theatres, 5.000 texts of classical
songs in original languages, 1.100 Midi files - TOPIC music (interesting and involving)
- Just find a way to give direction and tools to
this army of indexers, commenters, creators. - CocoaBloggers will
- - keep their blog
- comment on compilations,
- creating new musical itineraries (with textual
descriptions among songs) collaboratively
29How traditional RS recommends?
- Content-based
- (recommend items similar to ones you liked)
- Collaborative or Social Filtering
- (recommend items liked by users similar to you)