Zuhause Persönliche Finanzen Erstellen eines überwachten Lernmodells mit logistischer Regression - Dummies

Erstellen eines überwachten Lernmodells mit logistischer Regression - Dummies

Inhaltsverzeichnis:

Video: Icinga Web 2: Erstellen und verwalten von Business Prozessen (Webinar vom 30. März 2017) 2025

Video: Icinga Web 2: Erstellen und verwalten von Business Prozessen (Webinar vom 30. März 2017) 2025
Anonim

Nachdem Sie Ihr erstes Klassifizierungsvorhersagemodell für die Analyse der Daten erstellt haben, ist das Erstellen weiterer Modelle in scikit eine wirklich einfache Aufgabe. Der einzige wirkliche Unterschied von einem Modell zum nächsten ist, dass Sie möglicherweise die Parameter vom Algorithmus zum Algorithmus abstimmen müssen.

So laden Sie Ihre Daten

Mit dieser Codeliste wird das Iris-Dataset in Ihre Sitzung geladen: >>>> from sklearn. Datensätze importieren load_iris >>> iris = load_iris ()

Wie erstelle ich eine Instanz des Klassifikators

Die folgenden zwei Codezeilen erzeugen eine Instanz des Klassifikators. Die erste Zeile importiert die logistische Regressionsbibliothek. Die zweite Zeile erstellt eine Instanz des logistischen Regressionsalgorithmus. >>>> aus sklearn import linear_model >>> logClassifier = linear_model. LogisticRegression (C = 1, random_state = 111)

Beachten Sie den Parameter (Regularisierungsparameter) im Konstruktor. Der

Regularisierungsparameter

wird verwendet, um eine Überanpassung zu verhindern. Der Parameter ist nicht unbedingt erforderlich (der Konstruktor funktioniert ohne ihn, da er standardmäßig C = 1 ist). Wenn Sie einen logistischen Regressionsklassifikator mit C = 150 erstellen, wird eine bessere Darstellung der Entscheidungsoberfläche erstellt. Sie können beide Plots unten sehen.

So führen Sie die Trainingsdaten aus

Sie müssen das Dataset in Trainings- und Testsets aufteilen, bevor Sie eine Instanz des logistischen Regressionsklassifikators erstellen können. Der folgende Code erledigt diese Aufgabe: >>>> aus sklearn import cross_validation >>> X_train, X_test, y_train, y_test = cross_validation. train_test_split (iris.daten, iris.ziel, test_size = 0. 10, random_state = 111) >>> logClassifier. fit (X_train, y_train)

Zeile 1 importiert die Bibliothek, mit der Sie das Dataset in zwei Teile aufteilen können.

Zeile 2 ruft die Funktion aus der Bibliothek auf, die das Dataset in zwei Teile aufteilt, und ordnet die jetzt geteilten Datensätze zwei Variablenpaaren zu.

Zeile 3 verwendet die Instanz des logistischen Regressionsklassifikators, die Sie gerade erstellt haben, und ruft die Anpassungsmethode auf, um das Modell mit dem Trainingsdataset zu trainieren.

So visualisieren Sie den Klassifikator

Beim Betrachten des Entscheidungsoberflächenbereichs im Diagramm sieht es so aus, als ob ein Tuning vorgenommen werden muss. Wenn Sie in die Mitte des Diagramms schauen, können Sie sehen, dass viele der Datenpunkte, die zum mittleren Bereich (Versicolor) gehören, in dem Bereich auf der rechten Seite liegen (Virginica).

Dieses Bild zeigt die Entscheidungsoberfläche mit einem C-Wert von 150. Es sieht optisch besser aus, daher erscheint es angemessen, diese Einstellung für Ihr logistisches Regressionsmodell zu verwenden.

Ausführen der Testdaten

Im folgenden Code wird das Test-Dataset mit der ersten Zeile an das Modell und die dritte Zeile mit der Ausgabe ausgegeben: >>>> predicted = logClassifier. vorhersagen (X_test) >>> vorhergesagtes Array ([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2])

