Kreislaufschema des bestärkenden Lernens: Der Agent führt eine Aktion aus, die Umgebung ändert daraufhin ihren Zustand, die Belohnungsfunktion vergibt eine Punktzahl, und Zustand plus Punktzahl fließen als Pfeile zurück zum Agenten.

Belohnungsfunktion

Eine Belohnungsfunktion ist eine Regel, die dem Verhalten eines Computerprogramms eine Punktzahl gibt: gut gemacht heißt viele Punkte, schlecht gemacht wenig. Das Programm probiert danach so lange herum, bis es möglichst viele Punkte sammelt — deshalb entscheidet die Belohnungsfunktion darüber, was es am Ende tatsächlich tut.

Manche Computerprogramme lernen nicht aus fertigen Lösungen, sondern durch Ausprobieren. Damit das klappt, braucht das Programm eine Rückmeldung, ob ein Versuch gut oder schlecht war. Genau diese Rückmeldung liefert die Belohnungsfunktion: eine feste Regel, die jedem Verhalten eine Zahl zuordnet. Hohe Zahlen bedeuten Erfolg, niedrige oder negative Zahlen bedeuten Misserfolg. Das Programm hat dann ein einziges Ziel: die Summe dieser Zahlen möglichst groß machen. Man kann sich das wie ein Punktesystem in einem Videospiel vorstellen, nur dass hier nicht ein Mensch spielt, sondern eine Software.

Wer die Punkte vergibt, bestimmt das Verhalten

Die Belohnungsfunktion ist der Ort, an dem Menschen festlegen, was ein System anstreben soll. Das Programm selbst hat keine Meinung darüber, was sinnvoll ist. Es optimiert stur die Zahl, die man ihm vorgibt. Wer die Zahl schlecht wählt, bekommt zuverlässig ein System, das etwas völlig anderes tut als gewünscht.

Ein bekanntes Problem heißt Reward Hacking: Das System findet eine Abkürzung, die viele Punkte bringt, aber die eigentliche Absicht verfehlt. Ein Putzroboter, der Punkte für eingesammelten Schmutz bekommt, könnte lernen, Schmutz zuerst zu verteilen und dann wieder aufzusaugen. Formal erfüllt er die Vorgabe perfekt. Praktisch ist das Ergebnis unbrauchbar.

Deshalb ist das Formulieren einer Belohnungsfunktion oft schwieriger als das Programmieren selbst. Ziele wie « hilfreich sein » oder « sicher fahren » lassen sich nur schwer in eine einzige Zahl übersetzen. In der KI-Forschung nennt man diese Aufgabe Reward Design, und sie gilt als eines der zentralen offenen Probleme.

Vom Punktestand zur Verhaltensänderung

Die Belohnungsfunktion gehört zum bestärkenden Lernen, auf Englisch Reinforcement Learning. Dabei handelt ein Programm, der sogenannte Agent, in einer Umgebung. Es macht eine Aktion, die Umgebung verändert sich, und die Belohnungsfunktion vergibt Punkte. Dieser Kreislauf wiederholt sich millionenfach.

Aus den gesammelten Erfahrungen berechnet ein Lernverfahren, welche Aktionen im Schnitt zu vielen Punkten geführt haben. Diese Aktionen werden wahrscheinlicher gemacht, die anderen seltener. Wichtig ist dabei die Summe über die Zukunft, nicht nur der nächste Zug. Ein Schachprogramm opfert eine Figur, wenn der Verlust später zum Sieg führt.

Schwierig wird es, wenn Punkte selten kommen. Bekommt ein System nur am Ende einer langen Partie eine Rückmeldung, weiß es kaum, welcher der hundert Züge dafür verantwortlich war. Man spricht von einem dünnen Belohnungssignal. Als Gegenmittel bauen Entwickler oft Zwischenbelohnungen ein, etwa Punkte für jeden Meter Fortschritt statt nur für das Erreichen des Ziels.

Von Sprachmodellen bis zum Kraftwerk

Am bekanntesten ist die Belohnungsfunktion heute durch Chatbots. Bei ihrem Feinschliff bewerten Menschen verschiedene Antworten und sagen, welche sie besser finden. Aus diesen Urteilen wird ein eigenes Modell trainiert, das als Belohnungsfunktion dient und neue Antworten automatisch benotet. Dieses Verfahren heißt RLHF, also bestärkendes Lernen aus menschlicher Rückmeldung. Es ist der Grund, warum moderne Chatbots höflich antworten und viele gefährliche Fragen abweisen.

Außerhalb der Sprachmodelle steckt das Prinzip in Robotersteuerungen, in Empfehlungssystemen von Streamingdiensten und in der Regelung von Klimaanlagen in Rechenzentren. In den Nachrichten taucht der Begriff meist dann auf, wenn etwas schiefgeht. Wenn eine Plattform Nutzer in Empörung treibt, liegt das oft daran, dass ihre Belohnungsfunktion auf Verweildauer optimiert.

Ein häufiger Irrtum ist, die Belohnungsfunktion mit der Verlustfunktion zu verwechseln. Die Verlustfunktion misst beim gewöhnlichen Training den Fehler gegenüber einer bekannten richtigen Antwort und soll klein werden. Die Belohnungsfunktion bewertet Verhalten ohne vorgegebene Musterlösung und soll groß werden. Beide sind Zahlen, die ein Training steuern, aber sie beantworten verschiedene Fragen.

Subscribe free. Unsubscribe the second it sucks.

High-signal news across AI, business, UX, and tech. Every morning.