Ajout de pondérations pour des ensembles de données fortement asymétriques dans la régression logistique

9

J'utilise une version standard de régression logistique pour adapter mes variables d'entrée aux variables de sortie binaires.

Cependant, dans mon problème, les sorties négatives (0s) dépassent de loin les sorties positives (1s). Le rapport est de 20: 1. Ainsi, lorsque je forme un classificateur, il semble que même les fonctionnalités qui suggèrent fortement la possibilité d'une sortie positive ont toujours des valeurs très faibles (très négatives) pour leurs paramètres correspondants. Il me semble que cela se produit parce qu'il y a tout simplement trop d'exemples négatifs tirant les paramètres dans leur direction.

Je me demande donc si je peux ajouter des poids (disons en utilisant 20 au lieu de 1) pour les exemples positifs. Cela est-il susceptible d'en bénéficier? Et si oui, comment dois-je ajouter les poids (dans les équations ci-dessous).

La fonction de coût ressemble à ceci:

J=(1/m)i=1mylog(h(xθ))+(1y)(1log(h(xθ)))

Le gradient de cette fonction de coût (wrt ) est:θ

grad=((h(xθ)y)X)

Ici = nombre de cas de test, = matrice de caractéristiques, = vecteur de sortie, = fonction sigmoïde, = paramètres que nous essayons d'apprendre.mxyhθ

Enfin, je lance la descente de gradient pour trouver le le plus bas possible. L'implémentation semble fonctionner correctement.J

arahant
la source
Salut, j'ai exactement le même problème que vous avez décrit. Dans mes données, de nombreux exemples sont négatifs et très peu positifs, et pour moi, il est plus important de classer correctement le positif, même si cela signifie de mal classer certains négatifs. Il semble que j'applique également les mêmes méthodes que vous, car j'utilise la même fonction de coût et les mêmes équations de gradient. Jusqu'à présent, j'ai effectué quelques tests et j'ai obtenu les résultats suivants: - Avec 7 paramètres , Taille de l'échantillon de formation: 225000 , Taille de l'échantillon de test: 75000 Résultats: précision de 92% , bien que dans les cas positifs, seulement 11% w
Cartz
1
Ce que vous faites, c'est confondre une fonction de perte avec une probabilité maximale. Le mle non pondéré fait la «bonne chose» d'un point de vue inférentiel et reflète la rareté du résultat pour chaque spécification de covariable. Vous pourriez également avoir une séparation - cela se produirait qu'un ensemble particulier de covariables qui peuvent parfaitement prédire la réponse dans les données d'entraînement - cela conduirait à de grandes valeurs négatives.
probabilityislogic
2
La classification n'est pas un bon objectif et n'est pas la façon dont la régression logistique a été développée. C'est la notion de classification qui pose tous les problèmes listés ici. Respectez les probabilités prédites et les règles de score de précision appropriées
Frank Harrell
1
@arahant Ce n'est que partiellement vrai. Une régression logistique binaire avec un lien logit est toujours valide dans la mesure où les coefficients sur vos covariables sont MLE et reflètent l'effet que ces variables ont sur les chances de classe 1 par rapport à la classe 0. Cependant, dans une conception cas-témoins, l'ordonnée à l'origine est toujours fixe pour refléter la proportion de la classe 1 à la classe 0, et il est parfaitement valable d'ajuster le terme d'interception pour attribuer des classes conformément, par exemple, à une fonction de coût d'une mauvaise classification ou à un autre processus, car cela ne change pas les coefficients sur les variables.
Sycorax dit Réintégrer Monica le
1
D'où quelqu'un a-t-il eu l'idée qu'un seuil est nécessaire / voulu / souhaitable?
Frank Harrell

Réponses:

8

Ce ne serait plus la probabilité maximale. Une telle distribution extrême de ne pose de problèmes que si vous utilisez un classificateur, c'est-à-dire si vous calculez correctement la proportion classée, une règle de notation incorrecte. Les estimations de probabilité à partir du maximum de vraisemblance standard sont valides. Si le nombre total de «positifs» est inférieur à 15 fois le nombre de variables candidates, une estimation de vraisemblance maximale pénalisée peut être appropriée.Y

Frank Harrell
la source
Frank, y a-t-il une référence ou quelque chose pour soutenir votre détail "15 fois ..."? J'ai un déséquilibre similaire dans certaines données pour lesquelles j'utilise la régression logistique à la place d'une méthode ROC développée par d'autres chercheurs. J'ai récemment rencontré le biais de petit échantillon et ajouté une option pour la réduction de biais de Firth comme option d'ajustement dans mon code / package. Alors que j'écris ceci pour un journal, il serait utile d'avoir quelque chose à citer le long de règles générales comme celle-ci. Toutes mes excuses si la référence est votre livre RMS car il est posé sur mes étagères, mais je n'y ai pas encore regardé.
Gavin Simpson
Il existe des articles sur le biais des petits échantillons et la valeur de la pénalisation de Firth. Je ne les ai pas sous la main. Concernant 15: 1, voir biostat.mc.vanderbilt.edu/wiki/pub/Main/FrankHarrell/…
Frank Harrell
Merci Frank - les problèmes 15: 1 étaient ce que je recherchais le plus. J'ai quelques publications sur le biais des petits échantillons et la méthode de Firth - mais si vous aviez quelque chose à portée de main, je vous serais très reconnaissant de me faire savoir ce que c'était.
Gavin Simpson
3
Juste au cas où quelqu'un d'autre devrait mal lire ce qui précède comme je l'ai fait au début. Le 20: 1 dans la question est le rapport des observations négatives aux observations positives. Le 15: 1 dans la réponse de Frank Harrell est autre chose: le rapport des observations positives aux variables indépendantes candidates.
Adam Bailey
Une distribution extrême présente également un problème en augmentant les chances de séparation quasi complète, surtout si vous avez des prédicteurs catégoriques. Ici aussi, la pénalisation est utile.
probabilités du
3

Dans des cas comme celui-ci, il est souvent préférable d'utiliser un lien flexible, au lieu du lien logistique, qui peut capturer cette asymétrie. Par exemple, un skew-normal, GEV , sinh-arcsinh , et les références qui s'y trouvent. Il y en a beaucoup d'autres mais je ne peux pas poster plus de 2 liens.

Tyrion
la source
Pouvez-vous fournir une explication pour d'autres fonctions de lien sont meilleures?
DW