Alles über lineare Regression mit Scikit
Veröffentlicht: 2022-09-08In der Praxis gibt es zwei primäre Algorithmen für überwachtes maschinelles Lernen: 1. Klassifizierung und 2. Regression – Die Klassifizierung wird verwendet, um diskrete Ausgaben vorherzusagen, während die Regression verwendet wird, um eine kontinuierliche Wertausgabe vorherzusagen.
In der Algebra bezeichnet Linearität eine gerade oder lineare Beziehung zwischen mehreren Variablen. Eine wörtliche Darstellung dieser Beziehung wäre eine gerade Linie.
Melden Sie sich für den Machine Learning-Kurs an den besten Universitäten der Welt an. Erwerben Sie Master-, Executive PGP- oder Advanced Certificate-Programme, um Ihre Karriere zu beschleunigen.
Die lineare Regression ist ein maschineller Lernalgorithmus, der unter Aufsicht ausgeführt wird. Es ist ein Prozess des Suchens und Abbildens einer Linie, die für alle auf dem Diagramm verfügbaren Datenpunkte geeignet ist. Es ist ein Regressionsmodell, das hilft, den Wert zwischen einer abhängigen und einer unabhängigen Variablen zu schätzen, alles mit Hilfe einer geraden Linie.
Lineare Regressionsmodelle helfen, eine lineare Beziehung zwischen diesen unabhängigen Variablen aufzubauen, die die niedrigsten Kosten haben, basierend auf den gegebenen abhängigen Variablen.
In der Mathematik gibt es drei Möglichkeiten, ein lineares Regressionsmodell zu beschreiben. Sie lauten wie folgt (y ist die abhängige Variable):
- y = Schnittpunkt + (Steigung x) + Fehler
- y = Konstante + (Koeffizient x) + Fehler
- y = a + bx + e
Warum ist die lineare Regression unerlässlich?
Die Modelle der linearen Regression sind vergleichsweise einfacher und benutzerfreundlicher. Sie machen den Prozess der Interpretation mathematischer Daten/Formeln, die Vorhersagen generieren können, relativ einfacher. Die lineare Regression kann in verschiedenen Bereichen (z. B. Wissenschaft oder Betriebswirtschaft) hilfreich sein.
Das lineare Regressionsmodell ist die einzige wissenschaftlich erprobte Methode, um die Zukunft genau vorherzusagen. Es wird in verschiedenen Wissenschaften aus den Bereichen Umwelt, Verhalten, Soziales usw. verwendet.
Die Eigenschaften dieser Modelle sind sehr gut verstanden und daher leicht trainierbar, da es sich um ein seit langem etabliertes statistisches Verfahren handelt. Es erleichtert auch die Umwandlung umfangreicher Rohdatensätze in verwertbare Informationen.
Schlüsselannahmen der effektiven linearen Regression
- Die Anzahl der gültigen Fälle, der Mittelwert und die Standardabweichung sollten für jede Variable berücksichtigt werden.
- Für jedes Modell : Regressionskoeffizienten, Korrelationsmatrix, Teil- und Teilkorrelationen, Standardfehler der Schätzung, Varianzanalysetabelle, vorhergesagte Werte und Residuen sollten berücksichtigt werden.
- Diagramme: Streudiagramme, Histogramme, Teildiagramme und Normalwahrscheinlichkeitsdiagramme werden berücksichtigt.
- Daten : Es muss sichergestellt werden, dass abhängige und unabhängige Variablen quantitativ sind. Kategoriale Variablen müssen nicht in Binär- oder Dummy-Variablen oder andere Arten von Kontrastvariablen umcodiert werden.
- Andere Annahmen : Für jeden Wert einer gegebenen unabhängigen Variablen benötigen wir eine Normalverteilung der abhängigen Variablen. Die Varianz der gegebenen Verteilung der abhängigen Variablen sollte auch für jeden unabhängigen Variablenwert konstant gehalten werden. Die Beziehung zwischen jeder abhängigen unabhängigen Variablen sollte linear sein. Außerdem sollten alle Beobachtungen unabhängig sein.
Hier ist ein vorhandenes Beispiel einer einfachen linearen Regression :
Der Datensatz im Beispiel enthält Informationen über die globalen Wettersituationen eines jeden Tages für einen bestimmten Zeitraum. Diese detaillierte Liste von Informationen enthält Faktoren wie Niederschlag, Schneefall, Temperaturen, Windgeschwindigkeit, Gewitter oder andere mögliche Wetterbedingungen.
Dieses Problem zielt darauf ab, das einfache lineare Regressionsmodell zu verwenden, um die maximale Temperatur vorherzusagen, während die minimale Temperatur als Eingabe verwendet wird.
Zunächst müssen alle Bibliotheken importiert werden.
pandas als pd importieren
importiere numpy als np
importiere matplotlib.pyplot als plt
importiere Seaborn als SeabornInstance
aus sklearn.model_selection import train_test_split
aus sklearn.linear_model import LinearRegression
aus sklearn-Importmetriken
%matplotlib inline
Um den folgenden Datensatz mit Pandas zu importieren, muss der folgende Befehl angewendet werden:
dataset = pd.read_csv('/Users/nageshsinghchauhan/Documents/projects/ML/ML_BLOG_LInearRegression/Weather.csv')
Um die Anzahl der im Dataset vorhandenen Zeilen und Spalten zu überprüfen, um die Daten zu untersuchen, muss der folgende Befehl angewendet werden:
dataset.shape
Die empfangene Ausgabe sollte (119040, 31) sein, was bedeutet, dass die Daten 119040 Zeilen und 31 Spalten enthalten.
Um die statistischen Details des Datensatzes anzuzeigen, kann der folgende Befehl verwendet werden:
beschreiben():
dataset.describe()
Hier ist ein weiteres Beispiel , das zeigen soll, wie man verschiedene Python-Bibliotheken abrufen und verwenden kann, die zum Anwenden einer linearen Regression auf bestimmte Datensätze verwendet werden sollen:
1. Importieren aller erforderlichen Bibliotheken
importiere numpy als np
pandas als pd importieren
seegeboren als sns importieren
importiere matplotlib.pyplot als plt
von sklearn import preprocessing, svm
aus sklearn.model_selection import train_test_split
aus sklearn.linear_model import LinearRegression
2. Lesen des Datensatzes
cd C:\Users\Dev\Desktop\Kaggle\Salinity
# Änderung des Datei-Lesespeicherorts zum Speicherort des Datensatzes
df = pd.read_csv('Flasche.csv')
df_binary = df[['Salnty', 'T_degC']]
# Nur die ausgewählten zwei Attribute aus dem Datensatz nehmen
df_binary.columns = ['Sal', 'Temp']
# Umbenennen der Spalten zum einfacheren Schreiben des Codes
df_binary.head()
# Nur die 1. Zeile zusammen mit den Spaltennamen anzeigen
2. Erkunden der Datenstreuung
sns.lmplot(x = „Sal“, y = „Temp“, data = df_binary, order = 2, ci = None)
# Plotten der Datenstreuung
3. Datenreinigung
# Eliminierung von NaN oder fehlenden Eingabezahlen
df_binary.fillna(method ='ffill', inplace = True)
4. Modell trainieren
X = np.array(df_binary['Sal']).reshape(-1, 1)
y = np.array(df_binary['Temp']).reshape(-1, 1)
# Trennen der Daten in unabhängige und abhängige Variablen
# Konvertieren jedes Datenrahmens in ein numpy-Array
# da jeder Datenrahmen nur eine Spalte enthält
df_binary.dropna(inplace = True)
# Löschen aller Zeilen mit Nan-Werten
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0,25)
# Aufteilen der Daten in Trainings- und Testdaten
regr = LineareRegression()
regr.fit(X_Zug, y_Zug)
print(regr.score(X_test, y_test))
5. Untersuchung der Ergebnisse
y_pred = regr.vorhersage(X_test)
plt.scatter(X_test, y_test, Farbe ='b')
plt.plot(X_test, y_pred, color ='k')
plt.show()
# Datenstreuung der vorhergesagten Werte
6. Arbeiten mit einem kleineren Datensatz
df_binary500 = df_binary[:][:500]
# Auswählen der ersten 500 Zeilen der Daten
sns.lmplot(x = „Sal“, y = „Temp“, Daten = df_binary500,
Ordnung = 2, ci = Keine)
Beliebte Blogs zu maschinellem Lernen und künstlicher Intelligenz
IoT: Geschichte, Gegenwart und Zukunft | Lernprogramm für maschinelles Lernen: Lernen Sie ML | Was ist Algorithmus? Einfach & leicht |
Gehalt als Robotikingenieur in Indien: Alle Rollen | Ein Tag im Leben eines Machine Learning Engineers: Was machen sie? | Was ist IoT (Internet der Dinge) |
Permutation vs. Kombination: Unterschied zwischen Permutation und Kombination | Top 7 Trends in künstlicher Intelligenz und maschinellem Lernen | Maschinelles Lernen mit R: Alles, was Sie wissen müssen |
Wenn Sie daran interessiert sind, vollwertiges maschinelles Lernen zu erlernen, empfehlen wir Ihnen, den Master of Science in Machine Learning & AI von upGrad zu absolvieren . Das 20-monatige Programm wird in Zusammenarbeit mit dem IIIT Bangalore und der Liverpool John Moores University angeboten. Es soll Ihnen dabei helfen, Kompetenz in branchenrelevanten Programmiersprachen, Tools und Bibliotheken wie Python, Keras, Tensor Flow, MySql, Flask, Kubernetes usw. aufzubauen.
Das Programm kann Ihnen dabei helfen, fortgeschrittene Data-Science-Konzepte durch praktische Erfahrung und den Aufbau von Fähigkeiten zu verbessern. Außerdem erhalten Sie den upGrad-Vorteil mit Zugang zu 360°-Karriereberatung, einem Netzwerkpool von über 40.000 bezahlten Lernenden und einer Menge Möglichkeiten zur Zusammenarbeit!
Buchen Sie noch heute Ihren Platz!
Wofür wird die lineare Regression verwendet?
Diese Art der Analyse wird im Allgemeinen verwendet, um den Wert einer Variablen basierend auf einer anderen bekannten Variablen vorherzusagen. Die Variablen, die verwendet werden, um den Wert der anderen zu finden, werden abhängige bzw. unabhängige Variablen genannt.
Wie installiere ich scikit learn?
Zunächst muss die von dem betreffenden Betriebssystem oder der Python-Distribution bereitgestellte Scikit Learn Linear Regression-Version installiert werden. Dies ist am schnellsten für Personen, die diese Option zur Verfügung haben. Dann muss die offiziell freigegebene und neueste aktualisierte Version installiert werden.
Wie funktioniert scikit learn?
Die lineare Regression von Scikit Learn gibt eine Reihe von überwachten und nicht überwachten Algorithmen über eine Python-Schnittstelle aus, die immer konsistent ist. Es ist unter einer zulässigen BSD-Lizenz lizenziert. Es wird unter verschiedenen Linux-Betreibern vertrieben. Die Verwendung dieser Algorithmen wird in Wirtschaft und Bildung weithin gefördert.