Scikit lernen Tutorial

Scikit lernen Tutorial
„Scikit Learn ist die am häufigsten verwendete robuste Bibliothek, die von Python präsentiert wird. Scikit Learn bietet ein effizientes Werkzeug für Algorithmen für maschinelles Lernen (überwachte, unbeaufsichtigte und Verstärkungslernen) und statistische Modellierung. Einige wichtige Funktionen von Sci-Kit lernen, Klassifizierung, Regression, Clusterbildung und Hauptkomponentenanalyse zu umfassen, i, i.e., Dimensionsreduzierung. Scikit befasst sich auch mit den Unterstützungsvektormaschinen, Gradientenabfahrten und zufälligen Wäldern (Baumklassifizierer), die dazu beitragen, die Ergebnisse zu erzielen. Scikit Learn basiert auf den bekanntesten Bibliotheken von Python wie Numpy, Matplotlib und Scipy.”

Verfahren

In diesem Tutorial erfahren wir etwas über die Scikit Learn -Bibliothek von Python und wie wir diese Bibliothek verwenden können, um verschiedene Algorithmen für maschinelles Lernen zu entwickeln. Dieser Leitfaden enthält den folgenden Inhalt, der nacheinander mit einer detaillierten Erklärung erörtert wird:

  • Installation
  • Diagrammdiagramm
  • Verschiedene Datensätze und ihre Dienstprogramme in Scikit lernen
  • Merkmalsauswahl
  • Training eines maschinellen Lernmodells

Schritt 01: Installation

Bevor wir mit dem Scikit Learn anfangen, müssen wir zuerst sein Paket aus den Python -Repositories installieren. Dazu müssen Python (die neueste Version oder eine beliebige Version oder eine beliebige Version) auf unserem System heruntergeladen und installiert werden. Um das Python in Ihrem System herunterzuladen, navigieren Sie zum Link I.e.

„Https: // www. Python .Org “. Sobald Sie diese URL weitergeleitet haben, gehen Sie zu Downloads und klicken Sie auf die Python mit jeder Version, die Sie unten herunterladen möchten: unten:

Nachdem der Python heruntergeladen wurde, müssen wir es jetzt installieren. Wählen Sie die Option für angepasste Installation aus, nachdem Sie den Pfad hinzufügen, das Python hinzugefügt.

Überprüfen Sie alle Optionen im Poping -Fenster, um die PIP -Pakete mit Python zu installieren, und wählen Sie weiter und wählen Sie als nächstes aus.

Der nächste Schritt besteht darin, den Speicherort für die Python -Pakete anzugeben, alle angegebenen erweiterten Optionen zu überprüfen und den Speicherort anzugeben und auf die Installation zu klicken. Dies beginnt dann mit dem Installationsprozess, der eine Weile andauert.

Jetzt wird Python auf unseren Systemen installiert. Um den Python -Shell -Typ zu öffnen, setzen Sie Python in das Suchmenü und drücken Sie die Eingabetaste. Die Python -Hülle wird sich dann öffnen. Jetzt werden wir vorwärts gehen, um das Scikit Learn auf Python zu installieren. Öffnen Sie dazu die Eingabeaufforderung und geben Sie Python ein, um zu überprüfen, ob das Python auf dem System ausgeführt wird oder nicht. Wenn das System die Version von Python zurückgibt, bedeutet dies, dass der Python korrekt ausgeführt wird. Dann müssen wir die Version von PIP überprüfen, um die PIP -Pakete zu verbessern:

$ python
$ pip -Verssion

Nachdem Sie sowohl die Python- als auch die PIP -Version überprüft haben, geben Sie nun den folgenden Befehl in die Eingabeaufforderung ein, um das Scikit -Lernen auf Python zu installieren.

$ pip install scikit lern

Danach beginnt der Scikit mit allen Paketen zu installieren.

Jetzt wurde Scikit Learn in unserem System installiert, und jetzt können wir die Scikit -Pakete verwenden, um jeden Algorithmus für maschinelles Lernen zu entwickeln. Nach der erfolgreichen Installation von Scikit werden wir nun auf den nächsten Schritt wechseln, wo wir wissen, wie die Grafiken der Daten mit Scikit Learn zeichnen können.

Schritt 02: Diagrammdiagramm

Diagramme werden als visuelle Tools bezeichnet, die dazu beitragen, die angegebenen Informationen zu visualisieren, wenn die Daten in den Datensätzen zu zahlreich oder kompliziert genug sind, um sie zu beschreiben. Diagramme betonen die Darstellung der Beziehung zwischen einem oder vielen Variablen. Um mit den Algorithmen für maschinelles Lernen zu arbeiten. Scikit Learn liefert viele solche Visualisierungspakete (in grafischer Form) für die verschiedenen Datensätze.

Beispiel# 01

Die Visualisierung der Daten in Form eines Diagramms kann mit dem Matplotlib -Paket erhalten werden. Matplotlib ist ein Python-Paket, das als Basis des Sci-Kit-Lernplotting-Pakets beiträgt. Scikit Learn integriert sich in die Matplotlib für die Darstellung (visuelle Darstellung der Daten oder der Ergebnisse, die nach dem Training und Testen der Daten in maschinellen Lernalgorithmen erzielt wurden). Versuchen wir, ein Beispiel mit Matplotlib zu implementieren.

Angenommen, wir möchten einige zufällige Zahlen zeichnen, um ihre Beziehung zueinander zu visualisieren. Wir können diese Zahlen zufällig nehmen, e.G., 0.5, 1.5, 2.5. Um den Code zu schreiben, importieren wir die Matplotlib -Bibliothek aus den Python -Paketen als PLT. Nach diesem Schritt können wir jetzt PLT verwenden, anstatt Matplotlib im gesamten Code zu schreiben. Mit dieser PLT schreiben wir dann einen Befehl, um die Zahlen zu zeichnen, die wir bereits zufällig mit der Funktion „PLT“ ausgewählt haben. Diagramm ("ausgewählte Zahlen") ". Um diese Zahlen im Diagramm in der Ausgabe anzuzeigen, verwenden wir die Funktion „PLT. zeigen()". Der Code kann auf nachfolgende Weise erstellt werden:

$ import Matplotlib. Pyplot als PLT
$ plt. Diagramm ([0).5, 1.5, 2.5]))
$ plt. zeigen()

Die Zahlen werden dann in der Ausgabe in der Grafik angezeigt:

Beispiel# 02

Wenn wir die Daten in Form eines Streudiagramms zeichnen möchten, können wir die Funktion „Streuung verwenden. Parzelle ()". Das Streudiagramm repräsentiert die Daten in Form der DOTS -Datenpunkte. Diese Diagramme funktionieren auf zwei oder mehr zwei Variablen. Jeder Punkt- oder Datenpunkt im Diagramm repräsentiert die beiden verschiedenen Werte (jeweils auf der X-Achse und der y-Achse), die einem Datenpunkt in einem Datensatz entsprechen.

Im nachfolgenden Beispiel zeichnen wir eine Streudiagramme auf. Dazu importieren wir den Matplotlib -Pyplot als PLT. Diese PLT kann dann anstelle von Matplotlib verwendet werden. Pyplot. Danach definieren wir die beiden Variablen x und y als x = 1, 3, 5, 7 und y = 2, 4, 6, 8. Für das Streudiagramm muss die Dimension von X und Y übereinstimmen. Um beide Variablen zu zeichnen, verwenden wir die Funktion PLT. Streuung („Variable 1, Variable 2“). Verwenden Sie die Funktion PLT, um diese Variablen im Diagramm anzuzeigen. zeigen ().

$ import Matplotlib. Pyplot als PLT
$ x = [1, 3, 5, 7]
$ y = [2, 4, 6, 8]
$ plt. Streuung (x, y)
$ plt. zeigen ()

Die Beziehung zwischen den beiden angegebenen Variablen in Form eines verstreuten Diagramms wird dann als:

Die oben genannten Beispiele können verwendet werden, um die spezifischen Daten zu zeichnen und über ihre Beziehung zueinander informiert zu werden.

Beispiel# 03

Nehmen wir nun an, dass wir mit einem binären Datensatz gearbeitet haben und die Daten entweder zur Klasse 0 oder der Klasse 1 oder der Klasse 1 klassifizieren müssen. Wir haben einen binären Klassifizierer für diese Daten unter Verwendung eines Algorithmus für maschinelles Lernen entwickelt, und jetzt möchten wir wissen, wie gut dieser Klassifikator funktioniert. Zu diesem Zweck können wir ein AUC-ROC_CURVE verwenden.

In der AUC -RUC -Kurve stellt AUC mit, welchen Grad der Klassifikator entwickelt hat. AUC-RUC_-Kurve zeigt die Kurve zwischen FPR (y-Achse) und TPR (x-Achse) an, die beide ND-Arrays sind. Um diese AUC-RUC-Kurve zu implementieren, importieren Sie zunächst den MatplotlibPyPlot als PLT, damit wir PLT zum Auftreten aufrufen können.

