Über unsMediaKontaktImpressum
Oliver Zeigermann 19. Dezember 2017

Machine Learning im Unternehmen – Nutzen und Potentiale

Machine Learning verlässt den Bereich der Science Fiction und verbreitet sich mehr und mehr in unserem Alltag. © phonlamaiphoto / Fotolia.com
© phonlamaiphoto / Fotolia.com

Machine Learning muss eine tolle Sache sein. Die großen IT-Firmen wie Apple, Google, Amazon und viele mehr vertrauen darauf. Die meisten Unternehmen haben aber ein ganz anderes Geschäftsmodell als die IT-zentrierten Großunternehmen. Gibt es für Ihr Unternehmen ebenfalls Potentiale? Und wenn ja, wie könnten diese aussehen? Für diesen Artikel stellen wir uns vor, der CTO einer Versicherung zu sein und die Möglichkeiten von Machine Learning für unser Unternehmen auszuloten.

Sicherheit, was die Zukunft auch bringen mag

Nehmen wir dazu an, dass wir eine Kfz-Versicherung sind, um die Wogen nicht zu hoch schlagen zu lassen, wie es z. B. bei einer Krankenversicherung sein könnte. Wahrscheinlich arbeiten Sie ohnehin in einem anderem Geschäftsbereich, Sie werden aber sehen, dass sich mit etwas Glück viele Erkenntnisse aus der CTO-Rolle unserer Versicherung auch auf Ihr Geschäft übertragen lassen.

Beispiel 1: Schlechter Stimmung schnell begegnen

Im Falle unserer Versicherung machen wir im Bereich Daten eine fette Beute. Zuerst einmal sehen wir uns Daten an, die öffentlich für jeden verfügbar und daher am einfachsten zu verarbeiten sind. Sie müssen mit keiner anderen Abteilung Modalitäten jeglicher Art besprechen und sind auch rechtlich auf der sicheren Seite. Vielleicht fragen Sie sich: was denn für öffentliche Daten? Über mein Unternehmen? Bei unserer Versicherung finden wir solche Daten in allen sozialen Netzwerken. Das wären dann Twitter, Facebook, Google Reviews, etc. Ein besonders negativer Kommentar auf einer Social Media-Plattform kann schnell außer Kontrolle geraden und daher wollen Sie schnell auf einen solchen reagieren. Allerdings ist es insbesondere bei vielen Kommentaren über Ihr Unternehmen oft nicht mehr möglich oder sehr aufwändig, sich jeden einzelnen zu anzusehen und zu bewerten.

Solche Daten kann unsere Versicherung auch auf externen Servern und mit bestehenden Services kommerzieller Anbieter bearbeiten, da diese Daten ohnehin öffentlich verfügbar sind und keines weiteren Schutzes bedürfen. Wir entscheiden uns in diesem Fall für die Google Sentiment Analysis [1]. Andere Anbieter wie Microsoft oder Amazon bieten ähnlich gute Angebote, die Auswahl hat in unserem Fall keine technischen Hintergründe und soll uns daher nicht weiter interessieren. Die Google API funktioniert denkbar einfach: Sie schicken einen Text und bekommen als Antwort, ob der Text eher negativ, positiv, neutral oder gemischt ist. Dazu gibt es einen Score, der anzeigt, wie stark negativ/positiv der Text ist. An die Texte kommen Sie durch eine Suche auf den entsprechenden Medien, entweder über deren API oder über Scraping der entsprechenden Web-Seiten, so dies denn deren AGBs entspricht. Mit einer solchen Bewertung können Sie nun die problematischsten Fälle als erstes von Ihrer entsprechenden PR-Abteilung behandeln lassen.

Dieser Fall ist besonders einfach umsetzbar, da das Machine Learning-Modell nicht spezifisch für Ihr Unternehmen, sondern allgemein ist. Sie können bereits komplett trainierte Services von hoher Qualität ohne den Aufbau einer eigenen Server-Infrastruktur nutzen. Dies kann man schon als Low-Hanging-Fruit bezeichnen. Solch eine Aufgabe könnten wir auch mit Mitteln der Natural Language Processings selbst lösen, allerdings bräuchten wir dafür viele Trainingsdaten und müssten auch der Meinung sein, dass schlechte Nachrichten unseres Unternehmens ganz anders aussehen als bei anderen Unternehmen und sich deswegen ein spezielles Training lohnen würde.

Beispiel 2: Wiederkehrende, lästige, manuelle Arbeit reduzieren

Jetzt wollen wir etwas tiefer in die Funktionsweise von Machine Learning einsteigen. Dazu widmen wir uns einer anderen Problemstellung, nämlich, dass niemand gern öde Arbeiten erledigen möchte. So etwas wie "Sind die eingereichten Unterlagen vollständig?" oder muss man den Kunden bitten, weitere Unterlagen einzureichen? In unserem Beispiel wollen wir prüfen, ob eine Farbkopie des Führerscheins vorliegt.

Bis vor wenigen Jahren war eine solche Kategorisierung von Bilddaten ein manuell programmierter Vorgang. Bestimmte erwartete Eigenschaften eines Dokuments wurden in einem Algorithmus kodiert, z. B.: Ein Führerschein...

  • hat das Format einer Checkkarte (auch eine Dauerkarte für den Zoo hat das Format einer Checkkarte) und
  • hat die Farbe grau oder rosa (auch ein 10 Euro-Schein hat einen erstaunlich ähnlichen Rosaton wie ein älterer Führerschein).

Die Kriterien sind also nicht ausreichend.

Hier kommt so genanntes Deep Learning ins Spiel und im speziellen Convolutional Neural Networks. Zum Training unseres Systems brauchen wir eine Menge von Bilddaten von den Dokumenten, die wir von Kunden erwarten. Dazu brauchen wir auch von Sachbearbeitern gemachte Angaben, um was für ein Dokument es sich handelt. Damit füttern wir ein Machine Learning-System, das mit passenden Paaren von Bild und Art des Dokuments gefüttert wird. Es gibt ausgeklügelte Verfahren, aus einem Foto eines Dokuments viele Varianten zu erzeugen, um Variationen der Drehung, der Perspektive und der Belichtung im wirklichen Leben zu simulieren und somit die Menge der notwendigen Bilddaten zu reduzieren. Selbst damit brauchen wir allerdings noch mehrere tausend Beispiele, um ein brauchbares System zu bekommen. Glücklicherweise ist das für unsere Versicherung kein Problem. Diese Daten liegen einfach in unserer Datenbank vor.

Abb.1: Phasen des Machine Learnings. © Oliver Zeigermann
Abb.1: Phasen des Machine Learnings. © Oliver Zeigermann

Wie in Abb.1 dargestellt, hat so ein System zwei Phasen. In der ersten Phase trainieren wir es mit den bereits bekannten Daten aus unserer Datenbank. Diese erste Phase fehlte in unserem ersten Beispiel, weil diese bereits durch Google als Dienstleister ausgeführt wurde. In der zweiten Phase bringen wir so ein System in Produktion auf unseren eigenen Servern und nutzen es für die Analyse, ob wir einen Führerschein vorfinden.

Abb.2: Deep Learning. © Oliver Zeigermann
Abb.2: Deep Learning. © Oliver Zeigermann

Erlernt werden beim hier zum Einsatz kommenden Deep Learning zwei grundsätzlich unterschiedliche Dinge. Dies ist in Abb.2 dargestellt. Wenn wir z. B. einen Bären als solchen identifizieren wollen, werden erst einmal die entscheidenden Merkmale eines solchen Bildes in mehreren hintereinander geschalteten Blöcken herausgestellt. Ein solcher Block besteht aus einer Reihe von Filter-Operationen, wie Sie sie vielleicht aus Photoshop oder anderen Bildverarbeitungsprogrammen kennen. Damit können z. B. Kanten erkannt oder das ganze Bild geschärft werden. Wenn man davon nun mehrere hintereinander schalten, stellt sich heraus, dass man damit auch viel abstraktere Muster wie die Augen eines Bären, die Schnauze und die Ohren erkennen kann. Diese erkannten Eigenschaften werden dann in den Classifier gesteckt, welcher eine Kombination dieser Muster mit einer Kategorie (in unserem Fall Bär oder eben Führerschein) assoziiert. Der entscheidende Vorteil ist dabei, dass alle diese Teile aus den Trainingsdaten erlernt und nicht durch Menschen programmiert werden.

