Supposons que j'ai deux groupes de données, étiquetés A et B (contenant chacun par exemple 200 échantillons et 1 fonction), et je veux savoir s'ils sont différents. Je pourrais:
a) effectuer un test statistique (par exemple un test t) pour voir s'ils sont statistiquement différents.
b) utiliser l'apprentissage automatique supervisé (par exemple, prendre en charge le classificateur de vecteur ou le classificateur de forêt aléatoire). Je peux former cela sur une partie de mes données et le vérifier sur le reste. Si l'algorithme d'apprentissage automatique classe correctement le reste par la suite, je peux être sûr que les échantillons sont différenciables.
c) utiliser un algorithme non supervisé (par exemple K-Means) et le laisser diviser toutes les données en deux échantillons. Je peux ensuite vérifier si ces deux échantillons trouvés correspondent à mes étiquettes, A et B.
Mes questions sont:
- Comment ces trois manières différentes se chevauchent-elles / sont-elles exclusives?
- Les points b) et c) sont-ils utiles pour des arguments scientifiques?
- Comment pourrais-je obtenir une «signification» pour la différence entre les échantillons A et B des méthodes b) et c)?
- Qu'est-ce qui changerait si les données avaient plusieurs fonctionnalités plutôt qu'une seule?
- Que se passe-t-il s'ils contiennent un nombre différent d'échantillons, par exemple 100 vs 300?
Réponses:
Grande question. Tout peut être bon ou mauvais, utile ou non, en fonction de vos objectifs (et peut-être de la nature de votre situation). Pour la plupart, ces méthodes sont conçues pour répondre à différents objectifs.
Dans cet esprit, permet de répondre à vos questions:
la source
Ne va pas aborder le clustering car il a été traité dans d'autres réponses, mais:
En général, le problème de tester si deux échantillons sont significativement différents est connu sous le nom de test à deux échantillons .
Il pourrait être plus facile de réfléchir à certains de ces problèmes si vous construisez un test à deux échantillons à partir d'un classificateur, par exemple, comme récemment proposé par Lopez-Paz et Oquab (2017) . La procédure est la suivante:
En inspectant le classificateur appris, vous pouvez également être en mesure d'interpréter les différences entre les distributions de manière semi-significative. En modifiant la famille de classificateurs que vous envisagez, vous pouvez également aider le test à rechercher certains types de différences.
Notez qu'il est important de faire la séparation train-test: sinon un classificateur qui vient de mémoriser ses entrées aurait toujours une parfaite discriminabilité. L'augmentation de la partie des points dans l'ensemble de formation vous donne plus de données pour apprendre un bon classificateur, mais moins de chances d'être sûr que la précision de la classification est vraiment différente du hasard. Ce compromis est quelque chose qui va varier selon le problème et la famille de classificateurs et n'est pas encore bien compris.
Lopez-Paz et Oquab ont montré de bonnes performances empiriques de cette approche sur quelques problèmes. Ramdas et al. (2016) ont en outre montré qu'en théorie, une approche étroitement liée est optimale en termes de taux pour un problème simple spécifique. La "bonne" chose à faire dans ce contexte est un domaine de recherche active, mais cette approche est au moins raisonnable dans de nombreux contextes si vous voulez un peu plus de flexibilité et d'interprétabilité que d'appliquer simplement un test standard standard.
la source
Seule l'approche (a) sert à tester l'hypothèse.
En cas d'utilisation d'algorithmes d'apprentissage automatique supervisé (b), ils ne peuvent ni prouver ni infirmer les hypothèses sur la distinction des groupes. Si l'algorithme d'apprentissage automatique ne classe pas correctement les groupes, cela peut se produire parce que vous avez utilisé un "mauvais" algorithme pour votre problème, ou que vous ne l'avez pas suffisamment réglé, etc. D'un autre côté, vous pouvez "torturer" les données totalement "aléatoires" longtemps assez pour produire un modèle de sur-ajustement qui fait de bonnes prévisions. Encore un autre problème est quand et comment sauriez-vous que l'algorithme fait de "bonnes" prédictions? Presque jamais vous ne viseriez une précision de classification à 100%, alors quand sauriez-vous que les résultats de la classification prouvent quelque chose?
Les algorithmes de clustering (c) ne sont pas conçus pour l'apprentissage supervisé. Ils ne visent pas à recréer les labels, mais à regrouper vos données en termes de similitudes. Maintenant, les résultats dépendent de l'algorithme que vous utilisez et du type de similitudes que vous recherchez. Vos données peuvent avoir différents types de similitudes, vous pouvez rechercher des différences entre les garçons et les filles, mais l'algorithme peut plutôt trouver des groupes d'enfants pauvres et riches, ou intelligents et moins intelligents, droitiers et gauchers, etc. le regroupement que vous vouliez ne prouve pas que le regroupement n'a pas de sens, mais seulement qu'il a trouvé un autre regroupement «significatif». Comme dans le cas précédent, les résultats peuvent dépendre de l'algorithme utilisé et des paramètres. Est-ce que cela vous conviendrait si un algorithme / paramètre sur dix trouvait "votre" Étiquettes? Et si c'était un sur cent? Combien de temps feriez-vous une recherche avant de vous arrêter? Notez que lorsque vous utilisez l'apprentissage automatique dans la grande majorité des cas, vous ne vous arrêterez pas après avoir utilisé un algorithme avec des paramètres par défaut et le résultat peut dépendre de la procédure que vous avez utilisée.
la source
a) vous répond uniquement à la question de savoir si la distribution est différente, mais pas comment les distinguer. b) trouvera également la meilleure valeur pour différencier les deux distributions. c) fonctionnera si les deux distributions ont des propriétés spécifiques. Par exemple, cela fonctionnera avec une distribution normale mais pas avec deux distributions modales, car la méthode peut différencier deux modes du même groupe au lieu de deux groupes différents.
c) n'est pas utile pour les arguments scientifiques en raison de deux distributions modales. b) pourrait être utilisé pour différencier deux distributions, car vous pouvez calculer la signification (voir 3.) Bien que je ne l'ai jamais rencontrée.
Par bootstrapping. Vous calculez le modèle sur la base de sous-échantillons aléatoires 1000 fois. Vous obtenez un score, par exemple la somme minimale des erreurs alpha et bêta. Vous triez le score en ordre croissant. Pour une confiance de 5%, vous choisissez la 950e valeur. Si cette valeur est inférieure à 50% (pour un nombre égal de points pour les groupes A et B), alors avec une confiance de 95%, vous pouvez ignorer l'hypothèse nulle selon laquelle les distributions sont les mêmes. Le problème est que si les distributions sont toutes les deux normales, ont la même moyenne, mais ont une variation différente, alors vous ne pourrez pas comprendre qu'elles sont différentes par les techniques ML. En revanche, vous pouvez trouver un test de variation qui permettra de distinguer les deux distributions. Et ce pourrait être l'inverse que ML sera plus fort qu'un test statistique et pourra distinguer les distributions.
Lorsque vous n'avez qu'une seule fonctionnalité dans ML, vous devez trouver une seule valeur pour distinguer les distributions. Avec deux caractéristiques, la bordure peut être un sinus et dans un espace multidimensionnel, cela peut être vraiment bizarre. Il sera donc beaucoup plus difficile de trouver la bonne frontière. D'un autre côté, des fonctionnalités supplémentaires apportent des informations supplémentaires. Il permettra donc généralement de distinguer plus facilement les deux distributions. Si les deux variables sont normalement distribuées, la bordure est une ligne.
Les échantillons plus petits peuvent se comporter de manière inhabituelle car le théorème de limite centrale ne peut pas être appliqué. Un échantillon plus gros commence à se comporter plus normalement car le théorème de limite centrale commence à fonctionner. Par exemple, la moyenne des deux groupes sera distribuée presque normalement si l'échantillon est suffisamment grand. Mais ce n'est généralement pas 100 vs 300 mais 10 observations contre 1000 observations. Ainsi, selon ce site, le test t pour la différence de moyenne fonctionnera indépendamment de la distribution si le nombre d'observations est supérieur à 40 et sans valeurs aberrantes.
la source
Les tests statistiques permettent de faire des inférences à partir de données, ils vous indiquent comment les choses sont liées. Le résultat est quelque chose qui a une signification réelle. Par exemple, comment le tabagisme est associé au cancer du poumon, à la fois en termes de direction et d'ampleur. Il ne vous dit toujours pas pourquoi les choses se sont passées. Pour expliquer pourquoi les choses se sont produites, nous devons également considérer l'interrelation avec d'autres variables et procéder aux ajustements appropriés (voir Pearl, J. (2003) CAUSALITÉ: MODÈLES, RAISONNEMENT ET INFÉRENCE).
L'apprentissage supervisé sert à faire des prédictions, il vous indique ce qui va se passer. Par exemple, étant donné le statut tabagique d'une personne, nous pouvons prédire si elle aura un cancer du poumon. Dans les cas simples, il vous dit toujours «comment», par exemple en examinant le seuil de tabagisme identifié par l'algorithme. Mais les modèles plus complexes sont plus difficiles ou impossibles à interpréter (deep learning / boosting avec beaucoup de fonctionnalités).
L'apprentissage non supervisé est souvent utilisé pour faciliter les deux précédents.
Lorsque le nombre de caractéristiques / variables augmente, la différence entre les tests statistiques et l'apprentissage supervisé devient plus importante. Les tests statistiques ne bénéficient pas nécessairement de cela, cela dépend par exemple si vous voulez faire une inférence causale en contrôlant d'autres facteurs ou en identifiant l'hétérogénéité dans les associations comme mentionné ci-dessus. L'apprentissage supervisé fonctionnera mieux si les fonctionnalités sont pertinentes et il ressemblera davantage à une boîte noire.
Lorsque le nombre d'échantillons augmente, nous pouvons obtenir des résultats plus précis pour les tests statistiques, des résultats plus précis pour l'apprentissage supervisé et des résultats plus robustes pour l'apprentissage non supervisé. Mais cela dépend de la qualité des données. Des données de mauvaise qualité peuvent introduire des biais ou du bruit dans les résultats.
Parfois, nous voulons savoir «comment» et «pourquoi» pour éclairer les actions interventionnelles, par exemple en identifiant que le tabagisme cause le cancer du poumon, une politique peut être élaborée pour y faire face. Parfois, nous voulons savoir «quoi» pour éclairer la prise de décision, par exemple découvrir qui est susceptible d'avoir un cancer du poumon et leur donner des traitements précoces. Un numéro spécial a été publié sur Science à propos de la prédiction et de ses limites ( http://science.sciencemag.org/content/355/6324/468). «Le succès semble être atteint de manière plus cohérente lorsque les questions sont abordées dans des efforts multidisciplinaires qui associent la compréhension humaine du contexte à la capacité algorithmique de gérer des téraoctets de données.» À mon avis, par exemple, les connaissances découvertes à l'aide de tests d'hypothèses peuvent aider à l'apprentissage supervisé en nous informant quelles données / fonctionnalités nous devons collecter en premier lieu. D'un autre côté, l'apprentissage supervisé peut aider à générer des hypothèses en informant quelles variables
la source