Dann importieren wir den Numpy als NP, um die ND-Arrays zu erstellen. Nach diesem Import von Sklearn -Metriken. Jetzt werden wir das X und Y mit dem NP angeben. Array (), um die ND-Arrays zu erstellen. ND-Arrays verwenden den Numpy, um die sequentiellen Zahlen darin zu speichern. Um die FPR- und TPR- und Schwellenwerte anzugeben, verwenden wir die Methode „Metriken.ROC_CURVE (x, y) ”und dann verwenden wir diese Werte von FPR und TPR, um im ROC_auc zu speichern, indem wir die Funktion„ Metriken aufrufen.AUC () ”.

Nachdem diese Werte angegeben sind, werden wir die Funktion mit „Metriken“ aufrufen. Roccurvedisplay () ”” durch Übergabe von FPR, TPR und ROC_auc in seinen Argumenten und Speichern in variabler Anzeige alle. Dann nennen wir die Funktion. Plot () und PLT. show () um die ROC-AuC-Kurve mit den angegebenen Parametern im Ausgang wie folgt anzuzeigen:

Nachdem wir den oben genannten Code ausgeführt haben, erhalten wir die folgende Ausgabe:

Die RUC-AuC-Kurve wurde jetzt im Ausgang angezeigt, was darstellt. Die ROC-AuC-Kurve funktioniert für die Datensätze mit binärer Klassifizierung.

Beispiel # 04

Eine andere Diagrammplotting -Methode unter Verwendung des Scikit lernen die Kalibrierungskurve. Die Kalibrierungskurve hat einen anderen Namen: das Zuverlässigkeitsdiagramm; Diese Kurve zeigt den Durchschnitt der vorhergesagten Wahrscheinlichkeit gegenüber der positiven Klasse bei der y-Achse der Kurve, indem die Eingabe aus dem Klassifizierer der binären Klassifizierung entnommen wird. Um diese Kalibrierungskurve zu implementieren, lösen wir ein Beispiel, in dem wir zuerst den Datensatz „Klassifizierung“ aus dem Sklearn -Datasets -Paket importieren, dann den Zug importieren und aufgeteilt werden können, um die SKlearn -Modellauswahl aufzuteilen, und dann die lineare sklearn lineare Modellauswahl logistische Regression und Logistik -Regression und -Regression und testen Sie dann die logistische Regression und die sklearn -Modellauswahl. Nach dieser Importkalibrierungskurve und Anzeige aus den „Sklearn -Kalibrierungen“.

Sobald wir alle wichtigen und erforderlichen Pakete importiert haben, laden Sie nun die „Klassifizierung erstellen“ mit der Methode "DataSet_Name ()". Danach werden wir die Daten für Zug- und Testzwecke unter Verwendung der Methode „Train_test__split ()“ teilen, dann werden wir dann mit der Methode „train_test__split ()“ aufgeteilt Erstellt das Klassifizierungsmodell mit „logisticRegression ()“ und passt dieses Modell auf X_TRAIN und Y_TRAIN an.

Verwenden Sie nun die Etiketten und Wahrscheinlichkeiten, die mit dem „Klassifizierer“ vorhergesagt wurden. Prognose Wahrscheinlichkeit () ”Umgehen des Xtest als Eingabeargument, rufen Sie die Methode„ Kalibrierungskurve () auf, um zuerst die Kalibrierungskurve zu zeichnen und dann mit "displayCurve ()" anzuzeigen.

Der Ausgang zeigt die Aufstellung der Kalibrierungskurve an, die die wahren vorhergesagten Wahrscheinlichkeiten eines binären Klassifizierers verwendet hat.

Schritt 03: Verschiedene Datensätze und ihre Dienstprogramme in Scikit lernen

Um mit Algorithmen für maschinelles Lernen zu arbeiten, müssen wir über die Datensätze verfügen, mit denen wir die spezifischen Algorithmen erstellen und die gewünschten Ausgaben erzielen können. Scikit Learn wird mit einigen Paketen geliefert, in denen standardmäßige eingebettete Datensätze unter dem Namen Sklearn gespeichert sind. Datensätze. Um an den Datensätzen zu arbeiten.

Die Datensätze, die Sklearn seinem Benutzer bereitstellt. Die Standardgröße und die kleinen Datensätze können mit den Datensatzladern erhalten werden, während die realen Datensätze über Datensatzfetcher geladen werden.

In diesem Beispiel importieren wir zuerst die Spielzeugdatensätze aus „Sklearn. Datensätze “. Um den Datensatz zu importieren, verwenden wir Sklearn.Datensätze. Sklearn.Datensätze ermöglichen das Importieren der Datensätze aus seinen Standarddatensätzen. Verschiedene Datensätze können von Sklearn geladen werden.Datensätze mit diesem Befehl.

$ von Sklearn. Datensätze importieren load_digits

