KI – Wo wir im Hype Cycle stehen und wie es weiter geht

Während sich der Anstieg der Forschungsartikel und Konferenzen im Bereich KI laut artificial intelligence index weiter fortsetzt, lässt sich in den Medien langsam eine gewisse Ermüdung angesichts des Hypes erkennen. Zeit also, Bilanz zu ziehen: Was ist erreicht worden? Was ist praktisch möglich? Und wie geht es weiter?

Was ist erreicht worden?

In den Jahren 2018 und 2019 wurden die vorher entwickelten Methoden zur Anwendung von neuronalen Netzwerken (so definiere ich hier KI) weiter verfeinert und perfektioniert. Standen zunächst (2012-2016, Imagenet-Wettbewerb) Verfahren zur Bildklassifizierung und -verarbeitung und danach Audio-Verfahren (2015-2017, Start von Alexa und anderen Sprachassistenten) im Mittelpunkt, wurden 2019 große Fortschritte in der Textverarbeitung und -generierung gemacht (NLP = natural language processing). Insgesamt sind die zur Verfügung stehenden Techniken mit hohem Aufwand vor allem der großen Player (Google, Facebook, OpenAI, Microsoft) weiter verbessert und kombiniert worden.

Was ist praktisch möglich?

Die Anwendung von KI ist im Wesentlichen immer noch begrenzt auf vier Anwendungsbereiche:

  • Bilder: Bilderkennung, -segmentierung
  • Audio: Umwandlung von Sprache in Text und umgekehrt
  • NLP: Textverarbeitung und -generierung
  • Labeled Data: Vorhersage des Labels (z.B. Preis) aus einer Menge von Featuren

Diese Liste ist überraschend kurz, gemessen an der Aufmerksamkeit, die KI in den Medien erhält. Die beeindruckendsten Erfolge von KI ergeben sich allerdings aus einer Kombination der Techniken wie z.B. Sprachassistenten durch Kombination von Audio, NLP und Labeled Data zur Umwandlung der Eingabe in Text, Erkennung der Textintention mit NLP und Vorhersage des Sprecherwunsches durch Anwendung von riesigen Mengen von Labeled Data, also vorherigen Auswertungen ähnlicher Äußerungen.

Entscheidend für die Entwicklung gerade dieser KI-Anwendungsfelder waren:

  1. Das Vorliegen großer Mengen frei verfügbarer Benchmark-Datensätze (Datensätze für Machine Learning), an denen Algorithmen entwickelt und verglichen wurden
  2. Eine große Forschergemeinde, die sich gemeinsam auf die Benchmark-Datensätze verständigt hat, und ihre Algorithmen in öffentlichen Wettbewerben vergleicht (GLUE, Benchmarks AI, Machine Translation u.a.)
  3. Eine freie Verfügbarkeit der entwickelten Modelle, die als Ausgangspunkt für den praktischen Einsatz dienen (beispielhaft Tensorflow Hub)

An Hand dieser Voraussetzungen kann man schnell einschätzen, wie realistisch manche Marketing-Fantasien sind. Z.B. gibt es für das oft plakativ vorgebrachte Einsatzgebiet Predictive Maintenance weder Benchmarkdatensätze noch eine Forschergemeinde und entsprechend auch keine Modelle.

Wie geht es weiter?

Es ist zum einen abzusehen, dass die weitere Entwicklung im KI-Bereich sicherlich zunächst in den vorgenannten Anwendungsfeldern weitergeht und sich an den Randbereichen weiterentwickelt. Zum anderen zeichnen sich Bereiche ab, die ähnlich wie die vorgenannten Einsatzgebiete unter Aufwendung großer öffentlicher und privater Mittel (z.B. werden OpenAI und Deepmind mit Milliardensummen von Elon Musk bzw. Google bezuschusst) vorangetrieben werden. Exemplarisch für große Investitionen in diesem Bereich steht sicher das autonome Fahren aber auch der Bereich IoT. Insgesamt sehe ich folgende Bereiche, die sich 2020-2022 stark weiterentwickeln:

  • Die Verbindung von Reinforcement Learning mit KI-Gebieten zum schnelleren Anlernen von Modellen
  • Eine weitere Verstärkung im Bereich autonomes Fahren, die sich aus der Anwendung und Kombination von KI und Reinforcement Learning ergibt
  • Durchbrüche in der Verallgemeinerung der Erkenntnisse aus der Bildverarbeitung auf 3D (Geometric Deep Learning und Graph Networks)
  • Eine Verschmelzung von traditionellen Methoden aus der Statistik mit neuronalen Netzwerken
  • IoT-Zeitreihen (s.u.)