Wie man das Modell auswertet < Sie können die Ausgabe der Vorhersage mit dem y_test-Array vergleichen. Als Ergebnis können Sie sehen, dass alle Testdatenpunkte korrekt vorhergesagt wurden. Hier ist der Code: >>>> von sklearn import metrics >>> predictedarray ([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2]) >>> y_testarray ([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2]) >>> Metriken. precision_score (y_test, vorhergesagt) 1. 0 # 1. 0 ist 100-prozentige Genauigkeit >>> vorhergesagt == y_testarray ([True, True, True, True, True, True, True, True, True, True, True, True, True, True, True], dtype = bool)

Wie passt das logistische Regressionsmodell mit dem Parameter C = 150 dazu? Nun, Sie können nicht 100 Prozent schlagen. Hier ist der Code zum Erstellen und Auswerten des logistischen Klassifikators mit C = 150: >>>> logClassifier_2 = linear_model. LogisticRegression (C = 150, random_state = 111) >>> logClassifier_2. fit (X_train, y_train) >>> vorhergesagt = logClassifier_2. Vorhersage (X_test) >>> Metriken. precision_score (y_test, vorhergesagt) 0. 93333333333333335 >>> Metriken. confusion_matrix (y_test, vorhergesagt) array ([[5, 0, 0], [0, 2, 0], [0, 1, 7]])

Wir hatten bessere Ergebnisse erwartet, aber es war tatsächlich schlimmer. Es gab einen Fehler in den Vorhersagen. Das Ergebnis ist das gleiche wie das des Support Vector Machine (SVM) Modells.

Hier ist die vollständige Auflistung des Codes zum Erstellen und Auswerten eines logistischen Regressionsklassifikationsmodells mit den Standardparametern: >>>> aus sklearn. Datensätze importieren load_iris >>> aus sklearn import linear_model >>> aus sklearn import cross_validation >>> aus sklearn import metrics >>> iris = load_iris () >>> X_train, X_test, y_train, y_test = cross_validation. train_test_split (iris.daten, iris.ziel, test_size = 0. 10, random_state = 111) >>> logClassifier = linear_model. LogisticRegression (, random_state = 111) >>> logClassifier. fit (X_train, y_train) >>> vorhergesagt = logClassifier. vorhersagen (X_test) >>> vorhergesagtes Array ([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2]) >>> y_testarray ([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2]) >>> Metriken. precision_score (y_test, vorhergesagt) 1. 0 # 1. 0 ist 100-prozentige Genauigkeit >>> vorhergesagt == y_testarray ([True, True, True, True, True, True, True, True, True, True, True, True, True, True, True], dtype = bool)
Erstellen eines überwachten Lernmodells mit logistischer Regression - Dummies

Die Wahl des Herausgebers

Wie man die Socialcast Mobile App benutzt - dummies

Wie man die Socialcast Mobile App benutzt - dummies

Sogar die stoischste Anwendung wie Microsoft Excel hat ein begleitendes Smartphone-App, natürlich hat Socialcast auch eine. Wenn es so wäre, wäre es nicht wirklich eine Ausrede zu sagen, dass Socialcast nicht sehr sozial wäre, wenn du es nicht mit in die große Welt außerhalb deiner Zelle mitnehmen könntest. Die mobile App ...

Wie man das App Verzeichnis von Yammer benutzt - dummies

Wie man das App Verzeichnis von Yammer benutzt - dummies

Sie haben vielleicht gehört: "Es gibt eine App dafür. "Nun, das ist der Fall bei Yammer, der als einzige Ressource für die Vernetzung am Arbeitsplatz funktioniert. Aber Yammer bietet Ihnen auch eine Menge Apps, mit denen Sie Ihr Arbeitsleben noch einfacher gestalten können. Es gibt zwei Möglichkeiten, auf das App-Verzeichnis zuzugreifen: Option ...

So ​​verwenden Sie die Yammer-Analysetools - Dummies

So ​​verwenden Sie die Yammer-Analysetools - Dummies