Hier haben wir den Datensatz der Ziffern aus dem Sklearn importiert.Datensätze. Wir können jeden anderen Datensatz mit demselben Befehl mit der einfachen Änderung laden. Das heißt. Jetzt laden wir im nächsten Schritt den Datensatz mit der Methode "Data set_name ()" und dann in jeder Variablen speichern. Sagen wir den Datensatz, wie wir in diesem Befehl getan haben

$ dataset = load_digits ().

Bis zu diesem Schritt wurde der Datensatz in den Ziffern heruntergeladen. Um die Daten in diesem Datensatz anzuzeigen, verwenden wir die Druckfunktion und übergeben den Variablennamen.Daten in den Argumenten der Druckfunktion.

$ print (Datensatz.Daten )

Jetzt werden wir diese oben genannten Befehle in Form eines Codes ausführen, und es wird die Ausgabe als:

Nachdem wir den Code ausgeführt haben, haben wir eine Ausgabe erhalten, in der alle Daten angezeigt werden.

Wenn wir über die Spezifikation des Datensatzes wissen möchten, wie viele Klassen im Datensatz vorhanden sind oder wie viele Funktionen für den Datensatz sowie die Beispielgröße des Datensatzes vorhanden sind, wie viele Beispiele für angegeben wurden für Jeder Datensatz.

Um diese Informationen zu erhalten, können wir einfach die Funktion „Dataset_varaable Name verwenden. Form". Um dies zu implementieren, importieren Sie den Datensatz (load_iris) aus sklearn.Datensätze und laden Sie diesen Datensatz dann, indem Sie die Methode "load_iris ()" aufrufen und in „Iris“ speichern. Belastung". Drucken Sie dann die Spezifikation des Datensatzes mit dem Druck (Loadiris.Form) auf folgende Weise:

Der obige Code hätte die folgende Ausgabe nach der Ausführung:

Die Ausgabe hat die Werte zurückgegeben (150, 4). Dies bedeutet, dass der Datensatz 150 Beispiele und 4 Attribute enthält, mit denen wir unseren Algorithmus für maschinelles Lernen entsprechend der Nachfrage erstellen können.

Im nächsten Beispiel lernen wir jetzt, wie Sie reale Datensätze importieren und daran arbeiten. Für Daten in realer Welt holen wir die Dateien mithilfe der Abruffunktion, die den Datensatz aus dem Cache/Archiv der spezifischen Website herunterladen und extrahiert, und lädt es in der Sklearn. Datensätze.

Nehmen wir reale Daten aus den realen Datensätzen mit dem Sklearn aus den realen Datensätzen.Datensätze und daran arbeiten. Hier möchten wir die Daten von einigen Newsgroup -Websites, "TV -Newsgroups -Websites", übernehmen. Jetzt importieren wir den Datensatz für diese spezielle Website, indem wir zuerst die Dateien aus dem Repository der Website abrufen. Dann laden wir die Trainingsdaten aus den abgerufenen Dateien dieser Daten in die Sklearn.Datensätze, die die Lademethode aufrufen, i, ich.e., "DataSet_Name (Subset =" entweder testen oder trainieren, um eingegeben zu werden ")" und speichert sie dann in einer Variablen "NewspaperDataload".

Danach werden wir einfach die Zielnamen des Datensatzes anzeigen. "Zielnamen" sind die Dateien, die die realen Datendateien der Datensätze enthalten. Rufen Sie die Druckfunktion auf, um die Namen der Dateien anzuzeigen, die im Datensatz vorhanden sind, indem Sie die Befehle schreiben:

$ pPrint (Liste („Datensatzname). Ziel ”_names))

Wir haben den PPRint hier importiert, da der Zielname die Liste der Datei enthält, und wir möchten, dass diese Liste so angezeigt wird, wie sie ist. Um diese Liste anzuzeigen, haben wir zuerst das PPRINT -Paket importiert. Anschließend haben wir die Liste der Dateinamen im Datensatz angezeigt, die wir bereits in „Sklearn“ geladen haben.Datensätze ”, indem die Dateien von der Website abgerufen werden. Wir haben den oben genannten Code in Python implementiert, und seine Ausgabe war so:

Jetzt wurde die Liste der Datensätze vom System angezeigt. Wenn wir die Attribute dieses Datensatzes kennen wollen, e.G., Die Anzahl der Beispiele, die der Datensatz enthält, die Gesamtzahl der Funktionen im Datensatz usw. Wir können einfach den Druck verwenden (Dataset_Name. Dateinamen. Form) Da wir bereits erklärt haben, dass alle Informationen des Datensatzes in der Datei File_Name oder target_name gespeichert sind und die Attributinformationen des Datensatzes so zurückgeben, wie es ist.

$ print (Zeitung Dataload. Dateinamen. Form )

Schritt 04: Feature -Auswahl

Bei Algorithmen für maschinelles Lernen ist der wichtigste Aspekt, der die Ausgabe des Algorithmus steuert. Merkmale tragen hauptsächlich zum Aufbau eines Algorithmus für maschinelles Lernen bei. Die gesamte Verarbeitung erfolgt an den Datensätzen, die auf den Funktionen basieren. Merkmale können die Algorithmen robust oder ein vollständiger Fehler in Bezug auf die Genauigkeit (beste Vorhersage oder Schätzung) für die Entscheidungsgrenze machen. Wenn es redundante Merkmale oder eine größere Anzahl von Funktionen gibt, die erforderlich sind, trägt dies zur Überanpassung in der Ausgabe bei.

Überanpassung ist das Phänomen, bei dem ein Modell, das auf Datensätzen mit mehr Funktionen als erforderlich geschult wird, geschult wird und einen Trainingsfehler aufweist, der Null am nächsten liegt. Wenn es jedoch auf dem Testdatensatz trainiert wird, funktioniert das Modell bei diesem Testdatensatz nicht gut und daher nicht die richtigen Entscheidungen treffen. Um die Wahrscheinlichkeit zu vermeiden, dass das ausgebildete Modell übereingestaltet wird, lassen wir einige der unnötigen Merkmale fallen. Diese Dimensionalitätsreduzierung kann auf verschiedene Weise mit dem Scikit -Lernen erfolgen.

Beispiel #01

Die erste Methode zum Entfernen des Merkmals ist eine niedrige Varianzschwelle. In dieser Art der Feature -Auswahl entfernen wir diese Funktionen aus den Datensätzen mit geringen Abweichungen unter den angegebenen Schwellenwerten. Niedrige Varianzfunktionen sind solche, die denselben Wert während des gesamten Datensatzes beitragen.

Probieren wir ein Beispiel für die Reduzierung von Funktionen aus. Nehmen wir an, dass wir einen Datensatz haben, der drei Funktionen in binären Daten enthält. In unserem Beispiel haben die Zifferndatensätze vier Spalten als vier Funktionen. Wenn wir eine Funktion mit allen Beispielbeispielen aus dem Datensatz entfernen möchten, verwenden wir die Varianzformel und erstellen einen Varianzschwellenwert dafür. Wenn eine Funktion eine geringe Abweichung aufweist, wird der Schwellenwert aus dem Datensatz entfernt.

Wir werden zuerst die Varianzschwelle aus der "Sklearn feature_selection" importieren. Sobald die Varianzschwelle importiert ist, werden wir den Wert dieser Schwelle festlegen, die in unserem Fall als „0 definiert“ definiert sind.5 ”. Alle Feature -Spalten, die einen Wert von weniger als dieser Schwellenwert haben.

Dazu nennen wir die Methode "Varianzschwelle ()" ". In den Argumenten der Funktion werden wir den Schwellenwert auf 0 bestehen.5 und speichern Sie es in einem Variablen "Schwellenwert". Danach nennen wir die Funktion „Schwelle. fit_transform () ”“ und übergeben Sie den Datensatz an diese Funktion und lassen Sie ihn mit dem Namen new_dataset speichern. Sobald wir mit diesen Schritten fertig sind, drucken wir den Datensatz wie gezeigt:

Wie in der Ausgabe zu sehen ist, dass vor dem Anwendungsschwellenwert der Varianzschwelle auf den Datensatz 4 Funktionen aufwies, und nun wie die Anwendung des Varianzschwellenwerts auf dem Datensatz angewiesen, das System zu entfernen, alle Spalten mit Abweichungen unter dem zu entfernen Schwellenwert, ich.e., 0.5, Die Ausgabe zeigt drei Spalten im Datensatz an, was bedeutet, dass die eine Spalte so berechnet wurde Setzen.

Beispiel #02

Die zweite Methode, um die Funktionen im Datensatz auszuwählen. Für die Implementierung dieser Methode wird der IRIS -Datensatz aus den „Sklearndatasets“ importiert. Anschließend laden wir diesen Datensatz und speichern sie in einer zufälligen Variablen wie IRIS. Um den Datensatz zu laden, nennen wir "loadDataset_name ()".

