Importieren der erforderlichen Bibliotheken und Laden des Datensatzes
In diesem Schritt lernst du, wie du die erforderlichen Bibliotheken importierst und den Iris-Datensatz lädst. Folge den Schritten unten, um diesen Schritt abzuschließen:
In iris_classification_svm.py
importiere die erforderlichen Bibliotheken, einschließlich der für das Laden des Datensatzes, das Teilen der Daten, das Erstellen des SVM-Modells und die Bewertung seiner Leistung.
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.svm import SVC
from sklearn.metrics import accuracy_score, classification_report
Lade die Iris-Daten aus sklearn.datasets
und teile den Datensatz in Trainings- und Testsets auf. Der Datensatz wird mit einem 80-20-Verhältnis für das Training und die Tests aufgeteilt, mit einem Zufallszahlengenerator von 42 für die Reproduzierbarkeit.
## Weiter in derselben Datei
def load_and_split_data() -> tuple:
"""
Returns:
tuple: [X_train, X_test, y_train, y_test]
"""
iris = load_iris()
X, y = iris.data, iris.target
X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size=0.2, random_state=42
)
return X_train, X_test, y_train, y_test
Dieser Code lädt den Iris-Datensatz und teilt ihn in Trainings- und Testsets für Machine-Learning-Zwecke auf. Hier ist eine Aufteilung jedes Teils:
- Importieren der erforderlichen Bibliotheken:
sklearn.datasets
wird verwendet, um Datensets zu laden, einschließlich des Iris-Datensatzes.
sklearn.model_selection
bietet Hilfsmittel zum Teilen von Datensets in Trainings- und Testsets.
sklearn.svm
enthält Klassen für Support Vector Machines (SVM), einen Typ von Machine-Learning-Algorithmus.
sklearn.metrics
umfasst Werkzeuge zur Bewertung der Leistung von Modellen, wie Genauigkeit und Klassifizierungsberichte.
- Funktionsdefinition: Eine Funktion namens
load_and_split_data
wird definiert. Diese Funktion führt die folgenden Aufgaben aus:
- Laden des Iris-Datensatzes:
load_iris()
ist eine Funktion von sklearn.datasets
, die den Iris-Blumen-Datensatz lädt, ein beliebter Datensatz für Klassifizierungsaufgaben. Er enthält Messungen von 150 Iris-Blumen aus drei verschiedenen Arten.
- Datenauftrennung: Der Datensatz wird in Merkmale (
X
) und Zielbezeichnungen (y
) getrennt. In diesem Fall wäre X
die 4-dimensionale Messung der Iris-Blumen und y
die entsprechenden Artbezeichnungen (0, 1 oder 2).
- Teilen der Daten:
train_test_split
aus sklearn.model_selection
wird verwendet, um die Daten in Trainings- und Testuntermengen aufzuteilen. Der Parameter test_size=0.2
bedeutet, dass 20% der Daten für das Testen verwendet werden, während die verbleibenden 80% für das Training verwendet werden. random_state=42
gewährleistet die Reproduzierbarkeit der Aufteilung; das Verwenden derselben Zufallszahl (hier 42) liefert jede Zeit die gleiche Aufteilung, wenn der Code ausgeführt wird.
- Rückgabewerte: Die Funktion gibt ein Tupel zurück, das
X_train
, X_test
, y_train
und y_test
enthält, die die Merkmals- und Zielsets für sowohl die Trainings- als auch die Testdaten sind.