Verwirrender Programmcode: KI und Mensch reagieren gleich
Ein Forscherteam der Universität des Saarlandes und des Max-Planck-Instituts für Softwaresysteme hat erstmals gezeigt, dass die Reaktionen von Menschen und großen Sprachmodellen (LLMs) auf komplexen oder irreführenden Programmcode messbar signifikant übereinstimmen.
Ein interdisziplinäres Forschungsteam verknüpft EEG-Messungen von Entwicklerinnen und Entwicklern mit der Unsicherheit großer Sprachmodelle – und zeigt: Mensch und KI stolpern über dieselben verwirrenden Code-Muster.
Foto: Smarterpix/MediaWhalestock
In der Studie wurde untersucht, wie Menschen und LLMs auf verwirrenden Code reagieren. Dabei wurde die Hirnaktivität der Testpersonen damit verglichen, wie unsicher sich die Sprachmodelle bei der Vorhersage waren. Darauf aufbauend hat das Team eine datengetriebene Methode entwickelt, um solche unklaren Stellen im Code automatisiert aufzuspüren – eine Chance für bessere KI-Assistenten in der Softwareentwicklung.
Merkmale der Verwirrung
Die Merkmale solcher Code-Stellen, die in der Informatik als „Atoms of Confusion“ bezeichnet werden, sind in der Forschung bereits ausführlich betrachtet worden. Dabei handelt es sich um kurze, syntaktisch korrekte, aber für Menschen oft irreführende Programmiermuster, die selbst erfahrene Entwicklerinnen und Entwickler aus dem Konzept bringen können.
Durchführung der Studie
Das Forschungsteam verwendete einen interdisziplinären Ansatz, um herauszufinden, ob LLMs und Menschen über dieselben Stolperfallen „nachdenken“. Einerseits wurden Daten aus einer früheren Studie von Sven Apel, Professor für Software-Engineering der Universität des Saarlandes, und Kollegen genutzt. In dieser wurden die Probandinnen und Probanden gebeten, verwirrende und saubere Code-Variante zu lesen. Dabei wurde ihre Hirnaktivität, sowie die Aufmerksamkeit durch Elektroenzephalografie (EEG) und Eye Tracking gemessen.
Andererseits wurde die „Verwirrung“ von Sprachmodellen und deren Vertrauen in die eigenen Vorhersagen (Modellunsicherheit) anhand sogenannter Perplexity-Werte analysiert. Perplexity ist eine gängige Metrik, um Sprachmodelle zu bewerten (nicht zu verwechseln mit dem gleichnamigen Sprachmodell). Dabei wird auf der Grundlage von Wahrscheinlichkeiten quantifiziert, inwieweit die Vorhersagen von Textsequenzen unsicher sind.
Mensch und KI stolpern über die gleichen Hürden
Die Ergebnisse der Studie sind eindeutig: Da, wo Menschen am Programmcode hängen bleiben, zeigen auch die LLMs erhöhte Unsicherheit. Die EEG-Signale der Teilnehmerinnen und Teilnehmer, insbesondere die sogenannte „Late Frontal Positivity“, die in der Sprachforschung mit unerwarteten Satzenden assoziiert ist, stieg genau dort an, wo auch das Sprachmodell einen Unsicherheitssprung zeigte.
„Wir waren erstaunt, dass der Ausschlag in Hirnaktivität und der Modellunsicherheit signifikante Korrelationen aufwiesen“, sagt Informatik-Doktorand Youssef Abdelsalam.
Algorithmus, der Schwachstellen im Code erkennt
Basierend auf dieser Ähnlichkeit haben die Forschenden ein datengetriebenes Verfahren entwickelt, welches unklare Stellen im Code automatisch erkennt und kennzeichnet. In mehr als 60 % der Fälle hat der Algorithmus die verwirrenden Strukturen im Test-Code erfolgreich identifiziert, die vorab bekannt und von Hand markiert waren. Darüber hinaus wurden mehr als 150 neue, bislang unerkannte Muster entdeckt, die ebenfalls mit erhöhter Hirnaktivität der Probandinnen und Probanden einhergingen.
„Wenn wir wissen, wann und warum LLMs und Menschen gleichermaßen ins Stolpern geraten, können wir Werkzeuge entwickeln, die Programmcode verständlicher machen und die Zusammenarbeit zwischen Mensch und KI deutlich verbessern“, sagt Professor Sven Apel.
Ein Beitrag von: