Maschinelles Lernen
Englisch: machine learning
Definition
Maschinelles Lernen, kurz ML, ist ein Teilgebiet der Informatik bzw. künstlichen Intelligenz, das sich mit Algorithmen beschäftigt, die aus Daten lernen, statt explizit programmiert zu werden.
Hintergrund
Maschinelles Lernen beschäftigt sich mit Methoden, durch die ein Computer automatisch Muster und Zusammenhänge in Daten erkennen und nutzen kann, ohne explizit dafür programmiert worden zu sein. Im Unterschied zur klassischen Softwareentwicklung, wo ein Programmierer Regeln und Entscheidungslogik direkt vorgibt, wird beim maschinellen Lernen ein System mit Daten "trainiert". Dieses Modell sucht selbstständig nach einer mathematischen Funktion, die die Beziehung zwischen Eingabe und Zielgröße beschreibt. Ziel ist es, ein Modell zu erhalten, das nicht nur die Trainingsdaten korrekt verarbeitet, sondern sich auch auf neue, unbekannte Daten sinnvoll anwenden lässt.
Mathematische Grundlagen
Vereinfacht lernt ein ML-Modell eine Funktion , bei der die Eingabedaten sind (z.B. Bilddaten, Messwerte, Texte) und die Zielvariable (z.B. Tumor ja/nein, Blutdruckwert, Klassenzugehörigkeit). Beim Training werden viele Beispiele bereitgestellt, auf deren Basis ein Algorithmus die Parameter dieser Funktion so optimiert, dass der Fehler zwischen Vorhersage und tatsächlichem Wert möglichst gering ist. Das erfolgt je nach Modelltyp durch Verfahren wie Gradientenabstieg, Entscheidungsbaum-Bildung oder Bayessche Inferenz. Das trainierte Modell ist letztlich ein Rechenvorschrift, die auf neue -Werte angewendet werden kann, um vorherzusagen.
Optimierungsproblem
Im Zentrum von ML steht das Optimierungsproblem: Wie finde ich eine Funktion f, die Eingabedaten x auf Zielwerte y abbildet, sodass sie bei neuen Daten gute Vorhersagen liefert? Man besitzt einen Trainingsdatensatz D mit:
Jeder Punkt (xi,yi) besteht aus einer Eingabe xi∈ Rd (z.B. ein Vektor mit d Merkmalen) und einer Zielgröße yi, die entweder:
- diskret (Klassifikation): yi ∈ {0, 1} oder allgemeiner {1, ..., k}, oder
- kontinuierlich ist (Regression): yi ∈ R
Man sucht nun eine Funktion f(x; θ) mit Parametern θ, sodass:
- für alle i
Das Ziel ist es, θ so zu wählen, dass die Abweichung zwischen Vorhersage und tatsächlichem Wert über alle Trainingsbeispiele minimal ist.
Verlustfunktion
Die Abweichung zwischen und wird mit einer Verlustfunktion L gemessen. Diese gibt an, wie "schlecht" eine Vorhersage war. Typische Beispiele sind:
- Regression: (Mean Squared Error)
- Klassifikation (binär): (Binary Cross-Entropy)
Der empirische Risiko-Funktional über alle Daten lautet dann:
Das Ziel des Lernens ist es, diese Funktion zu minimieren:
Hypothesenraum
Die beste Funktion wird nicht aus allen denkbaren Funktionen gesucht, sondern aus einem Hypothesenraum . Es handelt sich um die Menge aller Funktionen, die durch ein bestimmtes Modelltypus erzeugbar sind.
- Ein lineares Modell hat beispielsweise nur Funktionen der Form
- Ein neuronales Netz kann (theoretisch) beliebige stetige Funktionen approximieren.
Je größer der Hypothesenraum, desto größer die Flexibilität, aber auch das Risiko von Overfitting.
Trainings- und Testfehler
Ein häufiges Missverständnis beim maschinellen Lernen ist, dass ein gutes Modell einfach die Trainingsdaten möglichst exakt vorhersagen muss. Der Trainingsfehler, also der Fehler, den das Modell auf den Daten macht, mit denen es trainiert wurde, ist jedoch nicht das entscheidende Kriterium. Denn das Ziel ist nicht, sich bekannte Beispiele einzuprägen, sondern ein allgemeingültiges Modell zu finden, das auch bei neuen unbekannten Daten gut funktioniert. Hier kommt der Testfehler ins Spiel: Er misst, wie gut das Modell auf Daten funktioniert, die es noch nie gesehen hat. Der Testfehler ist daher der maßgebliche Indikator für die tatsächliche Leistungsfähigkeit des Modells in der Praxis.
Ein Modell, das auf den Trainingsdaten extrem gute Vorhersagen macht (Trainingsfehler ≈ 0), aber auf den Testdaten schlecht abschneidet (Testfehler hoch), leidet unter Overfitting. Es hat gelernt, irrelevante Details oder Zufälligkeiten in den Trainingsdaten auszunutzen, die sich nicht verallgemeinern lassen. Ein solches Modell ist zwar mathematisch gut angepasst, aber praktisch wertlos. Umgekehrt kann ein Modell, das sowohl auf Trainings- als auch auf Testdaten einen moderat niedrigen, aber ähnlichen Fehler hat, als gut generalisierend gelten. Es hat die wesentlichen Strukturen in den Daten erkannt. Deshalb ist es in der Praxis zwingend notwendig, die Daten in mindestens zwei (besser drei) Teile aufzuteilen:
- Trainingsdaten: zur Modellanpassung
- Validierungsdaten: zur Modellauswahl, Hyperparameter-Tuning
- Testdaten: zur finalen, objektiven Beurteilung
Regularisierung
Um Overfitting zu vermeiden - also das Überanpassen an Trainingsdaten - wird oft eine Regularisierung eingebaut. Dabei wird nicht nur der Fehler, sondern auch die Komplexität des Modells bestraft. Die modifizierte Zielfunktion lautet dann:
-
- mit : Regularisierungsstärke (Hyperparameter)
- mit : Regularisierungsterm (z.B. Norm von Gewichten)
Das bekannteste Beispiel ist die L2-Regularisierung (Ridge):
Lernalgorithmen
Der eigentliche Lernalgorithmus ist das numerische Verfahren, mit dem man die optimalen Parameter θ findet. In vielen Fällen wird dazu Gradientenabstieg (gradient descent) oder eine Variante (z.B. Adam, SGD) verwendet:
-
- mit : Lernrate
- mit : Gradient der Verlustfunktion (Richtung, in der der Fehler am stärksten abnimmt)
Der Gradientenabstieg wird verwendet, wenn die Verlustfunktion R(θ) differenzierbar ist, was bei vielen Modellen (z.B. lineare Regression, neuronale Netze, SVMs) zutrifft.
Bei Entscheidungsbäumen funktioniert das Lernen nicht über Gradienten oder Ableitungen, sondern über rekursive Partitionierung. Der Baum prüft, bei welchem Feature man die Daten am besten aufspalten kann, sodass die Reinheit (Homogenität) der Zielwerte innerhalb jeder Teilgruppe maximal ist. Dabei wird z.B. die Entropie oder der Gini-Index minimiert.
Die Bayessche Inferenz geht noch einen Schritt weiter: Sie betrachtet Wahrscheinlichkeitsverteilungen über mögliche Parameterwerte. Statt "Was ist das beste θ?" fragt man "Welche Werte von θ sind angesichts der beobachteten Daten am wahrscheinlichsten?" Das geschieht über den Bayesschen Satz:
-
- mit : Prior-Verteilung (was ich vor den Daten über θ glaube)
- mit : Likelikehood (wie gut erklären diese θ-Werte die beobachteten Daten?)
- mit : Posterior (aktualisiertes Wissen über θ, nachdem die Daten gesehen wurden)
In der Praxis nutzt man Bayessche Methoden z.B. bei Bayes-Klassifikatoren, Gauß-Prozessen oder probabilistischen neuronalen Netzen (PNN).
Formen
Maschinelles Lernen lässt sich in drei große Kategorien einteilen:
- überwachtes Lernen ("supervised learning"): Eingabedaten mit bekannten Ausgaben (Labels). Ziel ist eine Funktion zu lernen, die Eingaben auf Ausgaben abbildet.
- unüberwachtes Lernen ("unsupervised learning"): Eingabedaten ohne Labels. Ziel ist Strukturen oder Muster in den Daten zu erkennen.
- bestärkendes Lernen ("reinforcement learning"): Ein Agent handelt in einer Umgebung, bekommt Belohnung oder Bestrafung. Ziel ist es, eine Strategie (Policy) zu lernen, die langfristig optimal handelt.
Überwachtes Lernen
Beim überwachten Lernen wird das Modell mit Beispieldaten trainiert, bei denen sowohl die Eingabe (Features) als auch die richtige Ausgabe (Labels) bekannt sind. Ziel ist es, eine Funktion zu finden, die Eingaben auf möglichst korrekte Ausgaben abbildet. Die Trainingsdaten bestehen aus Paaren (xi,yi). Das Modell versucht, die Abbildung von x nach y so zu lernen, dass der Fehler (Loss) zwischen vorhergesagtem und wahrem minimal ist. Der Optimierungsalgorithmus passt die Modellparameter entsprechend an.
Beispielsweise "gibt" man einem Algorithmus eine große Menge CT-Bilder, bei denen jeweils bekannt ist, ob ein Tumor vorhanden ist oder nicht. Das Modell soll lernen, diese Zuordnung nachzuvollziehen und künftig auf neue Bilder anzuwenden. Überwachtes Lernen ist die häufigste ML-Form in der Praxis und wird unter anderem für Klassifikationsprobleme (für diskrete Zielvariablen) und Regressionsprobleme (für stetige Variablen) verwendet.
Unüberwachtes Lernen
Beim unüberwachten Lernen stehen keine Labels zur Verfügung, d.h. das Modell kennt nur die Eingabedaten und soll darin selbst Strukturen oder Muster finden. Typische Anwendung ist Clustering, also das Gruppieren von Daten nach Ähnlichkeit. Beispielsweise könnte ein Algorithmus automatisch verschiedene Bildtypen oder Patientenuntergruppen erkennen, ohne dass vorab definierte Kategorien existieren. Auch Dimensionsreduktion wie Principal Component Analysis (PCA) gehört hierzu; sie reduziert die Anzahl der Variablen, um komplexe Daten übersichtlicher zu machen.
Bestärkendes Lernen
Das bestärkende Lernen ist ein spezieller Fall, bei dem ein "Agent" in einer Umgebung agiert und für seine Aktionen Rückmeldungen in Form von Belohnungen oder Bestrafungen erhält. Ziel ist es, eine Strategie (Policy) zu erlernen, die langfristig maximalen Nutzen bringt. Anwendung findet es in dynamischen Entscheidungsprozesse, z.B. in der Robotik oder bei autonomen Systemen.
Ablauf
Ein typischer ML-Workflow beginnt mit der Datenerhebung und -aufbereitung. Hierbei werden Rohdaten gesammelt (z.B. Bilder, Laborwerte, Textbefunde) und in eine geeignete, strukturierte Form gebracht. Häufig sind medizinische Daten uneinheitlich oder fehlerbehaftet, sodass eine sorgfältige Datenbereinigung und Standardisierung entscheidend sind.
Im nächsten Schritt folgt das Feature Engineering, also die Auswahl und Konstruktion relevanter Merkmale, die dem Modell präsentiert werden. In der Radiologie beispielsweise sind das Radiomics-Features wie Textur, Intensität oder Formparameter aus Segmentierungen. Auch nicht-bildgebende Merkmale (Alter, Geschlecht, Genetik) können integriert werden.
Danach wird ein geeignetes Modell ausgewählt. Je nach Problemstellung kann das ein Entscheidungsbaum, ein Random Forest, ein Support-Vector-Machine, ein neuronales Netz oder ein anderes Verfahren sein. Das Modell wird dann auf den Trainingsdaten angepasst ("trainiert") und anschließend auf Validierungsdaten getestet, die es noch nicht gesehen hat.
Im Evaluationsschritt werden verschiedene Metriken berechnet, um die Qualität des Modells zu quantifizieren. Für Klassifikation ist das z.B. Accuracy, Sensitivität, Spezifität, ROC-AUC; für Regression sind es etwa Mean Squared Error (MSE) oder R². Wichtig ist dabei, die Evaluation korrekt durchzuführen, z.B. durch Cross-Validation oder externes Testset, um Overfitting zu vermeiden.
Am Ende steht das Inference-Modell, das auf neue, echte Daten angewendet werden kann. In der klinischen Realität erfolgt dann oft eine Post-Hoc-Analyse (Interpretierbarkeit, Fairness, Biasprüfung), bevor ein ML-Modell für Diagnostik oder Therapieeinschätzung verwendet werden darf.