Einleitung

Ende 2022 war der iPhone-Moment der künstlichen Intelligenz.  Mit chatGPT konnten über Nacht sehr passable Briefe geschrieben, Inhalte recherchiert, die Deutsch-Hausaufgaben erledigt und sogar programmiert werden.  Kostenlose Technologie traf auf gesellschaftlichen Nutzen und beides verstärkte sich gegenseitig zur in solchen Fällen üblichen Euphorie, zum Hype.  Die Bildung unserer Kinder geht seitdem vor die Hunde (das tut sie aber gefühlt irgendwie schon immer),Berater erzählten Autohäusern, dass die Welt untergeht, wenn sie sich nicht schleunigst mit KI beschäftigen, Google‘s Geschäftsmodell hat die rote Laterne erhalten und Roboter übernehmen die Weltherrschaft. Totale Disruption und alles jetzt, hier und heute!  Angeblich!

Seitdem ist ein Jahr vergangen, was eine gute Gelegenheit bietet, zurückzuschauen und insbesondere die Frage zu beantworten, wo im Autohaus mit KI ganz konkreter Nutzen erzielt werden kann.  Dabei kommen wir um einige Grundlagen nicht drumherum, da immer wieder überraschend ist, wie viele Protagonisten sich noch nicht einmal ansatzweise damit auseinandergesetzt haben, wie KI eigentlich funktioniert.  Aber erst, wenn man dies zumindest an der Oberfläche verinnerlicht hat, ist man in der Lage, KI wirklich zielbringend im eigenen Betrieb einzusetzen.

Was ist eigentlich künstliche Intelligenz?

Um es vorweg zu nehmen:  diese Frage ist bislang nicht eindeutig zu beantworten, was auch damit zusammenhängt, dass der Begriff „Intelligenz“ in der Wissenschaft nicht eindeutig definiert ist.  Abgrenzungsschwierigkeiten zwischen Intelligenz, Wissen, Kreativität, Seele, Bewusstsein, Intellekt, Auffassungsgabe, Kombinationsfähigkeit usw. tragen ihr übriges zur Verwirrung bei.  Das Begriffsverständnis von KI rangiert daher konsequenterweise von „irgendetwas, was schneller oder besser als der Mensch zu Lösungen für spezielle Fragestellungen kommt“ (was genau genommen auch einen simplen Taschenrechner einschließen würde) bis zu gigantischen künstlichen neuronalen Netzen, die in allen Bereichen dem Menschen irgendwann einmal überlegen sein sollen.

Auch wenn man nicht genau weiß, was Intelligenz und damit auch Künstliche Intelligenz ist, gibt es aber ein immer wieder angewandtes Verfahren, um festzustellen, ob eine Maschine intelligent ist, und das ist der sogenannte Turing-Test.  Der Test geht auf Alan Turing zurück, einem genialen britischen Mathematiker und Problemlöser, der u.a. den Alliierten half, die Verschlüsselungsmaschine Enigma der deutschen Wehrmacht im zweiten Weltkrieg zu knacken.  Der Turing-Test geht vereinfacht gesagt so, dass man einen Menschen vor eine Maschine setzt, ohne dass er weiß, dass er vor einer Maschine sitzt.  Dann bittet man ihn mit der Maschine zu interagieren, also z.B. der Maschine Fragen zu stellen. Wenn er durch das Verhalten, das die Maschine produziert, also z.B. die Antworten auf seine Fragen, nicht erkennt, dass es eine Maschine ist, wenn er also glaubt, er spricht mit einem Menschen und nicht mit einer Maschine, dann nennen wir diese Maschine „intelligent“.  Und da es eine Maschine ist, nennen wir das ihr zugrunde liegende Konzept dann „Künstliche Intelligenz“.

Dies vorausgeschickt wollen wir uns im Folgenden auf ein Verständnis der künstlichen Intelligenz beschränken, welches sich neuronaler Netze bedient.  Der Grund dafür liegt darin, dass dieses Konzept den wesentlichen Innovationen der KI in der letzten Zeit zugrunde liegt, auch z.B. chatGPT, und dass von diesem noch erhebliche weitere große Schritte zu erwarten sind.

Neuronale Netze und deren Funktion

Was ist künstliche Intelligenz mit neuronalen Netzen?

Künstliche neuronale Netze sind ein Konzept, das man sich dem menschlichen Gehirn abgeschaut hat und was der überwiegenden Mehrzahl der aktuell angeboten KI-basierten Lösungen zugrunde liegt, auch chatGPT.  Es ist wichtig, als Entscheider im Autohaus zumindest die Grundzüge der Funktionsweise eines neuronalen Netzes zu verstehen, damit man abschätzen kann, wo die Chancen, aber auch die Grenzen dieser Technologie liegen.  Dabei soll nachfolgend nur auf die einfachste Form eines neuronalen Netzes eingegangen.

Wie das Gehirn, bestehen neuronale Netze aus Nervenzellen und die sie verbindenden Synapsen.  Diese stellt man nun in einer geeigneten Software dar und damit es am Anfang nicht zu kompliziert wird, ordnen wir die Nervenzellen als Knoten in drei Schichten an und die Synapsen bilden wir als Pfeile ab.  Ein einfaches Beispiel ist in der nachfolgenden Abbildung gezeigt.  An die Pfeile hängen wir noch Kantengewichte, die eine einfache Zahl sind und zu der wir später noch kommen werden.  Schleifen, Rücksprünge etc. lassen wir zum besseren Verständnis ebenfalls auch außen vor, das Netz „denkt“ also streng von links nach rechts.

Da wir von dem Netz Antworten auf bestimmte Fragen haben wollen, brauchen wir eine Eingabemöglichkeit für unsere Fragen und eine Ausgabemöglichkeit für die Antworten des Netzes.  Das Erste sind die Knoten der Eingabeschicht, letzteres sind die Knoten der Ausgabeschicht.  Dazwischen liegen beliebig viele interne Schichten, die für die nachfolgend beschriebenen Berechnungen der Antworten des Netzes benötigt werden.

Ein Anwendungsbeispiel aus der Fahrzeugvermarktung

Denken wir nun an folgenden konkreten Anwendungsfall aus dem Fahrzeugverkauf, den wir „Fahrzeugklassifikator“ nennen wollen:  als Frage möchten wir dem Netz einen Datensatz geben, der einen Pkw beschreibt und diese Daten geben wir in der Eingabeschicht ein.  Beispiele für diese Daten an der Eingabeschicht sind Anzahl Türen, Leistung, Farbe, Marke, Baujahr, Modell usw.  (siehe nachfolgende Abbildung).

KI_Abb1

Am anderen Ende des neuronalen Netzes haben wir eine Handvoll Knoten in der Ausgabeschicht und jeder Knoten steht für eine bestimmte Zielgruppe.  Ein Knoten kann z.B. „Rüstiger Rentner“ heißen, ein anderer „Junger Wilder“, ein Dritter „Sparsame Geringverdiener“ usw.  Die Aufgabe des Netzes ist uns die Frage zu beantworten „Welcher Zielgruppe sollte ich einen bestimmten Pkw anbieten, damit diese den Wagen mit hoher Wahrscheinlichkeit kaufen?“.  Das Netz soll also zu Fahrzeugen passende Zielgruppen finden, indem es für einen bestimmten Wagen an einem Knoten der Ausgabeschicht einen besonders hohen Wert errechnet (z.B. 95%) und bei allen anderen Knoten der Ausgabeschicht sehr niedrige Werte.  Wenn der Knoten mit dem hohen Wert an der Ausgabeschicht z.B. für die Zielgruppe „Rüstige Rentner“ steht, weiß man, dass dieses Auto am ehesten von dieser Zielgruppe gekauft wird und kann z.B. seine Selektionen für das Marketing darauf ausrichten.

Wie rechnet das neuronale Netz ein Ergebnis aus?

Wie kommt ein solches neuronales Netz nun zu einem Ergebnis, also beispielsweise zu 95% in der Zielgruppe „Rüstige Rentner“ bei einem bestimmten Fahrzeug an der Eingabeschicht?  Grundsätzlich geht es dabei um recht simple Berechnungsschritte, die folgendermaßen ablaufen:

Jeder Knoten des Netzes nimmt sich die Werte eines jeden vorgelagerten Knotens, multipliziert diese mit dem Kantengewicht (woher die kommen, klären wir gleich) des verbindenden Pfeils und summiert alle so errechneten Produkte auf.  Heraus kommt pro Knoten eine Zahl, sagen wir 1,1 für einen Beispielknoten in der nachfolgend gezeigten Abbildung.  Diese Zahl wird in eine Aktivierungsfunktion eingegeben und eine Ergebniszahl errechnet, sagen wir 0,7, die dann an die nachfolgenden Knoten weitergegeben wird, wo das Spiel erneut beginnt, bis alle Knoten in allen Schichten durchlaufen sind und die gewünschten Werte an den Knoten der Ausgabeschicht ermittelt wurden, also z.B. die 95% im Knoten „Rüstige Rentner“ und Werte um 0,1% in allen anderen Knoten der Ausgabeschicht.

KI_Abb2

So viel zu dem hinter neuronalen Netzen stehenden Konzept.  Jetzt müssen wir allerdings noch klären, wie neuronale Netze „gute Ergebnisse“ berechnen, also z.B. einen Maybach nicht irrtümlich der Zielgruppe „Sparsame Geringverdiener“ zuweisen und wie sie unter dieser Zielsetzung trainierbar sind.  Dabei kommt den Kantengewichten eine besondere Rolle zu, da diese die Ergebnisberechnung maßgeblich beeinflussen.  Da man zunächst keine Ahnung hat, welche Gewichte die Kanten haben sollen, kann man dort in einem ersten Schritt z.B. Zufallswerte eintragen, mit dem Ergebnis, dass das Netz natürlich nur blödsinnige Ergebnisse berechnet.  Jetzt beginnt man das Netz zu trainieren, indem man ihm ein bestimmtes Auto in der Eingabeschicht gibt, es rechnen lässt und dann das berechnete Ergebnis korrigiert.  Im übertragenen Sinne sagt man dem Netz „es ist zwar schön, dass Du für diesen Maybach im Knoten „Sparsame Geringverdiener“ einen Wert von 70% errechnet hast, dieser sollte aber 0,1% sein und der Wert im Knoten „Millionärskinder“ sollte für diesen Wagen 95% aufweisen“ und bittet es, seine Kantengewichte anzupassen, damit das Ergebnis besser wird.  Zur systematischen Neuberechnung und Anpassung der Kantengewichte gibt es unter dem Begriff „Backpropagation“ Algorithmen, die dies mit jedem Trainingsvorgang tun.  Das Problem ist, dass man diese Anpassungen nur in sehr kleinen Schritten vornehmen sollte, da sonst Dinge passieren, die wenig hilfreich sind, deren Details wir uns aber an dieser Stelle ersparen wollen.  Wenn jeder Trainingsdatensatz (das war z.B. der Datensatz, der den Maybach beschreibt, zusammen mit dem gewünschten Ergebniswert für „Millionärskinder“ von 95%) aber nur sehr kleine Veränderungen im Netz bewirkt, dann braucht man entsprechend viele Trainingsdatensätze bis man alle ursprünglich zufällig erzeugten Kantengewichte so eingestellt hat, dass ein neuronales Netz gute Ergebnisse liefert.

Und was ist jetzt das Problem?

Und damit sind wir beim Kern des Problems, was die Anwendbarkeit von künstlicher Intelligenz in Form von neuronalen Netzen betrifft:  für kompliziertere Probleme braucht man sehr große Netze, und damit diese brauchbare Antworten erzeugen, braucht man u.U.  gigantische Mengen an Datensätzen für deren Training.

