mutual information scheduling for ranking hamza aftab nevin raj paul cuff sanjeev kulkarni adam...
TRANSCRIPT
Mutual Information Scheduling for Ranking
Hamza Aftab
Nevin Raj
Paul Cuff
Sanjeev Kulkarni
Adam Finkelstein
1
Applications of Ranking
2
Pair-wise Comparisons
3
Query:A > B ?Ask a voter whether candidate I is better
than candidate JObserve the outcome of a match
Scheduling
4
Design queries dynamically, based on past observations.
Example: Kitten Wars
5
Example: All Our Ideas(Matthew Salganik – Princeton)
6
Select Informative MatchesAssume matches are expensive but computation is
cheap
Previous Work (Finkelstein)Use Ranking Algorithm to make better use of informationSelect matches by giving priority based on two criterion
Lack of information: Has a team been in a lot of matches already?Comparability of the match: Are the two teams roughly equal in
strength?
Our innovationSelect matches based on Shannon’s mutual information
7
Related WorkSensor Management (tracking)
Information-Driven [Manyika, Durrant-Whyte 1994][Zhao et. al. 2002] – Bayesian filtering[Aoki et. al. 2011] – This session
Learning Network Topology[Hayek, Spuckler 2010]
Noisy Sort
8
Ranking Algorithms – Linear ModelEach player has a skill level µThe probability that Player I beats Player J is a
function of the difference µi - µj
TransitiveUse Maximum Likelihood
Thurstone-Mosteller ModelQ function
Performance has Gaussian distribution about the mean µ
Bradley-Terry ModelLogistic function
9
ExamplesElo’s chess ranking system
Based on Bradley-Terry modelSagarin’s sports rankings
10
Mutual Information
11
Mutual Information:
Conditional Mutual information
Entropy
12
Entropy:
Conditional Entropy
High entropy Low entropy
Mutual Information Scheduling
Let R be the information we wish to learn(i.e. ranking or skill levels)
Let Ok be the outcome of the kth match
At time k, scheduler chooses the pair (ik+1, jk+1):
13
Why use Mutual Information?Additive Property
Fano’s InequalityRelated entropy to probability of errorFor small error:
Continuous distributions: MSE bounds differential entropy
14
Greedy is Not Optimal
15
Consider Huffman codes---Greedy is not optimal
Performance (MSE)
16
Performance (Gambling Penalty)
17
Identify correct ranking
18
Find strongest player
19
Find strongest player
20
Evaluating Goodness-of-Fit
21
Ranking: Inversions
Skill Level Estimates:Mean squared error (MSE)Kullback-Leibler (KL) divergence
(relative entropy)Others
Betting riskSampling inconsistency
1234
1
4
Xx xq
xpxpqpD
)(
)(log)()||(
32
Numerical Techniques
Calculate mutual informationImportance samplingConvex Optimization (tracking of ML
estimate)
Summary of Main Idea
Get the most out of measurements for estimating a ranking
Schedule each match to maximize(Greedy, to make the computation tractable)Flexible
S is any parameter of interest, discrete or continuous(skill levels; best candidate; etc.)
Simple design---competes well with other heuristics
Ranking Based on Pair-wise ComparisonsBradley Terry Model:
Examples:A hockey team scores Poisson- goals in a
gameTwo cities compete to have the tallest person
is the population
Computing Mutual Information
25
Importance Sampling:Multidimensional integralProbability distributionsSkill level estimates
• Why is it good for estimating skill levels?– Faster than convex optimization– Efficient memory use
Skill level of player 1
Ski
ll le
vel o
f pl
ayer
2
0 100 200 300 400 5000
0.5
1
1.5
2
2.5
3
3.5
4
4.5
Number of games
Ave
rage
num
ber
of in
vers
ions
ELOTrueSkillRandom SchedulingMinGames/ClosestSkillMutual InformationGraph Based
Results
26
(for a 10 player tournament and100 experiments)
220 230 240 250 260 270 2800
0.1
0.2
0.3
0.4
0.5
Number of games
Aver
age
num
ber o
f inv
ersi
ons
20 30 40 50 60 70
0.3
0.4
0.5
0.6
0.7
Number of games
Ave
rage
num
ber
of in
vers
ions
Visualizing the Algorithm
27
Player A B C D
A 0 2 3 3
B 0 0 7 2
C 0 2 0 5
D 1 2 2 0
Player A B C D
A 0 0.031 0.025 0.024
B 0.031 0 0.023 0.033
C 0.025 0.023 0 0.030
D 0.024 0.033 0.030 0
A B
C D
?
Outcomes
Scheduling