Ein so trainiertes System gibt uns Wahrscheinlichkeiten für jede Kategorie. Bei mehreren tausend Trainingsdaten liegen diese bei typischen Dokumenten, die man bei einer Versicherung einreicht, in einer Nachkommastelle von 99 Prozent Sicherheit. Das klingt viel, wäre für ein selbstfahrendes Auto aber zum Beispiel katastrophal. Jeder tausendste Fußgänger würde nicht erkannt werden. Für uns kann das aber ausreichend sein. Wir können uns sogar überlegen, ab welcher Sicherheit wir dem Kunden schreiben und diesen Wert auch mit den gemachten Erfahrungen anpassen. Ist es hinnehmbar, dass einer von 1000 Kunden eine falsche Aufforderung bekommt und dann einfach anruft und sagt, "es ist doch alles da". Oder einer von 10.000?

Beispiel 3: Haben wir so einen nicht schon?

In unserem letzten Beispiel geht es an das Eingemachte für unsere Versicherung, nämlich an ihr Kerngeschäft. Wen soll man versichern, zu welchen Konditionen und warum? Wenn man jemanden nicht versichert oder nur unter schlechten Bedingungen, möchte dieser oft wissen, warum das so ist und manchmal hat der Kunde sogar einen Rechtsanspruch darauf. Das ist eine besondere Herausforderung.

Hier ist besonders wichtig, dass wir unsere Entscheidungen erklären können und auf gar keinen Fall Daten über den Kunden nach außen gelangen. Zwar gibt es Cloud-Dienstleiter, die garantieren, dass ihre Daten Deutschland nicht verlassen und amerikanische Firmen keinerlei Zugriff darauf bekommen, aber Daten dieser Sensibilität erfordern besondere Sorgfalt [2].

Abb.3: Kunden-Bewertung. © Oliver Zeigermann
Abb.3: Kunden-Bewertung. © Oliver Zeigermann

In jedem Fall hat unsere Versicherung Daten über Anträge und welche Faktoren Einfluss auf die Entscheidung hatten, ob und unter welchen Konditionen das Unternehmen den Antragsteller angenommen hat oder eben nicht. Wie in Abb.3 zu sehen ist, sind die für unser Beispiel bekannten und relevanten Parameter das Alter des Antragsstellers und die maximale Leistung des Fahrzeugs. Je nachdem, ob ein Versicherter einen oder mehrere Schäden verursacht hat und wie schwerwiegend diese waren, wird der Kunde als guter oder weniger guter Kunde angesehen. Uns als Mensch fällt es grundsätzlich leicht, lineare Muster zu erkennen. Auch hier sehen wir eine Abhängigkeit zwischen sowohl Alter als auch Leistung des Fahrzeugs. Eine solche Regel könnten wir sehr leicht fest in einem Stück Software codieren.

Abb.4: Kunden-Bewertung mit Bereichen. © Oliver Zeigermann
Abb.4: Kunden-Bewertung mit Bereichen. © Oliver Zeigermann

In Abb.4 sind zwei Geraden zu sehen, die gute Kunden von den weniger guten abgrenzen können und die entstandenen Bereiche sind gekennzeichnet. Dazu scheinen wir also erst einmal keine Machine Learning zu benötigen. Allerdings haben wir es hier nur mit 2 Variablen zu tun, in der Realität hätten wir aber oft viel mehr. Zumindest die jährlich zurückgelegte Strecke, der Typ des Fahrzeugs und der Ort der Zulassung sind leicht zu ermitteln und die Relevanz dieser Parameter erscheint intuitiv gegeben. Ebenso könnten sich diese Daten anhand dieser Parameter über die Zeit verändern und auch in unserem Kundenstamm gar nicht so eindeutig sein, wie wir es hier andeuten. Ein lernendes System würde sich mit den tatsächlich anfallenden Schadensfällen anpassen und auch deutlich mehr Parameter in Betracht ziehen.

