Numpy Polyfit

Numpy Polyfit
Lineare Regression ist der erste Schritt, um Datenwissenschaft zu lernen. Selbst wenn Sie in diesem Bereich neu sind, müssen Sie diese Konzepte verstehen, da diese Algorithmen hauptsächlich von Data Science -Forschern verwendet werden. Diese Algorithmen sind auch leicht zu verstehen, um die Reise des maschinellen Lernens zu beginnen.

In diesem Tutorial werden wir das Numpy -Regressionsmodell (Polyfit) sehen.

Die Funktion numpy.Polyfit () findet die beste Anpassungslinie, indem die Summe des quadratischen Fehlers minimiert wird. Diese Methode akzeptiert drei Parameter:

  1. X - Eingabedaten
  2. y- Ausgangsdaten
  3. Polynomgradwert (Ganzzahl)

Beginnen wir also den Schritt-für-Schritt-Prozess, um das Methode Polyfit zu verwenden.

Schritt 1: Importieren Sie alle erforderlichen Bibliothek und Pakete, um dieses Programm auszuführen.

Zeile 91: Wir importieren die Numpy- und Matplotlib -Bibliothek. Der Polyfit wird automatisch unter den Numpy geraten, so dass es nicht erforderlich ist, importiert zu werden. Der Matplotlib wird verwendet, um die Daten zu zeichnen und Matplotlib -Inline wird verwendet, um das Diagramm innerhalb des Jupyter -Notizbuchs selbst zu zeichnen.

Numph als NP importieren
Matplotlib importieren.Pyplot als PLT
%Matplotlib Inline

Schritt 2: Jetzt ist unser nächster Schritt, den Datensatz (x und y) zu erstellen.

Zeile 83: Wir generieren zufällig die X- und Y -Daten.

x = [28, 8, 11, 37, 15, 25, 51, 11, 32, 34, 43, 2, 40, 16, 40, 25, 40, 17, 21, 57]
y = [8, 8, 9, 72, 22, 51, 85, 4, 75, 48, 72, 1, 62, 37, 75, 42, 75, 47, 57, 95]

Schritt 3: Wir zeichnen nur die Funktion (x) und das Ziel (y) im Diagramm wie unten gezeigt:

PLT.Streuung (x, y)

Schritt 4: In diesem Schritt werden wir die Zeile auf das Data X und Y anpassen.

Dieser Schritt ist sehr einfach, da wir das Konzept der Polyfit -Methode verwenden werden. Die Polyfit -Methode wird direkt mit dem Numpy geliefert, wie oben gezeigt. Diese Methode akzeptiert drei Parameter:

  1. X - Eingabedaten
  2. y- Ausgangsdaten
  3. Polynomgradwert (Ganzzahl)

In diesem Programm verwenden wir den Polynomgradwert 1, der besagt, dass es sich um ein Polynom im ersten Grad handelt. Wir können es aber auch für Polynom zweiten und dritten Grades verwenden.

1 Modell = NP.Polyfit (x, y, 1)

Wenn wir die Eingabetaste drücken, berechnet das Polyfit das lineare Regressionsmodell und speichern auf dem rechten Variablenmodell.

Logik hinter der Anpassungslinie

Wir können also sehen, dass nur das Eingabetaste getroffen wird, und wir haben lineare Regressionsmodell herausgekommen. Jetzt denken wir das, was tatsächlich hinter dieser Methode funktioniert und wie sie der Linie passen.

Die Methode, die hinter der Polyfit -Methode funktioniert Gewöhnliche Methode am wenigsten quadratisch. Einige Leute nannten dies mit dem kurzen Namen OLS. Es wird häufig von den Benutzern verwendet, um die Linie anzupassen. Der Grund dafür ist, dass es sehr einfach zu bedienen ist und auch Genauigkeit über 90% gibt.

Mal sehen, wie OLS funktioniert:

Zunächst müssen wir etwas über Fehler wissen. Der Fehler berechnet die Differenz zwischen den X- und Y -Daten.

Zum Beispiel, Wir passen eine Zeile in das Regressionsmodell, das nach unten aussieht:

Die blauen Punkte sind die Datenpunkte und die rote Linie, die wir mit der Polyfit -Methode auf die Datenpunkte passen.

Nehmen wir an, x = 24 und y = 58

Wenn wir die Linie passen, berechnet die Linie den Wert von y = 44.3. Die Differenz zwischen dem tatsächlichen und berechneten Wert ist der Fehler für den spezifischen Datenpunkt.