CHI2 misst den Unterschied zwischen erwarteten und beobachteten Merkmalen und wird für Klassifizierungsaufgaben verwendet. Nachdem wir den Datensatz in Iris geladen und das ausgewählte K Best und Chi2 importiert haben, werden wir sie nun in der „Fit verwenden. Transformation () Funktion ”. Die SelectKBest (Chi2, k = 2). fit.Transform () passt zuerst zu den Daten, die die Trainingsdaten als Eingabe nehmen und dann sie transformieren. Dann lässt das K in der SelectKBest -Methode die Spalten fallen und wählt die Funktionen aus, die die höchsten Funktionen in den Funktionen bewertet haben. In unserem Fall werden wir die beiden Funktionen auswählen, wenn wir den k -Wert gleich 2 auswählen.

In diesem Beispiel gab es beim einfach geladenen Datensatz und dann vier Spalten als Funktionen im Datensatz. Nachdem wir jetzt die SelectKBest -Methode mit K = 2 im Datensatz angewendet haben Zwei Spalten als Funktionen Dies bedeutet, dass das SelectKBest die beiden besten Funktionen aus dem ursprünglichen Datensatz ausgewählt hat.

Beispiel #03

Eine andere Möglichkeit, die wichtige Funktion aus dem Datensatz auszuwählen, wird durch Scikit Learn unter Verwendung der Eliminierung „Recursive Feature Elimination (RFE)“ angegeben. RFE löst die weniger wichtigen Funktionen aus dem Datensatz, indem sie das rekursive Training des Datensatzes durchführen. RFE wählt die Funktionsnummer für sich selbst aus, indem Sie den Median der Gesamtzahl der Funktionen im Datensatz verwenden und bei jeder Iteration nur eine Funktion aus dem Datensatz fallen lassen. Um RFE zu implementieren, importieren Sie zunächst die Bibliotheken, die zum Erstellen des Codes über diese Befehle erstellt werden müssen.

Jetzt haben wir die Pakete für RFE von Sklearn erfolgreich importiert. Besonderheit. Auswahl. Um den Datensatz zu erstellen, haben wir die Funktion „make_rgression ()“ geladen und in ihren Argumenten haben wir die gewünschten Parameter im Datensatz übergeben.

$ X, y = make_regression (n_samples = 10000, n_features = 100, n_informative = 2)
$ print (x.Form)

Dann drucken wir diesen Datensatz, um die genaue Form oder Attribute des Datensatzes zu erfahren. Nachdem wir den Datensatz angezeigt haben, werden wir nun die rekursive Funktion Eliminator verwenden. Zu diesem Zweck werden wir ein Modell als DecisionReeregressor () machen. Nachdem das Modell jetzt mit dem zuvor importierten RFECV () abgeschlossen ist.

Um die rekursive Funktion zu entfernen, werden wir die Daten passen und transformieren. Das gesamte erläuterte Verfahren kann als Code unten geschrieben werden:

Jetzt werden die Merkmale rekursiv gemäß unserer Anforderung nach jeder Iteration fallen gelassen, da sie in der Ausgabe deutlich angezeigt werden kann. Diese rekursive Eliminierung wird fortgesetzt, bis wir den Punkt erreichen, an dem wir zwei wichtige Funktionen aus den insgesamt 100 Funktionen im ursprünglichen Datensatz haben.

Beispiel #04

Eine andere Methode, mit der wir die zusätzlichen Funktionen entfernen können, oder sie können sie aufgrund ihrer Redundanz einfach fallen lassen, ist das „SelectFrom -Modell“ zusammen mit den „linearen Modellen“. Wenn die linearen Modelle der Thesen irgendwie mit der L1 -Norm bestraft werden, existiert ihre Lösung spärlich, da die meisten ihrer Koeffizienten gleich Null werden.

In der Dimensionalitätsreduzierung oder der Auswahl der Merkmale helfen diese linearen Modelle zusammen mit dem Modell SelectFrom bei der Auswahl dieses Koeffizienten von ungleich Null. Sie arbeiten hauptsächlich für das Regressionsproblem. Um das Modell aus SelectFrom zu implementieren, müssen wir zuerst den linearsvc aus sklearn importieren.SVM, linearsvc ist der lineare Unterstützungsvektorklassifizierer, der die beste Passform (Hyper-Ebene) findet, um die Daten in verschiedenen Kategorien zu teilen und zu klassifizieren. Sobald wir die Hyperebene in LSVC erhalten haben, können wir dieses Modell für die beste Passform für eine Funktion zur Verfügung stellen, um zu wissen, zu welcher Klasse diese Funktion gehören würde, und dann werden wir den Datensatz aus dem Sklearn importieren. ATA -Sätze und danach müssen wir das "SelectFrom -Modell" von Sklearn importieren.Merkmalsauswahl.

