web-dev-qa-db-fra.com

Comment atténuez-vous les problèmes de validité interne / externe résultant des difficultés d'affectation des utilisateurs associées aux tests A / B en ligne?

Il est raisonnablement sûr de dire qu'il n'est pas possible de suivre les utilisateurs d'un site Web avec précision. Vous ne pouvez pas suivre les utilisateurs avec précision avec les cookies, car les cookies sont fréquemment effacés; vous ne pouvez pas être sûr de suivre les utilisateurs connectés via leurs comptes, car a.) une personne ne se connectera pas toujours lorsqu'elle utilise un site b.) les utilisateurs ont plusieurs comptes; vous ne pouvez pas compter sur des solutions d'analyse pour les tests A/B, car de nombreux utilisateurs ont des bloqueurs de publicités.

Étant donné qu'il n'est généralement pas possible pour la plupart des sites Web de suivre les utilisateurs avec précision, il n'est pas possible d'assurer une attribution aléatoire aux groupes de test A/B. Cela compromet la validité interne et externe des études. Par exemple, la validité de la population peut être compromise car une véritable attribution aléatoire est impossible, ou parce qu'il est uniquement possible de tester un sous-ensemble de la base d'utilisateurs (c'est-à-dire les personnes sans bloqueurs de publicités).

Comment gérez-vous l'attribution des utilisateurs ou la division des utilisateurs en groupes A/B pendant les tests A/B, de manière à atténuer les problèmes de validité (en particulier les problèmes de validité de la population)?

5
Dreadnaught

Validité interne et affectation aléatoire

La validité interne dépend de l'affectation aléatoire, où le hasard détermine si un utilisateur arrivant pour le test obtient la version A ou B de l'interface utilisateur. Cela est assez facile à réaliser en utilisant un générateur de nombres pseudo-aléatoires pour définir l'interface utilisateur pour la session de chaque utilisateur. Vous décrivez des difficultés à suivre un utilisateur entre les sessions , mais comme les données d'un test A-B se produisent dans une seule session, cela n'a pas d'importance. Tant que vous pouvez suivre les utilisateurs en une seule session (par exemple, par compte d'utilisateur ou adresse IP), il n'y a pas de problème.

Si vous souhaitez que les mêmes utilisateurs passent deux fois le test A-B, ce n'est pas un facteur de validité interne. La logique de validité interne exige que les utilisateurs des groupes A et B soient statistiquement équivalents, comme le garantit l'assignation aléatoire. Qu'un utilisateur apparaisse deux fois dans le même groupe ou une fois dans chaque groupe n'a pas d'importance tant que les probabilités sont égales pour tout le monde (par exemple, vous êtes également susceptible d'obtenir des utilisateurs répétitifs dans le groupe A comme dans le groupe B).

Validité externe et échantillonnage aléatoire

C'est un mythe que la validité externe dépend de l'échantillonnage aléatoire, où chaque utilisateur de la population a une chance égale d'être inclus dans l'échantillon de test. La validité externe dépend de l'échantillonnage représentatif , où les utilisateurs de l'échantillon sont en moyenne les mêmes sur toutes les dimensions pertinentes que les utilisateurs de la population. La confusion entre les deux est due au fait que l'échantillonnage aléatoire est le moyen de vous assurer d'avoir un échantillon parfaitement représentatif sur le plan statistique.

Mais avez-vous besoin d'un échantillon parfaitement représentatif? Ou votre échantillon est-il suffisamment représentatif pour qu'il soit raisonnable de généraliser les résultats de votre échantillon à une population particulière? Ne tombez pas dans le piège de penser que, parce que nous "ne savons tout simplement pas" comment l'échantillon et la population peuvent être différents, il n'y a pas de validité externe. Si j'exclus les utilisateurs qui utilisent des bloqueurs de publicités, y a-t-il vraiment une raison sérieuse de croire qu'ils fonctionneront différemment en moyenne que les utilisateurs que vous avez inclus? Si le test A-B évalue la réponse aux annonces (ou aux choses similaires à des annonces), je dirais que oui. Si le test A-B évalue la réponse à l'ordre des éléments de menu, je dirais non. C’est un appel au jugement.

Il peut également être atténué. S'il y a une bonne raison de croire que la population pourrait être différente de l'échantillon sur une certaine dimension qui pourrait affecter les résultats, mesurez-la. Par exemple, il est raisonnable d'affirmer que les utilisateurs de bloqueurs de publicités sont plus avertis et expérimentés avec le Web, donc ils feraient mieux avec une interface utilisateur avec des fonctionnalités plus expertes. Donc, comparez les comptes de ceux dans et non dans le test A-B et voyez s'il y a des preuves d'expertise différente (par exemple, fréquence d'utilisation de l'application, modification des paramètres par défaut). S'il n'y a pas de différence, ne vous en faites pas. Si tel est le cas, analysez séparément les utilisateurs experts de votre échantillon (il y en aura) des non-experts et voyez s'il y a une différence de performances.

Si vous êtes préoccupé par l'impact des utilisateurs réguliers sur vos statistiques déductives, ne le soyez pas. Presque toutes les statistiques inférentielles supposent un échantillonnage aléatoire avec remplacement . Les testeurs et les chercheurs sur l'utilisabilité peuvent prendre des mesures pour exclure les participants répétés, mais c'est principalement parce que cela ne "semble pas bon" (validité apparente), et parce qu'il est généralement supposé que la population réelle (qui comprend généralement tous les utilisateurs potentiels , pas seulement les utilisateurs actuels) sont tellement énormes qu'un participant répétitif est extrêmement improbable.

Je vous recommande de prendre des mesures pour empêcher les utilisateurs répétitifs par les méthodes que vous décrivez (d'autant plus que les sites ont généralement des utilisateurs très lourds et une longue queue d'utilisateurs à usage unique), mais je ne m'inquiéterais pas d'une poignée d'utilisateurs répétitifs qui contrecarrent vos efforts sur les 100 ou 1000 participants typiques d'un échantillon de test AB. La méthode que vous utilisez pour empêcher les utilisateurs répétitifs dépend de votre test particulier et des implications raisonnables pour le biais d'échantillonnage. Par exemple, si la période de test AB n'est que d'une semaine et que les utilisateurs typiques n'utilisent le site qu'une fois par mois, vous pouvez vous attendre à ce qu'une proportion insignifiante d'utilisateurs utilise le site deux fois en une semaine et sont arrivés à effacer leurs cookies entre les sessions.

La validité n'est pas binaire

La validité n'est pas une variable binaire, mais une question de degré ou de jugement. Je vois parfois une tendance pour les gens à repérer un seul défaut dans la recherche, comme un test A-B, et à conclure que la recherche est complètement invalide. Rien ne fonctionne de cette façon. Aucune recherche n'est parfaite, mais cela ne rend pas toutes les recherches sans valeur, en particulier par rapport à l'alternative d'une supposition intuitive. Tout élément de recherche est une "preuve" d'une force particulière pour une certaine conclusion. Ce n'est jamais une "preuve" d'une conclusion et rarement une merde totale non plus.

Lorsque vous voyez une faiblesse dans la recherche, vous devez vous demander quelles sont les implications dans ce cas particulier? Est-ce un défaut fatal? Cela réduit-il suffisamment la confiance pour que vous souhaitiez une recherche de suivi (par exemple, allez de l'avant avec le gagnant dans un test A-B, mais surveillez ses performances)? Cela réduit-il simplement la confiance de 98% à 95%? En fait, renforce-t-il les résultats?

Cela est vrai même pour la validité interne. Je ne rejetterais pas d'emblée une étude corrélationnelle. Oui, il n'aura pas la validité interne presque parfaite d'un test A-B, mais cela ne signifie pas qu'il n'a aucune validité interne. J'examinerais de près le modèle des données et me demanderais dans quelle mesure la causalité implicite est raisonnable, quelles autres voies possibles de causalité sont raisonnables et quelles preuves les excluent, puis atteindrais un certain niveau de confiance dans la conclusion.

1
Michael Zuschlag

Large question ici, donc je vais me concentrer sur un seul point:

Comment gérez-vous l'attribution des utilisateurs ou la division des utilisateurs en groupes A/B pendant les tests A/B, de manière à atténuer les problèmes de validité (en particulier les problèmes de validité de la population)?

Si vous testez le Web A/B à l'état sauvage avec un outil comme VisualWebsiteOptimizer, l'affectation aléatoire est intégrée. En supposant que vous avez le support du trafic pour obtenir une réponse sûre sur la différence entre votre A et B, tout ce que vous avez à faire est de concevoir une bonne expérience simple avec une variable indépendante claire, et en faire un combat équitable.

Supposons que vous détourniez 10% du trafic global d'une URL spécifique vers votre test et que vous le divisiez 50/50 entre vos groupes A et B. Votre échantillon est tiré de la même population d'utilisateurs, non? C'est donc effectivement un lavage.

Tout ce que vous avez à faire est de le régler et de l'oublier jusqu'à ce que vous ayez assez de taille N pour être à 80% ou 95% ou 99% confiant que les groupes A et B sont différents (ou effectivement les mêmes - dans ce cas, vous apprenez encore quelque chose. )

0
Luke Smith