Eurovision 2018 – prédictions

Aujourd’hui un rapide article pour donner des premières prédictions pour l’Eurovision 2018, avec un modèle très simplifié basé sur les statistiques des vidéos publiées sur Youtube pour l’intégralité des pays participants, en espérant trouver le temps pour l’améliorer dans les prochaines années !

Les données

Nous allons essayer de prédire les résultats (participation à la finale – ce point avait déjà été discuté sur le blog, puis score obtenu) à partir des informations disponibles sur les vidéos Youtube : nombre de vues, nombre de “Like” (pouces vers le haut, qui indiquent que la vidéo a été appréciée) et nombre de “Dislike” (pareil mais vers le bas, qui indiquent que la vidéo n’a pas été appréciée par le spectateur).

Nous récupérons ces informations grâce au package R tuber, qui permet d’aller faire des requêtes par l’API de Youtube et ainsi de récupérer pour chacune des vidéos d’une playlist les informations nécessaires pour le modèle. Nous récupérons alors les données pour les chansons des concours 2016, 2017 et 2018. Ces informations sont ensuite complétées avec le nombre de points obtenus et le rang du classement final pour les finalistes des éditions 2016 et 2017. Les données sont disponibles ici.

Évidemment, ces données ont leurs limites. Je n’ai pas trouvé comment rechercher des informations sur les vidéos Youtube à une autre date, ce qui fait que l’on va utiliser des données après la diffusion des concours 2016 et 2017 pour évaluer un modèle, que l’on appliquera à des données avant le concours pour 2018. Par ailleurs, le système de notation a évolué en 2016, ce qui explique pourquoi on se limite aux données sur les deux dernières années pour notre modèle. Par ailleurs, pour lisser les effets de taille (1 millions de vues en moyenne pour les vidéos 2018 contre 5 millions pour celles de 2016), nous travaillons sur des données standardisées en divisant par la moyenne du nombre de vues, de likes, etc.

Le modèle

Nous travaillons ensuite sur deux problèmes : estimer la probabilité qu’une chanson soit qualifiée en finale, puis estimer le score qu’elle va obtenir, pour évaluer son classement final. En ce qui concerne la probabilité de qualification en finale, nous réalisons une régression logistique. La seule variable qui ressort est le nombre de Dislike, qui influe légèrement négativement la chance d’être qualifié. C’est assez logique : moins la vidéo est appréciée, moins il y a de chances que le pays soit qualifié en finale.

En ce qui concerne le nombre de points obtenus, nous testons deux approches concurrentes :

  • Une régression linéaire sur les variables : dans ce cas, on observe que le nombre de vues ne joue pas significativement, le nombre de Likes de façon très mineure et le nombre de Dislikes très nettement, avec un lien positif : plus il y a de pouces baissés, plus le score est important. Ce résultat atypique peut s’expliquer par le fait que la vidéo ukrainienne en 2016, gagnante, a plus de 40 000 pouces baissés.
  • Un arbre de régression qui permet de séparer à chaque étape la population en deux et d’évaluer un score moyen. Cette méthode est moins efficace pour prédire le score exact, mais elle permet d’identifier les déterminants du score. L’arbre ci-dessous décrit la partition des vidéos :

Cet arbre se lit de la façon suivante :

  • Si l’on a plus de 2,216 fois le nombre de vues moyen des vidéos de l’année, alors le score prédit par la méthode est 425 (les vidéos populaires ont des scores importants). Sinon, on passe à l’étape suivante
  • Si l’on a moins de 89% du nombre de Likes moyen des vidéos de l’année, alors on part dans le sous-arbre encadré en bleu ; si c’est plus, dans celui encadré en vert.
  • L’opération se répète jusqu’à qu’on arrive à un carré en bas de l’arbre, où l’on lit le score prévu

Les résultats

Voici les prédictions obtenues, en utilisant la méthode de régression linéaire pour le score total :

PaysProba d'aller en finaleScore prédit
Israël99%1585
Russie25%393
Espagne100%375
République Tchéque99%210
Bulgarie99%207
Suède94%189
Norvège74%150
France100%140
Grèce97%140
Estonie71%130
Australie75%129
Belgique74%119
Azerbaïdjan83%118
Macédoine67%117
Danemark85%116
Biélorussie78%109
Italie100%106
Malte79%106
Irlande73%106
Lituanie77%102
Arménie62%100
Autriche70%99
Chypre62%95
Serbie42%91
Portugal100%89
Royaume-Uni100%82
Ukraine38%80
Moldavie29%80
Slovénie19%80
Suisse48%77
Allemagne100%76
Finlande31%74
Hongrie28%74
Georgie15%74
Roumanie31%73
Croatie19%67
Pologne34%66
San Marin10%61
Montenegro16%60
Albanie21%57
Pays-Bas15%56
Lettonie16%55
Islande9%51

Le grand gagnant est Israël, ce qui est plus ou moins la prédiction faite par tout le monde : voir ici ou ici. À noter que l’année dernière, l’Italie était grande favorite (et a fini 6ème), donc rien n’est encore fait… Si vous voulez vous faire une idée :

