tell me who i am an interactive recommendation system
play

Tell Me Who I Am: An Interactive Recommendation System N. Alon, B. - PowerPoint PPT Presentation

Tell Me Who I Am: An Interactive Recommendation System N. Alon, B. Awerbuch, Y. Azar, B. Patt-Shamir Richard Huber Publication Theory of Computing Systems Volume 45 August 2009 Tel Aviv University, Israel John Hopkins


  1. Tell Me Who I Am: An Interactive Recommendation System N. Alon, B. Awerbuch, Y. Azar, B. Patt-Shamir Richard Huber

  2. Publication  Theory of Computing Systems  Volume 45  August 2009  Tel Aviv University, Israel  John Hopkins University, Baltimore, USA Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 2

  3. Experiment  Travel in a foreign country  Unknown language  Learn to know the night life subculture  Not allowed to talk to each other Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 3

  4. Experiment  Problem:  5 typical drinks  money for 3 drinks  Waitress asks whether you liked the drink  Idea: Human preferences correlate Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 4

  5. Experiment  http://demo.racerfish.com Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 5

  6. Players and Billboard Player p 1 Shared Billboard Probe O 1 O 2 O 3 O 4 O 5 O 6 O 7 p 1 ? no yes ? no ? ? ? no yes ? no ? ? Read/Write p 2 Preference Vector yes ? no ? ? ? no p 3 ? yes ? yes yes ? no p 4 no no ? no ? ? yes Player p 7 p 5 ? no no ? yes ? ? Probe p 6 ? yes ? ? ? no no ? ? ? ? ? yes ? p 7 Read/Write ? ? ? ? ? yes ? Preference Vector How can a player find out his preferences with only a few probes? Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 6

  7. Statement of the Problem  n players and m objects  each player has an unknown yes/no grade for each object  Parallel rounds: in each round each player  reads the shared billboard  probes one object  writes the result of the probe on the billboard  For each player: output a vector as close as possible to that player's original preference vector Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 7

  8. Statement of the Problem (Formal)  Input: P O  A set of players and a set of objects n m p v  p ∈{ yes , no } m  A vector for each player  Output: w  p ∈{ yes ,no } m  An estimate vector for each player p  Goal: dist  v  p  ,w  p  p  Minimize for each player is the Hamming distance dist  x , y   Minimize the number of probes Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 8

  9. Input Characteristic  Diameter of a subset A ⊂ P D  A = max { dist  v  p  , v  q ∣ p ,q ∈ A }  -typical set : Subset with  , D  A ⊂ P ∣ A ∣ n , 0  1 D  A  D , D  0 Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 9

  10. Approximation Quality  Discrepancy of a subset A ⊂ P  A = max { dist  w  p  ,v  p ∣ p ∈ A }  Stretch of a subset A ⊂ P  A =  A  D  A  Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 10

  11. The CHOOSE_CLOSEST Problem  Input ∣ V ∣ = k  A set of preference Vectors with V  A player with (initially unknown) preference vector v  p  p  Output  A vector such that w min ∈ V dist  w min , v  p   dist  w ,v  p  , w ∈ V Object 1 Object 2Object 3 Object 1 Object 2 Object 3 Object 1 Object 2 Object 3 Player p Player p Player p yes yes ? yes yes ? no no ? v 1 v 1 v 1 yes no no yes yes no no no no v 2 v 2 v 2 V V V yes no yes yes yes no no yes yes v 3 v 3 v 3 no yes yes no no yes yes yes yes Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 11

  12. The SELECT Algorithm  Solves an adapted version of the CHOOSE_CLOSEST problem  Adaptions:  Additional input D w ∈ V  There is a vector such that dist  w ,v  p  D Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 12

  13. The SELECT Algorithm X(V) D=1 Object 1 Object 2 Object 3 Object 4 Object 5Object 6Object 7 Player p ? ? ? ? ? ? ? v 1 yes no yes no no yes yes v 2 V yes no no yes yes no no v 3 yes yes no yes yes no no 1) Repeat 1a) Let X(V) be the set of Objects on which some two vectors in V differ. 1b) Execute Probe on the first coordinate in X(V) that has not been probed yet. 1c) Remove from V any vector with more than D disagreements with v(p). Until all coordinates in X(V) are probed or X(V) is empty. Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 13

  14. The SELECT Algorithm X(V) D=1 Object 1 Object 2 Object 3 Object 4 Object 5Object 6Object 7 Player p ? ? ? ? ? ? ? v 1 yes no yes no no yes yes v 2 V yes no no yes yes no no v 3 yes yes no yes yes no no 1) Reapeat 1a) Let X(V) be the set of Objects on which some two vectors in V differ. 1b) Execute Probe on the first coordinate in X(V) that has not been probed yet. 1c) Remove from V any vector with more than D disagreements with v(p). Until all coordinates in X(V) are probed or X(V) is empty. Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 14

  15. The SELECT Algorithm X(V) D=1 Object 1 Object 2 Object 3 Object 4 Object 5Object 6Object 7 Player p ? no ? ? ? ? ? v 1 yes no yes no no yes yes v 2 V yes no no yes yes no no v 3 yes yes no yes yes no no 1) Repeat 1a) Let X(V) be the set of Objects on which some two vectors in V differ. 1b) Execute Probe on the first coordinate in X(V) that has not been probed yet. 1c) Remove from V any vector with more than D disagreements with v(p). Until all coordinates in X(V) are probed or X(V) is empty. Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 15

  16. The SELECT Algorithm X(V) D=1 Object 1 Object 2 Object 3 Object 4 Object 5Object 6Object 7 Player p ? no ? ? ? ? ? v 1 yes no yes no no yes yes v 2 V yes no no yes yes no no v 3 yes yes no yes yes no no 1) Repeat 1a) Let X(V) be the set of Objects on which some two vectors in V differ. 1b) Execute Probe on the first coordinate in X(V) that has not been probed yet. 1c) Remove from V any vector with more than D disagreements with v(p). Until all coordinates in X(V) are probed or X(V) is empty. Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 16

  17. The SELECT Algorithm X(V) D=1 Object 1 Object 2 Object 3 Object 4 Object 5Object 6Object 7 Player p ? no ? ? ? ? ? v 1 yes no yes no no yes yes v 2 V yes no no yes yes no no v 3 yes yes no yes yes no no 1) Repeat 1a) Let X(V) be the set of Objects on which some two vectors in V differ. 1b) Execute Probe on the first coordinate in X(V) that has not been probed yet. 1c) Remove from V any vector with more than D disagreements with v(p). Until all coordinates in X(V) are probed or X(V) is empty. Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 17

  18. The SELECT Algorithm X(V) D=1 Object 1 Object 2 Object 3 Object 4 Object 5Object 6Object 7 Player p ? no no ? ? ? ? v 1 yes no yes no no yes yes v 2 V yes no no yes yes no no v 3 yes yes no yes yes no no 1) Repeat 1a) Let X(V) be the set of Objects on which some two vectors in V differ. 1b) Execute Probe on the first coordinate in X(V) that has not been probed yet. 1c) Remove from V any vector with more than D disagreements with v(p). Until all coordinates in X(V) are probed or X(V) is empty. Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 18

  19. The SELECT Algorithm X(V) D=1 Object 1 Object 2 Object 3 Object 4 Object 5Object 6Object 7 Player p ? no no ? ? ? ? v 1 yes no yes no no yes yes v 2 V yes no no yes yes no no v 3 yes yes no yes yes no no 1) Repeat 1a) Let X(V) be the set of Objects on which some two vectors in V differ. 1b) Execute Probe on the first coordinate in X(V) that has not been probed yet. 1c) Remove from V any vector with more than D disagreements with v(p). Until all coordinates in X(V) are probed or X(V) is empty. Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 19

  20. The SELECT Algorithm X(V) D=1 Object 1 Object 2 Object 3 Object 4 Object 5Object 6Object 7 Player p ? no no ? ? ? ? v 1 yes no yes no no yes yes v 2 V yes no no yes yes no no v 3 yes yes no yes yes no no 1) Repeat 1a) Let X(V) be the set of Objects on which some two vectors in V differ. 1b) Execute Probe on the first coordinate in X(V) that has not been probed yet. 1c) Remove from V any vector with more than D disagreements with v(p). Until all coordinates in X(V) are probed or X(V) is empty. Mittwoch, 13. April 2011 Tell Me Who I Am: An Interactive Recommendation System 20

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend