Künstliche Intelligenz und maschinelles Lernen: Einstieg
Dein Handy sortiert Fotos nach Gesichtern, und der Mailanbieter hält Spam fern. Wie würdest du ein Programm schreiben, das auf einem Foto eine Katze erkennt? Du müsstest Regeln aufstellen: spitze Ohren, vier Beine, Schnurrhaare. Aber Katzen sitzen, springen oder rollen sich zusammen, und Hunde haben auch Ohren und vier Beine. Die Regeln werden endlos und bleiben fehlerhaft.
Solche Programme gehen einen anderen Weg: Sie bekommen viele Beispiele und finden die Regeln selbst.
Künstliche Intelligenz und maschinelles Lernen
Künstliche Intelligenz (KI) ist der Oberbegriff für Systeme, die Aufgaben lösen, bei denen wir bei Menschen Intelligenz voraussetzen, zum Beispiel Sprache verstehen oder Bilder erkennen. Maschinelles Lernen ist ein Teilgebiet der KI: Das System verbessert sich anhand von Daten, ohne dass ein Mensch jede Regel programmiert. Das Ergebnis des Lernens heißt Modell. Es ist ein Programm, das für neue Eingaben eine Ausgabe liefert.
Der Unterschied zur herkömmlichen Programmierung liegt in der Richtung:
- Herkömmlich: Du gibst Regeln und Daten ein und erhältst Ergebnisse. Die Regeln hast du selbst aufgeschrieben, zum Beispiel "ist der Betrag größer als 1000, dann prüfen".
- Maschinelles Lernen: Du gibst Daten und die zugehörigen richtigen Ergebnisse ein und erhältst die Regeln, also das Modell. Danach wendest du es auf neue Daten an.
Entscheidungsbaum
Ein Entscheidungsbaum ordnet einen Fall durch eine Folge von Ja-Nein-Fragen einem Ergebnis zu. Die erste Frage heißt Wurzel, weitere Fragen heißen Knoten, die Endergebnisse Blätter. Du beginnst bei der Wurzel, folgst der Antwort nach unten und liest am Blatt das Ergebnis ab.
Man kann einen Baum aus Trainingsdaten bauen, das sind Beispiele mit bekanntem Ergebnis. Als nächste Frage wählt man die, die die Fälle am besten trennt, also Gruppen erzeugt, in denen möglichst alle dasselbe Ergebnis haben. Das wiederholt man für jede Gruppe, die noch gemischt ist.
Einen Entscheidungsbaum lernen
Einen Entscheidungsbaum lernen
In der Schule wurde sechs Tage lang notiert, ob in der Pause draußen Fußball gespielt werden konnte.
| Tag | Regen | starker Wind | Fußball draußen |
|---|---|---|---|
| 1 | nein | nein | ja |
| 2 | nein | ja | nein |
| 3 | ja | nein | nein |
| 4 | ja | ja | nein |
| 5 | nein | nein | ja |
| 6 | nein | ja | nein |
Baue daraus einen Entscheidungsbaum.
Frage "Regnet es?": Bei "ja" bleiben die Tage 3 und 4, beide "nein", also entschieden. Bei "nein" bleiben die Tage 1, 2, 5, 6 mit ja, nein, ja, nein, also gemischt. Entschieden sind 2 Tage.
Frage "Starker Wind?": Bei "ja" bleiben die Tage 2, 4, 6, alle "nein". Bei "nein" bleiben die Tage 1, 3, 5 mit ja, nein, ja. Entschieden sind 3 Tage. Der Wind trennt besser und wird die Wurzel.
In der gemischten Gruppe (Tage 1, 3, 5) trennt "Regnet es?" sauber: Tag 3 hatte Regen (nein), die Tage 1 und 5 nicht (ja).
| Knoten | Frage | bei "ja" | bei "nein" |
|---|---|---|---|
| Wurzel | Starker Wind? | Blatt: nein | Knoten K |
| K | Regnet es? | Blatt: nein | Blatt: ja |
Künstliches Neuron und Gewichte
Ein künstliches Neuron ist eine kleine Recheneinheit, die einer Nervenzelle nachempfunden ist. Es bekommt mehrere Eingabewerte, zum Beispiel 0 oder 1 oder Helligkeitswerte. Jede Eingabe hat ein Gewicht. Das ist eine Zahl, die sagt, wie wichtig die Eingabe ist und in welche Richtung sie wirkt: Ein positives Gewicht drängt zu "ja", ein negatives zu "nein".
Das Neuron multipliziert jede Eingabe mit ihrem Gewicht und addiert alles zur Summe s. Ist s mindestens so groß wie ein festgelegter Schwellenwert, gibt das Neuron 1 aus, sonst 0. Bei drei Eingaben x1, x2, x3 mit den Gewichten w1, w2, w3 gilt:
Ein Neuron entscheidet über den Freibadbesuch
Ein Neuron entscheidet über den Freibadbesuch
Ein Neuron hat drei Eingaben: Sonne scheint, Freunde kommen mit, Hausaufgaben noch offen (jeweils 1 oder 0). Die Gewichte sind 3, 2 und -4, der Schwellenwert ist 3. Was gibt es aus, wenn die Sonne scheint, die Freunde kommen und die Hausaufgaben offen sind? Und wenn die Hausaufgaben erledigt sind?
Hausaufgaben offen: Die Eingaben sind 1, 1, 1. Summe: 1 mal 3 + 1 mal 2 + 1 mal (-4) = 3 + 2 - 4 = 1. Das ist kleiner als 3, die Ausgabe ist 0: nicht gehen.
Hausaufgaben erledigt: Die Eingaben sind 1, 1, 0. Summe: 3 + 2 + 0 = 5. Das ist mindestens 3, die Ausgabe ist 1: gehen.
Das negative Gewicht wirkt wie ein Einspruch der offenen Hausaufgaben.
Neuronales Netz und Schichten
Ein neuronales Netz verbindet viele Neuronen in Schichten:
- Die Eingabeschicht nimmt die Rohdaten auf, zum Beispiel ein Neuron je Bildpunkt. Ein Schwarz-Weiß-Bild mit 28 mal 28 Bildpunkten hat 784 Eingaben.
- Die verdeckten Schichten liegen dazwischen. Jedes Neuron nimmt die Ausgaben der Schicht davor als Eingaben.
- Die Ausgabeschicht liefert das Ergebnis, zum Beispiel ein Neuron je Ziffer von 0 bis 9. Die Ziffer mit dem größten Wert ist die Antwort.
Das Wissen des Netzes steckt in den Gewichten. Beim Training beginnt das Netz mit zufälligen Gewichten. Man gibt ein Trainingsbeispiel ein, vergleicht die Ausgabe mit der richtigen Antwort und verändert alle Gewichte ein kleines Stück so, dass der Fehler kleiner wird. Das wiederholt man sehr oft.
Überwachtes, unüberwachtes und bestärkendes Lernen
Man unterscheidet drei Lernarten, je nachdem, was die Daten enthalten:
| Lernart | Daten | Beispiel |
|---|---|---|
| überwachtes Lernen | Eingaben mit der richtigen Antwort (Label) | Fotos mit "Katze" oder "Hund"; Mails mit "Spam" oder "kein Spam" |
| unüberwachtes Lernen | nur Eingaben; das System sucht selbst Gruppen oder Muster | Kundschaft eines Onlineshops nach ähnlichem Kaufverhalten gruppieren |
| bestärkendes Lernen | keine fertigen Antworten, sondern Belohnung oder Strafe für Handlungen | ein Programm lernt ein Spiel durch viele Partien |
Trainingsdaten, Testdaten und Aussagekraft
Man teilt die vorhandenen Beispiele auf. Die Trainingsdaten, oft etwa vier Fünftel, dienen zum Lernen. Die Testdaten, der Rest, werden zurückgehalten und erst am Ende zur Prüfung benutzt. Nur so zeigt sich, ob das Modell bei neuen Fällen funktioniert.
Der Grund: Ein Modell kann die Trainingsdaten fast auswendig lernen. Das nennt man Überanpassung. Es ist dann auf den Trainingsdaten sehr gut und bei neuen Daten schlecht.
Ein einfaches Maß ist die Genauigkeit, der Anteil der richtigen Antworten auf den Testdaten:
Wie aussagekräftig ist die Genauigkeit?
Wie aussagekräftig ist die Genauigkeit?
Zwei Spam-Filter werden mit 1000 Testmails geprüft, davon sind 20 Spam. Filter A meldet bei jeder Mail "kein Spam". Filter B erkennt 18 der 20 Spam-Mails und stuft 30 gute Mails fälschlich als Spam ein. Berechne beide Genauigkeiten und beurteile die Filter.
Filter A: 980 gute Mails richtig, 20 Spam-Mails falsch. Genauigkeit: 980 von 1000, also 98 %.
Filter B: 18 Spam-Mails richtig. Von 980 guten Mails sind 30 falsch, also 950 richtig. Zusammen 968 von 1000, also 96,8 %.
Filter A hat die höhere Genauigkeit, erkennt aber keine einzige Spam-Mail und ist nutzlos. Bei seltenen Fällen führt die Genauigkeit allein in die Irre.
Möglichkeiten, Grenzen, Bias und ethische Fragen
Möglichkeiten: Maschinelles Lernen findet Muster in Datenmengen, die kein Mensch durchsehen könnte, und löst Aufgaben, für die sich keine Regeln aufschreiben lassen, etwa bei Sprache und Bildern.
Grenzen: Das Modell kennt nur, was in den Daten steckt, und kann bei neuen Fällen falsch liegen, ohne dass es auffällt. Es findet Muster in Zahlen, versteht aber nicht, was sie bedeuten. Bei großen Netzen lässt sich oft kaum erklären, warum sie so entschieden haben.
Bias heißt Verzerrung. Die Daten wurden von Menschen ausgewählt und spiegeln deren Auswahl und Vorurteile. Ein Modell übernimmt das und kann es verstärken, wenn Gruppen in den Daten kaum vorkommen oder frühere Entscheidungen unfair waren. Ein ausgedachtes Beispiel: Ein Unternehmen trainiert ein Auswahlmodell mit den Bewerbungen der letzten zehn Jahre. Wurden damals fast nur Männer eingestellt, lernt das Modell, dass "männlich" ein Vorteil ist.
Ethische Fragen: Wer trägt die Verantwortung für einen Fehler: Entwicklerin, Betreiber oder Nutzer? Dürfen Systeme über Menschen entscheiden, und wer prüft sie? Welche persönlichen Daten dürfen zum Training dienen? Menschen müssen Werte abwägen, ein Modell kann das nicht.
Ein Rechner entscheidet immer neutral
Ein Rechner entscheidet immer neutral
"Ein Rechner hat keine Vorurteile, also ist seine Entscheidung objektiv."
Ein Modell lernt aus Daten, die Menschen gesammelt und ausgewählt haben. Stecken Vorurteile oder Lücken darin, übernimmt das Modell sie. Der Rechner rechnet korrekt, aber auf einer verzerrten Grundlage.
Zusammenfassung
Maschinelles Lernen ist ein Teil der KI. Aus Daten und richtigen Ergebnissen entstehen die Regeln, nicht umgekehrt wie bei der herkömmlichen Programmierung.
Ein Entscheidungsbaum besteht aus Wurzel, Knoten und Blättern. Beim Lernen wählt man die Frage, die die Fälle am besten trennt.
Ein Neuron vergleicht die gewichtete Summe seiner Eingaben mit einem Schwellenwert. Ein neuronales Netz hat Schichten solcher Neuronen, sein Wissen steckt in den Gewichten.
Überwacht lernt man mit richtigen Antworten, unüberwacht ohne Antworten, bestärkend durch Belohnung und Strafe.
Trainingsdaten dienen zum Lernen, Testdaten zum Prüfen. Die Genauigkeit allein kann täuschen.
Ein Modell kann Vorurteile aus den Daten übernehmen (Bias). Verantwortung und Fairness bleiben Fragen für Menschen.
Übungen
Was unterscheidet maschinelles Lernen von herkömmlicher Programmierung?
Ein Programm lernt Schach durch Tausende Partien. Für einen Sieg bekommt es Pluspunkte, für eine Niederlage Minuspunkte. Welche Lernart ist das?
Ein Neuron hat die Eingaben 3, 5 und 2 und die Gewichte 2, -1 und 4. Wie groß ist die gewichtete Summe?
Ein Modell erkennt 99 % der Trainingsbilder, aber nur 60 % der Testbilder richtig. Was ist die wahrscheinlichste Erklärung?
Eine Firma lernt ein Modell zur Vorauswahl von Bewerbungen aus den Einstellungen der letzten zehn Jahre. Erkläre, wie dabei Bias entstehen kann.