Implementierung der linearen Regression in Python: Ein vollständiger Leitfaden

Veröffentlicht: 2019-11-18

Egal, ob Sie maschinelles Lernen oder Statistik mit Python studieren, Sie würden auf lineare Regression stoßen. Die lineare Regression ist einer der wichtigen Bestandteile des Machine Learning-Zertifizierungskurses.

Was ist es? Wie führen Sie eine lineare Regression mit Python durch?

In diesem Artikel werden wir Antworten auf diese Fragen entdecken. Nachdem Sie diesen Artikel gelesen haben, werden Sie mit Folgendem vertraut sein:

  • Regressionen und was sind sie
  • Was ist lineare regression
  • So trainieren Sie ein lineares Regressionsmodell
  • Anwendungen der linearen Regression

Lass uns anfangen.

Inhaltsverzeichnis

Was ist Regression?

Die Regressionsanalyse bezieht sich auf bestimmte statistische Prozesse, die Sie zum Schätzen der Beziehungen zwischen einer abhängigen und einer unabhängigen Variablen verwenden.

Es ist in mehreren Branchen beliebt, z. B. im Finanz- und Bankwesen. Mithilfe der Regressionsanalyse können Sie die Beziehung zwischen zwei Variablen in einer bestimmten Umgebung verstehen.

Angenommen, Sie möchten die Preise von Häusern in einem bestimmten Gebiet ermitteln. Zu diesem Zweck müssen Sie die Stadt des Gebiets, die Anzahl der Einwohner, die Verfügbarkeit von Annehmlichkeiten und viele andere Dinge beachten.

Die Dinge, von denen die Preise der Häuser abhängen, werden Eigenschaften genannt. Und das Problem, wo die Faktoren mit den Kosten jedes Hauses zusammenhängen, ist eine Beobachtung. In diesem Beispiel wird davon ausgegangen, dass der Standort, die Ausstattung und andere Faktoren den Preis jedes Hauses beeinflussen.

Einfacher ausgedrückt machen Sie in der Regressionsanalyse einige Beobachtungen zu einem bestimmten Thema. Ihre Beobachtungen haben einige Merkmale und einige Vermutungen, bevor Sie beginnen, eine Beziehung zwischen ihnen herzustellen.

Es gibt zwei Arten von Merkmalen in der Regressionsanalyse. Sie sind:

  • Abhängige Funktionen, die als abhängige Ausgaben, Variablen oder Antworten bezeichnet werden
  • Unabhängige Merkmale, die als unabhängige Ausgaben, Variablen oder Antworten bezeichnet werden

Im Allgemeinen hat ein Regressionsproblem eine stetige abhängige Variable. Die Eingänge variieren.

Sie können die Ausgänge mit y und die Eingänge mit x bezeichnen. Es gibt keine festen Regeln dafür, aber es ist eine allgemeine Praxis, y und x zu verwenden, um diese Ausgabe und Eingabe zu bezeichnen.

Wenn Sie mehrere unabhängige Variablen haben, können Sie dies als x = (x1,…,xr) darstellen, wobei r die Anzahl der Eingaben bezeichnet.

Holen Sie sich die besten Machine Learning-Kurse online von den besten Universitäten der Welt – Master, Executive Post Graduate Programs und Advanced Certificate Program in ML & AI, um Ihre Karriere zu beschleunigen.

Was ist eine lineare Regression?

Die lineare Regression ist die beliebteste Art der Regression. Es ist eine statistische Methode, um Beziehungen zwischen einem abhängigen Output und einer Gruppe unabhängiger Outputs zu modellieren.

In diesem Artikel nennen wir unabhängige Ausgaben „Features“ und abhängige Ausgaben „Antworten“.

Wenn eine lineare Regression nur ein Merkmal hat, wird sie als univariate lineare Regression bezeichnet. Wenn es mehrere Funktionen hat, würden Sie es entsprechend als multiple lineare Regression bezeichnen.

