Statistiques des sites de rencontres en ligne


10

Je suis curieux de voir comment un système de rencontres en ligne peut utiliser les données d'enquête pour déterminer les correspondances.

Supposons qu'ils aient des données sur les résultats des correspondances précédentes (par exemple, 1 = heureux marié, 0 = pas de 2e date).

Supposons ensuite qu'ils avaient 2 questions de préférence,

  • "A quel point aimez-vous les activités de plein air? (1 = n'aime pas du tout, 5 = aime beaucoup)"
  • "Dans quelle mesure êtes-vous optimiste quant à la vie? (1 = n'aime pas du tout, 5 = aime fortement)"

Supposons également que pour chaque question de préférence, ils aient un indicateur "Quelle est l'importance de votre conjoint partage votre préférence? (1 = pas important, 3 = très important)"

S'ils ont ces 4 questions pour chaque paire et un résultat pour savoir si le match a été un succès, quel est un modèle de base qui utiliserait cette information pour prédire les futurs matchs?


2
Je pensais qu'un match réussi se produirait lorsque la fille est jolie ou que le mâle est riche. Tout le reste est secondaire.
user4951

4
Consultez blog.okcupid.com - quelque part, ils parlent des modèles de correspondance sous-jacents.
Felix S

Pouvez-vous nous dire sur quel genre de choses vous aimeriez approfondir? La réponse de Michael est un aperçu assez solide.
Dan

Si vous lisez le brevet (brevet 6 735 568 - google.com/… ) pour EHarmony, leur système utilise une combinaison d'analyse de composants principaux, d'analyse factorielle et utilise un réseau neuronal. Comme d'autres l'ont mentionné, des méthodes comme K-NN, CARTS et GLM fonctionneraient également bien.
Chris Simokat

@ChrisSimokat - WOW! Merci beaucoup pour le lien incroyable. C'est intéressant cependant. Je n'ai jamais pensé que vous pourriez "copyright" des méthodes statistiques et des algorithmes.
d_a_c321

Réponses:


4

J'ai parlé une fois à quelqu'un qui travaille pour l'un des sites de rencontres en ligne qui utilise des techniques statistiques (ils préfèrent probablement que je ne dis pas qui). C'était assez intéressant - pour commencer, ils utilisaient des choses très simples, telles que les voisins les plus proches avec des distances euclidiennes ou L_1 (cityblock) entre les vecteurs de profil, mais il y avait un débat pour savoir si faire correspondre deux personnes trop similaires était une bonne ou une mauvaise chose. Il a ensuite poursuivi en disant que maintenant ils ont rassemblé beaucoup de données (qui était intéressé par qui, qui est sorti avec qui, qui s'est marié, etc. etc.), ils l'utilisent pour recycler constamment les modèles. Ils travaillent dans un cadre de traitement par lots incrémentiel, où ils mettent à jour leurs modèles périodiquement à l'aide de lots de données, puis recalculent les probabilités de correspondance sur la base de données. Des trucs assez intéressants, mais je '


3

Vous avez demandé un modèle simple. Voici comment je commencerais avec le code R:

 glm(match ~ outdoorDif*outdoorImport + optimistDif*optimistImport,
     family=binomial(link="logit"))

outdoorDif = la différence entre les réponses des deux personnes quant à leur plaisir des activités de plein air. outdoorImport = la moyenne des deux réponses sur l'importance d'une correspondance concernant les réponses sur le plaisir des activités de plein air.

Le * indique que les termes précédents et suivants interagissent et sont également inclus séparément.

Vous suggérez que les données de correspondance sont binaires, les deux seules options étant «heureusement marié» et «pas de deuxième date», c'est donc ce que j'ai supposé en choisissant un modèle logit. Cela ne semble pas réaliste. Si vous avez plus de deux résultats possibles, vous devrez passer à un logit multinomial ou ordonné ou à un tel modèle.

Si, comme vous le suggérez, certaines personnes ont fait plusieurs tentatives de correspondance, ce serait probablement une chose très importante à prendre en compte dans le modèle. Une façon de le faire pourrait être d'avoir des variables séparées indiquant le nombre de correspondances précédentes pour chaque personne, puis d'interagir entre les deux.


Merci pour la bonne réponse .. Je vous donne la prime! :) Cela semble être une bonne approche. Peut-être que si vous aviez N questions qui entraient dans des catégories similaires à M (par exemple, des questions d'athlétisme), vous pourriez enrichir le modèle en utilisant une moyenne de l'importance et des différences au sein de cette catégorie et l'ajouter comme terme supplémentaire. Ce n'est pas parfait, mais cela peut être un moyen simple de capturer l'interaction de plusieurs variables corrélées. Merci encore, je serais heureux d'entendre d'autres pensées qui n'ont pas fait votre réponse;).
d_a_c321