Die OLS -Methode (gewöhnlich am wenigsten quadratisch) berechnet die Anpassung unter Verwendung der folgenden Schritte:

1. Berechnet den Fehler zwischen dem angepassten Modell und den Datenpunkten.

2. Dann quadifizieren wir jeden der Datenpunkte Fehler.

3. Summe alle Quadratdatenpunkte Fehler.

4. Identifizieren Sie schließlich die Linie, in der diese Summe des quadratischen Fehlers minimal ist.

Das Polyfit verwendet also die oben genannten Methoden, um die Linie anzupassen.

Schritt 5: Modell

Wir haben unser maschinelles Lernkodierungsteil gemacht. Jetzt können wir die Werte von x und y überprüfen, die in den Modellvariablen gespeichert sind. Um den X- und Y -Wert zu überprüfen, müssen wir das Modell wie unten gezeigt drucken:

Schließlich haben wir eine Gliederungsgleichung erhalten:

y = 1.75505212 * x - 1.27719099

Durch die Verwendung dieser linearen Gleichung können wir den Wert von y erhalten.

Die obige lineare Gleichung kann auch unter Verwendung der ploy1d () -Methode wie unten gelöst werden:

Predict = np.Poly1d (Modell)
x_Value = 20
prognostizieren (x_Value)

Wir haben das Ergebnis 33 bekommen.82385131766588.

Wir haben auch das gleiche Ergebnis aus der manuellen Berechnung erhalten:

y = 1.75505212 * 20 - 1.27719099

y = 33.82385131766588

Die beiden oben genannten Ergebnisse zeigen also, dass unser Modell korrekt in die Linie passt.

Schritt 6: Genauigkeit des Modells

Wir können auch die Genauigkeit des Modells überprüfen, entweder liefert es korrekte Ergebnisse oder nicht. Die Genauigkeit des Modells kann aus dem R-Quadrat (R2) berechnet werden. Der Wert des R-Quadrats (R2) liegt zwischen 0 und 1. Das Ergebnis nahe 1 zeigt, dass die Modellgenauigkeit hoch ist. Schauen wir uns also nach der oben genannten Modellgenauigkeit. Wir werden eine andere Bibliothek importieren, Sklearn, wie unten gezeigt:

von Sklearn.Metriken importieren r2_score
r2_score (y, prognostizieren (x))

Das Ergebnis zeigt, dass es nahe bei 1 ist, daher ist seine Genauigkeit hoch.

Schritt 7: Das Modell darstellen

Das Auftreten ist die Methode, um die modell angepasste Linie an den Datenpunkten visuell anzuzeigen. Es gibt ein klares Bild des Modells.

x_axis = Bereich (0, 60)
y_axis = predict (x_axis)
PLT.Streuung (x, y)
PLT.Plot (x_axis, y_axis, c = 'g')

Eine kurze Erläuterung für die obige Plotmethode finden Sie unten:

Linie 1: Es ist der Bereich, den wir auf dem Diagramm anzeigen möchten. In unserem Code verwenden wir den Bereichswert von 0 bis 60.

Zeile 2: Alle Bereichswerte von 0 bis 60 werden berechnet.

Zeile 3: Wir übergeben diese x- und y -Originaldatensätze in die Streumethode.

Zeile 4: Wir zeichnen endlich unseren Diagramm und die grüne Linie ist die Anpassungslinie, wie in der obigen Grafik gezeigt.

Abschluss

In diesem Artikel haben wir das lineare Regressionsmodell gelernt, das der Beginn der Reise des maschinellen Lernens ist. Es gibt eine Reihe von Regressionsmodellen, die in einem anderen Artikel erklärt werden. Hier haben wir einen sauberen Datensatz, da das ein Dummy war, aber in realen Projekten erhalten Sie möglicherweise einen schmutzigen Datensatz und müssen ein Feature-Engineering dazu erledigen, um den Datensatz so zu reinigen, der im Modell verwendet werden soll. Wenn Sie dieses Tutorial nicht vollständig verstehen, hilft Ihnen das, ein anderes Regressionsmodell leicht zu lernen.

Das Leitungsregressionsmodell ist der häufigste Algorithmus, der von Data Science verwendet wird. Sie müssen Ideen zum Regressionsmodell haben, wenn Sie Ihre Karriere in diesem Bereich haben möchten. Bleiben Sie also in Kontakt und bald werden wir mit einem neuen Data Science -Artikel zurück sein.

Der Code für diesen Artikel ist unter dem GitHub -Link verfügbar:
https: // github.Com/Shekharpandey89/Linear-Regression-in-Python-Use-Numpy-Polyfit