Einen großen Wandel sehe ich durch das Aufkommen von IoT und der damit einhergehenden Sensorik und Daten auf uns zukommen. IoT-Daten sind ihrer Natur nach Zeitreihen, die zur Auswertung gefiltert, kombiniert, geglättet und angereichert werden müssen. Zu diesem Zweck ist bisher relativ wenig Spezifisches passiert. Es könnte sein, das ab 2020 – 2022 dieses Thema einige überraschende Wendungen und Durchbrüche für uns bereithält. Insbesondere die deutsche Industrie, die von den ersten Entwicklungen im Bereich KI eher wenig profitiert hat, dürfte hier ein vielversprechendes Einsatzgebiet finden.

Physische Produkte agil entwickeln?

In meinem letzten Blog-Beitrag ging es um Teams, die erst durch Erfahrung wirklich agil werden. Heute stehen die Herausforderungen im Mittelpunkt, die die Agilität gerade im Engineering mit sich bringt.

Agile Softwareentwicklung hat sich fast 20 Jahre nach dem Agilen Manifest weitgehend durchgesetzt. Es geht nicht mehr um das Ob, sondern nur noch um die Best Practices im Detail sowie agile Skalierbarkeit. Der Erfolg und die einfache Anwendbarkeit etwa von Task Boards haben dazu geführt, dass agiles Vorgehen auch außerhalb der Software-Entwicklung begeisterte Nutzer findet, wo Aufgaben im Team bearbeitet werden.

Dies mündete schließlich in die zunehmend intensiv diskutierte Frage, ob auch physische Produkte effizienter mit agilem Vorgehen entwickelt werden könnten.

Warum eigentlich?

Es gibt seit vielen Jahren etablierte Produktentstehungsprozesse, die eine große Reife erlangt haben und eine erfolgreiche Entwicklung unterstützen. Warum davon abgehen und die Risiken eines komplett neuen Ansatzes auf sich nehmen?

Je unklarer die Anforderungen an das Produkt sind und je unbekannter die zu verwendende Technologie ist, desto weniger sind klassische Projektmanagement-Methoden geeignet, weil sie sehr stark vorausplanend sind. Genau diese Tendenz, Projekte trotz zunächst unvollständiger Anforderungen zu starten, beobachten wir aber zunehmend. Digitalisierung und neue Technologien erfordern neue Geschäftsmodelle oder neue technologische Fähigkeiten. Dies spricht für ein agiles Vorgehen, da es für den Umgang mit Unklarheit und Noch-Nicht-Wissen erfunden wurde.

Geht das überhaupt?

Die entscheidende Frage lautet dabei: Sind agile Methoden aus der Softwareentwicklung überhaupt geeignet, die Herausforderungen in der „klassischen“ Produktentwicklung zu bewältigen? Physische Produkte werden im Unterschied zu Software deutlich arbeitsteiliger entwickelt. Die Produktion von fehlerhaften Komponenten verursacht hohe Folgekosten und die Absicherung ist auf physische Prototypen angewiesen. Es ist nicht möglich, alle zwei Wochen einen neuen, funktionierenden und potenziell auslieferbaren Stand zu präsentieren. Lösungen für solche Probleme erfordern eine kreative Weiterentwicklung der bekannten agilen Vorgehensmodelle. Ein sehr einfaches Beispiel dafür: Die Teams verschiedener Domänen benutzen unterschiedliche Sprintdauern. Während das Software-Team alle 2 Wochen liefert, gilt für das Mechanik-Team ein 6-Wochen-Rhythmus. Wichtig ist, die Sprints so zu synchronisieren, dass alle 6 Wochen ein gemeinsames Inkrement erreicht wird.

Die Herausforderung

