Les mathématiques derrière la correspondance d'appareils inter-sessions
Les fondements mathématiques de la correspondance d'appareils malgré des signaux changeants — comment l'analyse assistée par IA reconnecte les visiteurs de retour en dépit de la dérive des signaux.
L'empreinte numérique d'appareil affronte un défi fondamental : les signaux changent. Les navigateurs se mettent à jour, les utilisateurs modifient des réglages, des polices sont installées et supprimées. Une comparaison stricte traiterait chaque signal modifié comme un nouvel appareil, détruisant la précision d'identification. Notre système de correspondance inter-sessions résout cela en recourant à des techniques assistées par IA qui quantifient la similarité plutôt que d'exiger une égalité exacte.
Le problème : la dérive des signaux
Considérez un appareil dont l'empreinte a été prise hier et qui revient aujourd'hui après une mise à jour de navigateur. La chaîne de user agent a changé. Deux nouvelles fonctionnalités CSS sont désormais prises en charge. Une extension WebGL a été ajoutée. Le rendu canvas reste identique (même GPU, même pilote). L'empreinte audio est identique. Les paramètres WebGL sont identiques à l'exception de la nouvelle extension.
Avec une correspondance exacte, cet appareil ne serait pas reconnu — l'empreinte combinée a changé. Mais intuitivement, nous savons que c'est le même appareil. Les signaux matériels sont identiques, et les changements logiciels sont cohérents avec une mise à jour de navigateur. Notre système de correspondance inter-sessions formalise cette intuition.
Comparaison fondée sur les ensembles pour les signaux de fonctionnalités
De nombreux signaux de navigateur se représentent naturellement comme des ensembles : l'ensemble des fonctionnalités CSS prises en charge, l'ensemble des polices disponibles, l'ensemble des extensions WebGL. Pour ces signaux, nous mesurons le recouvrement à l'aide de métriques de similarité fondées sur les ensembles. Pour deux ensembles A et B, nous calculons le rapport des éléments partagés au total des éléments.
Un appareil avec 45 fonctionnalités CSS hier et 47 aujourd'hui (dont 44 en commun) a un score de similarité élevé. C'est suffisant pour indiquer le même appareil avec une mise à jour de navigateur. Un appareil complètement différent pourrait ne partager que 30 fonctionnalités CSS, donnant un score de similarité bien plus faible. Le seuil entre « même appareil » et « appareil différent » est appris à partir de données étiquetées.
Génération efficace de candidats
Calculer la similarité entre chaque paire d'appareils serait d'un coût prohibitif à grande échelle. Notre système de génération de candidats utilise des techniques d'indexage avancées qui associent les éléments similaires au même compartiment de recherche avec une forte probabilité, nous permettant de trouver des correspondances potentielles en temps constant.
Cette approche élimine 99.9% des comparaisons durant la phase de génération de candidats, rendant le système efficace même à l'échelle de milliards de profils d'appareils.
Analyse assistée par IA pour les signaux complexes
Certains signaux ne se décomposent pas proprement en ensembles. Les empreintes canvas, la sortie de traitement audio et les vecteurs de paramètres WebGL sont des données complexes auxquelles la simple comparaison d'ensembles ne s'applique pas. Pour ces signaux, nous recourons à une analyse assistée par IA qui projette les profils d'appareils dans une représentation où les appareils similaires sont proches les uns des autres.
Le modèle d'IA capture des relations non évidentes entre les signaux. Par exemple, il apprend qu'un changement de la chaîne de moteur de rendu WebGL d'un modèle de GPU à une version légèrement améliorée du même modèle représente une mise à niveau de GPU sur la même machine, tandis qu'un changement vers un fournisseur de GPU complètement différent représente un appareil entièrement différent.
Combiner les techniques
Notre système de production utilise plusieurs techniques en cascade. D'abord, une génération efficace de candidats identifie les correspondances potentielles. Ensuite, la comparaison fondée sur les ensembles fournit une mesure précise du recouvrement pour les signaux de fonctionnalités. Enfin, l'analyse assistée par IA note la similarité des signaux dépendants du matériel. Le score de confiance final est une combinaison pondérée de toutes les méthodes, avec des poids ajustés sur des données étiquetées.
Cette architecture en cascade est à la fois précise et efficace. Le temps total de correspondance pour un visiteur de retour est de moins de 5ms en moyenne.