Algorithmen entscheiden nicht. Die Entscheidung bleibt unsere Angelegenheit.
Können Algorithmen sinnvoll getestet werden? Wer sollte das tun? Was, wenn maschinelles Lernen ins Spiel kommt? Ein Gespräch mit Agata Królikowski, Sprecherin der Fachgruppe „Internet und Gesellschaft“ der Deutschen Gesellschaft für Informatik, über Black Boxes, den Heartbleed-Bug und die Frage, welche Ausbildung InformatikerInnen haben sollten.
Was ist das Neue an Algorithmen? Inwiefern gibt es hier Herausforderungen, die über das hinausgehen, was in den letzten Jahren schon unter dem Schlagwort Big Data praktiziert und diskutiert wird?
Big Data ist immer noch das zentrale Thema. Mustererkennung, Analyse von verborgenen Regelmäßigkeiten: das alles wird mit Big Data gemacht. Aber wir sind eigentlich immer noch dabei, mit Algorithmen zu experimentieren, die aus Big Data Smart Data machen können, um Geräte so miteinander kommunizieren zu lassen, dass sie den Alltag des Menschen wirklich verbessern. Hier sind vor allem Algorithmen des maschinellen Lernens im Einsatz. Ein zentrales Beispiel ist die Spracherkennung, wie sie mittlerweile in die meisten Mobiltelefone integriert ist. Der Anwendungsbereich für Algorithmen zur Verarbeitung von Big Data hat ungeheures Potenzial. Eine große Herausforderung ist aber immer noch die Zuverlässigkeit. Das war es aber von Anfang an – und wird auf absehbare Zeit auch so bleiben.
In welchen Bereichen werden bereits Algorithmen verwendet, die automatisiert vordefinierte Entscheidungen vollziehen?
Zunächst möchte ich klarstellen: Algorithmen entscheiden nicht. Sie berechnen. Die Entscheidung ist und bleibt unsere Angelegenheit. Dies gesagt: Ein Fall, mit dem ich selbst mich ausführlich befasst habe, ist Deep Packet Inspection. Deep Packet Inspection untersucht Datenpakete, die durch das Internet wandern, auf bestimmte Merkmale, die auf den Inhalt der Daten deuten können. Auf diese Weise können zum Beispiel Viren oder Spam bereits im Netz erkannt werden. Der Internetverkehr wird durchleuchtet. Oder gesteuert, damit alle Daten besser und schneller ans Ziel gelangen – je nachdem, wie man es sehen will. Das alles geschieht automatisch. Menschen schauen allenfalls hinterher auf die Statistiken, um zu kontrollieren, wie erfolgreich der Algorithmus im Großen und Ganzen ist. Andere Beispiele sind Roboter in der industriellen Fertigung. Oder der Autopilot im Flugzeug – obwohl da immer noch ein menschlicher Pilot daneben sitzt. Ähnlich ist es beim autonomen Fahren. Ich bezweifle aber, dass es autonomes Fahren in der vollautomatisierten Stufe – also so, dass der Fahrer überhaupt nicht mehr in die Steuerung eingreifen kann – in den nächsten fünf Jahren bereits geben wird.
Wir müssen vereinfachte Annahmen treffen
Inwiefern ist der Entwickler eines Algorithmus für die Ergebnisse, die dieser produziert, verantwortlich? Es gibt das Beispiel des Microsoft Chat-Roboters „Tay“, der auf einmal Hitler-Parolen ausspuckte, weil die Community auf Facebook und Twitter ihn mit entsprechenden Vorgaben gefüttert hatte…
Wir Informatiker modellieren die Realität, um sie im Computer abzubilden. Das heißt: Wir können nicht alle Parameter in den Computer packen - das wäre zu rechenintensiv. Deshalb müssen wir vereinfachte Annahmen treffen. Bei klassischen Algorithmen hat der Entwickler die Eckpunkte in der Hand: die Daten, Testfälle und die Umgebung. Aber selbst hier gibt es ein riesengroßes Feld, das sich damit befasst zu testen, wie sich eine neue Software in der Realität tatsächlich verhält. Softwareverifikation nennt man das. Dort, wo Maschinen mit Menschen zusammen arbeiten und Menschen gefährden können, wie in der industriellen Fertigung, geht es dabei auch um Fragen von Haftung und Haftungsausschluss.
Bei Algorithmen des maschinellen Lernens gestaltet sich die Sache schwieriger. Wir können weder die Umgebung, in der der Algorithmus eingesetzt wird, vollständig abschätzen, noch die Daten, mit denen der Algorithmus trainiert wird. Der Entwickler muss sich hier deshalb damit begnügen, mit Wahrscheinlichkeiten zu rechnen. In einem gewissen Grad ist das eine black box.
Es kommt vor, dass nicht alle Fehler erkannt werden können.
Gibt es Algorithmen, die trotz Offenlegung des Codes selbst von Experten nicht nachvollzogen und getestet werden können?
Wenn es nicht um klassische Algorithmen und nicht um maschinelles Lernen geht, dann ist das Testen in akzeptablen Grenzen durchaus möglich. Es mag sein, dass man ein großes Team braucht, um einen Code arbeitsteilig zu analysieren. Und es kommt vor, dass nicht alle Fehler erkannt werden können, selbst wenn der Code offen gelegt wird. Das zeigt zum Beispiel die Sicherheitslücke in SSL, der Heartbleed-Bug.
An welchen Stellen im Prozess von algorithmengestützen Entscheidungen stellen sich ethische Fragen?
Ich meine, dass Informatiker mehr als Informatik können müssen, um vollständig ausgebildet zu sein. Leider ist das in unserem Fach nicht Konsens. Davon abgesehen, muss man sich konkrete Anwendungsfälle anschauen. Am Beispiel des autonomen Fahrens: Hier gibt es nicht nur den Programmierer, sondern auch den Fahrzeughersteller und denjenigen, der das Auto am Ende fährt. Alle drei teilen sich die Verantwortung. Es gibt aber auch Fälle, in denen Informatiker die einzigen sind, die Zugriff haben, zum Beispiel in der IT-Sicherheit. Dort gibt es eigentlich keine anderen Prozessbeteiligten, die auch Verantwortung tragen. Bei autonom agierenden Militärdrohnen hingegen würde ich sagen, dass es hier auch eine vorverlagerte Verantwortung gibt – dahin gehend, dass solche Systeme vielleicht gar nicht gebaut werden sollten.
Dipl.-Inf. Dipl.-Jur. Agata Królikowski promoviert zum Thema Digitale Grundrechte und ihre technische Umsetzbarkeit an der Universität Bayreuth. Von August 2012 bis Juli 2015 war sie wissenschaftliche Mitarbeiterin im Innovations-Inkubator an derLeuphana Universität Lüneburg, von April 2011 bis Juli 2012 wissenschaftliche Mitarbeiterin am Lehrstuhl Informatik in Bildung und Gesellschaft. Sie ist Mitglied der Gesellschaft für Informatik (GI), der Deutschen Gesellschaft für Recht und Informatik (DGRI), der Association for Computing Machinery (ACM) und der Humanistischen Union. In der GI ist sie Sprecherin der Fachgruppe „Internet und Gesellschaft“ des Fachbereiches „Informatik und Gesellschaft“ und Mitglied des Präsidiums der GI.