Glossaire¶
Tout le vocabulaire du cours, par ordre alphabétique. Chaque entrée est autonome : deux à quatre phrases, sans supposer la lecture des autres.
Quand un terme a un sens général en apprentissage automatique et un sens particulier dans ce projet, les deux sont donnés.
A¶
Accuracy → voir Exactitude.
ADR (Average Damage per Round) — Dégâts moyens infligés par un joueur et
par manche. Statistique de contribution brute, moins sensible au hasard que le
nombre d'éliminations : un joueur qui blesse trois adversaires sans les
achever a un ADR élevé et zéro kill. Elle figure dans les tables de statistiques
par joueur extraites du cache et alimente la feature padr_diff.
Anachronisme — Utiliser dans un calcul rejoué une valeur qui n'était pas connue à la date rejouée. C'est le mode de défaillance principal d'un backtest bâti sur des pages web vivantes : la page consultée aujourd'hui décrit le monde d'aujourd'hui, pas celui du jour qu'on reconstitue. Sept des dix correctifs du moteur de classement du projet sont des anachronismes.
Anti-éco → voir Éco.
B¶
Balayage chronologique (sweep) — Parcours des matchs dans l'ordre du temps, où l'on lit l'état des équipes pour construire les features du match courant, puis on met à jour cet état avec le résultat. Inverser ces deux opérations fait fuir le résultat dans ses propres features. C'est le mécanisme qui garantit l'intégrité temporelle dans tout le projet.
Baseline — Le modèle de référence qu'il faut battre pour prétendre avoir apporté quelque chose. Ici, le Glicko officiel de Valve, à 0.2422 de Brier et 56,0 % d'exactitude sur le holdout. Une baseline mal choisie rend n'importe quel résultat impressionnant.
Bayésien (raisonnement) — Manière de modéliser une quantité inconnue par une distribution de probabilité plutôt que par un nombre, et de mettre à jour cette distribution à chaque nouvelle observation. Les horloges Glicko-2 et TrueSkill sont bayésiennes : elles portent à la fois une estimation de force et une incertitude sur cette estimation.
Blend (mélange) — Combinaison pondérée des sorties de plusieurs modèles. Dans ce projet, le mélange se fait sur les logits et non sur les probabilités : \(\ell = w \cdot \ell_1 + (1-w) \cdot \ell_2\), puis retour en probabilité. Le leader final est un blend 75/25 entre un modèle entraîné sur un segment et un modèle global.
Bo1, Bo3, Bo5 (best of N) — Format d'une série : la première équipe à remporter la majorité des \(N\) cartes gagne. Un Bo3 se joue en deux cartes gagnantes, un Bo5 en trois. Plus \(N\) est grand, plus la variance du résultat diminue et plus le favori est avantagé.
bo3.gg — Site de statistiques esport dont l'API REST publique, sans clé, a servi de source externe au projet. Elle fournit le détail manche par manche (valeur d'équipement, argent dépensé, premiers kills, échanges, clutchs, raison de fin de manche) que le cache local ne contenait pas, ainsi qu'un historique de 40 023 matchs remontant à janvier 2024.
Brier (score de) — Métrique d'évaluation d'une probabilité : \(\text{Brier} = \frac{1}{n}\sum_{i=1}^{n}(p_i - y_i)^2\), où \(p_i\) est la probabilité annoncée et \(y_i\) vaut 1 si l'événement s'est produit, 0 sinon. Plus il est bas, mieux c'est ; une pièce lancée donne 0.250. Il pénalise à la fois les mauvais pronostics et la mauvaise calibration, ce qui en fait le juge de paix de toute la campagne.
C¶
Cache — Copie locale des pages web déjà téléchargées, ici environ 16 000 pages HTML. Il permet de travailler sans réseau, mais il introduit deux risques : les pages peuvent être périmées, et deux pages capturées à des moments différents peuvent ne plus se raccorder (voir Patchwork).
Calibration — Propriété d'un modèle dont les probabilités annoncées correspondent aux fréquences observées : parmi les matchs annoncés à 70 %, environ 70 % doivent être gagnés. Elle se vérifie en découpant les prédictions en tranches et en comparant probabilité moyenne et taux observé. Un modèle peut bien discriminer et être mal calibré, et réciproquement.
CatBoost — Bibliothèque de gradient boosting sur arbres, concurrente de XGBoost et LightGBM. C'est elle qui a produit le meilleur candidat de l'exploration « gbdt » (0.22262 en validation), pour un résultat final de 0.2331 sur le holdout — soit exactement le niveau du modèle non réglé.
Clutch — Situation où un joueur reste seul face à plusieurs adversaires et
remporte la manche. Le taux de clutchs réussis est une des features d'économie
par manche (eco_clutch_diff) apportées par la source externe.
Cote décimale — Format de cote qui exprime le multiplicateur de mise : une cote de 1,445 rend 1,445 € pour 1 € misé en cas de gain, mise comprise. Plus elle est basse, plus l'équipe est favorite. Son inverse \(1/c\) est la probabilité brute qu'elle suggère, marge du bookmaker incluse — voir Dévigorisation et Overround.
Cotes (odds) — Prix proposé par un bookmaker, dont on déduit une probabilité implicite. Elles constituent le repère de performance le plus dur du domaine, parce qu'elles agrègent l'information de milliers de parieurs. La mission de reconnaissance les avait déclarées inaccessibles — injectées en JavaScript géolocalisé sur le site source, réservées aux offres payantes chez les fournisseurs professionnels — mais 1 428 matchs cotés d'avant-match ont finalement été retrouvés dans un champ jamais ouvert de notre propre moisson.
Couverture — Proportion des observations pour lesquelles une source de données est réellement disponible. Une feature à 19 % de couverture — cas des statistiques de carrière archivées — n'apporte rien même si elle est de bonne qualité, parce que 81 % des lignes doivent être remplies par une valeur neutre.
CT / T — Les deux camps de CS2 : Counter-Terrorists (défense) et
Terrorists (attaque). Une carte se joue en deux mi-temps avec échange des
camps. Les taux de victoire par camp (ct_share_diff, t_share_diff) sont des
features à part entière, parce que certaines équipes sont nettement meilleures
d'un côté.
D¶
Demi-vie (half-life) — Paramètre d'une pondération par récence : durée au bout de laquelle une observation compte pour moitié. Un match d'il y a \(t\) jours reçoit un poids \(2^{-t/h}\) où \(h\) est la demi-vie. Le leader push utilisait 180 jours, assault 365, et le leader final n'en utilise aucune (pondération uniforme).
Dévigorisation (devigging) — Opération qui retire la marge du bookmaker d'un jeu de cotes pour en extraire les probabilités qu'il croit réellement : \(p_i = (1/c_i) / \sum_j (1/c_j)\), où \(c_i\) est la cote de l'issue \(i\). Sans elle, les « probabilités » lues dans les cotes somment à plus de 1 et paraissent surconfiantes, ce qui pénalise artificiellement le bookmaker au score de Brier. Toutes les comparaisons au marché de ce cours portent sur des probabilités dévigorisées.
Désaccord des horloges (dissensus) — Écart entre les prédictions de deux systèmes de rating différents sur le même match. Contre-intuitivement, ce désaccord est lui-même un signal : quand Glicko et TrueSkill ne sont pas d'accord, l'information portée par leur divergence améliore le modèle (coefficient +0,07 dans l'approche logreg).
Différence signée — Forme donnée à presque toutes les features du projet : au lieu de fournir la valeur de l'équipe 1 et celle de l'équipe 2, on fournit leur écart. Cela centre le problème sur zéro, rend la frontière de décision presque linéaire et divise par deux le nombre de colonnes.
E¶
Éco (manche) — Manche où une équipe choisit délibérément de ne pas acheter d'équipement pour économiser. Une manche anti-éco est la manche symétrique vue de l'adversaire, qui doit convertir son avantage matériel. Les taux de conversion de ces situations font partie des features d'économie par manche.
Elo — Système de rating par mise à jour additive : après un match, le vainqueur gagne \(K \cdot (1 - E)\) points et le perdant en perd autant, où \(E\) est la probabilité de victoire attendue d'après l'écart de rating. Inventé pour les échecs, il est devenu l'archétype des horloges de force.
Elo à marge (MOV Elo, margin-of-victory Elo) — Variante d'Elo où l'ampleur de la victoire module la mise à jour : un 2-0 rapporte plus qu'un 2-1. Le projet utilise la recette popularisée par FiveThirtyEight — un facteur en \(\ln(1 + \text{marge})\) assorti d'une correction d'autocorrélation qui empêche les équipes fortes de gonfler indéfiniment. C'était la meilleure horloge simple du projet avant l'arrivée de TrueSkill.
Ensemblage → voir Stack.
Exactitude (accuracy) — Proportion de prédictions dont le côté est correct (probabilité au-dessus de 50 % pour l'équipe qui a effectivement gagné). Elle ignore complètement la confiance : un modèle qui annonce 51 % et un qui annonce 99 % obtiennent le même crédit. C'est pourquoi elle ne sert ici que de métrique secondaire, derrière le Brier.
F¶
Feature (variable explicative) — Une colonne d'entrée du modèle, calculée à partir de l'information disponible avant le match. Le leader en utilise 54, des plus simples (indicateur LAN) aux plus composées (produit entre un indicateur de segment et un écart de rating).
Fenêtre — Période d'historique utilisée pour construire les features et entraîner le modèle. La fenêtre native du projet était de six mois ; l'étendre à douze mois — pour que les ratings arrivent chauds — a produit le plus gros gain unitaire de la campagne (−0.0072 de Brier).
First kill — Première élimination d'une manche. Le taux de premiers kills et le taux de victoire de la manche après un premier kill mesurent l'agressivité et sa rentabilité ; ils font partie des features d'économie par manche.
FIT / VAL / TRAIN / HOLD — Les quatre découpages temporels du projet. FIT (9 479 matchs) sert à ajuster les coefficients pendant l'exploration, VAL (808) à choisir les hyperparamètres et les candidats, TRAIN (10 287 = FIT + VAL) à réentraîner le candidat retenu, et HOLD (1 146) à le mesurer une seule fois.
Forfait — Match attribué sans être joué. Il fausse tous les compteurs qui le traitent comme un match normal ; le projet a dû le détecter dans les notes d'administration des pages de match, en distinguant le forfait de série du forfait d'une seule carte.
Fuite du futur → voir Leakage.
G¶
GBDT (Gradient Boosted Decision Trees) — Famille de modèles qui empilent des arbres de décision, chacun corrigeant l'erreur résiduelle des précédents. XGBoost, LightGBM et CatBoost en sont trois implémentations. Excellents pour découvrir des interactions et des seuils non spécifiés, ils n'ont apporté aucun gain ici — parce que les features étaient déjà des écarts, donc une frontière presque linéaire.
GBDT→LR — Recette publiée par Facebook en 2014 : faire pousser un petit ensemble d'arbres, transformer la feuille atteinte par chaque arbre en variable indicatrice, et donner ces indicatrices à une régression logistique. Testée ici, elle échoue lourdement (0.2405 et plus contre 0.2263) : sur une quarantaine de features continues déjà bien construites, les feuilles n'apportent que du bruit.
Glicko — Système de rating qui ajoute à l'Elo une mesure d'incertitude, le RD. Un joueur inactif voit son RD grandir, donc son rating bouger davantage au prochain match. Le classement officiel de Valve utilise un Glicko dont le RD est figé à 75, ce qui neutralise précisément cette mécanique.
Glicko-2 — Extension de Glicko avec une volatilité \(\sigma\) qui évolue elle-même dans le temps, pour distinguer une équipe régulièrement faible d'une équipe irrégulière. Rejoué complètement par le projet, il donne 0.2365 en prédicteur pur contre 0.2422 pour le Glicko figé de Valve.
H¶
H2H (head-to-head) — Historique des confrontations directes entre deux équipes. Utile mais vite redondant : le projet a mesuré qu'un H2H enrichi et pondéré par le recouvrement de roster n'apportait rien de plus (0.2264 contre 0.2263) une fois les horloges de force et le bilan simple déjà présents.
HLTV — Site de référence du Counter-Strike compétitif, source principale des données du projet (résultats, compositions, statistiques par joueur, classement mondial). Son sous-domaine de statistiques est protégé par un challenge Cloudflare que le projet n'a pas pu franchir, ce qui a orienté la collecte vers le cache local, les archives web et une API tierce.
Holdout — Ensemble de données mis de côté au début et jamais utilisé pour entraîner ni pour choisir quoi que ce soit ; il ne sert qu'à la mesure finale. Ici : les 1 146 matchs des 42 derniers jours, avec un budget d'une seule passe par chantier. Chaque consultation supplémentaire érode sa capacité à dire la vérité.
Horloge de force — Nom donné dans ce cours à tout système qui entretient une estimation de la force d'une équipe, mise à jour match après match : Elo, Glicko, Glicko-2, TrueSkill, pi-ratings. « Horloge » parce que l'état avance avec le temps et qu'il faut le laisser tourner assez longtemps pour qu'il soit juste.
I¶
Importance (gain) — Mesure de la contribution d'une feature à un modèle à
base d'arbres : somme des améliorations de critère apportées par les
découpages qui l'utilisent. Elle a servi ici à identifier round_share_diff
comme feature n° 1 absolue, devant l'écart d'Elo à marge.
Intégrité temporelle — Garantie qu'aucune feature d'un événement ne contient d'information postérieure à cet événement. Elle se viole de deux façons : par inversion du balayage chronologique, et par anachronisme de source. Toute violation invalide l'évaluation entière.
Interaction — Feature construite comme le produit de deux autres, qui permet à un modèle linéaire d'exprimer « l'effet de A dépend de B ». Le gain du chantier lastmile vient d'un bloc d'interactions entre un indicateur « les deux équipes sont bien connues » et les sept features les plus fortes.
Isotonique (régression) — Méthode de calibration non paramétrique qui ajuste une fonction croissante par morceaux entre probabilités annoncées et fréquences observées. Testée ici, elle dégrade systématiquement, comme l'échelle de Platt, parce que le défaut de calibration observé sur le holdout n'existait pas dans les données d'entraînement.
K¶
K (facteur) — Pas d'apprentissage d'un système Elo : il fixe l'ampleur de la mise à jour après chaque match. Un \(K\) élevé rend le rating réactif mais bruyant, un \(K\) faible le rend stable mais lent à intégrer un changement réel de niveau.
KAST — Pourcentage de manches où un joueur a obtenu une élimination (Kill),
une assistance (Assist), a survécu (Survived) ou s'est fait échanger
(Traded). Il mesure la régularité de contribution plutôt que l'éclat, et c'est
la deuxième feature de statistiques joueurs la plus utile du projet
(pkast_diff).
L¶
L1 / L2 (régularisation) — Pénalités ajoutées à la fonction de coût pour empêcher les coefficients de devenir extrêmes. L1 (somme des valeurs absolues) annule des coefficients et sélectionne des features ; L2 (somme des carrés) les rétrécit tous sans en annuler. Tous les leaders de cette campagne sont des logistiques L2, avec un paramètre \(C = 0{,}3\).
LAN — Match joué sur place, les équipes physiquement présentes dans la même salle, par opposition à online. C'est le segment le plus prévisible du holdout (Brier 0.1722, exactitude 74,7 %) — pour des raisons qui tiennent probablement plus à la composition des plateaux qu'aux conditions de jeu.
Leaderboard (classement) — Ici, le fichier partagé où chaque approche écrit sa ligne unique en fin de course : nom, Brier, log-loss, exactitude, note. C'est la seule sortie comparable entre approches, et la règle d'admission est stricte — on n'écrit que si l'on bat le leader.
Leakage (fuite du futur) — Présence, dans les features d'un événement, d'information qui n'était pas disponible avant lui. Elle produit un modèle spectaculaire en évaluation et sans valeur en production. Elle ne lève aucune erreur et ne dégrade aucune métrique : c'est ce qui la rend dangereuse.
LightGBM — Implémentation de gradient boosting réputée pour sa rapidité (73 secondes pour 50 essais de réglage ici, contre 236 pour XGBoost). Son meilleur candidat atteint 0.223 en validation, sans se transférer en gain sur le holdout.
Log-loss (entropie croisée) — Métrique d'évaluation : \(-\frac{1}{n}\sum_i \left[ y_i \ln p_i + (1-y_i)\ln(1-p_i)\right]\). Elle punit beaucoup plus durement qu'un Brier les erreurs commises avec une forte confiance, jusqu'à l'infini pour une probabilité de 0 attribuée à un événement qui se produit. Une pièce lancée donne 0,693.
Logistique (régression) — Modèle linéaire pour la classification binaire : il calcule une combinaison pondérée des features, puis la passe dans la fonction \(\sigma(z) = 1/(1+e^{-z})\) pour obtenir une probabilité. Simple, calibré par construction et interprétable coefficient par coefficient, c'est le modèle de tous les leaders de cette campagne.
Logit — Transformation inverse de la sigmoïde : \(\operatorname{logit}(p) = \ln\!\big(p/(1-p)\big)\). Elle envoie une probabilité de \(]0,1[\) vers toute la droite réelle, ce qui permet de mélanger deux modèles de façon linéaire sans écraser les valeurs extrêmes. Tous les blends du projet se font dans cet espace.
M¶
Map (carte) — Terrain sur lequel se joue une manche de CS2. Une série se joue en plusieurs cartes choisies par un processus de veto, et chaque équipe a ses préférences — d'où l'intérêt de modéliser la force par carte plutôt qu'en global.
Marché d'avant-match / marché en direct (line / in-play) — Les deux
régimes de cotation d'un bookmaker. Le premier est ouvert avant le coup d'envoi
et constitue le seul repère légitime pour juger un modèle de prédiction. Le
second est mis à jour pendant la rencontre et connaît déjà une partie du
résultat : dans notre moisson, il affichait 0.0555 de Brier, une cote de favori
médiane à 1,03 et une tranche « 80-100 % » gagnée 99,5 % du temps. C'est une
fuite du futur, et il a été mis en quarantaine sous l'étiquette market ==
"live" plutôt que supprimé, pour que l'erreur reste traçable.
MOV (margin of victory) — Marge de victoire, ici mesurée en manches. Elle porte beaucoup plus d'information que le simple résultat binaire : un 16-2 et un 16-14 ne disent pas la même chose. Voir Elo à marge.
Momentum — Features décrivant la dynamique récente d'une équipe : nombre de matchs joués sur 7 et 21 jours, série de victoires en cours. Retenues par l'approche push, elles apportent un gain faible mais réel.
Monte Carlo — Méthode d'estimation par simulation répétée : on tire aléatoirement le résultat de chaque match à venir selon les probabilités du modèle, on rejoue le classement, et on répète des centaines de fois pour obtenir une distribution. C'est le consommateur final des probabilités de ce projet, d'où l'exigence de calibration.
mu (\(\mu\)) — Dans TrueSkill, l'estimation moyenne de la force d'un joueur. Elle démarre à une valeur neutre (25 par convention) et s'ajuste à chaque match, d'autant plus vite que l'incertitude \(\sigma\) associée est grande.
O¶
OOF (out-of-fold) — Prédiction faite sur des données que le modèle n'a pas vues pendant son entraînement, obtenue en découpant le jeu en blocs et en prédisant chaque bloc avec un modèle ajusté sur les autres. Indispensable pour entraîner un méta-modèle d'empilement sans lui donner des prédictions sur-optimistes. Dans un contexte temporel, les blocs doivent être des préfixes chronologiques, jamais des blocs tirés au hasard.
Online — Match joué à distance, par opposition à LAN. C'est le régime majoritaire (766 des 1 146 matchs du holdout) et le plus difficile à prédire (Brier 0.2199).
Overround (marge du bookmaker, vigorish) — Somme des inverses des cotes d'un même match, \(\Omega = \sum_j 1/c_j\). Elle dépasse 1 : l'excédent est la marge de l'opérateur, mesurée entre 6,4 % et 8,2 % selon les mois sur notre pool. Un overround plausible est la signature d'un vrai marché d'avant-match ; son absence, ou des cotes massivement collées à 1,00, trahit des cotes en direct. C'est aussi la marge qu'il faudrait battre — et pas seulement égaler — pour qu'un pari soit rentable.
Overtime (prolongation) — Manches supplémentaires jouées lorsqu'une carte est à égalité au terme du temps réglementaire. Elles sont comptées dans les scores extraits du cache et affectent la marge de victoire.
P¶
Pagination par décalage (offset pagination) — Découpage d'une liste en pages numérotées par position : page 0, page 100, page 200. Sur une liste triée du plus récent au plus ancien et alimentée en continu, tout glisse à chaque nouvel élément : la page 100 d'aujourd'hui ne contient pas ce que contenait la page 100 d'hier. Mettre en cache par numéro de page est donc une erreur de conception.
Patchwork (de pagination) — Défaut résultant d'un cache où des pages consécutives proviennent de collectes différentes : entre les deux générations, une bande d'éléments n'apparaît sur aucune page et devient invisible. Dans ce projet, 35 matchs manquants ont fait passer un indicateur de qualité de 1,1 à 6,1 sans qu'aucune ligne de code n'ait changé. Le correctif est une sentinelle qui refuse de calculer sur un cache incohérent.
phi (\(\phi\)) — Dans Glicko-2, la déviation du rating, équivalent du RD. Elle grandit quand une équipe n'a pas joué depuis longtemps, ce qui rend le rating plus mobile au retour. C'est exactement le mécanisme que le classement officiel neutralise en figeant son RD.
pi-ratings — Système de rating proposé par Constantinou et Fenton, conçu
pour prédire l'écart de score attendu plutôt que la victoire, avec une mise
à jour amortie en logarithme de l'erreur. Adapté ici à l'écart de manches, il
apporte la feature pi_diff_a, retenue dans tous les leaders à partir de push.
Pistol round — Première manche de chaque mi-temps, jouée avec un équipement minimal imposé. Son issue conditionne l'économie des manches suivantes, ce qui en fait un indicateur de forme à part entière.
Plancher de bruit — Niveau d'écart en dessous duquel une différence de score n'est plus distinguable du hasard d'échantillonnage. Une fois atteint, la validation continue de désigner des « meilleurs » candidats, mais ces gains ne survivent plus au jeu de test — c'est ce qui s'est produit trois fois de suite en fin de campagne (hardcore, ultimate, lastcard), et c'est ce qui a servi de critère d'arrêt. À ne pas confondre avec un seuil de bruit, qui est une valeur qu'on se fixe d'avance (0.0005 pour lastcard) pour décider si un candidat mérite d'être testé.
Platt (échelle de) — Méthode de calibration paramétrique : on ajuste une régression logistique à une variable sur les sorties du modèle pour corriger sa confiance. Testée ici, elle dégrade — la surconfiance observée sur le holdout n'existait pas dans les données d'entraînement, donc rien de correct ne pouvait l'apprendre.
Pool (de matchs) — L'ensemble des matchs sur lesquels un modèle est mesuré.
Deux Brier ne sont comparables que s'ils portent sur des pools de difficulté
comparable : notre pool mélange tier 1 à tier 3, le repère bookmaker de 0.198
est mesuré sur du tier 1 seul. Le chantier bookpool a montré, contre
l'intuition, que le pool réellement coté est plus dur que notre pool global —
l'ancre externe y perd 3,8 points d'exactitude.
Probabilité implicite — Probabilité déduite d'une cote. Sous sa forme brute, c'est \(1/c\) ; elle inclut la marge de l'opérateur et somme donc à plus de 1 sur l'ensemble des issues. Sous sa forme dévigorisée, elle somme à 1 et représente ce que le bookmaker croit réellement : sur notre pool, une cote médiane de 1,445 donne 69,2 % en brut et 64,5 % après dévigorisation. C'est toujours la forme dévigorisée qui est comparée aux sorties du modèle.
Proper scoring rule (règle de score propre) — Métrique dont l'optimum est atteint lorsqu'on annonce ses vraies croyances, sans possibilité de gagner en trichant sur sa confiance. Le Brier et la log-loss en sont ; l'exactitude n'en est pas.
R¶
Rating 3.0 — Note synthétique de performance individuelle calculée par HLTV,
combinant plusieurs statistiques. Elle est uniforme sur toute la période du cache
(janvier à août 2026), ce qui la rend directement comparable d'un match à
l'autre, et alimente les features prat_mean_diff et prat_star_diff.
RD (rating deviation) — Mesure d'incertitude d'un rating Glicko : grossièrement, l'écart-type de l'estimation. Un RD élevé signifie « je ne suis pas sûr du niveau de cette équipe » et permet des mises à jour plus rapides. Le classement officiel de Valve le fige à 75, ce qui supprime l'information d'incertitude — c'est le point de départ de toute l'approche bayésienne du projet.
Récence (pondération par) — Donner plus de poids aux matchs récents pendant l'entraînement, généralement par décroissance exponentielle paramétrée par une demi-vie. Contre-intuitivement, le leader final n'en utilise aucune : supprimer la décroissance a légèrement amélioré la validation.
Régularisation → voir L1 / L2.
Rétrécissement (shrinkage) — Rapprocher les probabilités de 50 % par \(p' = 0{,}5 + s\,(p - 0{,}5)\), avec \(s \in\, ]0,1]\). La transformation préserve l'ordre et le côté de 50 %, donc l'exactitude est inchangée par construction : seul le Brier juge. Testée sur le segment difficile, elle dégrade — preuve que le modèle n'y est pas surconfiant.
Roster — Composition d'une équipe, c'est-à-dire la liste des cinq joueurs
alignés. Sa stabilité est une feature (stability_diff), et ses changements sont
la principale raison pour laquelle un rating d'équipe peut devenir faux du jour
au lendemain — d'où l'intérêt d'un rating par joueur comme TrueSkill.
Round (manche) — Unité élémentaire de CS2 : une équipe gagne la manche en éliminant l'adversaire ou en accomplissant l'objectif. Une carte se gagne en atteignant 13 manches. Comme il y a des dizaines de manches par match, elles portent bien plus d'information statistique que le score de série.
round_share — Part des manches gagnées par une équipe sur ses 30 dernières
cartes. C'est la feature la plus importante de tout le projet (round_share_diff),
devant l'écart d'Elo à marge : dominer les manches prédit mieux que gagner les
séries.
S¶
Segment — Sous-ensemble de matchs partageant une caractéristique connue avant le match : LAN ou online, Bo1 ou Bo3, horloges froides ou informées. Découper les prédictions du holdout par segment est gratuit — ça ne consomme aucun budget de mesure — et a produit le résultat le plus riche de la campagne.
Sentinelle — Garde-fou qui interrompt un calcul quand ses entrées sont douteuses, plutôt que de produire un chiffre faux. Celle du projet lève une erreur si deux pages consécutives du cache viennent de générations différentes et laissent un trou temporel significatif ; ses deux seuils sont justifiés par des mesures et non par l'intuition.
sigma (\(\sigma\)) — Selon le contexte : l'incertitude sur la force d'un joueur
dans TrueSkill (elle décroît à mesure qu'il joue), ou la volatilité dans
Glicko-2. Dans le projet, la somme des \(\sigma\) des deux équipes
(ts_sigma_sum) sert d'indicateur « connaît-on bien ces deux équipes ? » et
définit le segment du leader final.
Stack (empilement) — Technique d'ensemble à deux étages : plusieurs modèles de base produisent des prédictions hors-échantillon, puis un méta-modèle apprend à les combiner. Testée deux fois ici — avec puis sans diversité de features — et battue les deux fois par un simple modèle plat entraîné sur l'union des features.
Standardisation — Recentrer chaque feature sur sa moyenne et la diviser par son écart-type, calculés sur les données d'entraînement seulement. Sans elle, la régularisation L2 pénalise arbitrairement plus les features de grande échelle. Le modèle sauvegardé du leader stocke ses moyennes et écarts-types avec ses coefficients.
Star (joueur) — Le meilleur joueur d'une équipe selon une statistique
glissante. La feature prat_star_diff compare les meilleurs joueurs de chaque
camp, en complément de la moyenne d'équipe : deux équipes de même moyenne mais
d'inégale répartition ne se comportent pas pareil.
Sur-ajustement (overfitting) — Ajuster un modèle ou une décision au bruit d'un échantillon plutôt qu'à son signal. La forme la plus insidieuse ici n'est pas le sur-ajustement du modèle aux données d'entraînement, mais le sur-ajustement des décisions à la fenêtre de validation : 110 candidats évalués sur 531 matchs ont produit un gain apparent de 0.0012 qui valait zéro.
T¶
tau (\(\tau\)) — Paramètre de volatilité de Glicko-2 (retenu à 0,3 ici) ou paramètre de dérive de TrueSkill. Il contrôle la vitesse à laquelle un rating peut légitimement changer entre deux matchs ; trop grand, il rend le système nerveux, trop petit, il l'empêche de suivre une équipe qui progresse.
Tier 1 / 2 / 3 — Classification informelle du niveau d'un tournoi ou d'une équipe. C'est la variable de confusion majeure de toute comparaison entre projets : un pool tier 1 pur contient des affiches serrées et donne des Brier plus élevés, un pool mixte contient des déséquilibres et donne des Brier plus bas — à qualité de modèle identique.
Timeline — Suite ordonnée des matchs sur laquelle un balayage chronologique
opère. La fusion final a construit une timeline commune aux trois familles
de signal, ce qui a permis de rejouer les modules de chaque famille tels quels et
d'obtenir des features parfaitement alignées.
TrueSkill — Système de rating bayésien de Microsoft, conçu pour les jeux en
équipe : chaque joueur porte une distribution \((\mu, \sigma)\), et la force
d'une équipe est l'agrégation des distributions de ses membres. Son avantage
décisif ici : les ratings suivent les joueurs à travers les transferts, là où
un rating d'équipe repart de zéro à chaque recomposition. C'est la meilleure
horloge du projet (ts_diff, feature n° 1 de l'approche bayes).
tsm — Le TrueSkill mis à jour une fois par carte au lieu d'une fois par série, introduit par l'approche push : 2,1 fois plus de mises à jour, donc une horloge plus réactive. Il démarre froid au début de la timeline du concours, ce qui a motivé la tentative de le réchauffer — voir wtsm.
V¶
Validation (interne) — Portion de l'historique, distincte du holdout, sur laquelle toutes les décisions sont prises : hyperparamètres, sélection de features, choix du candidat final. Ici les 42 jours précédant le holdout, soit 808 matchs. Elle peut mentir — voir Sur-ajustement.
Veto — Procédure d'élimination et de sélection des cartes avant une série : les équipes bannissent et choisissent à tour de rôle. Le veto est prévisible statistiquement (chaque équipe bannit ses pires cartes) mais pas assez : les tentatives de recomposition d'une probabilité de série à partir de modèles par carte ont toutes échoué, précisément parce que le veto attendu est trop bruité.
VRS (Valve Regional Standings) — Le classement officiel qui distribue les invitations au Major. Sa reproduction fidèle est le projet dans lequel s'inscrit cette campagne de prédiction : le simulateur de tournois restants avait besoin de probabilités de victoire, ce qui a lancé tout le reste.
W¶
Warm-up (préchauffage) — Faire tourner les horloges de force sur une période d'historique avant le début de la fenêtre d'évaluation, pour qu'elles arrivent stabilisées. Deux formes ici : l'extension de la fenêtre native de six à douze mois (−0.0072 de Brier, le plus gros gain de la campagne) et le préchauffage externe sur 40 023 matchs remontant à 2024 (−0.0018).
Wayback Machine — Archive du web d'archive.org, utilisée comme source de contournement : les pages de statistiques inaccessibles en direct y sont disponibles en clair, et l'horodatage de chaque cliché fournit gratuitement l'intégrité temporelle. Elle a fourni 966 clichés datés, pour une couverture finale de 19 % du holdout — insuffisante pour apporter un gain.
wtsm — Version réchauffée du TrueSkill par carte (tsm), construite sur les 77 890 cartes de l'historique externe remontant à 2024 : 39 929 matchs, 70 815 mises à jour au niveau carte, 5 039 replis au niveau match. Corrélée à seulement 0,64 avec l'horloge d'origine, donc porteuse d'information différente. C'est le dernier candidat de la campagne : −0.0012 en validation, +0.0003 en holdout — infirmé, et signal de clôture.
X¶
XGBoost — Implémentation de référence du gradient boosting sur arbres, et
champion de départ de cette campagne (0.2330 de Brier). Elle a été battue par une
simple régression logistique à features identiques, puis abandonnée pour de bon à
partir de la fusion final.
Retour aux annexes · Tableau récapitulatif · Sources