lucasmaystre / kickscore

Pairwise comparisons with flexible time-dynamics.
MIT License
57 stars 14 forks source link

Model never converges when events with multiples winners are observed #2

Closed liampwll closed 4 years ago

liampwll commented 4 years ago

I'm attempting to apply kickscore to a game where each team has 5 players, but I've found that when I try to add a single event with multiple winners and losers the model never converges. When I have a separate event for each winner winning against each loser the model does usually converge. Is there something I should be doing differently in this scenario?

lucasmaystre commented 4 years ago

Hi @liampwll , thanks for raising this issue, this is a very good observation. I should put this in the documentation eventually.

You can usually fix this by decreasing the learning rate. To do this, when calling the fit() function, you can set the keyword argument lr with a value between 0.0 and 1.0 (default).

Could you try with lr=0.5 or lr=0.2?

Best, Lucas

liampwll commented 4 years ago

Thanks, 0.2 works well with my dataset and kernels although 0.5 does not.

lucasmaystre commented 4 years ago

Great. I think lr = (1 / n_players) is a good rule of thumb.

When you decrease the learning rate, you might also want to decrease the convergence threshold (tolparameter of the fit function), maybe to 1e-4 or 1e-5.