In der bisherigen Diskussion haben Sie Algorithmen als neutral und faktenorientiert erlebt, die aktiv das Ziel verfolgen, unverzerrte Schätzungen zu produzieren. Die untersuchten Arten von algorithmischen Verzerrungen hatten alle ihren Ursprung außerhalb des Algorithmus, z. B. in Verzerrungen in der realen Welt oder unzureichenden Daten. In diesem Kapitel werden wir tiefer in die Funktionsweise eines Algorithmus eintauchen und Situationen entdecken, in denen ein Algorithmus „zufällig“ neue Vorurteile im Sinne von Vorurteilen gegenüber bestimmten Profilen einführt. Vieles davon kann als Rauschen betrachtet werden, aber hin und wieder kann eine solche algorithmische Voreingenommenheit durch den Kontext, in dem der Algorithmus verwendet wird, vergrößert, verstärkt oder sogar aufgepeitscht werden, wodurch die Wirkung einer solchen algorithmischen Voreingenommenheit überproportional wachsen kann.
Zunächst werden wir einen tieferen Blick auf algorithmische Fehler werfen und darauf, wie Stichprobengrößen und Fallhäufigkeiten die Funktionsweise eines Algorithmus beeinflussen. Dann werden wir noch tiefer in die Frage eintauchen, wie sich diese Probleme bei baumbasierten Modellierungsansätzen, die vielen Modellen des maschinellen Lernens zugrunde liegen, besonders hart auswirken können. Abschließend werden wir die Auswirkungen all dieser Aspekte aus einer eher philosophischen Perspektive diskutieren.
Algorithmischer Fehler
Menschen sind daran gewöhnt, binäre Vorhersagen zu treffen, wie z. B. „Es wird heute regnen!“ oder „Stellen Sie sie nicht ein; ich glaube nicht, dass sie der Aufgabe gewachsen ist.“ oder „Kaufen wir das da; es sieht lecker aus!“ Algorithmen hingegen leben in einer wahrscheinlichkeitstheoretischen Welt: Sie sagen „83 % Regenwahrscheinlichkeit“, „12 % Wahrscheinlichkeit, dass diese Bewerberin nach 12 Monaten in ihrem Job gut oder besser bewertet wird“ oder „98 % Wahrscheinlichkeit, dass Ihnen dieser Kuchen schmeckt“. Obwohl viele Algorithmen darauf ausgelegt sind, ein binäres Ergebnis vorherzusagen (Wird es heute regnen, ja oder nein?), sind viele typische Algorithmen aufgrund ihres Aufbaus mathematisch nicht in der Lage, jedem Ereignis eine Wahrscheinlichkeit von Null oder 1 zuzuordnen; es gibt nur einen Bereich zwischen 0,000……1 % (und möglicherweise viel mehr Nullen) und 99,999 % (und möglicherweise viel mehr 9en).
Wenn Algorithmen verwendet werden, um Entscheidungen zu treffen, gibt es immer eine Entscheidungsregel, die besagt: „Tu dies, wenn die geschätzte Wahrscheinlichkeit größer als x“ oder „kleiner als y“ ist. Jede Ja/Nein-Entscheidung impliziert also immer einen Algorithmus, der sagt: „Übrigens, die Wahrscheinlichkeit, dass meine Vorhersage falsch ist, ist ungleich Null; dass es nicht regnen wird, dass dieser Studienabbrecher ein Superstar sein wird und dass du diesen Schokoladenbiskuit mit Chili und Speck hassen wirst.“
Daraus ergibt sich ein interessantes Phänomen: Wie ein Anwalt, der alle seine Aussagen mit cleveren Haftungsausschlüssen versieht, können wir nie mit dem Finger auf eine bestimmte Vorhersage zeigen und den Algorithmus beschuldigen, sich zu irren; der Algorithmus wird immer den Finger heben und kaltschnäuzig darauf hinweisen, dass er genau die Wahrscheinlichkeit angegeben hat, dass seine Vorhersage falsch ist. Tatsächlich besteht die naive Lösung des Algorithmus bei der Beurteilung einer Situation, in der er genau null Einblick hat, darin, einfach den Stichprobendurchschnitt als Schätzung wiederzugeben. Mit anderen Worten: Wenn die Ihnen vorliegenden Daten zeigen, dass es an Ihrem Standort im Durchschnitt 183 Regentage pro Jahr gibt, wird ein ahnungsloser Algorithmus geschickt eine 50 %ige Regenwahrscheinlichkeit angeben.
Die einzige Möglichkeit nachzuweisen, dass ein Algorithmus einen Fehler gemacht hat, besteht daher darin, eine ganze Gruppe von Fällen zu betrachten und zu zeigen, dass die Anzahl der „guten“ gegenüber den „schlechten“ Ergebnissen erheblich von der Vorhersage des Algorithmus abweicht. Nehmen wir zum Beispiel 1000 Callcenter-Agenten, denen der Algorithmus eine Wahrscheinlichkeit von weniger als 10 % vorausgesagt hat, dass sie das Mindestleistungsniveau erreichen, und die wir trotzdem eingestellt haben, vielleicht weil wir die Ergebnisse des Algorithmus versehentlich falsch gelesen haben (wahre Geschichte – ich habe mehrere Klienten, die über die fehlende Prognosekraft eines Algorithmus gestolpert sind, weil sie versehentlich das Gegenteil von dem getan haben, was der Algorithmus empfohlen hat, und den Fehler erst nach einiger Zeit bemerkt haben!), und wenn wir feststellen, dass 870 von ihnen (das sind 87 % von 1000 Agenten!) nicht nur das Mindestleistungsziel erreicht haben, sondern als Gruppe 75 % der anderen Call Center-Agenten übertroffen haben, dann können wir argumentieren, dass der Algorithmus erheblich daneben liegt und Unsinn produziert.
Die Feststellung, ob die Ergebnisse eines Algorithmus korrekt sind oder nicht, ist also ein Zahlenspiel, und das führt uns zu der Frage des Stichprobenumfangs und der Fallhäufigkeit, die wir im nächsten Abschnitt behandeln werden.
Die Rolle von Stichprobengröße und Fallhäufigkeit
Im Mittelpunkt der Modellentwicklung steht das Spannungsfeld zwischen Überanpassung (Lesen von Regeln in zufällige Muster) und mangelnder Granularität (Auslassen von Ergebnisvariationen für bestimmte Teilsegmente). Untersuchen wir dieses Problem anhand eines Beispiels: ein Algorithmus zur Optimierung von Suchanzeigen, der abschätzen soll, wie wahrscheinlich es ist, dass ein bestimmter Nutzer auf eine Anzeige für Gehstöcke klickt. Genauer gesagt, nehmen wir an, dass der Eigentümer der Webseite, auf der die Anzeigen geschaltet werden, das Alter des Nutzers kennt, und dass es Ihnen daher darum geht, das Alter als prädiktive Variable zu erkunden.
Sie wissen intuitiv, dass Kinder nur selten Gehstöcke benutzen und dass es daher eine Altersgrenze geben muss, ab der die Verwendung von Gehstöcken wirklich zunimmt. Man kann auch die Hypothese aufstellen, dass die Leute irgendwann so schwer krank sind, dass sie eher einen Rollator brauchen oder überhaupt nicht mehr gehen können, und dass deshalb die Verwendung von Gehstöcken ab einem bestimmten Alter wieder abnimmt.
Wenn Sie Daten über die gesamte Bevölkerung der Vereinigten Staaten haben, verfügen Sie über mehr als eine Million Datenpunkte für jeden Altersjahrgang von 0 bis mindestens 80 Jahren.1 Man kann nicht nur für jedes Altersjahr die Wahrscheinlichkeit berechnen, dass man Werbung für Gehstöcke anklickt, sondern hat auch genug Daten, um sie weiter aufzuteilen und Männer und Frauen getrennt zu untersuchen, oder, wenn man an Astrologie glaubt, die Neigung der Fische, Gehstöcke zu benutzen, mit der der Wassermänner zu vergleichen. Sie können die Daten sogar nach Alter in Tagen aufschlüsseln (das ist 365,25-mal feiner als nach Jahr), um herauszufinden, ob die Menschen am Tag vor ihrem Geburtstag eher nach Gehstöcken suchen.
Leider hat man aber sehr oft sehr viel weniger Daten. Angenommen, Sie haben eine kleine Stichprobe mit nur drei Personen, die 95 Jahre alt sind. Keiner von ihnen benutzt einen Gehstock. Heißt das, dass 95-Jährige mit an Sicherheit grenzender Wahrscheinlichkeit keinen Gehstock benutzen? Nein, sehr wahrscheinlich sind diese drei Personen Ausnahmen. Man kann wirklich nicht sagen, ob von tausend 95-Jährigen keiner, 100 oder vielleicht 997 einen Gehstock benutzen würden. Mit anderen Worten, Sie sind auf eine Situation gestoßen, in der die Stichprobengröße zu klein ist, um eine statistisch signifikante Schlussfolgerung zu ziehen. Dies ist das tägliche Schicksal von Datenwissenschaftlern, die versuchen, gute Algorithmen zu entwickeln. Was können Sie also tun?
Die Standardlösung eines Algorithmus besteht darin, Ihre drei 95-Jährigen mit anderen, ähnlichen Fällen zu kombinieren. Vielleicht gibt es zwei 96-Jährige, fünf 94-Jährige und eine ganze Reihe von Personen, die 90–93 Jahre alt sind. Ein Algorithmus könnte also eine Gruppe von Personen bilden, die 90+ Jahre alt sind oder vielleicht 90–99 Jahre alt sind. Wie groß muss die Gruppe sein, um eine statistisch signifikante Schlussfolgerung zu ziehen? Das hängt davon ab, wie häufig ein Phänomen ist, das Sie untersuchen. Wenn 20 % der Menschen in dieser Altersgruppe einen Gehstock benutzen, kann man nach statistischen Methoden (hier verwenden wir das angepasste Wald-Verfahren) mit 95-prozentiger Sicherheit davon ausgehen, dass in einer Stichprobe von 100 Personen zwischen 13 und 29 Gehstockbenutzer zu finden sind, so dass eine kleine Stichprobe ausreicht, um zumindest eine ungefähre Vorstellung zu erhalten (die gemessene Quote könnte jedoch um 5–10 Prozentpunkte abweichen). Wenn Sie eine seltene Krankheit untersuchen, die nur in 1 von 10.000 Fällen auftritt, sind Ihre Chancen, auch nur einen Fall in einer Stichprobe von 100 zu finden, natürlich abgrundtief gering.
Was bedeutet das für Ihren Algorithmus? Die Wahrscheinlichkeit, dass Ihr Algorithmus einen bestimmten Typ von Menschen (z. B. 95-Jährige) richtig einschätzen kann, ist umso größer, je größer die Stichprobe ist, je näher die durchschnittliche Neigung des binären Ergebnisses, das eine oder das andere zu sein, bei 50 % liegt und je häufiger dieser bestimmte Typ von Menschen vorkommt (selbst wenn Sie Daten über die gesamte US-Bevölkerung haben, haben Sie vielleicht nur ein oder zwei Personen, die 114 Jahre alt sind). Je weiter Sie sich von der idealen Situation entfernen (d. h. je kleiner die Stichprobe ist, je unausgewogener das Verhältnis zwischen guten und schlechten bzw. ja und nein Ergebnissen in Ihrer Stichprobe ist und je seltener der von Ihnen betrachtete Falltyp ist), desto größer ist der Druck auf Ihren Algorithmus, diesen Fall in einen großen Topf mit vielen anderen Fällen zu werfen, die anders sind.
Dieses Aggregationsproblem ist bei kategorialen Variablen besonders heikel. Die Zusammenfassung von 95-Jährigen und 96-Jährigen erscheint vertretbar, aber was ist mit der Berufskategorie „Sonstige“? Stellen Sie sich vor, jemand hat ein Bakterium entwickelt, das Öl produziert, und er verkauft es in kleinen Mengen über das Internet an Camper, die kohlenstoffneutral sein wollen. Ist er ein Landwirt oder ein Unternehmer im Energiegeschäft oder vielleicht eher ein Einzelhändler, da Marketing, Verpackung und Versand den größten Teil seiner Kosten ausmachen?
Dies hat zur Folge, dass seltene, atypische Fälle wahrscheinlich mit anderen, oft ähnlich seltenen und atypischen Fällen in einen Topf geworfen werden, die vielleicht ähnlich sind, vielleicht aber auch gar nicht. Infolgedessen entwickelt das Modell eine Verzerrung in dem Sinne, dass das Verhalten einer wahrscheinlich irrelevanten Referenzgruppe auf solche seltenen Fälle projiziert wird. Wenn beispielsweise das Kreditbewertungsmodell einer Bank unseren ökologischen Campingölhersteller wie einen Landwirt behandelt und Landwirte auf diesem Markt aufgrund staatlicher Subventionen und Preiskontrollen im Allgemeinen ein geringes Risiko darstellen, könnte es das Risiko dieses neuartigen Nischengeschäfts erheblich unterschätzen.
Das Problem der baumbasierten Modelle
Es gibt eine Reihe von Strukturen für Algorithmen, die natürlich alle ihre eigenen Vor- und Nachteile haben. In Kap. 3 haben Sie ein Beispiel für ein lineares Modell gesehen. Eine Stärke dieser Modellstruktur ist die effiziente Nutzung der verfügbaren Daten: Für jeden Eingangsfaktor x werden die Daten der gesamten Stichprobe zur Schätzung des Parameters β verwendet, und alle Eingangsfaktoren werden bei der Schätzung des Ergebnisses für einen bestimmten Datenpunkt berücksichtigt. Infolgedessen können solche Modelle oft noch relativ vernünftige Schätzungen machen, wenn sie auf seltene Profile treffen. Im Beispiel einer Bank, die einen Kreditantrag unseres Verkäufers von aus Bakterien gewonnenem Campingöl bewertet, kann die Scorecard drei Inputs kombinieren: den aus der Branche abgeleiteten Risikoindex, eine Liquiditätskennzahl und das Alter des Unternehmens. Selbst wenn das Branchenrisiko unterschätzt wird, kann die Scorecard das Unternehmen wegen seiner geringen Liquidität und seiner mangelnden Betriebsgeschichte im Risiko höherstufen.
Es gibt eine andere Klasse von Modellierungsansätzen, die Daten auf eine viel verschwenderischere Art und Weise nutzen: baumbasierte Ansätze wie Entscheidungsbäume und Zufallswälder (sog. „random forests“ – Ensembles von möglicherweise hundert oder mehr Entscheidungsbäumen). Diese Ansätze gewinnen zunehmend an Bedeutung, da sie sehr viel flexibler sind als lineare Merkmalskombinationen und den Kern vieler maschineller Lerntechniken bilden.
Bäume sind ein Klassifizierungsansatz, der eine Grundgesamtheit in immer kleinere Parzellen unterteilt, so dass jede Parzelle am Ende eine recht homogene Gruppe darstellt, für die das in der Entwicklungsstichprobe beobachtete durchschnittliche Ergebnis repräsentativ ist. In unserem Beispiel zur Kreditwürdigkeitsprüfung könnte der erste Faktor, den der Baum berücksichtigt, die Branche sein. Auf der Grundlage der Bäume können drei große Gruppen von Unternehmen gebildet werden: Landwirtschaft, verarbeitendes Gewerbe und „Sonstige“ (z. B. Dienstleistungen). Für das verarbeitende Gewerbe können die Unternehmen in einem zweiten Schritt in Unternehmen mit hoher und niedriger Liquidität unterteilt werden; in einem dritten Schritt können die Unternehmen mit niedriger Liquidität nach der Dauer ihrer Geschäftstätigkeit aufgeteilt werden.
Für die Landwirtschaft könnte der Baum jedoch einer anderen Logik folgen. Auf der zweiten Ebene könnten beispielsweise landwirtschaftliche Betriebe, die ihr Land und ihre Immobilien besitzen, von denen unterschieden werden, die es gepachtet haben; die Unternehmen, die ihr Land besitzen, könnten dann weiter unterteilt werden in pflanzenproduzierende, viehproduzierende und „andere“ Unternehmen (die möglicherweise seltsame Gefährten wie unseren bakterienbasierten Ölproduzenten und Produzenten von Zierfischen kombinieren).
Das Problem ist, dass die Stichprobe buchstäblich aufgespalten wird. Wenn Sie mit 10.000 Unternehmen in Ihrer Stichprobe beginnen, sind vielleicht 800 im Agrarsektor tätig. Davon besitzen 500 ihr Land, darunter auch Ihr Hersteller von Öl auf Bakterienbasis. Diese 500 werden dann in 230 Ackerbauern, 240 Viehzüchter und nur 30 Unternehmen unter dem Kriterium „Sonstige“ aufgeteilt. Bei einer so kleinen Gruppe ist der Algorithmus bereits überfordert, eine aussagekräftige Ausfallquote zu berechnen (nach allen Faustregeln wäre die Stichprobengröße unzureichend, da die Ausfallquoten vieler kleiner und mittlerer Unternehmen im Bereich von 2–5 % liegen). Und eine weitere Aufteilung nach anderen Kriterien wie einer Liquiditätskennzahl oder dem Alter des Unternehmens ist so gut wie unmöglich.
Unser Unternehmen wird mit einer kleinen Gruppe von anderen ungewöhnlichen Unternehmen in einen Topf geworfen, die mit unserem Unternehmen durchaus vergleichbar sein können oder auch nicht.
Da diese Gruppe nur eine sehr kleine Anzahl von Unternehmen umfasst und der baumbasierte Modellierungsansatz so verschwenderisch und datenhungrig ist, verfügt der Baum nicht über genügend Daten, um diese Gruppe nach bestimmten anderen Faktoren, die das Risiko vorhersagen, wie Liquidität und Alter des Unternehmens, weiter zu differenzieren.
Unserem Unternehmen wird die durchschnittliche Ausfallquote seiner Gruppe zugewiesen, die eine angemessene Schätzung des Risikos dieses spezifischen Unternehmens sein kann, aber nicht muss.
Eine philosophische Perspektive
In diesem Kapitel ging es in erster Linie um die Fehlklassifizierung seltener Fälle, in denen die Menge der verfügbaren Daten einfach nicht ausreicht, um statistisch gültige Rückschlüsse auf die Art dieser Art von Vorfällen zu ziehen. Infolgedessen ist der Algorithmus „verzerrt“, weil er entweder die Leistung einer mehr oder weniger irrelevanten Referenzklasse auf einen solchen Vorfall projiziert oder das Ergebnis dieser seltenen Fälle (d. h. den Wert der abhängigen Variable) auf alle ähnlichen Fälle verallgemeinert.
Diese Fälle sind per Definition seltene Ausnahmen. Wenn es mehr solcher Fälle gäbe, würde die Fülle der Daten den Algorithmus dazu bringen, die Ergebnisse für diese Art von Situation korrekt (d. h. ohne Verzerrung) zu schätzen.
Es ist nicht einmal einfach zu „beweisen“, dass der Algorithmus falsch ist. Der Algorithmus weist implizit eine von Null abweichende Wahrscheinlichkeit zu, falsch zu liegen, und ohne zusätzliche Daten (Erweiterung des Stichprobenumfangs) gibt es in der Regel per Definition nicht genügend Daten, um zu „beweisen“, dass die geschätzte Wahrscheinlichkeit signifikant von der Schätzung des Algorithmus abweicht.
Wenn ein Algorithmus eine bestimmte Schätzung vornimmt (z. B. eine Rückfallquote von 83 % für einen bestimmten Straftäter), gibt er nicht den Grad der Unsicherheit an, der mit dieser Schätzung verbunden ist. Es könnte sein, dass es in der Stichprobe Tausende fast identischer Fälle gab und die Vorhersage mit einem 99 %igen Konfidenzintervall von +/− 1 % getroffen wurde, so dass der Algorithmus bei 1000 solcher Straftäter sein Leben darauf verwetten würde, dass zwischen 820 und 840 von ihnen (das bedeutet 83 % +/− 1 %) wieder rückfällig werden, oder es könnte sein, dass der betreffende Straftäter ein sehr ungewöhnlicher Fall war, bei dem die 83 %-Schätzung ein Zufallsergebnis ist, das der Algorithmus durch die Zusammenfassung einer Handvoll ähnlich ungewöhnlicher Typen erhalten hat. Infolgedessen könnte man argumentieren, dass ein Algorithmus mit hoher Vorhersagekraft ein wenig betrügerisch handelt, wenn er Schätzungen für Fälle abgibt, in denen eine bessere Antwort „Ich weiß es nicht“ gewesen wäre.
Eine zufällige Schätzung des Algorithmus könnte sich selbst erfüllen, wenn sie Entscheidungen beeinflusst, die die Generierung widersprüchlicher Datenpunkte verhindern. Wenn beispielsweise ein Algorithmus, der über die Zulassung von Doktoranden entscheidet, zufällig eine Voreingenommenheit gegenüber weiblichen Ingenieuren entwickelt hat und daher alle weiblichen Bewerber davon abhält, im Ingenieurwesen zu promovieren, wird es nie Daten geben, die das Gegenteil beweisen.
Zusammenfassung
Jede Schätzung eines Algorithmus mit einer gewissen Fehlerwahrscheinlichkeit behaftet ist.
Während Algorithmen für typische Fälle (in denen es viele ähnliche Vorfälle in der Stichprobe gibt) zumindest im Durchschnitt korrekt sind, bei seltenen (ungewöhnlichen) Fällen ein besonderes Risiko einer völlig falschen Schätzung besteht, die nicht einmal im Durchschnitt korrekt ist.
Dies geschieht, weil der Algorithmus entweder ungewöhnliche Vorfälle mit anderen „Exoten“ zusammenfasst, oder er die Ergebnisse aus einer sehr kleinen und daher statistisch unbedeutenden Anzahl von Vorfällen extrapoliert (so genannte Überanpassung).
Derartige Verzerrungen sind bei kleinen Stichprobengrößen wahrscheinlicher, genauer gesagt, wenn die Stichprobe im Verhältnis zur Variabilität in der Stichprobe klein ist. Eine Stichprobe von 50.000 Personen kann als groß angesehen werden, wenn es nur ein paar Dutzend verschiedene Arten von Vorfällen gibt, aber sie ist winzig, wenn es Millionen von verschiedenen Arten gibt.
Das Problem der Stichprobengröße wird noch verschärft, wenn die Modellierungstechnik datenintensiv ist, wie z. B. bei baumbasierten Ansätzen, die die Daten sehr ineffizient nutzen.
Obwohl das Problem per Definition nur seltene Arten von Vorfällen betrifft, sollte diese Art von Verzerrung die Nutzer dennoch beunruhigen, wenn die Auswirkungen der Verzerrung schwerwiegend sind oder wenn die betroffene Art von Vorfällen nur in der Stichprobe selten war, aber in der allgemeinen Bevölkerung, auf die der Algorithmus angewendet wird, häufiger vorkommt.