Scipy logistische Regression

Scipy logistische Regression
Die Popularität des maschinellen Lernens und der Datenwissenschaften erhöht sich jeden Tag seit der Menge der erzeugten Daten, effiziente Algorithmen zur Verwaltung und Arbeiten mit diesen Daten sowie die Stärke der Rechenleistung steigt weiter. Die Datenklassifizierung mit der logistischen Regressionsmethode ist einer der wesentlichen und grundlegenden Bereiche des maschinellen Lernens. In diesem Artikel werden wir erklären, welche Datenklassifizierung lautet, was logistische Regression ist und wie sie in einem Python -Programm implementiert werden. Wir werden einige Beispiele demonstrieren und jeden Teil individuell erläutern, um zu verstehen, wie Sie die logistische Regression in Python implementieren können.

Was ist Klassifizierung?

Um alles in Python oder einer anderen Programmiersprache zu implementieren, müssen Sie seine grundlegende Funktionalität verstehen, damit Sie den Code effizient schreiben können. Lassen Sie uns zuerst das Konzept der Klassifizierung erläutern und dann die logistische Regression mithilfe der Scipy -Bibliotheksfunktionen implementieren.

In Data Science und maschinellem Lernen ist die Klassifizierung ein Unterfeld des überwachten maschinellen Lernens, das Vorhersagen über die Kategorie oder Klasse macht, zu der ein Unternehmen auf seinen Attributen gehört wird. Es analysiert die Erfassung von Beobachtungen, indem die Abhängigkeit zwischen Eingabe- und Ausgangsdaten mathematisch beschrieben wird. Es schafft eine Verbindung oder eine Verbindung zwischen abhängigen und unabhängigen Variablen und dies tut dies, indem sie mit beiden arbeiten. Es kann in verschiedenen Bereichen Technologie und Wissenschaft für verschiedene Zwecke wie Bilderkennung, Textklassifizierung usw. verwendet werden.

Was ist logistische Regression?

Die logistische Regression ist eine überwachte maschinelle Lerntechnik für die Klassifizierung, die mit der linearen Regression vergleichbar ist und Mitglied der Klasse der linearen Klassifizierer ist. Es ist eine sehr bequeme, unkomplizierte und schnelle Methode, um die Ergebnisse zu interpretieren. Es kann nicht nur für die binäre Klassifizierung verwendet werden, sondern auch für Multiclas -Probleme. In der Mathematik funktioniert die logistische Regression mit natürlichen Logarithmus- und Sigmoid -Funktionen. Die Sigmoidfunktion ist die S-förmige Kurve einer Variablen mit 0 oder 1 in fast allen Domänen. Während der natürliche Logarithmus der Logarithmus einer Zahl zu seiner Basis ist.

Was ist logistische Regression in Scipy Python?

Die Idee hinter der logistischen Regression ist in Scipy Python die gleiche, wie wir zuvor diskutiert haben. Die Scipy -Bibliothek bietet die Funktion Logistic (), um die logistische Regression im Python -Programm zu berechnen. Wir werden einige häufige Fälle von logistischer Regression mit Hilfe von Beispielen erklären. Lassen und verstehen wir vorher die Syntax der logistischen Funktion der Scipy -Bibliothek.

Syntax der scipy logistic () -Funktion in Python

Die Funktion Logistic () der Scipy -Bibliothek wird verwendet, um die kontinuierlichen Zufallsvariablen zu erzeugen, und sie funktioniert mit den Methoden der RV_Continuous -Klasse. Es erbt alle Methoden, Merkmale und Funktionen der RV_Continuous -Klasse, um die spezifischen Details der logistischen Regression zu vervollständigen. Die Funktion Logistic () verwendet die folgende Funktion der Wahrscheinlichkeitsdichte:

Dies ist ein Sonderfall von Genlogistik mit c = 1. Siehe die Syntax der logistischen Funktion mit den Methoden der folgenden RV_Continuous -Klasse:

Hier bezieht sich das Objekt "logistic_gen" auf eine der Methoden der RV_Continuous -Klasse. Einige der Methoden der RV_Continuous -Klasse sind PPF, PDF, CDF, Logpdf, RVS, SF, ISF usw. Lassen Sie uns nun zum Beispiel für Beispiele übergehen, um zu erfahren, wie Sie die Funktion Logistic () in einem Python -Programm implementieren können.

Beispiel 1:

Betrachten Sie den nachstehend angegebenen Beispielcode, um die Arbeit der Logistic () -Funktion der Scipy -Bibliothek zu verstehen. Hier implementieren wir die Logistic () -Funktion mit PPF- und PDF -Methoden. Der PPF steht für die prozentuale Punktfunktion, die verwendet wird, um das Perzentil der Daten zu erhalten, und PDF steht für die Wahrscheinlichkeitsdichtefunktion und wird verwendet, um die Wahrscheinlichkeitsdichte der Daten zu erhalten. Siehe den unten angegebenen Beispielcode und dann werden wir jeden Teil Schritt für Schritt erläutern:

Numph als NP importieren
von Scipy.Statistiken importieren logistisch
Matplotlib importieren.Pyplot als PLT
Fig, Ax = PLT.Nebenhandlungen (1, 1)
x = np.Linspace (logistisch.PPF (0.02),
logistisch.PPF (0.98), 100)
Axt.Diagramm (x, logistisch.PDF (x),
'r', lw = 8, alpha = 0.4, Label = 'logistischer PDF')
RV = logistic ()
Axt.Diagramm (x, RV.pdf (x), 'k', lw = 3, label = 'gefrorener pdf')
Axt.Legende (loc = 'Best')
PLT.zeigen()

Lassen Sie uns zuerst über die Bibliotheken und dann über den Rest des Programms sprechen. Wir brauchen die Numpy -Bibliothek, um die Daten in einem Numpy -Objekt zu generieren und zu speichern. Wir brauchen die Scipy -Bibliothek, um die Funktion ihres Statistikpakets zu verwenden. Wir brauchen die Matplotlib -Bibliothek, um die Daten in einem Diagramm zu zeichnen. Daher haben wir alle drei Bibliotheken zusammen mit ihren zugehörigen Paketen und Funktionen importiert, die wir weiter benötigen werden. Danach wird die 1 x1 -Größe für die Darstellung des Diagramms durch Nebenhandlung definiert (1, 1). Die Variable X enthält die Daten für die Funktion der Wahrscheinlichkeitsdichte, die das logistische PDF liefert. Das logistische PDF wurde im variablen RV eingefroren und beide Ergebnisse wurden an die Funktion Plot () übergeben. Zeigen Sie sie daher in der Grafik an. Lassen Sie uns nun die unten generierte Grafik sehen:

Beispiel 2:

Zuvor haben wir die PDF. Vergleichen wir nun das Ergebnis der CDF -Methode mit der PDF -Methode in diesem Beispiel. Betrachten Sie den Beispielcode im folgenden Code -Snippet:

Numph als NP importieren
von Scipy.Statistiken importieren logistisch
Matplotlib importieren.Pyplot als PLT
Fig, Ax = PLT.Nebenhandlungen (1, 1)
x = np.Linspace (logistisch.PPF (0.02),
logistisch.PPF (0.98), 100)
Axt.Diagramm (x, logistisch.PDF (x),
'r', lw = 8, alpha = 0.4, Label = 'logistischer PDF')
RV = logistic ()
Axt.Diagramm (x, RV.pdf (x), 'k', lw = 3, label = 'gefrorener pdf')
vals = logistic.pPF ([0).001, 1, 0.999])
np.AllClose ([0).001, 1, 0.999], logistisch.CDF (VALS))
r = logistisch.Wohnmobile (Größe = 1000)
Axt.HIST (R, Dichte = True, HistType = 'Stepfüllungen', Alpha = 0.5)
Axt.Legende (loc = 'Best', Frameon = False)
PLT.zeigen()

Der erste Abschnitt des Programms ist der gleiche wie im vorherigen Beispiel. Die Implementierung der CDF -Methode wurde zu diesem Programm hinzugefügt. Um die Linie des logistischen PDF zu vergleichen, haben wir das Histogramm der CDF -Methode erzeugt. Lassen Sie uns das Diagramm sehen, das im Screenshot unten angegeben ist:

Beispiel 3:

Lassen Sie uns eine andere Methode der RV_Continuous -Klasse implementieren, um die Funktionsweise der Logistic () -Funktion zu verstehen. Betrachten Sie den Beispielcode im folgenden Code -Snippet:

Numph als NP importieren
von Scipy.Statistiken importieren logistisch
Matplotlib importieren.Pyplot als PLT
Fig, Ax = PLT.Nebenhandlungen (1, 1)
x = np.Linspace (logistisch.PPF (0.02),
logistisch.PPF (0.98), 100)
Axt.Diagramm (x, logistisch.PDF (x),
'r', lw = 8, alpha = 0.4, Label = 'logistischer PDF')
RV = logistic ()
Axt.Diagramm (x, RV.pdf (x), 'k', lw = 3, label = 'gefrorener pdf')
vals = logistic.pPF ([0).001, 1, 0.999])
np.AllClose ([0).001, 1, 0.999], logistisch.LogCDF (VALS))
r = logistisch.Wohnmobile (Größe = 1000)
Axt.HIST (R, Dichte = True, HistType = 'Stepfüllungen', Alpha = 0.5)
Axt.Legende (loc = 'Best', Frameon = False)
PLT.zeigen()

Wir haben das gleiche Programm verwendet wie in den vorherigen Beispielen. Wir haben gerade die CDF -Methode durch LogCDF -Methode ersetzt. Vergleichen wir nun die Ergebnisse der CDF -Methode und der LogCDF -Methode, indem wir die Ausgänge beider Programme vergleichen. Siehe das unten angegebene Ergebnis:

Abschluss

Dieser Leitfaden gab einen kurzen Überblick über die von der Scipy Library bereitgestellte logistische Regressionsfunktion. Ein in der Klassifizierungsgruppe angebotener beaufsichtigter Ansatz für maschinelles Lernen ist die logistische Regression. Die logistische Regression ist eine ihrer wichtigen Techniken, und die Klassifizierung ist auch eine wichtige Anwendung des maschinellen Lernens. Wir haben einige Beispiele gezeigt, um zu zeigen.