Presentation is loading. Please wait.

Presentation is loading. Please wait.

Human-centered Machine Learning

Similar presentations


Presentation on theme: "Human-centered Machine Learning"— Presentation transcript:

1 Human-centered Machine Learning
Algorithms for Smart broadcasting Human-centered Machine Learning

2 Recap: When-to-post problem setup
Broadcasters’ posts as a counting process N(t) Users’ feeds as sum of counting processes M(t) N1(t) M1(t) t M(t) = AT N(t) N2(t) t Mn(t) t Nn(t) t

3 Post by other broadcasters
Recap: Measuring Visibility Position of the highest ranked tweet by broadcaster i in follower j’s wall M(t) rij(t) = 0 rij(t’) = 4 rij(t’’) = 0 t …. . Older tweets Ranked stories Post by broadcaster u Post by other broadcasters

4 Recap: Maximizing Visibility
Minimize (quadratic) loss: Posting rate Rank Maximize time spent at the top:

5 Today: Evaluating broadcasting strategies
Task: Implementing strategies Metrics: Average rank Time at the top Simulated

6 Working of the simulator
src_id: 0 src_id: 1 (Poisson with rate 1.0) sink_id: 1000

7 How to implement a strategy?
event = None sink_id: 1000 src_id: 0 src_id: 1

8 How to implement a strategy?
event = Event(event_id=1, time_delta=5, cur_time=5, src_id=0, sink_ids=[1000]) sink_id: 1000 src_id: 0 src_id: 1

9 How to implement a strategy?
event = Event(event_id=2, time_delta=2.5, cur_time=7.5, src_id=1, sink_ids=[1000]) sink_id: 1000 src_id: 0 src_id: 1

10 How to implement a strategy?
event = Event(event_id=2, time_delta=2.5, cur_time=7.5, src_id=1, sink_ids=[1000]) sink_id: 1000 src_id: 0 Updated! src_id: 1

11 always measured from last self post.
How to implement a strategy? event = Event(event_id=2, time_delta=2.5, cur_time=7.5, src_id=1, sink_ids=[1000]) sink_id: 1000 src_id: 0 always measured from last self post. src_id: 1

12 How to implement a strategy?
event = Event(event_id=3, time_delta=7.5, cur_time=15, src_id=1, sink_ids=[1000]) sink_id: 1000 src_id: 0 Repeats to the end. src_id: 1

13 Broadcasting Strategies
Poisson Hawkes RedQueen Smart Poisson Already implemented. This lecture. To implement.

14 Poisson broadcaster: already implemented

15 Poisson broadcaster: already implemented
Use self.random_state for repeatable experiments and debugging. If this is the beginning of the simulation or if the post was by this broadcaster, return a new sample. No else branch: not returning a value means do not change old time.

16 Hawkes broadcaster: another example
Initializing and saving parameters Calculating Ignore unless it was our event or the 1st event Ogata’s thinning algorithm Return from our own post

17 Recap: RedQueen broadcaster
Minimizes loss: For the task: Sampling using Superposition: r(t) Superposition principle t1 t2 t3 t4 t Δi exp( c ) t1 + Δ1 t2 + Δ2 t3 + Δ3 t4 + Δ4 mini ti + Δi

18 RedQueen Broadcaster implementation

19 RedQueen Broadcaster implementation
This is how rank evolves.

20 RedQueen Broadcaster implementation
Return infinite if we do not plan to post.

21 RedQueen Broadcaster implementation
Δi exp( 1.0 ) mini ti + Δi

22 Smarter than Poisson Broadcaster
time Heuristic to improve time at top: Do not post if already on top. If not on top, then post at a steady pace to let bursts of others’ posts pass (e.g., breaking news). Contrast: always maintaining low rank.

23 Smarter than Poisson Broadcaster
time Using a flag to figure out if on top or not.

24 Smarter than Poisson Broadcaster
time Return infinite if we do not plan to post.

25 Smarter than Poisson Broadcaster
time To be implemented.

26 Live Coding Show execution of simulation Diagnostic plots
Evaluation metrics

27 Evaluation RedQueen Smart Poisson Top-1 57 ± 3 58 ± 4 Average rank
59 ± 6 67 ± 10 Number of posts 61 ± 3 62 ± 4

28 Happy coding! Questions? Drop me an e-mail at utkarshu@mpi-sws.org
Skype: utkarsh.upadhyay


Download ppt "Human-centered Machine Learning"

Similar presentations


Ads by Google