Lors de l'optimisation d'un modèle de régression logistique, parfois plus de données accélèrent * les choses *. Une idée pourquoi?

8

J'ai joué avec la régression logistique avec divers algorithmes d'optimisation par lots (gradient conjugué, newton-raphson et diverses méthodes de quasinewton). Une chose que j'ai remarquée est que, parfois, l'ajout de données à un modèle peut en fait rendre la formation du modèle beaucoup moins longue. Chaque itération nécessite de regarder plus de points de données, mais le nombre total d'itérations nécessaires peut chuter considérablement lors de l'ajout de données. Bien sûr, cela ne se produit que sur certains ensembles de données, et à un moment donné, l'ajout de données entraînera un ralentissement de l'optimisation.

Est-ce un phénomène bien étudié? Où puis-je trouver plus d'informations sur pourquoi / quand cela pourrait se produire?

Mike Izbicki
la source
5
Ceci est une observation intéressante. Que le nombre d'itérations puisse diminuer avec plus de données est intuitif: sauf avec une séparation complète, avoir plus de données implique une plus grande précision même dans les estimations de départ approximatives de la solution. Avec moins de données, une recherche initiale plus large, avec de petits gradients, peut être nécessaire. L'analyse de la matrice d'information au voisinage des vraies valeurs des paramètres rendrait cette intuition quantitative.
whuber
5
Outre les éléments mentionnés par @whuber, l'ajout de données peut rendre la surface de probabilité "plus agréable", ce qui signifie que les algorithmes typiques devraient converger beaucoup plus rapidement. Dans les petits échantillons, la convergence pour les GLM peut parfois être lente car la surface n'est pas une bonne chose, presque quadratique dans les paramètres. Au fur et à mesure que la taille des échantillons augmente - en particulier si vous avez une fonction de lien canonique, la probabilité est simplement fonction de quelques statistiques suffisantes simples - cela peut être plus rapide non seulement en itérations, mais peut-être même en temps.
Glen_b -Reinstate Monica
1
Je comprends l'intuition que vous mentionnez tous les deux, mais je suis curieux de savoir si cela peut être quantifié un peu plus en quelque sorte. Par exemple, peut-être quelques résultats expérimentaux montrant combien d'amélioration de la vitesse peut éventuellement être obtenue par plus de données.
Mike Izbicki
1
Beaucoup de choses étranges peuvent affecter la vitesse de traitement. Voir la question la plus votée sur Stack Overflow par exemple.
Nick Stauner
Pouvez-vous fournir un cas qui le montre? Si vous pouviez le rendre "typique" de votre expérience et montrer que la façon dont un sous-ensemble de données autrement "saines" a une convergence lente, mais l'ensemble de données lui-même a une convergence plus rapide, cela pourrait aider à une meilleure réponse. Je pense que je viens de paraphraser Mike Izbicki.
EngrStudent

Réponses:

4

Avec moins de données, la corrélation erronée entre les entrées de régression est souvent élevée, car vous ne disposez que d'un nombre limité de données. Lorsque les variables de régression sont corrélées, la surface de probabilité est relativement plate et il devient plus difficile pour un optimiseur, en particulier celui qui n'utilise pas l'intégralité de la Hesse (par exemple Newton Raphson), de trouver le minimum.

Il y a quelques bons graphiques ici et plus d'explications, avec la façon dont divers algorithmes fonctionnent avec des données avec différentes quantités de corrélation, ici: http://fa.bianp.net/blog/2013/numerical-optimizers-for-logistic-regression/

Joe
la source