Version flexible de la régression logistique

8

J'essaie d'adapter une régression logistique où il y a une énorme différence dans le nombre de points de données dans les deux groupes (70 Vs 10 000). Un de mes amis statisticien m'a dit que c'est un problème connu de régression logistique et que pour ces types de chiffres, il correspond aux données et ne fonctionne pas. Lorsque je range les données et les compare au modèle, il est assez évident que c'est définitivement le cas.

Je me demande si quelqu'un est au courant d'une méthode meilleure / plus flexible pour ajuster ce type de données de réponse binaire?

(Je ne suis pas un statisticien au fait, alors allez-y doucement avec moi!)

Stacey_bio
la source
Par deux groupes, voulez-vous dire des groupes définis par leur réponse binaire? Si c'est le cas, vous devriez considérer le problème de régression logistique comme un problème de classification. Pour un groupe, vous avez beaucoup d'informations pour trouver des variables qui prédisent la catégorie. Mais comme le deuxième groupe ne compte que 70 observations, vous disposez de moins d'informations pour voir ce qui différencie le deuxième groupe du premier. Pour ce type de problème, c'est la petite taille de l'échantillon dans le groupe 2 qui est le problème et non le déséquilibre. Si vous aviez 700 vs 100 000, le déséquilibre serait le même mais le problème ne serait pas aussi difficile.
Michael R. Chernick
2
Je pense donc que le problème de surajustement est le problème classique de l'utilisation de trop de fonctionnalités avec trop peu de données. Le seul remède contre le surajustement est de réduire le nombre de caractéristiques ou d'augmenter la taille de l'échantillon. Trouver une autre méthodologie n'aidera pas.
Michael R. Chernick
"Par deux groupes, vous voulez dire des groupes définis par leur réponse binaire?" - Oui!
Stacey_bio
Des suggestions sur où je pourrais commencer si j'aborde cela comme un problème de classification? Y a-t-il une méthode établie que je peux utiliser et dont tout le monde pourrait être au courant? Merci!
Stacey_bio
Essentiellement, je pense que je recherche une méthode de «classification binaire probabiliste» qui convient à ce type de données. Ce serait génial s'il y avait une sorte de méthode établie (statistique ou autre)
Stacey_bio

Réponses:

4

Le fait que cela ne fonctionne pas ne vient pas de la taille déséquilibrée des groupes, mais de la petitesse de l'un des groupes. Le sous-échantillonnage du groupe plus important est correct mais ne permet pas de sur-ajuster. (BTW, il existe un moyen simple et élégant de corriger les prédictions du modèle sous-échantillonné, en ajoutant ± log (r) aux termes linéaires où r est le rapport de sous-échantillonnage.)

Si le sur-ajustement est vraiment le problème, vous devez soit diminuer le nombre de variables, soit régulariser le modèle.

scellus
la source
4

Ce problème apparaît dans pratiquement toutes les approches de classification, qu'il s'agisse de régression logistique, de classification des vecteurs de support ou de classification Naive Bayes. Il y a deux problèmes liés:

  • Un modèle formé sur un ensemble de données déséquilibré peut surestimer dans le sens d'acquérir un biais en faveur de la classe majoritaire.

  • Lors de l'évaluation de ce modèle sur un ensemble de données de test présentant le même degré de déséquilibre, la précision de la classification peut être une mesure de performance extrêmement trompeuse.

La littérature sur ces questions propose trois stratégies de solution:

  1. Vous pouvez rétablir l'équilibre sur l'ensemble d'apprentissage en sous - échantillonnant la grande classe ou en suréchantillonnant la petite classe, pour éviter que des biais surviennent en premier lieu (voir la réponse de @grotos).

  2. Alternativement, vous pouvez modifier les coûts d'une classification erronée pour empêcher le modèle d'acquérir un biais en premier lieu.

  3. Une garantie supplémentaire consiste à remplacer la précision par la précision dite équilibrée . Elle est définie comme la moyenne arithmétique des précisions spécifiques à la classe, où et représentent la précision obtenue sur des exemples positifs et négatifs, respectivement. Si le classificateur fonctionne aussi bien sur l'une ou l'autre classe, ce terme se réduit à la précision conventionnelle (c'est-à-dire le nombre de prédictions correctes divisé par le nombre total de prédictions). En revanche, si la précision conventionnelle est au-dessus du hasard seulementϕ:=12(π++π),π+πparce que le classificateur tire parti d'un ensemble de tests déséquilibré, alors la précision équilibrée, le cas échéant, tombera au hasard (voir croquis ci-dessous que j'ai tiré de ma réponse à une question connexe ).

Précision vs précision équilibrée

Comme indiqué dans ma réponse précédente, je recommanderais d'examiner conjointement au moins deux des approches ci-dessus. Par exemple, vous pouvez suréchantillonner votre classe minoritaire pour empêcher votre classificateur d'acquérir un biais en faveur de la classe majoritaire. Ensuite, lors de l'évaluation des performances de votre classificateur, vous pouvez remplacer la précision par la précision équilibrée.

Kay Brodersen
la source
0

Vous voulez dire la distribution de la réponse, c'est-à-dire que vous avez 70 cas de "OUI" et 10 000 de "NON"?

Si tel est le cas, il s'agit d'un problème courant dans les applications d'exploration de données. Imaginez une base de données avec 1 000 000 d'instances, où seulement 1 000 cas environ sont "OUI". Un taux de réponse de 1% et même moins est une chose courante dans une modélisation prédictive d'entreprise. Et si vous choisissez un échantillon pour former un modèle, c'est un énorme problème, en particulier pour évaluer la stabilité d'un modèle donné.

Ce que nous faisons, c'est de choisir un échantillon avec des proportions différentes. Dans l'exemple susmentionné, ce serait 1000 cas de "OUI" et, par exemple, 9000 de cas "NON". Cette approche donne des modèles plus stables. Cependant, il doit être testé sur un échantillon réel (celui avec 1 000 000 de lignes).

Je l'ai testé avec des modèles d'exploration de données, tels que la régression logistique, les arbres de décision, etc. Cependant, je ne l'ai pas utilisé avec des modèles statistiques "appropriés" [1].

Vous pouvez le rechercher comme "suréchantillonnage dans les statistiques", le premier résultat est plutôt bon: http://www.statssa.gov.za/isi2009/ScientificProgramme/IPMS/1621.pdf

[1] "propre" signifiant "pas d'exploration de données".

grotos
la source
0

Si vous voulez une technique de classification insensible à la proportion relative d'exemples de différentes classes, les machines à vecteurs de support ont cette propriété, tout comme les arbres de décision.

fgregg
la source