Yammer rühmt sich damit als "führendes soziales Unternehmensnetzwerk für Unternehmen" um die Arbeit intelligenter und schneller zu erledigen. "Woher weißt du, ob das wahr ist? Ein guter Weg, um zu sehen, wie es für Sie funktioniert, ist die Analyse von Yammer. Wie greifen Sie auf diese großartigen Tools zu? Es ist einfach. Log ...

Die Wahl des Herausgebers

Die Evolution von Distributed Computing für Big Data - Dummies

Die Evolution von Distributed Computing für Big Data - Dummies

Hinter allen wichtigen Trends des letzten Jahrzehnts, einschließlich Serviceorientierung, Cloud Computing, Virtualisierung und Big Data, ist eine grundlegende Technologie namens Distributed Computing. Einfach gesagt, ohne die Verteilung von Datenverarbeitung wäre keiner dieser Fortschritte möglich. Distributed Computing ist eine Technik, mit der einzelne Computer über geografische Gebiete hinweg miteinander vernetzt werden können, so als ob ...

Drei Anbieter mit Data Mining-Produkten - Dummies

Drei Anbieter mit Data Mining-Produkten - Dummies

Es gibt mehrere Anbieter, die Data-Mining-Produkte verkaufen, die Sie vielleicht in Betracht ziehen möchten. Verwenden Sie mit Ihrem Data Warehouse. Hier sind drei, die eine Überlegung wert sind. Microsoft Microsoft hat das serverseitige Data Mining mit Microsoft SQL Server 2005 eingeführt. Obwohl es nicht so ausgereift und ausgeklügelt wie SAS und SPSS ist, hat Microsoft im Laufe der Zeit seine Fähigkeit bewiesen ...

Grundlagen der Big-Data-Integration - Dummies

Grundlagen der Big-Data-Integration - Dummies

Die fundamentalen Elemente der Big-Data-Plattform verwalten Daten auf neue Weise verglichen mit der traditionellen relationalen Datenbank. Dies liegt daran, dass Skalierbarkeit und hohe Leistung erforderlich sind, um sowohl strukturierte als auch unstrukturierte Daten zu verwalten. Komponenten des Big-Data-Ökosystems von Hadoop bis NoSQL DB, MongoDB, Cassandra, ...

Die Wahl des Herausgebers

So ​​stellen Sie eine Verbindung zu Spotify Mobile her - Dummies

So ​​stellen Sie eine Verbindung zu Spotify Mobile her - Dummies

Die meisten modernen Smartphones sind Wi-Fi-fähig. In ein lokales Netzwerk können Sie Spotify-Tracks mithilfe von Wi-Fi auf Ihr Telefon streamen. Sie können Spotify Mobile zu Hause und über Wi-Fi-Netzwerke in Hotels und Cafés problemlos nutzen - Sie müssen nur sicherstellen, dass Sie angemeldet und verbunden sind. ...

Wie Spotify funktioniert - Dummies

Wie Spotify funktioniert - Dummies

Wie Spotify funktioniert, kann Auswirkungen auf den Festplattenspeicher Ihres Computers haben. Internetverbindung. Spotify funktioniert anders als viele andere Online-Musikdienste, weil es auf mehrere Arten angewiesen ist, um Ihnen reibungslos Musik ohne Verzögerungen zu liefern. In Computing-Sprechen, das Maß der Verzögerung zwischen Anfordern eines Songs und Hören es ...

So ​​erreichen Sie Spotify Support - Dummies

So ​​erreichen Sie Spotify Support - Dummies

Es kann vorkommen, dass Sie eine kleine Hilfe beim Navigieren und Verwenden von Spotify benötigen von deinen Spotify Freunden. Sie können jederzeit Support @ spotify per E-Mail senden. com mit Ihrer Frage oder melden Sie sich bei Twitter an und senden Sie einen Tweet an @spotify. Stellen Sie sicher, dass Sie alle Informationen einschließen, die dem Support-Team helfen könnten, einschließlich Ihres Benutzernamens, damit sie ...