Hier wollen wir ein überraschend einfaches Machine Learning-Verfahren ansehen, das so genannte "Nearest Neighbor"-Verfahren. Dazu wird erst einmal überhaupt nicht von den Trainingsdaten abstrahiert, d. h. wir merken uns, wie in der Grafik einfach alle Versicherten mit ihrer Bewertung. Kommt nun ein neuer Antrag herein, tragen wir den neuen Kunden in dasselbe System ein und schauen, welcher Punkt der nächste ist und welche Bewertung er hat. Diese nehmen wir dann auch für unseren neuen Kunden. Daher der Name "Nearest Neighbor".

Abb.5: Kunden-Bewertung mit KNN. © Oliver Zeigermann
Abb.5: Kunden-Bewertung mit KNN. © Oliver Zeigermann

Häufig wird nicht nur ein Nachbar, sondern mehrere Nachbarn (k) in Betracht gezogen. Dann heißt das Verfahren k-Nearest Neighbor oder kurz KNN. In unserer Grafik (Abb.5) können Sie das für k=3 anhand von 3 Beispielen sehen. Ein Junger Mensch (grau) möchte ein PS-starkes Fahrzeug versichern. Alle 3 ähnlichen Punkte (Nachbarn) haben eine schlechte Bewertung. Diese schlechte Bewertung ist dann auch die Bewertung für den Neukunden. Nicht viel besser sieht es bei dem über 80-jährigen Antragsteller (blau) aus. 250 PS sind vielleicht doch ein bisschen viel. Der knapp 50-jährige mit seinem VW Up (schwarz) hat da bessere Karten. Alle ähnlichen Versicherten haben entweder gute oder mittlere Bewertungen. Auch die Begründungen werden frei Haus geliefert und leiten sich von den Parametern (Alter und Leistung) ab – "Wir haben festgestellt, dass andere Versicherte ihres Alters besonders viele Unfälle mit Fahrzeugen dieser Leistung hatten".

Man kann das sogar noch genauer sagen, indem wir automatisch wie in unseren manuellen Auswertungen Grenzen zwischen den einzelnen Klassen von Versicherten einzeichnen und dann schauen, wie weit der Versicherte von der Grenze weg ist. Z. B. könnten man dem jungen Antragsteller sagen: "... unter 100 PS könnten wir Ihnen bessere Konditionen anbieten". Sollten sich diese Daten ändern, weil es immer mehr Assistenzsysteme im Auto gibt und das Alter des Fahrers daher immer weniger relevant wird, passt sich unser System automatisch an.

Wir können das tun, aber sollten wir das auch?

In der Presse finden sich zur Zeit in großer Anzahl Utopien der Weltherrschaft durch die Maschinen, die Ausrottung der Menschheit und ähnliche publikumswirksame Geschichten. Dies ist in den Bereich der Science Fiction einzuordnen. Mit keiner der uns bekannten Technik ist ein solches Szenario auch nur ansatzweise vorstellbar.

Weniger spektakulär, aber deutlich realistischer sind andere Fragestellungen. Mit dem allgemeinen Trend der Digitalisierung teilen wir die Bedenken des Verlusts von Arbeitsplätzen: Welche Art von Machine Learning gefährdet Arbeitsplätze und welche wollen wir als Gesellschaft erhalten? Diese Fragestellung ist weit weniger offensichtlich, als Sie vielleicht denken. Von unseren drei oben skizzierten Szenarien gefährdet tatsächlich nur eine direkt (Reduzierung von öden Arbeiten) Arbeitsplätze. Aber wollen wir als Gesellschaft öde Arbeitsplätze erhalten?

Eine andere Fragestellung ist: Sollte man alles machen was man machen kann? Ist es hinnehmbar, jemanden wegen spezieller Umstände für die er nichts kann (z.B. Alter) nicht zu versichern? Sollte man hier einen Unterschied machen? Auch dies ist eine Fragestellung, die wir eher im gesellschaftlichen Kontext als als einzelne Firma beantworten sollen. Die Antwort dazu wird wahrscheinlich bei einer Krankenversicherung anders ausfallen, als bei einer Kfz-Versicherung.