Der bemerkenswerteste Vorteil linearer Regressionen ist die einfache Interpretation ihrer Ergebnisse. Interviewfragen zur linearen Regression

Es ist die einfachste Form der Regression.

Hypothese

Wenn y der vorhergesagte Wert ist, 0 der Bias-Term ist, xn und die Merkmalswerte sind, würden Sie das lineare Regressionsmodell durch die folgende Gleichung darstellen:

Y = 0 + 1 x 1 + 2 x 2 +…. + n x n

Dabei bezeichnet n die Modellparameter.

Python-Code für lineare Regression

Um ein lineares Regressionsmodell zu erstellen, benötigen Sie zunächst auch einen Datensatz. Es gibt mehrere Möglichkeiten, wie Sie den Python-Code für die lineare Regression verwenden können.

Wir empfehlen, Python zu studieren und sich mit Python-Bibliotheken vertraut zu machen, bevor Sie mit der Arbeit in dieser Hinsicht beginnen.

Es kann Ihnen helfen, ein grundlegendes lineares Regressionsmodell zu erstellen.

Training des Regressionsmodells

Sie müssen die notwendigen Parameter für das Modell finden, damit es am besten zu den Daten passt. Sie müssen die beste Anpassungslinie (oder die Regressionslinie) finden.

Die Regressionslinie ist diejenige, für die der Fehler zwischen den beobachteten Zahlen und den vorhergesagten Zahlen das Minimum ist. Ein anderer Name für diese Fehler ist Residuen.

Um den Fehler zu messen, müssen Sie die Kostenfunktion definieren:

J ( ) = 1 2m i=1 m (h( x ich ) – y ich ) 2

Hier steht h(x) für die Hypothesenfunktion, die durch die zuvor besprochene Gleichung bezeichnet wird:

h(x) = 0 + 1 x 1 + 2 x 2 +…. + ich x ich

m steht für die Gesamtzahl der Beispiele in unserem Datensatz.

Mit diesen Gleichungen und einem Optimierungsalgorithmus können Sie Ihr lineares Regressionsmodell trainieren.

Es gibt viele andere Methoden zur Durchführung der Python-Regressionsanalyse, die wir im Folgenden besprochen haben:

Durchführen einer linearen Regression mit Python-Paketen

Sie können NumPy verwenden, ein weit verbreitetes und grundlegendes Python-Paket. Es wird zur Durchführung von Hochleistungsoperationen verwendet. Es ist Open Source und verfügt über viele mathematische Routinen.

Weitere Informationen dazu finden Sie im NumPy-Benutzerhandbuch. Sie müssen sich auch mit scikit-learn vertraut machen, einer beliebten Python-Bibliothek, die auf NumPy basiert. Es wird im Allgemeinen für maschinelles Lernen und ähnliche Aktivitäten verwendet.

Um lineare Regressionsmodelle zu entwickeln und zu implementieren, sollten Sie sich auch mit Statsmodels vertraut machen. Es ist ein weiteres leistungsstarkes Python-Paket, das zum Durchführen von Tests und zum Schätzen statistischer Modelle verwendet wird.

Was sind die Anwendungen der linearen Regression?

Die lineare Regression findet in vielen Branchen Anwendung. Hier sind einige Anwendungen der linearen Regression:

1) Trends verstehen

Die lineare Regression kann Unternehmen dabei helfen, Markttrends zu verstehen. So können sie ihre Strategien besser planen und Fehler vermeiden. Neben Unternehmen können auch Händler sowie Forschungseinrichtungen diese Technik zur Bewertung von Trends nutzen.

2) Analyse von Preisänderungen

Preisänderungen bei Rohstoffen können erhebliche Auswirkungen auf die Gewinne von Lebensmittelunternehmen haben. Die lineare Regression kann Unternehmen auch bei dieser Aufgabe helfen, da sie Zusammenhänge zwischen den Preisänderungen und den dazu beitragenden Faktoren finden können.