Die Herausforderung bei der Einführung agiler Methoden ist damit eine doppelte: Einerseits ist es erforderlich, die agilen Methoden aus der Software-Entwicklung an die Bedingungen in der Produktentwicklung anzupassen. Andererseits benötigt man – damit komme ich wieder zu meinem vorigen Beitrag zurück – viel agiles Erfahrungswissen, um solche Anpassungen erfolgreich hinzubekommen. Um diesen Widerspruch aufzulösen, sollte man die Pioniere, die sich auf das neue Terrain wagen, zusammenbringen mit erfahrenen „Agilikern“, die ihr Handwerk aus der Software-Entwicklung beherrschen. Das wechselseitige voneinander Lernen und Teilen von Wissen führt zu einer besseren Beherrschung der Produktentwicklung unter den sich rasant ändernden Randbedingungen.

Agil scheinen oder agil sein?

Als ich vor Jahren das erste Mal von Agilität hörte, hatte ich zunächst den Eindruck, Prozesse und Regeln sollten über Bord geworfen werden, um volatile Anforderungen auf wundersame Weise im Handumdrehen realisieren zu können. Ich konnte mir nicht vorstellen, wie das funktionieren soll: Agilität klang für mich nach unerfüllbarem Wunschkonzert.

Erst als unser damaliges Software-Entwicklungsteam anfing nach Scrum zu arbeiten – mit mir als Product Owner und begleitet durch einen erfahrenen Scrum Master – habe ich mich mit dem Thema ernsthaft auseinandergesetzt.

Ich lernte, dass Agilität nicht Chaos bedeutet, sondern ganz im Gegenteil lautete die

1. Lektion: Disziplin

Agiles Vorgehen hat Regeln. Die lernten wir in der vorausgehenden Scrum-Schulung. Vor allem aber legte unser Scrum Master uns sehr ans Herz, die Scrum-Regeln strikt einzuhalten, statt sie so auszulegen, wie es für uns am sinnvollsten erschien. Was ich gelernt habe: Agilität ist kein Laissez-faire, sondern bedarf eines sehr disziplinierten Vorgehens, das nur funktioniert, wenn es konsequent gelebt und nicht nach Bedarf verbogen wird.

2. Lektion: Der Sinn

Feste Rollen und Rituale sind nützlich. Wir hatten sie für Scrum zwar gelernt, aber echtes Verständnis wuchs erst nach und nach über das Coaching und die Fragen des Scrum Masters. Beispielweise wenn sich im Lauf eines Sprints herauskristallisierte, dass mehrere der vereinbarten User Storys nicht erreicht werden würden. Alle Teammitglieder versuchten natürlich, ihre eigene Aufgabe bestmöglich zu erledigen. Das hätte dazu geführt, dass die einzelnen User Storys zu nur 70% fertig werden würden. Der Scrum Master stellte zur Diskussion, stattdessen ein oder zwei User Storys für den Sprint zu verwerfen und bei der Fertigstellung der anderen mitzuhelfen. Was wir gelernt haben: Ergebnisorientierung und Fokussierung auf ein gemeinsames Ziel machen das Teamwork produktiver und die Teammitglieder zufriedener.

3. Lektion: Teamgeist

Je mehr wir den Sinn der Regeln, Rollen und Rituale verinnerlichten, desto effizienter wurden die Projekte. Das Team wuchs immer stärker zusammen und es entwickelte sich nicht nur ein gemeinsamer Fokus darauf das Ziel zu erreichen, sondern echter Zusammenhalt. Wo vorher Kollegen Unverständnis über die Arbeit der jeweils anderen geäußert hatten oder sich in Schuldzuweisungen übten, wusste nun jeder im Team, was die anderen machten und warum. Man half sich gegenseitig nach Kräften und vertraute einander immer mehr. Und da nachhaltiges Lernen vor allem über positive Emotionen funktioniert, war dies der Punkt, an dem wir wirkliches Verständnis für Agilität entwickelten.

Am Ende wurde mir klar, dass Agilität erst durch das Zusammenspiel von Regeln, Menschen und Motivation entsteht. Die hinter den Regeln stehenden agilen Werte zu verstehen, ist entscheidend. Sonst besteht die Gefahr – durch das Herausgreifen oder Zurechtbiegen einzelner Regeln auf die eigenen Bedürfnisse – mit dem agilen Ansatz zu scheitern.

Was nicht heißt, dass man die agilen Frameworks nicht anpassen oder selektiv anwenden darf. Aber erst, wenn man sie verstanden hat.