Nachdem die erforderlichen Pakete importiert wurden, laden wir den IRIS -Datensatz mithilfe von Load_Dataset () und dann die Attribute des IRIS -Datensatzes in Bezug auf Beispielbeispiele und die Anzahl der Funktionen, die sie verwendet, in Bezug auf die „Verwendung des“ an .Form “Methode. Nachdem wir die Form des Datensatzes kennen, wenden wir nun den „linearsvc () an.fit (_loaded Data Set) ”Modell mit c = 0.01, eine Strafe des linearsvc = l1 als Eingabeargument. Erstellen Sie das Modell dann mit "SelectFrom model ()" "und transformieren Sie das Modell mit„ Modell “.verwandeln()". Zeigen Sie nun den neuen Transformationsdatensatz an und zeigen Sie sein Attribut mit den Daten „set_new an.Form".

Die Form des Datensatzes, bevor das Modell „SelectFrom“ für die Feature -Auswahl angewendet wurde Und selectFrom -Modell Die Form des Datensatzes wurde in (150, 3) transformiert, was bedeutet, dass die eine Funktion aus dem Datensatz herausgegeben wurde.

Schritt 05: Datenvorverarbeitung

Die Datensätze, mit denen wir zusammenarbeiten, um verschiedene Algorithmen für maschinelles Lernen zu entwickeln und zu trainieren, sind nicht immer die in ihrer perfekten Form, um das Modell aufzubauen. Wir müssen diese Datensätze entsprechend unseren Anforderungen ändern. Der erste Schritt, den wir nach dem Laden des Datensatzes und vor dem Training machen müssen, ist das Modell vor der Verarbeitung. Durch die Vorverarbeitung von Daten meinen wir:

  • Feature Scaling
  • Merkmalsnormalisierung / Standardisierung

Feature Scaling

Die wichtigste Aufgabe bei der Vorverarbeitung von Daten ist die Skalierung von Feature. Die Skalierung von Feature wird durchgeführt, um alle Funktionen des Datensatzes dieselbe Einheit zu erstellen. Andernfalls trainiert der Algorithmus nicht richtig und kann die Leistung des Algorithmus beeinflussen, indem der Prozess verlangsamt wird. Die Skalierung kann mit dem MinmaxScaler oder MaxabSscaler durchgeführt werden. Feature Skaling legt die Bereiche der Feature -Werte zwischen Null und einer und manchmal auf Bedarf fest, und kann den Wert einer Funktion auf seine Einheitsgröße beschränken.

Hier werden wir ein Beispiel implementieren, in dem wir zuerst die Vorverarbeitung von Sklearn importieren und dann Numpy importieren werden. Numpy wird in den Funktionen verwendet, in denen wir mit Arrays arbeiten müssen. Jetzt werden wir ein ND-Array mit Numpy erstellen. Um auf diesem Array zu skalieren, das wir erstellt haben, werden wir zunächst die Methode „Vorverarbeitung“ verwenden. Minmaxscaler () ”. Nach diesem Schritt wenden wir den MinmaxScaler auf das Array an, indem wir die Methode „MinmaxScaler“ aufrufen. fit_transform () ”“ und wird dieses Array in seinen Argumenten übergeben. Der Code kann erneut geschrieben werden wie:

Die Ausgabe nach der Skalierung des Feature wurde auf dem „X“ durchgeführt. Der Maxabsscaler funktioniert hauptsächlich mit dem MinmaxScaler, aber dieser Skalier skaliert die Datenwerte zwischen negativem (-1) und positivem (+1). Der Code für den MaxabSscaler ist gegeben durch:

In der Ausgabe wurden die Werte von Daten „x“ in der kontinuierlichen Form aus dem Bereich zwischen -1 und +1 zurückgegeben.

Merkmalsnormalisierung / Standardisierung

Wir werden in diesem Beispiel die Daten zur Vorverarbeitungstechniken kennenlernen. Lassen Sie uns zunächst aus der Vorverarbeitung von Sklearn und nach dem Importieren der Vorverarbeitung von Sklearn und dann auch Numpy importieren, da wir jetzt mit ND -Arrays arbeiten werden. Erstellen Sie nun ein ND-Array und speichern Sie es in "X". Jetzt müssen wir die mittlere Normalisierung/Standardisierung dieser Daten durchführen. Dazu werden wir die herkömmliche Methode „Vorverarbeitung. StandardsCaler. Fit („Geben Sie hier die zu normalisierenden Daten ein“) ““) ”. Der Wert der Funktion wird dann in einer Variablen gespeichert, e.G., Scaler. Führen Sie nun die Standardisierung der angegebenen Daten X mit Methode E durch, e.G. „Scaler. Transformation („Daten“) “und dann die neu transformierten Daten anzeigen:

Die Daten „X“ wurden mit dem Nullwert des Mittelwerts standardisiert. Die Normalisierung/Standardisierung der Daten wird durchgeführt, um Redundante oder Duplikate im Datensatz zu vermeiden. Durch die mittlere Normalisierung/ Standardisierung wird sichergestellt. Darüber hinaus befasst sich auch mit Problemen, die aufgrund von Änderungen verursacht werden, e.G., Löschen von Daten, die Hinzufügung neuer Daten oder Aktualisierungen in den Datensätzen, die in Zukunft zu einer Hürde werden könnten.

Jetzt, da wir am meisten über die Scikit -Pakete gelernt haben, können wir die Algorithmen für maschinelles Lernen aufbauen. Wir sollten unsere Fähigkeiten mit dem Scikit testen Machen Sie eine praktische Erfahrung auf diesem Scikit Learn-Funktionen/Pakete. Lassen Sie uns die Implementierung des Scikit Learn -Funktionen für den Algorithmus oder Modell des maschinellen Lernens für maschinelles Lernen beginnen.

Schritt 06: Modelltraining mit Scikit Learn

Wir schulen das „lineare Regressionsmodell“ im House -Preisdatensatz, den wir später im Code erstellen werden. Die lineare Regression findet die beste Linienanpassung für die im Datensatz angegebenen Datenpunkte. Diese Zeile wird auf den Datenpunkten im Diagramm aufgetragen. Wir verwenden diese Zeile dann, um die Werte vorherzusagen, die unser Zugmodell vorhersagt, wann sie an einigen Testdaten getestet wird, mit der Überzeugung, dass die nach dem Ausführen der Testdaten auf dem Modell generierten Ausgabedatenpunkte der Linie als Originaldaten oder -training folgen würden Daten sind befolgt.

Um mit dem linearen Regressionsmodell zusammenzuarbeiten, müssen wir die Matplotlib -Bibliothek importieren und dann aus Scikit Learn importieren wir das lineare Modell, die Matrizen und jede Modellauswahl, um das Modell später im Code zu trainieren. Um den Datensatz des Immobilienpreises zu erstellen, importieren wir NP aus Numpy und erstellen die beiden ND-Array mit Namen "roresq_footage_x" bzw. "HousePrice_y".

Nachdem wir diese beiden ND-Arrays erstellt haben, werden wir ihre Werte mit der „Streuung auf dem Diagramm auf dem Diagramm zeichnen.plot () ”Durch Kennzeichnung der x-Achse des Diagramms als" Bereich des Hauses "und die Y-Achse als" Preis des Hauses "kennzeichnet. Sobald die Datenpunkte aufgezeichnet wurden, trainieren wir das Modell mit dem Modell "Linearegression ()" "Modell". Wir werden dann die Dimensionen des ND-Array "roresq_footage_x" erweitern und dann wird es in der neuen Variablen "x_New" gespeichert, die gespeichert wird. Dann verwenden wir das „model_house.fit () ”und wird die" x_New "und" Houseprice_y "in seinen Eingabeargumenten übergeben, um das Modell für die beste Linie anzupassen.

Wir werden die Hypothese der besten Linie erstellen, die durch „y = theta0* x + theta1“ angepasst wird, und zeichnen diese erwarteten Ausgaben an die realen Daten und zeichnen die Grafik auf. In diesem Diagramm werden wir die beste Anpassungslinie für die angegebenen Datenpunkte wissen, basierend auf der Ausgabe der Datenpunkte von Testdaten, die als korrekt oder nicht vorhergesagt wurden.

Dies ist die Grafik, die wir vor dem Training des Modells erhalten haben. Alle Datenpunkte hier wurden nach den Werten sowohl der X-Achse als auch der y-Achse aufgetragen.

Dieses Diagramm ist die Ausgabe des trainierten Modells und zeigt die beste Anpassungslinie, um die Ausgabe für die Datenpunkte vorherzusagen, wenn das trainierte Modell in einigen Testdaten bewertet wird.

Abschluss

Scikit Learn ist eine Bibliothek für Python, die das Sklearn -Paket verwendet, um mit den verschiedenen verfügbaren Funktionen zum Erstellen eines Algorithmus für maschinelles Lernen zu arbeiten. In diesem Tutorial haben wir von sehr grundlegenden Schritten gelernt (Installation des Scikit -Lernens auf Python zum komplexen Training Ein Modell mit den Scikit Learn -Paketen). Zwischen dem Basic bis zur komplexen Ebene haben wir Diagrammdiagramme, Ladedatensätze, Feature-Auswahl und Datenvorverarbeitung besprochen. Wir hoffen.