https://proceedings.neurips.cc/paper/2006/file/f44ee263952e65b3610b8ba51229d1f9-Paper.pdf
Problem
Są rozgrywane mecze, skill drużyny w danym meczu to suma skilli graczy w drużynie w drużynie, skill gracza w danym meczu to sample z rozkładu normalnego wokół skilla gracza i ustalonej wariancji. Zadanie: muszą zaraportować skilla każdego gracza po skończonym meczu.
Rozwiązanie
Na początku zakładamy, że istnieje taki proces generujący wyniki meczu:
- gracz ma skilla oraz
- gracz ma performance w danym meczu oraz gdzie jest stałe
- performance teamu to suma performance graczy w danym teamie
Z meczu mamy outcome gdzie to miejsce, które zajął team nr 1.
Zastanawiamy się jakie jest prawdopodobieństwo , czyli zastanawiamy się jakie jest rozkład prawdopodobieństwa , , gdy dany jest wynik meczu oraz podział na drużyny . Inaczej mówiąc, zastanawiamy się jakie wartości , , mogły wygenerować taki wynik meczu.
Końcowo chcemy wyliczyć posterior , co osiągamy poprzez marginalizację, tzn. W jaki sposób policzyć tą marginalizację efektywnie? A no trzeba zapisać obliczenia jako Factor graph i użyć algorytmu Sum-product message passing, który powie nam jak policzyć to efektywnie.
Uwaga: tu jest założenie, że po nieskończonej liczbie meczy zbiega do 0, tzn. algorytm zbiega odkrywając prawdziwe .
Publikacja oparta na A family of algorithms for approximate Bayesian inference oraz Factor graphs and the sum-product algorithm. Oparta o algorytm expectation propagation zaproponowany w publikacji A family of algorithms for approximate Bayesian inference.
TODO: Online learning algorithm: Gaussian density filtering (?) - posterior distribution jest przybliżany rozkładem normalnym i jest używany jako prior do następnego meczu.
W Update equations (1) to , a to !!