Ich weiß, dass Polynomial Logistic Regression
man damit leicht typische Daten wie das folgende Bild lernen kann:
Ich habe mich gefragt, ob die folgenden beiden Daten auch mit gelernt werden können oder nicht.
Polynomial Logistic Regression
Ich muss wohl noch mehr Erklärungen hinzufügen. Nehmen Sie die erste Form an. Wenn wir zusätzliche Polynommerkmale für diesen 2D-Eingang hinzufügen (wie x1 ^ 2 ...), können wir eine Entscheidungsgrenze festlegen, die die Daten trennen kann. Angenommen, ich wähle X1 ^ 2 + X2 ^ 2 = b. Dies kann die Daten trennen. Wenn ich zusätzliche Funktionen hinzufüge, erhalte ich eine Wellenform (möglicherweise einen Wellenkreis oder eine Wellenellipse), aber die Daten des zweiten Diagramms können trotzdem nicht getrennt werden, oder?
quelle
Antworten:
Ja, theoretisch kann die polynomielle Erweiterung der logistischen Regression jede beliebige Klassifizierungsgrenze annähern. Dies liegt daran, dass ein Polynom jede Funktion approximieren kann (zumindest die Typen, die für Klassifizierungsprobleme nützlich sind), und dies wird durch das Stone-Weierstrass-Theorem bewiesen .
Ob diese Annäherung für alle Grenzformen praktikabel ist, ist eine andere Frage. Möglicherweise suchen Sie besser nach anderen Basisfunktionen (z. B. Fourier-Reihen oder radialer Abstand von Beispielpunkten) oder nach anderen Ansätzen (z. B. SVM), wenn Sie eine komplexe Grenzform im Merkmalsraum vermuten. Das Problem bei der Verwendung von Polynomen höherer Ordnung besteht darin, dass die Anzahl der zu verwendenden Polynommerkmale exponentiell mit dem Grad des Polynoms und der Anzahl der ursprünglichen Merkmale zunimmt.
Wenn Sie dies an die Logistikfunktion übergeben, erhalten Sie Werte nahe genug an 0 und 1.
Ähnlich wie bei Ihren beiden kreisförmigen Flächen ist eine einfache Achterkurve:
Tatsächlich können Sie jedes Problem, das Sie mit einem tiefen neuronalen Netzwerk - beliebiger Tiefe - lösen können, mit einer flachen Struktur unter Verwendung der linearen Regression (für Regressionsprobleme) oder der logistischen Regression (für Klassifizierungsprobleme) lösen. Es geht "nur" darum, die richtige Funktionserweiterung zu finden. Der Unterschied besteht darin, dass neuronale Netze versuchen, eine funktionierende Feature-Erweiterung direkt zu ermitteln, während das Feature-Engineering unter Verwendung von Polynomen oder anderen Schemata harte Arbeit ist und nicht immer offensichtlich ist, wie man überhaupt anfängt: Überlegen Sie beispielsweise, wie Sie polynomielle Annäherungen an das Faltungs-Neuronale erstellen können Netzwerke tun für Bilder? Es scheint unmöglich. Es ist wahrscheinlich auch äußerst unpraktisch. Aber es existiert.
quelle
|x|
ist nicht erlaubt, da es sich um eine andere Nichtlinearität handelt.