Wenn man im Autohaus also ein Problem mit KI lösen will, muss man entweder selber an diese Trainingsdatensätze herankommen oder man braucht einen Anbieter, der Zugang zu diesen Datenmengen hat.  Erschwerend kommt hinzu, dass man nicht von vornherein sagen kann, wie viele Datensätze man benötigt, da dies von der Komplexität der Aufgabenstellung und der Architektur des dafür benötigten Netzes abhängt, der sog. Netztopologie.  Ein Klassifikator wie in unserem Beispiel, der einen Gebrauchtwagen, beschrieben mit ca. 200 Werten, z.B. 6 Zielgruppen zuweist, hat vielleicht 2 versteckte Schichten, insgesamt etwas mehr als 400 Knoten und unter 40.000 Kanten, also deutlich unter 50.000 Parameter.  Für diesen mögen einige 10.000 Trainingsdatensätze reichen, damit er in der überwiegenden Zahl aller Fälle keinen Unsinn ausgibt.  Das hinter chatGPT stehende Neuronale Netz GPT3 hat 175 Milliarden Parameter und die Spekulationen für die aktuelle Version von GPT4 reichen bis 100 Billion Parameter.  Bei diesen Größenordnungen wird erkennbar, warum man „die Daten des ganzen Internets“ brauchte, um es zu trainieren.  Ähnliche Größenordnungen braucht man für die neuronalen Netze, die autonomes Fahren ermöglichen, da in diesen ja prinzipiell alle erdenklichen Fahrsituationen abgebildet werden müssen – und zwar weltweit.

Für bestimmte Anwendungsfälle kann man bei den Trainingsdatensätzen aber Rückenwind bekommen.  Kommen wir dazu noch einmal auf unseren Fahrzeugklassifikator aus dem obigen Beispiel zurück.  Angenommen, wir bitten unsere Autoverkäuferinnen und -verkäufer über die Zeit für einige Tausend Fahrzeuge die Zielgruppe zu definieren und z.B. im Bestandsmanagementsystem zu hinterlegen.  So entsteht ein Grundstock an Trainingsdatensätzen, der zumindest vollständig falsche Ergebnisse verhindert.  Dann holt man für einen zweiten Schritt die Webseitenbesucher des Autohauses ins Boot.  Wenn man diesen z.B. eine Auswahl der 6 Zielgruppen präsentiert und sie fragt „Sag mir welcher Typ Du bist und wir schlagen Dir Autos vor“, dann klicken Sie auf eine Zielgruppe und erhalten zunächst eine Liste von Fahrzeugen, die auf der Grundlage der eben beschriebenen Verkäufereinschätzungen erzeugt wird.  Wenn man jetzt noch speichert, welches Fahrzeug sie in der Liste zuerst anklicken und wir davon ausgehen, dass diese Entscheidung irgendwie im Zusammenhang mit der eingangs angeklickten Zielgruppe steht, dann erzeugen die 100e bis 1000e tägliche Nutzer der Webseite 100e bis 1000e Trainingsdatensätze und zwar jeden Tag und vollständig automatisch.  Damit sind die benötigten mehrere 10.000 Datensätze nicht mehr so weit weg wie es anfänglich schien.  Zusätzlich löst man sich von der i.d.R. nicht ungefärbten Einschätzung der Verkäufer und nutzt echte Interessentendaten, um sein Netz zu trainieren.  Das beschriebene Konzept „Sag mir welcher Typ Du bist ...“ ist unter dem Namen „kuratiertes Kaufen“ seit Jahren gängige Praxis und z.B. unter dem Namen „Stilberatung“ Gegenstand des Geschäftsmodells von Outfittery.

Es gibt Autohäuser, die selber künstliche Intelligenz auf Basis von neuronalen Netzen entwickeln.  Die Anwendungsfälle reichen von der Preisbestimmung für Fahrzeuge bis zur oben beschriebenen Zuweisung von Fahrzeugen zu Zielgruppen oder der Extraktion von Daten aus Zulassungsbescheinigungen.  Das Problem ist auch nicht die für die Modellierung sowie das Training der neuronalen Netze notwendigen Software, die gibt es z.B. mit Tensor-Flow als Open-Source-Software „gratis“ von Google.  Das Problem ist wie immer jemanden zu haben, der über das notwendige Wissen verfügt und das Vorhandensein einer ausreichenden Anzahl von Trainingsdaten.