Hinweis: Durch das Lesen meiner vorherigen Artikel wäre es viel klarer, die Implementierung der linearen Regression und des Gradientenabstiegs zu verstehen. Ich habe den Hyperlink im Referenzabschnitt bereitgestellt.
Was ist logistische Regression?
Die logistische Regression ist einer der beliebtesten ML-Algorithmen. Es wird, anders als der Identify vermuten lässt, zur Lösung binärer Klassifizierungsprobleme verwendet (Regression). Bei einem binären Klassifizierungsproblem erhalten wir als Ausgabe entweder wahr oder falsch. Mit anderen Worten: 1 oder 0 als Ausgabe. Die Ausgabe des Algorithmus muss additionally zwischen 0 und 1 liegen.
Betrachten Sie die obige Grafik, in der z unsere Variable und g(z) unsere Funktion ist. Um das Klassifizierungsproblem anzuwenden, sollte g(z) im Gegensatz zur Regressionsaufgabe immer zwischen o und 1 liegen. Dazu können wir die Sigmoidfunktion wie unten gezeigt verwenden.
Hier erklären wir diese Gleichung mit der obigen Grafik. Wenn z ein höherer Wert ist, ergibt diese Gleichung eine Ausgabe, die näher bei eins liegt, und wenn z ein niedriger Wert ist, ergibt diese Gleichung eine Ausgabe, die näher bei Null liegt. Auch wenn z immer 0 ist, ist dieser mittlere Exponentialterm eins, sodass der Nenner 2(1+1) wird. Das Ergebnis der Gleichung ist additionally 1/2 oder 0,5. Wenn wir uns die obige Grafik ansehen, können wir diesen Pattern erkennen.
Wir betrachten f(x) = g(z) und wissen, dass f(x) = wx+b für die lineare Regression gilt. In diesem Fall können wir z als z = wx+b umschreiben.
Denken Sie daran, dass die z-Formel nicht nur mit dieser Gleichung verknüpft ist, wir können sie auch durch mehrere lineare Regressionsgleichungen, quadratische und polynomiale Regressionsgleichungen ersetzen.
Wir können die Sigmoidgleichung additionally wie folgt umschreiben, indem wir z durch eine neue Gleichung ersetzen.
Kostenfunktion
Wir müssen geeignete w und b finden, sodass wir eine gerade Linie anpassen können, die eine ungefähre Darstellung der Datenpunkte darstellt. Um das beste w und b zu identifizieren, müssen wir die Kostenfunktion J(w,b) definieren. Die Kostenfunktion gibt an, wie intestine das Modell mit einem bestimmten Wert von w und b ist.
Da die Sigmoidfunktion eine nicht konvexe Funktion ist, müssen wir eine Kostenfunktion ableiten, die diesen Algorithmus konvex macht. Daher können wir den Gradientenabstiegsalgorithmus anwenden, um den besten Anpassungswert für w und b zu finden.
Implementierung des Gradientenabstiegs
Um das beste w und b zu finden, verwenden wir den Gradientenabstiegsalgorithmus. Der Gradientenabstieg und seine Varianten werden häufig beim maschinellen Lernen eingesetzt.
Der Gradientenabstiegsalgorithmus ist eine iterative Optimierung erster Ordnung, um den Mindestwert in der Kostenfunktion zu ermitteln. Bei diesem Ansatz initialisieren wir w(Gewichte) mit einem Zufallswert und ermitteln den Gradienten. Dann aktualisieren wir das w in der entgegengesetzten Richtung des Gradienten. Und dieser Prozess wird fortgesetzt, bis das Kostenminimum gefunden ist. Der Gradient zeigt immer in die Richtung des größten Anstiegs. Um den Minimal- oder Abstiegspunkt zu finden, aktualisieren wir die Gewichte in die entgegengesetzte Richtung des Gradienten. Den gleichen Ansatz wenden wir auch an, um das Minimal von b zu finden.
Basierend auf dem multiplen linearen Regressionsalgorithmus wissen wir, dass wir den Gradientenabstiegsalgorithmus wie unten gezeigt anwenden können.
Wir können den abgeleiteten Time period des obigen Algorithmus weiter erweitern, um ihn für die Implementierung bereit zu machen. Dieses Konzept ist der linearen Regression entnommen.
Wir können den f-Time period mit der Sigmoidfunktion umschreiben, um den umsetzungsbereiten Algorithmus für den Gradientenabstieg zu vervollständigen.
Wenn Ihnen mein Artikel gefällt, folgen Sie mir weiter Github, Linkedinund/oder Mittel Profil.
Referenz
- https://www.saedsayad.com/logistic_regression.htm
- https://sebastianraschka.com/faq/docs/gradient-optimization.html
- https://medium.com/intro-to-artificial-intelligence/linear-regression-using-gradient-descent-753c58a2b0c
- https://medium.com/intro-to-artificial-intelligence/multiple-linear-regression-with-gradient-descent-e37d94e60ec5