3) Risikobewertung

Versicherungsunternehmen sowie Investoren können die lineare Regression verwenden, um Anomalien herauszufinden. Anleger können ihre schwachen Anlagen finden und ihre Strategien entsprechend planen, während sie das Risiko reduzieren.

Abschließende Gedanken

Die lineare Regression ist einer der wichtigsten KI-Algorithmen und wir hoffen, dass Sie diesen Leitfaden zur linearen Regression mit Python hilfreich fanden. Die Python-Regression kann für einen Anfänger ziemlich entmutigend sein. Aus diesem Grund empfehlen wir, sich zuerst mit Python-Paketen und -Algorithmen vertraut zu machen.

Wenn Sie mehr über maschinelles Lernen erfahren möchten, sehen Sie sich das Executive PG Program in Machine Learning & AI von IIIT-B & upGrad an, das für Berufstätige konzipiert ist und mehr als 450 Stunden strenge Schulungen, mehr als 30 Fallstudien und Aufgaben, IIIT, bietet -B Alumni-Status, mehr als 5 praktische Schlusssteinprojekte und Arbeitsunterstützung bei Top-Unternehmen.

Wenn Sie nur diese beiden kennen, werden Sie bei der Implementierung der linearen Regression von großem Nutzen sein.

Wann verwenden wir Regression?

Wenn mehrere Variablen in einem Problem vorhanden sind, möchten wir vielleicht die Beziehung zwischen ihnen verstehen. Wir können Matrizen verwenden, um die möglichen Beziehungen zwischen bestimmten Variablenpaaren herauszufinden. Mit Korrelationsmethoden können wir die lineare Beziehung zwischen jedem Paar von Variablen messen. Diese Methode reicht jedoch nicht aus, wenn wir komplexe Zusammenhänge mit mehreren Variablen herausfinden wollen. In solchen Fällen ist die Regression eine effektivere Methode, um komplexe Zusammenhänge zwischen mehreren Variablen zu verstehen. Die Regression hilft uns zu wissen, welche Variablen eine bestimmte Reaktion beeinflussen und wie diese ein bestimmtes Ergebnis erklären können.

Wie viele Regressionstypen werden beim maschinellen Lernen verwendet?

Regression ist eine Technik, mit der wir zukünftige Ergebnisse zwischen einer Zielvariablen und einer oder mehreren unabhängigen Prädiktorvariablen vorhersagen können. Regression wird beim maschinellen Lernen sehr häufig zur Zeitreihenmodellierung, Prognose und zum Verständnis von Ursache-Wirkungs-Beziehungen zwischen verschiedenen Variablen verwendet. Verschiedene Arten von Regression, die beim maschinellen Lernen verwendet werden, sind lineare Regression, logistische Regression, Ridge-Regression, polynomiale Regression und Lasso-Regression. Sie können auf weitere Arten von Regressionsanalysemethoden stoßen, die beim maschinellen Lernen verwendet werden. Dies sind jedoch die am weitesten verbreiteten Methoden unter allen anderen.

Was sind die Vorteile der Verwendung von Python?

Python ist eine der am häufigsten verwendeten Programmiersprachen im maschinellen Lernen. Es bringt mehrere Vorteile mit sich. Erstens ist die Syntax von Python einfach. Es ist leicht zu erlernen und zu verstehen, was es sowohl bei Anfängern als auch bei erfahrenen Programmierern sehr beliebt macht. Außerdem ist es Open Source und kostenlos zu verwenden und verfügt über eine riesige Community aktiver Entwickler und Forscher. Die umfangreiche Funktionsbibliothek, die in den Kern von Python integriert ist, bietet umfassende Unterstützung für Entwickler, sodass Sie sich nicht auf externe Bibliotheken oder Bibliotheken von Drittanbietern verlassen müssen. Darüber hinaus ist Python im Gegensatz zu einigen anderen Programmiersprachen wie C und C++ sehr flexibel und systemunabhängig.