KI-Entwicklung · Modul 3: Programmieren für KI

Lektion 5 von 7Übung 20 Min.

Das erste Modell mit scikit-learn

Worum es geht: Jetzt kommt alles zusammen. Sie bauen ein Modell, das aus Hallenflächen Preise vorhersagt – und lernen dabei die drei Befehle kennen, mit denen praktisch jedes Verfahren in scikit-learn bedient wird.

1. Drei Befehle für alles 🎛️

scikit-learn folgt einem einzigen Muster, egal ob Regression, Einordnung oder Gruppierung:

  • modell = Verfahren() – das Modell erzeugen
  • modell.fit(X, y) – anlernen
  • modell.predict(neu) – anwenden

Wenn Sie später ein anderes Verfahren ausprobieren wollen, tauschen Sie eine Zeile. Der Rest bleibt gleich. Das ist der eigentliche Grund für die Verbreitung dieser Bibliothek.

X sind die Eingangsdaten als Tabelle – eine Zeile je Fall, eine Spalte je Merkmal. y ist das, was vorhergesagt werden soll. Großes X, kleines y: Diese Schreibweise ist überall gleich.

2. Im Editor üben

Beim ersten Ausführen lädt scikit-learn nach – das dauert etwa eine halbe Minute:

Code-Labor: Das erste Modell
Schritt 1 von 5
Modell anlernen
Erzeugen Sie ein LinearRegression-Modell, lernen Sie es mit fit an und geben Sie Steigung und Achsenabschnitt aus.
uebung.py
Ausgabe
Noch nichts ausgeführt.

3. Der Schritt, den man nie auslassen darf ✂️

Schritt 3 und 4 sind die wichtigsten der ganzen Lektion. Ein Modell an denselben Daten zu bewerten, an denen es gelernt hat, ist wie eine Klassenarbeit mit den Aufgaben, die vorher geübt wurden – das Ergebnis sagt nichts über das Können.

Deshalb wird aufgeteilt: Ein Teil zum Lernen, ein Teil bleibt zurück und wird erst am Ende verwendet. Nur die Zahl aus dem zurückgehaltenen Teil zählt.

Ein Warnzeichen

Wenn Ihnen jemand ein Modell mit „99 Prozent Genauigkeit“ vorführt, lautet die erste Frage: Gemessen woran? An zurückgehaltenen Daten oder an den Trainingsdaten? Bei der zweiten Antwort ist die Zahl wertlos.

4. Welches Verfahren wofür

FrageArtVerfahren zum Anfangen
Wie viel? Wie teuer? Wie lange?RegressionLinearRegression, dann RandomForestRegressor
Welche Kategorie? Ja oder nein?EinordnungLogisticRegression, dann RandomForestClassifier
Welche Gruppen gibt es?GruppierungKMeans
Was ist ungewöhnlich?AusreißerIsolationForest

Beginnen Sie immer mit dem einfachsten Verfahren. Es ist schnell, verständlich und liefert die Messlatte, an der sich alles Weitere beweisen muss. Sehr oft reicht es bereits – und ein Verfahren, dessen Ergebnis man erklären kann, ist im Betrieb mehr wert als eines, das zwei Prozent besser ist und niemandem erklärbar.

5. Pipelines: der saubere Weg 🔗

In der Praxis gehören Aufbereitung und Modell zusammen – etwa Normalisieren und danach Anlernen. Werden beide getrennt ausgeführt, passiert leicht ein schwerer Fehler: Man normalisiert über alle Daten, einschließlich der Testdaten. Damit fließt Wissen über das Testmaterial ins Training ein, und die Bewertung ist geschönt.

pipeline.py
from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LinearRegression

modell = make_pipeline(StandardScaler(), LinearRegression())
modell.fit(X_train, y_train)      # skaliert nur mit den Trainingsdaten
print(modell.score(X_test, y_test))

Die Pipeline sorgt dafür, dass jeder Schritt nur die Trainingsdaten sieht. Das ist kein Feinschliff, sondern der Unterschied zwischen einer belastbaren und einer geschönten Zahl.

6. Was Sie mitnehmen sollten

  • Drei Befehle: erzeugen, fit, predict – bei jedem Verfahren gleich.
  • X ist die Tabelle der Merkmale, y das Ziel.
  • Immer aufteilen und am zurückgehaltenen Teil bewerten.
  • Mit dem einfachsten Verfahren beginnen – es ist die Messlatte.

Fortschritt sichern

Kostenlos registrieren, Lektionen abhaken und 3 Kernideen als Karteikarten wiederholen.