Note : Ceci est une traduction française d'un article de blog initialement publié en anglais, que vous pouvez trouver ici : https://statsig.com/blog/cuped
CUPED (Controlled-experiment Using Pre-Experiment Data) devient de plus en plus populaire dans l'expérimentation en ligne depuis qu'il a été inventé par Microsoft en 2013. C'est l'un des outils algorithmiques les plus puissants pour augmenter la vitesse et la précision des programmes d'expérimentation.
Dans l'expérimentation, il est courant de voir des résultats qui se situent juste en dehors de la plage de signification statistique. Dans un cadre fréquentiste, ce n'est pas une preuve suffisante que votre changement a causé une modification du comportement des utilisateurs.
S'il y avait un effet réel, vous auriez besoin d'une taille d'échantillon plus importante pour augmenter vos chances d'obtenir un résultat statistiquement significatif. Cependant, la taille de l'échantillon est coûteuse, généralement proportionnelle à la fenêtre d'inscription de votre expérience.
Même les grandes entreprises comme Facebook et Amazon doivent attendre que les expériences inscrivent des utilisateurs et mûrissent car elles recherchent généralement des effets relativement petits. Pour les petites entreprises, mesurer de petites tailles d'effet peut être irréalisable en raison du temps nécessaire pour collecter suffisamment de données.
CUPED résout ce problème en utilisant des données pré-expérimentales pour expliquer une partie de la variance dans les données de résultat.
Le concept central derrière CUPED est simple : toute la variance dans une expérience n'est pas aléatoire. De nombreuses différences dans les résultats des utilisateurs sont basées sur des facteurs préexistants non liés à l'expérience.
Considérons une expérience testant si les gens courent plus lentement avec des poids attachés. Si nous ne regardons que les temps du mile expérimental :
Personne | Groupe test | Temps du mile expérimental |
Sally | Poids | 6:40 |
Dave | Sans poids | 7:10 |
Jane | Poids | 8:20 |
Bob | Sans poids | 9:00 |
Il y a une variance significative et un chevauchement dans les temps de mile observés. Mais si nous établissons une base de référence en leur demandant de courir un mile avant l'expérience :
Personne | Groupe | Temps du mile de base | Temps du mile expérimental | Changement |
Sally | Poids | 6:30 | 6:40 | +10 |
Dave | Sans poids | 7:08 | 7:10 | +2 |
Jane | Poids | 7:30 | 8:20 | +50 |
Bob | Sans poids | 9:15 | 9:00 | -15 |
Dans le contexte de leur temps de mile « typique », l'effet devient plus clair. Nous sommes passés de l'intérêt pour le « temps du mile » brut à l'intérêt pour la différence par rapport à ce que nous attendions.
Ce faisant, nous avons « expliqué » une partie du bruit et de la variance dans la métrique expérimentale. La plage de notre métrique a été réduite de 140 secondes à 65 secondes, ce qui signifie une variance plus faible pour calculer les intervalles de confiance et les valeurs p.
L'assignation aléatoire peut parfois entraîner des groupes expérimentaux ayant des valeurs de base différentes. CUPED aide à corriger ce biais.
Si un groupe a une moyenne de base plus rapide, leurs résultats expérimentaux seront également plus rapides. Lors de l'application d'une correction CUPED, la métrique du groupe plus rapide sera ajustée à la baisse par rapport au groupe plus lent.
Certaines variantes de CUPED sont « non paramétriques » ou « par tranches », ce qui signifie que les utilisateurs sont divisés en groupes en fonction de leurs valeurs pré-expérimentales, et les métriques sont mesurées par rapport à la valeur métrique moyenne de ce groupe.
Des implémentations plus complexes de CUPED peuvent incorporer d'autres informations au-delà de la valeur métrique pré-expérimentale, telles que des données démographiques, tant qu'elles sont indépendantes de l'assignation du groupe expérimental.
En pratique, nous ne pouvons pas simplement soustraire les valeurs antérieures d'un utilisateur de ses valeurs expérimentales car le comportement passé n'est pas toujours un prédicteur parfait du comportement futur.
Un test T pour une métrique donnée est mathématiquement équivalent à l'exécution d'une régression où la variable dépendante est votre métrique et la variable indépendante est le groupe expérimental d'un utilisateur.
Lorsque nous incluons des données de base comme facteur dans notre régression, nous voyons généralement :
L'estimation de l'effet expérimental ne change pas beaucoup
L'erreur standard (et la valeur p) diminue significativement
Les résultats qui n'étaient pas statistiquement significatifs auparavant peuvent devenir clairement significatifs
La formule CUPED ajuste la valeur expérimentale de chaque utilisateur (Y) en utilisant sa valeur pré-expérimentale (X) selon :
Ycv = Y + θ(moyenne de population de X - X)
Où θ est calculé pour minimiser la variance, généralement en utilisant la covariance entre X et Y divisée par la variance de X.
La variance finale pour notre estimateur est : Var(Ycv) = Var(Y)(1-ρ²)
Où ρ est la corrélation entre X et Y. Plus la corrélation est forte, plus la réduction de variance est importante.
Pour implémenter CUPED :
Calculez la covariance entre Y et X, ainsi que la variance et la moyenne de X
Calculez θ en utilisant ces valeurs
Pour chaque utilisateur, calculez sa valeur pré-expérimentale individuelle
Joignez les statistiques de population aux données au niveau utilisateur
Calculez le terme ajusté de chaque utilisateur comme Y + θ(moyenne de population de X) - θX
Exécutez votre analyse statistique normalement, en utilisant les métriques ajustées
CUPED est plus efficace pour les expériences avec des utilisateurs existants où des données historiques sont disponibles
Les nouveaux utilisateurs n'auront pas de données pré-expérimentales
Pour les expériences avec des utilisateurs nouveaux et existants, CUPED peut être appliqué uniquement aux utilisateurs avec des données pré-expérimentales
L'efficacité de CUPED dépend de la corrélation d'une métrique avec sa valeur passée pour le même utilisateur
Utilisez CUPED principalement pour les expériences d'utilisateurs existants
Assurez-vous que vos données métriques remontent avant le début de la fenêtre de données pré-expérimentales
Reconnaissez que l'efficacité de CUPED varie en fonction de la stabilité des métriques pour les utilisateurs individuels au fil du temps
CUPED vous aide à comprendre vos données avec plus de clarté que jamais, réduisant le temps et la taille d'échantillon nécessaires pour détecter de vrais effets dans vos expériences.