J'ai un ensemble de données détaillant un grand nombre de jeux de cricket (quelques milliers). Dans le cricket, les "quilleurs" lancent à plusieurs reprises une balle sur une succession de "batteurs". Le lanceur essaie de faire sortir le batteur. À cet égard, il est assez similaire aux lanceurs et frappeurs de baseball.
Si je prenais l'ensemble de données et divisais le nombre total de balles qui ont fait sortir un batteur par le nombre total de balles lancées, je peux voir que j'aurais la probabilité moyenne qu'un melon fasse sortir un batteur - ce sera autour de 0,03 ( j'espère que je ne me suis pas déjà trompé?)
Ce qui m'intéresse, c'est ce que je peux faire pour essayer de calculer la probabilité qu'un batteur spécifique soit renversé par un lanceur spécifique sur la balle suivante.
L'ensemble de données est suffisamment grand pour qu'un quilleur donné ait lancé des milliers de balles à un large éventail de batteurs. Je pense donc que je pourrais simplement diviser le nombre de retraits réalisés par un lanceur par le nombre de balles qu'il a lancées pour calculer une nouvelle probabilité pour ce joueur spécifique de sortir de la balle suivante.
Mon problème est que le jeu de données n'est pas assez grand pour garantir qu'un melon donné a lancé un nombre statistiquement significatif de balles sur un batteur donné. Donc, si je suis intéressé par le calcul de la probabilité d'une sortie pour un melon spécifique face à un batteur spécifique, je ne pense pas que cela ne puisse pas être fait de la même manière simpliste.
Ma question est de savoir si l'approche suivante est valable:
Sur l'ensemble des données, la probabilité qu'une balle sorte est de 0,03.
Si je calcule qu'en moyenne le melon A a une probabilité de sortir de 0,06 (c'est-à-dire deux fois plus probable qu'un melon moyen),
et en moyenne le batteur B avait une probabilité d'être hors de 0,01 (un tiers aussi probable qu'un batteur moyen),
est-il alors valable de dire que la probabilité que ce batteur spécifique soit sorti sur la prochaine balle de ce lanceur spécifique sera de 0,06 * (0,01 / 0,03) = 0,02?
Réponses:
Malheureusement, ce n'est peut-être déjà pas exactement ce que vous recherchez.
Supposons que nous ayons un seul melon et deux batteurs: Don Bradman et moi. (Je sais très peu de choses sur le cricket, donc si je fais quelque chose ici, faites le moi savoir.) Les jeux vont quelque chose comme:
Dans ce cas, il y a quatre outs sur 200 bols, donc la probabilité marginale pour un joueur de bowling de sortir un batteur est estimée à 4/200 = 2%. Mais vraiment, la probabilité que Don soit absent est plus proche de 1%, alors que la mienne est de 100%. Donc, si vous choisissez un batteur et un melon au hasard, la probabilité que ce melon sorte ce batteur cette fois-ci est plus comme (50% de chances que vous avez choisi Don) * (1% de chances qu'il sorte) + (50% de chances que vous avez choisi moi) * (100% de chance de sortir) = 50,05%. Mais si vous choisissez un terrain au hasard, il y a 2% de chances qu'il sorte. Vous devez donc bien réfléchir au modèle auquel vous pensez.
Quoi qu'il en soit, votre proposition n'est pas folle. Plus symboliquement, soit le lanceur et le batteur; laisser la probabilité que obtient out. Vous dites alors:b m F( b , m ) b m
Cela a la propriété souhaitée: il est tout aussi cohérent si vous prenez des moyens sur seulement ou .
Notez que dans ce cas, nous pouvons affecter Votre hypothèse est que vous pouvez observer et assez bien à partir des données. Tant que (a) vous avez suffisamment de jeux [ce que vous faites] et (b) que les joueurs se jouent tous avec des fréquences raisonnablement similaires, alors c'est très bien.
Pour élaborer un peu sur (b): imaginez que vous avez des données provenant d'un tas de jeux professionnels et d'un tas de jeux de moi jouant avec mes amis. S'il n'y a pas de chevauchement, peut-être que j'ai l'air vraiment bien par rapport à mes amis, alors peut-être que vous pensez que je suis bien meilleur que le pire joueur professionnel. C'est évidemment faux, mais vous n'avez aucune donnée pour réfuter cela. Si vous avez un petit chevauchement, où j'ai joué contre un joueur professionnel une fois et que j'ai été détruit, les données permettent de me classer, mes amis et moi, bien pire que les pros, mais votre méthode ne l'expliquerait pas. Techniquement, le problème ici est que vous supposez que vous avez un bon échantillon pour par exemple , mais votre distribution est biaisée.Eb′[f(b′,m)] b′
Bien sûr, vos données ne seront pas si mauvaises, mais selon la structure de la ligue ou autre, cela pourrait avoir certains éléments de ce problème.
Vous pouvez essayer de le contourner avec une approche différente. Le modèle proposé pour est en fait une instance de modèles de factorisation matricielle de bas rang communs dans le filtrage collaboratif , comme dans le problème Netflix . Là, vous choisissez la fonction et comme étant de dimension , et vous représentez . Vous pouvez interpréter comme complexifiant votre modèle d'un score de «qualité» unique à des scores selon plusieurs dimensions: peut-être que certains quilleurs réussissent mieux contre certains types de batteurs. (Cela a été fait par exemple pour les matchs de la NBA .)f g(b) h(m) r f(b,m)=g(b)Th(m) r>1
La raison pour laquelle ils sont appelés factorisation matricielle est que si vous créez une matrice avec autant de lignes que de quilleurs et autant de colonnes que de batteurs, vous pouvez l'écrire commeF
Bien sûr, vous ne pouvez pas observer directementLe modèle habituel consiste à observer au hasard des entrées bruyantes de ; dans votre cas, vous obtenez d'observer un tirage au sort d'une distribution binomiale avec un nombre aléatoire d'essais pour chaque entrée de .F F F
Vous pouvez construire un modèle de probabilité comme, par exemple:
Ce n'est pas un modèle parfait: d'une part, il ignore que est corrélé aux scores (comme je l'ai mentionné dans la première section), et plus important encore, il ne contraint pas à être dans (vous utiliseriez probablement un sigmoïde logistique ou similaire pour y parvenir). Un article connexe, avec des a priori plus complexes pour et (mais qui n'utilise pas la vraisemblance binomiale) est: Salakhutdinov et Mnih, factorisation de la matrice probabiliste bayésienne utilisant la chaîne de Markov Monte Carlo , ICML 2008. ( doi / pdf de l'auteur )F i j [ 0 , 1 ] G Hn Fij [0,1] G H
la source
Vous ne pouvez pas déduire la probabilité correcte que B sera absent étant donné que A est le lanceur si A et B ne se sont jamais rencontrés sur le terrain uniquement en fonction de leurs moyennes avec les autres joueurs.
la source