Un résultat plus étonnant concerne la Russie. Elle est classée deuxième par notre modèle, mais avec une faible chance d’être qualifiée en finale. Cela semble venir d’un très haut nombre de pouces baissés sur la vidéo, qui influencent énormément notre prédiction. La Russie est placée 25ème par les bookmakers, donc à voir si notre modèle a détecté quelque chose ou s’il s’agit d’un cas de surapprentissage. Pareil, pour se faire un avis :

Et enfin, soyons chauvins ! Nous serions dans le top 10 avec Mercy. C’est d’ailleurs cohérent avec les estimations des bookmakers. Tout est donc encore possible 😉

Chance et talent dans le sport

(Ce petit article est une reprise d’un fil twitter fait à l’occasion du Final Four de la NCAA)

Aujourd’hui on propose de prendre un peu de temps pour discuter des notions de “chance” (luck) et de “talent” (skill) dans le domaine du sport, en s’inspirant d’arguments exposés dans The Success Equation: Untangling Skill and Luck in Business, Sports, and Investing, sorti en 2012. La question qui se pose est la suivante : dans les résultats d’une équipe sportive ou d’un athlète, qu’est-ce qui vient de l’habileté et qu’est-ce qui relève uniquement de la chance ? Même si l’on faisait l’hypothèse que le déterminant principal d’un résultat est le talent de l’athlète, certaines sous-performances peuvent arriver.

C’est un sujet assez classique, qui est développé dans la plupart des études statistiques sur le sport. Pour ceux qui préfèrent le format vidéo, voici un résumé rapide de ce qu’explique le livre :

Mathématiquement, on considère que le skill et la chance sont deux variables indépendantes. On peut donc écrire une équation très simple sur leur variance :

Var(observations) = Var(skill) + Var(chance)

Cela nous donne donc une façon d’estimer la contribution du skill dans les résultats, c’est à dire une idée de l’importance du talent de l’athlète :

Var(skill) = Var(observations) – Var(chance)

Plus ce terme est important, plus les résultats obtenus proviennent du fait que le sport récompense les joueurs qui ont du talent. Dans un jeu complètement aléatoire (pile ou face…), c’est uniquement la chance qui amène au résultat final. On imagine alors que chaque sport va plus ou moins s’éloigner de ce modèle.

Nous avions discuté de cette question par rapport au badminton et au tennis ; on constatait alors que, grâce à la règle de l’écart des deux points, il y avait une plus grande stabilité des victoires (et donc une plus faible part de chance) au tennis qu’au badminton. Une même question se posait sur le tir à l’arc, avec le changement des règles qui permet plus facilement de rattraper une flèche ratée.

Comment faire pour estimer cette contribution ? Pour le premier terme, Var(observations), c’est facile. On considère les résultats (d’une saison par exemple) comme une variable aléatoire et on calcule sa variance. On constate que certains sports sont plus variables que d’autres, par exemple le basket par rapport au hockey :

Le seconde terme, Var(chance), est un peu plus complexe à estimer. Dans son son livre, Mauboussin prend chaque match comme une expérience de Bernoulli (avec une probabilité de victoire qui correspond au taux de victoire dans la saison). Il obtient donc, par sport, un pourcentage d’explication du skill dans le résultat final. Par exemple, pour la NBA il obtient 88% et pour la NHL 47%.

Une bonne part de la variance s’explique en fait par le nombre de matches joués, qui correspond dans la logique à la “taille d’échantillon”. La NFL (16 matches / saison) est donc logiquement plus aléatoire que la NBA (82 matches / saison) sur l’axe skill / chance représenté en haut de l’article. On peut aussi appliquer le même concept en considérant chaque “action” comme une expérience aléatoire. Par exemple, chaque possession au basket, comme une chance de marquer avec une certaine probabilité. C’est pour cela l’on s’attendait à ce que l’underdog Loyola-Chicago essaye de jouer le plus lentement possible.

L’idée derrière cette stratégie est que moins de possessions implique plus de variance et donc moins de chances de l’emporter pour le favori ; en effet, plus l’on joue, plus l’aléatoire doit s’équilibrer et donc le talent va s’imposer. La validité de cette stratégie est disputée : certaines analyses statistiques ont montré que les chances de victoires des équipes mal classées (underdogs) contre des équipes réputées bien meilleures n’était pas modifiées par le rythme du match.

Pour conclure, le même genre d’analyse a été appliqué récemment (avec plus ou moins de succès) à l’esport. Yauheni Hladki a présenté à la GDC une analyse dont le résultat situe tous les jeux (oui, tous, même Hearthstone) à la droite des échecs sur l’axe skill / chance. Ce qui signifierait que la chance aurait moins d’impact sur le résultat que dans la plupart des sports. En d’autres termes, qu’une équipe mal classée de CS:GO n’aurait que des chances infimes de remporter un match contre une équipe du top mondial… pas terrible pour le suspense si cela était vrai !

La “clé” derrière ce résultat est que l’auteur considère chaque action effectuée en esport comme une expérience aléatoire. Cela inclut par exemple chacun des tirs effectués dans une partie de CS:GO ! La taille d’échantillon “équivalent” considérée est énorme (la variance obtenue est donc très faible) et c’est ce qui le conduit à placer tous les esports au même endroit sur l’axe. À vous de juger de la pertinence de cette méthode !