Les données linéairement non séparables peuvent-elles être apprises à l'aide d'entités polynomiales avec régression logistique?

8

Je sais que Polynomial Logistic Regressionpeut facilement apprendre des données typiques comme l'image suivante: Je me demandais si les deux données suivantes peuvent également être apprises en utilisant ou non.
première image
Polynomial Logistic Regression


entrez la description de l'image ici
entrez la description de l'image ici

Je suppose que je dois ajouter plus d'explications. Prenez la première forme. Si nous ajoutons des caractéristiques polynomiales supplémentaires pour cette entrée 2D (comme x1 ^ 2 ...), nous pouvons faire une frontière de décision qui peut séparer les données. Supposons que je choisis X1 ^ 2 + X2 ^ 2 = b. Cela peut séparer les données. Si j'ajoute des fonctionnalités supplémentaires, j'obtiendrai une forme ondulée (peut-être un cercle ondulé ou des ellipses ondulées) mais il ne peut toujours pas séparer les données du deuxième graphique, n'est-ce pas?

Médias
la source
1
C'est peut-être une erreur, mais vous posez implicitement une question de classification, pas de régression ...
Emre
1
@Emre en fait je pose des questions sur la régression logistique polynomiale, vous avez raison :)
Média
1
Où avez-vous lu cela? Voulez-vous dire la régression logistique multinomiale ?
Emre
1
Je ne connais pas la statique , mais je n'ai jamais entendu parler de régression logistique polynomiale en statistique . Je pense que vous devriez examiner la régression logistique du noyau si vous êtes intéressé par les limites de classe non linéaires.
Emre
1
Il n'y a aucune référence à la régression logistique polynomiale ici. Ou tout autre type de régression logistique.
Emre

Réponses:

7

Oui, en théorie, l'extension polynomiale à la régression logistique peut approximer n'importe quelle limite de classification arbitraire. En effet, un polynôme peut approximer n'importe quelle fonction (au moins des types utiles aux problèmes de classification), et cela est prouvé par le théorème de Stone-Weierstrass .

Que cette approximation soit pratique pour toutes les formes de limites est une autre question. Vous pouvez être mieux à la recherche d'autres fonctions de base (par exemple la série de Fourier ou la distance radiale par rapport aux points d'exemple), ou d'autres approches entièrement (par exemple SVM) lorsque vous soupçonnez une forme de frontière complexe dans l'espace d'entités. Le problème avec l'utilisation de polynômes d'ordre élevé est que le nombre d'entités polynomiales que vous devez utiliser croît exponentiellement avec le degré du polynôme et le nombre d'entités originales.

Vous pouvez créer un polynôme pour classer XOR. peut être un début si vous utilisez et comme entrées binaires, cela mappe l'entrée à la sortie comme suit:510xy11(x,y)

(1,1):5(1,1):5(1,1):5(1,1):5

Le passage dans la fonction logistique devrait vous donner des valeurs suffisamment proches de 0 et 1.

Semblable à vos deux zones circulaires, une simple courbe en huit:

a(x2y2bx4+c)

où et sont des constantes. Vous pouvez obtenir deux zones fermées disjointes définies dans votre classificateur - sur les côtés opposés de l' axe , en choisissant et manière appropriée. Par exemple, essayez pour obtenir une fonction qui se sépare clairement en deux pics autour de et :a,bcya,bca=1,b=0.05,c=1x=3x=3

deux classes séparées

Le graphique affiché provient d' un outil en ligne sur academo.org , et est pour - la classe positive indiquée comme valeur 1 dans le graphique ci-dessus, et est généralement où en régression logistique ou justex2y20.05x41>011+ez>0.5z>0

Un optimiseur trouvera les meilleures valeurs, vous aurez juste besoin d'utiliser comme termes d'expansion (bien que notez que ces termes spécifiques se limitent à correspondre à la même forme de base reflétée autour de l' axe - en pratique, vous voudriez avoir plusieurs termes jusqu'au polynôme du quatrième degré pour trouver des groupes disjoints plus arbitraires dans un classificateur).1,x2,y2,x4y

En fait, tout problème que vous pouvez résoudre avec un réseau neuronal profond - de n'importe quelle profondeur - vous pouvez le résoudre avec une structure plate en utilisant la régression linéaire (pour les problèmes de régression) ou la régression logistique (pour les problèmes de classification). Il s'agit "simplement" de trouver la bonne extension de fonctionnalité. La différence est que les réseaux de neurones tenteront de découvrir directement une extension de fonctionnalité fonctionnelle, tandis que l'ingénierie des fonctionnalités utilisant des polynômes ou tout autre schéma est un travail difficile et pas toujours évident comment même commencer: considérez par exemple comment vous pouvez créer des approximations polynomiales à quel neuronal convolutionnel les réseaux font pour les images? Cela semble impossible. Cela risque également d'être extrêmement peu pratique. Mais cela existe.

Neil Slater
la source
êtes-vous sûr du premier paragraphe? les formes non convexes peuvent-elles vraiment être apprises en utilisant des polynômes?
Media
1
@NeilSlater J'ai résolu le cercle ci-dessus. XOR est aussi simple: il suffit d'ajouter un terme pour "xy".
Emre
1
@Emre: Merci. Je pense que pour être puriste, ce |x|n'est pas permis, car c'est une non-linéarité différente.
Neil Slater du
1
Pourquoi s'arrêter aux polynômes? Ce n'est pas comme si nous prenions les dérivées des entrées, alors utilisez n'importe quelle fonction de votre choix.
Emre
1
@Emre Oui, je suggère déjà dans la question que d'autres fonctions pourraient être utiles. Cependant, je pense que l'intérêt de l'OP en utilisant le terme "régression logistique polynomiale" est qu'il est destiné à n'utiliser que des polynômes. Je pense qu'il existe des bibliothèques qui feront une expansion polynomiale automatique des fonctionnalités à utiliser avec des optimiseurs autrement linéaires.
Neil Slater