Daten sind das Benzin

Nun haben Sie eine Reihe von Anwendungsbeispielen gesehen. Es gibt aber eine einfache Methode, weitere Anwendungsgebiete zu identifizieren. Wenn Sie Machine Learning betreiben wollen, brauchen Sie dafür Daten, die als Grundlage dienen. Dabei ist zum einen wichtig, dass die Daten überhaupt da sind. Keine Daten, kein Machine Learning. Die Beziehung ist dabei ähnlich wie bei einem Motor und Benzin. Der Motor ist die Machine Learning-Technik und die Daten sind das Benzin. Sie brauchen beides. Es kann also zielführend sein, erst einmal zu schauen, was für Daten Sie überhaupt in Ihrem Unternehmen beschaffen können und unter welchen Bedingungen Sie auf die Daten zugreifen dürfen. Sobald Sie dies geklärt haben, können Sie jede Datenquelle als heiße Spur auf eine sinnvolle Anwendung im Bereich Maschine Learning ansehen.

Fazit

Was genau Machine Learning ist und ob es einen Unterschied zu Künstlicher Intelligenz gibt, ist erstaunlich strittig. Auch wird immer wieder von unterschiedlichen Arten von Machine Learning gesprochen, häufig von "Supervised Learning", "Unsupervised Learning" und "Reinforcement Learning". Andrew Ng, einer der Stars der Machine Learning-Szene [3], bemerkt aber, dass der meiste Fortschritt in den letzten Jahren in dem Bereich gemacht wurde, wo bestimmte Eingaben zu einer unmittelbaren, einfachen Ausgabe transformiert werden. Das ist auch bei allen unseren Beispielen der Fall. Hier kann man am ehesten von "Supervised Learning"sprechen.

Im erstem Beispiel haben wir uns mit der Analyse natürlicher Sprache auseinandergesetzt. Dabei setzt ein von Google trainiertes System einen Text über unser Unternehmen in eine Bewertung der Stimmung um. Bei einer schlechten Stimmung können wir schnell darauf reagieren. Im zweiten Beispiel klassifizieren wir ein Bild in eine bestimmte Kategorie. Auch wieder eine klare Eingabe und eine direkte, einfache Ausgabe. Hier benutzen wir mit Convolutional Neural Networks eine Deep Learning-Technik für die Bildverarbeitung. Im letzten Beispiel nutzen wir klassisches Machine Learning mit manueller Auswahl von relevanten Features. Eine solche Auswahl der Features passiert beim Deep Learning automatisch, allerdings brauchen wir dann mehr Daten und die Interpretation der Vorhersage ist schwerer möglich.

Wir haben damit Beispiele für drei der wichtigsten Anwendungen des sogenannten "Supervised Learnings" gesehen. Eben jener Art des Machine Learnings, die Andrew Ng als vorherrschend bezeichnet. Meine Hoffnung ist, dass Sie hieraus eine Inspiration für Ihre eigenes Unternehmen oder ihr eigenes Projekt ziehen können.

Quellen
  1. Google Sentiment Analysis: Cloud Natural Language API, Grundlagen der Natural Language API
  2. Wikipedia: Datenschutz-Grundverordnung
    Informatik Aktuell – Harald Gröger: Datenschutz-Grundverordnung – Risiko oder Chance?
    Informatik Aktuell – Tilman Dralle, Thomas Werner: EU-DSGVO: Brüssel zieht die Datenschutz-Zügel für Unternehmen weiter an
  3. Wikipedia: Andrew Ng
nach Oben
Autor

Oliver Zeigermann

Oliver hat über Jahrzehnte in vielen unterschiedlichen Sprachen Software entwickelt und ist zuletzt tief in die Analyse großer Datenmengen mit Techniken des Machine Learning eingestiegen.
>> Weiterlesen
Bücher des Autors:

botMessage_toctoc_comments_929