Machine Learning
Machine Learning (ML) ist ein Teilgebiet der Künstlichen Intelligenz, bei dem Algorithmen aus Daten lernen und Muster erkennen, ohne explizit programmiert zu werden. Statt fester Regeln entwickelt das Modell selbstständig Fähigkeiten durch das Analysieren von Trainingsbeispielen.
Was ist Machine Learning?
Machine Learning ermöglicht es Computern, aus Erfahrungen zu lernen. Anstatt einem Programm genaue Anweisungen zu geben ("Wenn X, dann Y"), zeigst du ihm viele Beispiele – und es leitet selbst die Regeln ab.
Ein klassisches Beispiel: Du willst Spam-Mails erkennen. Beim klassischen Programmieren müsstest du hunderte Regeln definieren. Mit ML zeigst du dem Algorithmus tausende Spam- und No-Spam-Mails, und er lernt die Unterschiede eigenständig.
Die drei wichtigsten ML-Paradigmen
Supervised Learning (Überwachtes Lernen)
Das Modell lernt anhand gelabelter Daten – jedes Trainingsbeispiel hat eine bekannte Antwort.
from sklearn.linear_model import LogisticRegression
# Trainingsdata: Features und Labels
X_train = [[1.5, 2.0], [3.0, 4.5], [0.5, 1.0], [4.0, 5.0]]
y_train = [0, 1, 0, 1] # 0 = kein Spam, 1 = Spam
model = LogisticRegression()
model.fit(X_train, y_train)
# Vorhersage für neue E-Mail
X_new = [[2.0, 3.5]]
prediction = model.predict(X_new)
print(f"Spam? {'Ja' if prediction[0] == 1 else 'Nein'}")
Unsupervised Learning (Unüberwachtes Lernen)
Keine Labels – das Modell findet selbst Strukturen und Gruppen in den Daten (z. B. Clustering von Kundengruppen).
Reinforcement Learning
Ein Agent lernt durch Belohnungen und Bestrafungen in einer Umgebung – wie beim Training von Spiele-KIs oder Robotern.
Der typische ML-Workflow
1. Daten sammeln & aufbereiten
2. Modell auswählen (z.B. Decision Tree, Neural Network)
3. Training: Modell auf Trainingsdaten anpassen
4. Evaluation: Performance auf Testdaten messen
5. Deployment: Modell in Produktion bringen
6. Monitoring: Modellqualität über Zeit beobachten
Wichtige Konzepte für Entwickler
- Features: Die Eingabevariablen, mit denen das Modell arbeitet
- Labels: Die Zielwerte beim Supervised Learning
- Training vs. Inference: Training = Modell lernt; Inference = Modell macht Vorhersagen
- Overfitting: Das Modell lernt Trainingsdaten auswendig, generalisiert aber schlecht
- Hyperparameter: Einstellungen des Modells, die vor dem Training festgelegt werden
ML vs. klassisches Programmieren
| Klassisch | Machine Learning |
|---|---|
| Regeln werden manuell definiert | Regeln werden aus Daten gelernt |
| Gut für klar definierte Logik | Gut für komplexe Muster |
| Deterministisch | Probabilistisch |
| Wenig Daten nötig | Braucht (oft viele) Daten |
Praxistipp
Als Entwickler wirst du ML meist nicht von Grund auf implementieren. Frameworks wie scikit-learn (klassisches ML), TensorFlow oder PyTorch (Deep Learning) und fertige APIs wie OpenAI oder Hugging Face nehmen dir die schwere Arbeit ab. Verstehe die Grundkonzepte – aber nutze bestehende Werkzeuge produktiv.
Verwandte Begriffe
Inhouse statt Nachschlagewerk
Für den Transfer ins Unternehmen sind die Inhouse-Schulungen der passende nächste Schritt.