Ne devriez-vous pas normaliser les réponses en premier? Si tout le monde aimait le plein air, la réponse extérieure devrait devenir moins pertinente, car ce serait un mauvais prédicteur de compatibilité.
Sklivvz

@Skliwz, je ne sais pas comment vous normaliseriez une réponse à choix multiple (ordinale). N'oubliez pas non plus que des transformations linéaires de variables prédictives continues sont parfois souhaitables pour les raisons évoquées ici: stats.stackexchange.com/q/7112/3748 et ici: stats.stackexchange.com/q/19216/3748 mais elles ne changeront pas le modèles de prédictions à l'exception de quelques problèmes de calcul inhabituels. Si tout le monde aime le plein air, le plein air également la réponse extérieure est moins pertinente, mais je ne pense pas que ce soit vraiment un problème pour le modèle tel que je l'ai spécifié. (Pas que mon modèle soit parfait)
Michael Bishop

1

Une approche simple serait la suivante.

Pour les deux questions de préférence, prenez la différence absolue entre les réponses des deux répondants, en donnant deux variables, disons z1 et z2, au lieu de quatre.

Pour les questions d'importance, je pourrais créer un score qui combine les deux réponses. Si les réponses étaient, disons, (1,1), je donnerais 1, a (1,2) ou (2,1) obtient un 2, a (1,3) ou (3,1) obtient un 3, un (2,3) ou (3,2) obtient un 4 et un (3,3) obtient un 5. Appelons cela le «score d'importance». Une alternative serait simplement d'utiliser max (réponse), donnant 3 catégories au lieu de 5, mais je pense que la version à 5 catégories est meilleure.

Je créerais maintenant dix variables, x1 - x10 (pour le concret), toutes avec des valeurs par défaut de zéro. Pour les observations avec un score d'importance pour la première question = 1, x1 = z1. Si le score d'importance pour la deuxième question est également = 1, x2 = z2. Pour les observations avec un score d'importance pour la première question = 2, x3 = z1 et si le score d'importance pour la deuxième question = 2, x4 = z2, etc. Pour chaque observation, exactement une parmi x1, x3, x5, x7, x9! = 0, et de même pour x2, x4, x6, x8, x10.

Après avoir fait tout cela, je ferais une régression logistique avec le résultat binaire comme variable cible et x1 - x10 comme régresseurs.

Des versions plus sophistiquées de cela pourraient créer des scores plus importants en permettant de traiter différemment l'importance des répondants masculins et féminins, par exemple a (1,2)! = A (2,1), où nous avons ordonné les réponses par sexe.

Un défaut de ce modèle est que vous pourriez avoir plusieurs observations de la même personne, ce qui signifierait que les "erreurs", en gros, ne sont pas indépendantes d'une observation à l'autre. Cependant, avec beaucoup de personnes dans l'échantillon, je vais probablement simplement ignorer cela, pour un premier passage, ou construire un échantillon où il n'y a pas de doublons.

Un autre inconvénient est qu'il est plausible qu'à mesure que l'importance augmente, l'effet d'une différence donnée entre les préférences sur p (échec) augmente également, ce qui implique une relation entre les coefficients de (x1, x3, x5, x7, x9) et également entre les coefficients de (x2, x4, x6, x8, x10). (Probablement pas un ordre complet, car il n'est pas a priori clair pour moi comment un score d'importance (2,2) est lié à un score d'importance (1,3).) Cependant, nous n'avons pas imposé cela dans le modèle. J'ignorerais probablement cela au début et verrais si je suis surpris par les résultats.

L'avantage de cette approche est qu'elle n'impose aucune hypothèse sur la forme fonctionnelle de la relation entre l '«importance» et la différence entre les réponses de préférence. Cela contredit le commentaire précédent sur le manque à gagner, mais je pense que l'absence d'une forme fonctionnelle imposée est probablement plus bénéfique que le fait de ne pas tenir compte des relations attendues entre les coefficients.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.