SAP HANA XE

SAP HANA XE

Kostenfrei starten, preiswert wachsen

 

SAP HANA Projekte müssen nicht mit einer Großinvestition beginnen

SAP HANA, Expreess Edition (HANA XE) ist eine schlanke Version der SAP HANA-Plattform, die bis auf wenige Ausnahmen alle wichtigen Funktionalitäten kompakt und einsatzbereit anbietet. Mit dieser multimodalen In-Memory Datenbankplattform können verschiedene Kategorien von Daten effizient verarbeitet werden.

Zu den wichtigsten Modulen und Funktionen zählen u.a.:

  • Relationale DB-Engine (OLTP + OLAP)
  • Graph-Engine
  • Textverarbeitungsmodul
  • Geo-Modul (Spatial)
  • Document Store
  • Predictive / Machine Learning Funktionen in der Datenbank

 Die verschiedenen Engines können gleichzeitig und direkt auf einen Datenbestand angewendet werden. Die Daten müssen nicht – wie sonst oft üblich – zwischen verschiedenen, verteilten Software-Komponenten dupliziert und mehrfach verwaltet werden. Dadurch können auch komplizierte Use-Cases mit einer relativ einfachen Architektur schnell und effizient angegangen werden.

Darüber hinaus bietet die Plattform eine Reihe von eingebauten Machine Learning-, KI- und Business-Algorithmen. Da diese sehr nah an den Daten implementiert sind, werden Abfrageantwortzeiten in Sekundenbruchteilen – auch auf Massendaten – möglich.

Die Softwarelizenz ermöglicht sowohl nicht-produktive als auch produktive Anwendungsfälle. Dadurch kann eine HANA XE nicht nur zum Erstellen von Prototypen, sondern auch zum Bereitstellen produktiver Anwendungen verwendet werden.

 

Kommerzielle Aspekte

HANA XE steht bis zu 32GB RAM kostenfrei mit allen wichtigen HANA-Features zur Verfügung. So können SAP HANA Projekte sehr preiswert – und ohne langwierige Lizenzbeschaffung – schnell gestartet werden. Insbesondere PoC-oder Pilotprojekte, wie sie im Data Analytics und Machine Learning Bereich fast immer empfehlenswert sind, profitieren von der unkomplizierten und schnellen Verfügbarkeit der sehr leistungsfähigen SAP HANA Technologie.

Falls der kostenfreie 32 GB Arbeitsspeicher nicht mehr ausreicht, kann die Lizenz bis zu 128 GB mit einem Lizenz-Upgrade einfach aus dem SAP Store erweitert werden:

https://www.sapstore.com/solutions/99055/SAP-HANA%2C-express-edition

Durch die effiziente Datenkompression benötigt die HANA deutlich weniger Hauptspeicher als herkömmliche Datenbanken. Abhängig von dem gewählten Datenmodell sind Kompressionsfaktoren von 5-7 üblich. Im Vergleich zu unkomprimierten CSV-Daten kann sogar ein Faktor von bis zu 15 erreicht werden.

 

„In the wild“ – Beispiele aus der Praxis

In der avato Smart Data und SAP Beratungspraxis hat sich die SAP HANA XE Plattform als Allzweckwaffe etabliert. avato konnte mit den Werkzeugen aus dieser Toolbox auch komplexe Use Cases mit geringen Budgets implementieren. Beispiele sind:

  • Stammdaten-Generierung und -Optimierung mit ML-Methoden; Analyse und Verarbeitung von SAP-Bewegungsdaten aus 10+ Jahren
  • Digitale Assistenten für SAP ERP; hierzu werden Stamm- und Bewegungsdaten aus SAP ERP in eine HANA XE für superschnelle Analysen und die Verarbeitung mit Hilfe von ML-Algorithmen repliziert und die Ergebnisse über Digitale Assistenten mit oder ohne Anwenderinteraktion wieder in SAP ERP zurückgeführt
  • Fortgeschrittene Produktionscontrolling-Anwendungen; Material- und Belegflüsse (z.B. Chargen) werden in Graphen überführt. Dort können Kennzahlen mit Graphanalyse-Verfahren sehr einfach berechnet oder auch komplexere Analysen durchgeführt werden
  • Fortgeschrittene Produktionsanalysen; Historische und aktuelle Fertigungsdaten aus komplexen chemischen Fertigungsprozessen werden zusammen mit Anlageninformationen in Graphen abgebildet. In dem Graphen können auch komplexe Fragestellungen relativ einfach beantwortet werden.
  • Real-Time Reporting für mehrere Geschäftsbereiche (u.a. Einkauf, Controlling, Produktion). Die Verwendung von Virtual Data Models (VDM) und HANA XSA-Modelling, sowie die Anbindung an die SAP Analytics Cloud (SAC) erlaubt leistungsfähige Reporting-Lösungen in kurzer Zeit und mit vergleichsweise niedrigem Aufwand

Gerne helfen wir Ihnen, Ihre Aufgaben mit SAP HANA XE smart zu lösen.

SAP HANA XE – Kostenfrei starten, preiswert wachsen

Haben Sie weitere Fragen? Wir beraten Sie gerne: marketing@avato.net

Impressum 
Datum: Februar 2020
Autor: Andor Németh
Kontakt: marketing@avato.net
www.avato-consulting.com
© avato consulting ag – Copyright 2020.
All Rights Reserved.

Produktionsmonitoring 4.0 in der Papierindustrie

Produktionsmonitoring 4.0 in der Papierindustrie

Ausgangssituation:

Wie viele Menschen braucht man, um eine Papiermaschine op­timal zu betreiben? Durch den hohen Automatisierungsgrad ist der eigentliche Betrieb mit einer sehr kleinen Betriebsmann­schaft möglich. Über die letzten 10 Jahren wurden bei einigen Papierherstellern die Produktionsmenge pro Mitarbeiter um einen Faktor 10 gesteigert! Gleichzeitig ist und bleibt die Pa­pierproduktion ein komplexer dynamischer Prozess mit vielen Einstell- und Einflussmöglichkeiten und einer komplexen Pro­duktionsanlage. Aufgrund der hohen und weiter steigenden Anzahl von Sensoren ist eine manuelle vollumfängliche Über­wachung der Produktion durch einige wenige Personen in der Praxis unmöglich. So werden Probleme in der Anlage oder den Betriebseinstellungen oft nicht erkannt. Die Folge sind unge­plante Stillstände und Qualitätseinbußen im Endprodukt. Oft sind nur noch zeitaufwändige ex-post Analysen möglich. Prozessleitsysteme bieten zwar umfassende Alarmierungsfunk­tionen an, diese überprüfen jedoch nur regelbasiert und mit statischen Grenzen ohne Betriebszustände, Sorten oder Ände­rungen in den Einstellungen zu berücksichtigen. In der Folge werden Anwender mit Alarmen überflutet und die Alarmierungsfunktionen nur eingeschränkt genutzt.

Smart Data Ansatz:

Durch eine vollautomatisierte und dynamische Überwachung von Tausenden von Messstellen und die Alarmierung bei unge­wöhnlichen Mustern in Sensordaten werden Probleme in der Produktion frühzeitig identifiziert. Mit diesem neuen aus Daten abgeleiteten Erkenntnissen können Stillstände vermieden und die Produktqualität verbessert werden. In dem Smart Data Alarmierungssystem wird das normale Verhalten der Maschine unter Berücksichtigung von Sortenabhängigkeiten und Be­triebszuständen laufend dynamisch aus der Historie ermittelt. Abhängige Alarme werden zusammengefasst und nach Wich­tigkeit priorisiert. Die Überwachung kann über Sensordaten hinaus auch flexibel auf andere Daten wie Qualitätsparameter, berechnete Kennzahlen wie z.B. Rohstoffverbräuche etc. ange­wendet werden. Die Alarme werden in einer benutzerfreundli­chen Oberfläche dargestellt und können hier vom Anwender mit erweiterten Analysefunktionen untersucht und bearbeitet werden.

Vorteile:

  • Steigerung OEE/ GAE – Einsparpotentiale von mehreren hunderttausend Euro im Jahr
  • Vermeidung von Stillständen
  • Verbesserte Qualität des Endproduktes
  • Vorausschauende Wartung

Funktionen:

  • Überwachung in Echtzeit
  • Dynamische Berechnung von Grenzwerten
  • Berücksichtigung von Sorten- und Produktions­zuständen
  • Priorisierung von Alarmen
  • Automatische Überwachung von Rohstoff- und Energieverbräuchen

Produktionsmonitoring 4.0 in der Papierindustrie – Weniger Stillstände, verbesserte Qualität, vorausschauende Wartung

Haben Sie weitere Fragen? Wir beraten Sie gerne: marketing@avato.net

Impressum 
Datum: Januar 2020
Autor: Leon Müller
Kontakt: marketing@avato.net
www.avato-consulting.com
© avato consulting ag – Copyright 2020.
All Rights Reserved.

avato Kunde Steinbeis gewinnt SAP Quality Award

avato Kunde Steinbeis gewinnt SAP Quality Award

avato Kunde Steinbeis Papier GmbH gewinnt den SAP Quality Award 2019 in der Kategorie Innovation für Industrie 4.0 Projekt.

Industrie 4.0, IoT, Big Data, KI – nur Schlagworte oder Zutaten für die erfolgreiche Digitalisierung im Mittelstand?

Der Fokus auf relevante Geschäftsergebnisse, ein exzellentes Team kombiniert mit dem intelligenten Einsatz moderner Technologien führen bei dem mittelständischen Hersteller von nachhaltig hergestellten Recyclingpapieren zu überzeugenden Resultaten. Die Jury des SAP Quality Awards hat das mit der Unterstützung von avato durchgeführte Projekt Industrie 4.0@Steinbeis deshalb mit Gold in der Kategorie Innovation ausgezeichnet.  

Wenn Sie mehr über das Projekt, Steinbeis Papier und die Leistungen von avato consulting kennenlernen möchten, lesen Sie weiter…

SAP Quality Award Gold in der Kategorie Innovation für Industrie 4.0 @ Steinbeis

SAP Quality Award Gold in der Kategorie Innovation für Industrie 4.0 @ Steinbeis

Mitte 2017 entschied sich die Steinbeis Papier GmbH (https://www.stp.de) für die avato consulting ag als strategischen Partner für ihre Digitalisierungsinitiative unter dem Titel Industrie 4.0 @ Steinbeis Papier. In einer kurzen Vorbereitungsphase wurden die Ziele definiert, mögliche Anwendungsszenarien evaluiert und für die Implementierung in einer Roadmap priorisiert.

Anfang 2018 startete die Implementierung. Die technische Plattform wurde aufgebaut, mehr als 25.000 Sensoren wurden integriert und die priorisierten Anwendungsszenarien wurden in mehreren Release-Zyklen umgesetzt.

Das Projekt führte bei dem mittelständischen Hersteller von nachhaltig hergestellten Recycling­papieren zu beeindruckenden Resultaten. Die überzeugen nicht nur die Geschäftsführung von Steinbeis, sondern auch die Jury der SAP Quality Awards 2019. Das Projekt wurde Mitte Dezember mit Gold in der Kategorie Innovation ausgezeichnet (https://news.sap.com/germany/2019/12/quality-awards-2019-kundenprojekte/). Die Jury beeindruckte besonders wie das gemeinsame Team von Steinbeis und avato durch einen intelligenten und innovativen Einsatz moderner Technologien und mit einer datengetriebenen agilen Vorgehensweise die Produktions- und Wartungsprozesse in einem engen Zeit- und Budgetrahmen signifikant verbesserte.
In der ersten Projektphase lag der Fokus auf der Optimierung der Produktionsprozesse und der Wertschöpfungskette. Speziell die frühzeitige automatisierte Aufdeckung von ungewöhnlichen Ereignissen und Abläufen in den Produktionsanlagen und dem Produktionsprozess liefert signifikante Optimierungen in Ausbeuten und Qualität, hilft aber auch teuren Ausfällen an Maschinen und Anlagen vorzubeugen.
Aktuell werden die integrierte Datenbasis aus Produktion und betriebswirtschaftlichen Anwendungen mit den Analyse- und Machine Learning-Werkzeugen genutzt, verschiedene Anwendungsszenarien in Materialwirtschaft, Einkauf und Controlling umzusetzen.
Die bei Steinbeis eingesetzte Lösung setzt auf dem avato Smart Data Framework auf. Die In-Memory-Datenbank SAP HANA wird genutzt, um die anfallenden Daten aus den verschiedenen Produktions- und Qualitätssystemen zu sammeln und in Verbindung mit den Informationen aus dem MES und SAP-System zu analysieren. Weiter werden verschiedene moderne Machine Learning Algorithmen und IT-Werkzeuge genutzt, um die großen Datenmengen schnell und kosteneffizient in praktisch nutzbare Informationen aufzubereiten.
Wenn Sie mehr zum Vorgehen, den eingesetzten Werkzeugen und den Erfahrungen wissen möchten, sprechen Sie uns an oder stöbern Sie in unserem Blog.

XGBoost: Eine Visualisierung der fundamentalen Unterschiede zwischen den beiden Boostern gbtree and gblinear

XGBoost: Eine Visualisierung der fundamentalen Unterschiede zwischen den beiden Boostern gbtree and gblinear

Hintergrund

Das XGBoost-Framework hat sich zu einem sehr leistungsfähigen und sehr populären Werkzeug im Bereich des maschinellen Lernens entwickelt. Diese Bibliothek enthält eine Vielzahl von Algorithmen, die jeweils mit einem eigenen Satz von Hyperparametern ausgestattet sind. Dies erlaubt es, viele Algorithmen in einem Paket zu kombinieren. Man kann verschiedene Klassifikations-, Regressions- oder Rankingaufgaben modellieren, indem Bäume bzw. lineare Funktionen verwendet werden, indem verschiedene Regularisierungsschemata angewendet werden oder indem viele andere Aspekte der einzelnen Algorithmen angepasst werden können.

Diese Optionen werden durch Hyperparameter gesteuert. Sie können in zwei Klassen unterteilt werden: Parameter, die die Eigenschaften eines Modells festlegen, und Parameter, die das Verhalten eines Modells anpassen. Ein Beispiel für den ersten Typ ist die Art der Zielvariable (objective). Offensichtlich wird eine binäre Klassifikationsaufgabe eine andere Zielvariable haben als eine numerische Vorhersage. Der zweite Satz von Parametern verwaltet den Trainingsprozess. Die Lernrate, normalerweise eta genannt, passt beispielsweise den Informationsgewinn für jeden Lernschritt an und verhindert so eine Überanpassung des Algorithmus auf die Trainingsdaten.

Dieser Artikel konzentriert sich auf zwei spezifische Parameter, die sich scheinbar sehr stark ähneln und dadurch eine gewisse Verwirrung verursachen können: die Art der Zielvariable (objective) und der Booster.

Für weitere Informationen zum vollständigen Satz an Parametern sei auf die offizielle XGBoost Dokumentation verwiesen.

 

Kleiner Überblick über die zwei XGBoost Parameter: booster und objective

  • Der Booster-Parameter legt den Typ des „Learners“ fest, also das Grundkonzept des Algorithmus. Normalerweise ist dies entweder ein Entscheidungsbaum oder eine lineare Funktion. Da XGBoost mehrere Varianten des Learners kombiniert, besteht das Modell im Falle von Entscheidungsbäumen aus einem geboosteten Ensemble von Bäumen. Für den linearen Booster ist es eine gewichtete Summe von linearen Funktionen.
  • Das Lernziel (objective) bestimmt den Typ der Zielvariable. Die verfügbaren Optionen umfassen Regression, logistische Regression, Binär- und Multiklassifikation und Rang. Diese Option erlaubt es, XGBoost-Modelle auf verschiedene Arten von Anwendungsfällen anzuwenden. Der Standardwert ist „reg:squarederror“ (früher „reg:linear“ genannt, was verwirrend war und deshalb umbenannt wurde (siehe Details)).

Dabei ist zu beachten, dass das Lernziel unabhängig vom Booster ist. Entscheidungsbäume sind nicht nur in der Lage, Klassifikationsaufgaben durchzuführen, sondern können auch kontinuierliche Variablen mit einer gewissen Granularität für den im Training verwendeten Datenbereich vorhersagen.

Das Ziel wird also immer von der jeweiligen Modellierungsaufgabe bestimmt, während die beiden Standardbooster für das gleiche Problem gültig sein können.

Visualisierung beider Booster

Um die Unterschiede zwischen den beiden Hauptvarianten des XGBoost-Boosters zu verdeutlichen, wird ein einfaches Beispiel verwendet, bei dem der lineare und der tree Booster für eine Regressionsaufgabe verwendet werden. Die Analyse wird in R mit der „xgboost“-Bibliothek für R durchgeführt.

In diesem Beispiel wird eine kontinuierliche Zielvariable vorhergesagt. Das richtige Lernziel ist also „reg:squarederror“. Die beiden wichtigsten Booster-Optionen, gbtree und gblinear, werden verglichen.

Der Datensatz ist einfach aufgebaut. Der Eingangsparameter x ist eine kontinuierliche Variable, die von 0 bis 10 reicht. Es wird kein Rauschen hinzugefügt, um die Aufgabe einfach zu halten. Die Zielvariable wird aus dem Eingangsparameter generiert:

y=x+   

Die Trainingsdaten werden als Teilmenge des vollständigen Datensatzes ausgewählt, indem zwei Teilbereiche, [1:4] und [6:9], ausgewählt werden. Dies ist in der Abbildung unten dargestellt (gelbe Datenpunkte). Dadurch kann getestet werden, wie gut sich das Modell auf ungesehenen Daten verhält.

 

Mit diesen Trainingsdaten werden zwei XGBoost-Modelle generiert, m1_gbtree mit dem gbtree-Booster und m2_gblinear mit dem gblinear-Booster. Mit den trainierten Modelle werden dann Vorhersagen für den gesamten Datensatz generiert.

With this training data, two XGBoost models are generated, m1_gbtree with the gbtree booster and m2_gblinear with the gblinear booster. The trained models are then used to generate predictions for the whole data set.

 

model
RMSE (full data)
MAE (full data)
RMSE (train data)
MAE (train data)
m1_gbtree 4.91 2.35 0.05 0.03
m2_gblinear 7.74 6.39 4.50 3.89

Die Vorhersagen für den gesamten Datensatz sind in der obigen Grafik zusammen mit dem vollständigen Datensatz dargestellt. Das erste Modell, das Entscheidungsbäume verwendet, sagt die Trainingsdaten in den Regionen, in denen das Modell mit Trainingsdaten versorgt wurde, gut voraus. Allerdings treten sowohl in den äußeren Regionen (x<1 und x>9) als auch in der zentralen Region (4<x<6) Diskrepanzen auf. Das baumbasierte Modell repliziert die Vorhersage des nächstgelegenen bekannten Datenpunktes und erzeugt so horizontale Linien. Dies ist immer dann der Fall, wenn Bäume für kontinuierliche Vorhersagen verwendet werden. Es wird keine Formel gelernt, die eine Inter- oder Extrapolation erlaubt.

Das zweite Modell verwendet eine lineare Funktion für jeden Learner im gradient Boosting Prozess. Die gewichtete Kombination dieser Learner ist immer noch eine lineare Funktion. Dies erklärt das Verhalten des Modells: Die Vorhersagen folgen einer linearen Kurve und nicht dem nichtlinearen Verhalten der Daten.

Wenn man sich die Metriken für den vollständigen Datensatz ansieht, zeigt das baumbasierte Modell einen niedrigeren RMSE (4,9 gegenüber 7,7) und MAE (2,4 gegenüber 6,4) als das lineare Modell. Es ist zu beachten, dass die anderen Hyperparameter der Modelle nicht feinjustiert wurden und daher diese Zahlen nicht unbedingt das Optimum widerspiegeln. Dennoch zeigen sie, wie schlecht die Modelle auf dem gesamten Datensatz abschneiden. Die Metriken, die nur Trainingsdaten berücksichtigen, verdeutlichen die Unterschiede in der Modellierung. Das baumbasierte Modell stellt die Trainingsdaten gut dar, während das lineare Modell dies nicht tut. Dies ist darauf zurückzuführen, dass die Abhängigkeit der Zielvariablen von der Eingangsvariablen nicht linear ist.

Können die Modelle verbessert werden, wenn eine nichtlineare Variable im Training zur Verfügung gestellt wird? Als Test wird jedes Modell auf modifizierten Eingangsdaten trainiert, die sowohl auf der ursprünglichen Eingangsvariablen x als auch auf einer neuen Variablen x_int=x^2 basieren. Die neue Variable enthält den Interaktionsterm, der das nichtlineare Verhalten überhaupt erst verursacht.

Zusätzlich wird ein einfaches lineares Regressionsmodell (nicht XGBoost) zum Vergleich hinzugefügt, einmal mit und einmal ohne Interaktionsterm.

model
RMSE (full data)
MAE (full data)
RMSE (train data)
 
m1_gbtree 4.91 2.35 0.05  
m6_gbtree_int 4.91 2.35 0.05  
m2_gblinear 7.74 6.39 4.50  
m3_gblinear_int 0.00 0.00 0.00  
m4_lin_reg 7.74 6.39 4.50  
m5_lin_reg_int 0.00 0.00 0.00  

Daraus können wir ein paar Dinge lernen:

Erstens: Der Interaktionsterm verbessert die linearen Modelle erheblich. Sie zeigen jetzt eine perfekte Übereinstimmung mit dem vollständigen Datensatz. Hier modelliert die Regressionsfunktion exakt das wahre Verhältnis zwischen Eingangs- und Zielgröße. Darüber hinaus erlaubt die trainierte Funktion eine gute Extrapolation auf ungesehene Daten.

Zweitens hat sich das Modell mit Entscheidungsbaum durch die Einbeziehung des Interaktionsterms nicht verbessert. Dies lässt sich erklären, wenn man sich nochmals vor Augen führt, wie Bäume für eine Regressionsaufgabe funktionieren. Ein Baum teilt den die Trainingsdaten in feine Unterbereiche auf, die durch die Blätter (leaves) repräsentiert werden. Für jedes Blatt wird ein Vorhersagewert von der Zielvariablen gelernt. Dadurch wird die Zielvariable diskretisiert. Das Hinzufügen von weiteren Eingabevariablen verfeinert die Aufteilung des Inputraumes. In diesem Beispiel reicht die ursprüngliche Eingangsvariable x jedoch schon aus, um eine gute Aufteilung zu erzeugen, und durch das Hinzufügen der neuen Eingangsvariablen wird keine neue Information gewonnen.

Schließlich zeigt der lineare Booster der XGBoost-Familie das gleiche Verhalten wie eine lineare Standardregression, mit und ohne Interaktionsterm. Dies mag nicht überraschen, da beide Modelle eine Verlustfunktion für eine lineare Regression optimieren, d.h. den quadratischen Fehler reduzieren. Beide Modelle sollten zum optimalen Ergebnis konvergieren, das identisch sein sollte (wenn auch vielleicht nicht in jeder letzten Stelle). Dieser Vergleich ist natürlich nur gültig, wenn das objektive „reg:squarederror“ für das XGBoost-Modell verwendet wird.

 

Zusammenfassung

In diesem Artikel wurden die beiden Hauptbooster gblinear und gbtree der XGBoost-Familie mit nichtlinearen und nicht kontinuierlichen Daten getestet. Beide Booster zeigten konzeptionelle Grenzen hinsichtlich ihrer Fähigkeit, Nichtlinearität zu extrapolieren oder zu behandeln. Baumbasierte Modelle erlauben es, alle Arten von nichtlinearen Daten gut darzustellen, da keine Formel benötigt wird, die die Beziehung zwischen Ziel- und Eingangsgrößen beschreibt. Dies ist ein enormer Vorteil, wenn diese Beziehungen und Wechselwirkungen unbekannt sind. Lineare Modelle hingegen können keine anderen Beziehungen lernen als rein lineare. Wenn diese zusätzlichen Wechselwirkungen aber bekannt sind, werden lineare Modelle ziemlich mächtig.

Der zweite Aspekt berücksichtigt die Tatsache, dass die Trainingsdaten nicht immer den gesamten Datenbereich des Anwendungsfalles abdecken. Hier muss das Modell von bekannten Datenpunkten auf die neuen Regionen inter- oder extrapolieren. Im Falle von Bäumen steht keine Formel zur Verfügung, die es erlauben würde, für diese Bereiche aussagekräftige Vorhersagewerte zu liefern. Im Gegensatz dazu ist dies der Hauptvorteil von linearen Regressionsmodellen – wenn die gleichen Annahmen auf die neuen Daten angewendet werden können. Mit anderen Worten, wenn sich die neuen Daten in gleicher Weise verhalten.

Haben Sie weitere Fragen? Wir beraten Sie gerne: marketing@avato.net

Impressum: 
Datum: Dezember 2019
Autor: Verena Baussenwein
Kontakt: marketing@avato.net
www.avato-consulting.com
© 2019 avato consulting ag
All Rights Reserved.

Die Schattenseite von Machine Learning aus der Black Box

Die Schattenseite von Machine Learning aus der Black Box

Heutzutage ist künstliche Intelligenz allgegenwärtig. Die verschiedenen Algorithmen des maschinellen Lernens werden für die unterschiedlichsten Anwendungen eingesetzt: In der klassischen prädiktiven Analyse, in Bild- und Spracherkennung, bei Spielen wie Jeopardy!, Go oder World of Warcraft oder für autonom fahrende Autos, die maßgeblich auf maschinellem Lernen beruhen.

Mittlerweile sind viele verschiedene Arten von Modellen verfügbar, von der einfachen linearen Regression bis hin zu geboosteten Entscheidungsbäumen und diverse Arten von neuronalen Netzen. Einige der Modelle sind auf eine bestimmte Aufgabe spezialisiert, z.B. word2vec für Textverarbeitung, während andere leicht auf alle Arten von Problemen angewendet werden können, wie z.B. geboostete Entscheidungsbäume.

Der große Erfolg von künstlicher Intelligenz hat dazu beigetragen, dass die Algorithmen des maschinellen Lernens mittlerweile nicht nur innerhalb der Data Science Community verwendet werden, sondern dass sie mittlerweile in fast jedem anderen Kontext Einzug gehalten haben, der irgendetwas mit Daten zu tun hat. Ein Teil dieses Erfolges ist auf die Tatsache zurückzuführen, dass maschinelles Lernen vergleichsweise einfach anzuwenden ist. Die Algorithmen sind in der Regel öffentlich zugänglich und für die grundlegenden Aufgaben wird vergleichsweise wenig Rechenleistung benötigt. Daher reicht ein Datensatz, ein normales Notebook und ein speziellen Toolkit wie R oder Python aus, um einen eigenen Algorithmus mit künstlicher Intelligenz zu generieren.

Die Algorithmen selbst sind in dezidierten Bibliotheken gekapselt und mit einem einfachen Funktionsaufruf zugreifbar. Zusätzlich gibt es viele Möglichkeiten, die verschiedenen Schritte des Trainings zu automatisieren. Dies hat den gesamten Prozess stark vereinfacht. Es werden nur noch wenige Zeilen Code benötigt, und es entsteht ein ausgeklügeltes Modell. Die Algorithmen und manchmal sogar die Datenaufbereitung und die Anwendung selbst sind zu einer Black Box geworden, die uns dazu verleitet, die Methoden ohne viel nachzudenken anzuwenden.

Darüber hinaus wird die Güte eines Modells in der Regel durch bestimmte Metriken wie den RMSE (Root Mean Square Error, mittlere quadratische Abweichung) bewertet, die die Vorhersagequalität auf einige wenige Zahlen herunterkochen. Diese Metriken sind modellunabhängig und die Daten selbst sind in der Regel recht komplex. Daraus resultiert, dass das vollständige Verständnis und die Bewertung des Modellergebnisses zur Herausforderung werden.

Es passiert schnell, dass einfach das Modell mit den besten Metriken ausgewählt wird und es in der vorgesehenen Anwendung eingesetzt wird. Auf neue Daten angewendet stellt sich schnell heraus, dass die Prognosen jedoch nicht so gut sind wie erwartet. Wie ist das passiert?

Die folgenden Beispiele zeigen, wie es zu diesem Szenario kommen kann.

 

Unzureichende Trainingsdaten

Beginnen wir mit einem offensichtlichen Beispiel aus der Bildklassifikation, um das vorliegende Problem zu verdeutlichen. Ein Algorithmus zu Bildverarbeitung wurde trainiert, um Fotografien mit Tieren zu erkennen und die abgebildeten Tiere zu klassifizieren. Die Trainingsdaten bestanden jedoch nur aus Bildern von Katzen und Hunden. Die vollständigen Daten werden auch andere Tiere wie Vögel oder Fische enthalten, die ebenfalls identifiziert werden sollen. Es ist ganz klar, dass der Algorithmus nicht gut funktionieren wird, da der Bereich der Testdaten den Bereich der Trainingsdaten bei weitem übersteigt.

In den meisten Fällen ist die Diskrepanz zwischen den Trainingsdaten und den neuen Daten jedoch weniger offensichtlich. Für ein konkretes Beispiel nehmen wir einen numerischen Datensatz mit zwei Variablen, einer Eingangsvariable (x) und einer Zielvariable (y). Dabei soll die lineare Abhängigkeit der beiden Variablen modelliert werden, indem der Wert von y für ein gegebenes x vorhergesagt wird. Der Datensatz besteht aus Datenpunkten in einem Bereich von x zwischen 10 und 40 und zwischen 60 und 80 (siehe untenstehende Grafik, gelbe Datenpunkte).

Wie verhält sich das Modell, das für diese Daten trainiert wurde und nun für neue Daten angewendet wird, die in die Lücke von 40 bis 60 fallen? Das Ergebnis hängt stark vom Modell ab. Einige Modelle sind vielleicht in der Lage, gut zu interpolieren, andere werden sinnlose Vorhersagen liefern. Beispielsweise lernt ein Regressionsmodell eine Formel, die angewendet wird. Falls die Formel in unbekannten Datenbereich gültig ist, kann das Modell gute Vorhersagen machen. Ein Entscheidungsbaum hingegen hat nichts über das Verhalten außerhalb des Bereichs der Trainingsdaten gelernt und sagt einfach den Wert des Datenpunktes voraus, der dem neuen Datenpunkt am nächsten liegt. Leider geben die Modelle standardmäßig nicht an, wie zuverlässig die einzelnen Vorhersagen sind. Ein erster Schritt wäre z.B. die Angabe, ob ein Datenpunkt im Bereich der Trainingsdaten liegt oder außerhalb.

 

Unzureichende Datenqualität

Das zweite Beispiel ist eine Aufgabe zur Klassifizierung von seltenen Ereignissen. Ein Klassifizierungsalgorithmus wird darauf trainiert, zwischen zwei Klassen, A und B, zu unterscheiden. Die Klasse A kommt sehr häufig vor, während die andere, B, recht selten ist. Dieses Beispiel könnte aus der Erkennung von Kreditkartenbetrug stammen, bei dem einige wenige illegale Transaktionen (hier Klasse B) in Daten eingebettet sind, die meistens normal sind (Klasse A). Nehmen wir an, dass 2% aller Ereignisse Betrug sind.

Ein entsprechendes Modell wurde auf diese Art von Daten trainiert und wird auf ungesehene Daten angewendet. Es ist sehr gut in der Lage, neue Ereignisse vom Typ A zu klassifizieren. Allerdings erkennt es kein einziges Ereignis der Klasse B. Stattdessen werden sie fälschlicherweise ebenfalls als Klasse A betrachtet. Das Modell zeigt eine Genauigkeit von 98%, was zunächst sehr gut klingt. Allerdings ist die Vorhersagewahrscheinlich für Ereignisse der Klasse B bei 0, da keines dieser Ereignisse korrekt gekennzeichnet wurde. Das Modell hat somit seinen Zweck vollständig verfehlt.

Einer der Gründe dafür könnte in der Qualität der Trainingsdaten liegen, die möglicherweise nicht gut genug ist. Dies kann der Fall sein, wenn die Daten besonders verrauscht und asymmetrisch sind. Das zugrundeliegende Muster, das es erlaubt, die wenigen seltenen Ereignisse der Klasse B von der großen Menge der Ereignisse aus Klasse A zu unterscheiden, ist innerhalb des allgemeinen Rauschens nicht sichtbar. Das bedeutet, dass die vorliegenden Trainingsdaten für die Fragestellung nicht repräsentativ sind. Eine Verbesserung der Datenqualität könnte hier helfen, indem z.B. besser unterscheidbare Ereignissen gesammelt werden oder durch Bereinigung der Daten oder Rauschreduktion.

 

Irreführende Kennzahlen

Die üblichen Metriken, die zur Beurteilung der Modellgüte berechnet werden, sind der RMSE (mittlerer quadratischer Fehler) und der MAE (mittlerer absoluter Fehler):

bezeichnet die Anzahl der Datenpunkte, y die Zielvariable und  die Vorhersage.

Im folgenden Beispiel werden zwei Modelle mit einem kleinen Set an Datenpunkten verglichen, bei dem die Zielvariable y um Null schwankt (s. Abbildung). Das erste Modell sagt den Mittelwert aller Datenpunkte voraus, der 0 ist. Das zweite Modell stellt eine Sinuskurve dar.

Für beide Modelle ist der entsprechende RMSE 1 und MAE 0, die Modelle sind jedoch bei weitem nicht identisch. Welches Modell beschreibt die Daten korrekt? Ohne weitere Informationen über die Daten ist dies nicht klar. Wenn die Daten aus einem bestimmten Grund schwanken, wie z.B. die Lufttemperatur, die einmal am Tag und einmal in der Nacht gemessen wird, dann erfasst das erste Modell dies nicht. Wenn die Schwankungen völlig zufällig sind, dann hat das zweite Modell die Daten deutlich überinterpretiert.

 

Fazit

Diese Beispiele zeigen nur einige der Fallstricke auf, die bei naiver Entwicklung von Black-Box Modellen auftreten können. Offensichtlich gibt es noch viele weitere, z.B. die manchmal große Menge an Hyperparametern, die für die meisten Modellen notwendigt sind, da sie den Algorithmus steuern und kalibrieren. Die Parameter auf die passenden Werte zu setzen ist jedoch nicht intuitiv.

Abschließend soll der folgende Leitfaden dabei helfen, einige Stolpersteine bei der Modellierung zu umgehen.

  1. Abdeckung der Trainingsdaten: Die Trainingsdaten sollten den gesamten für den Anwendungsfall zu erwartenden Datenbereich abdecken. Andernfalls sollte das Modell in der Lage sein, gut auf die unbekannten Regionen zu extrapolieren oder zu interpolieren.
  2. Datenqualität: Modelle, die auf verrauschten und/oder asymmetrischen Daten trainiert werden sollen, können durch eine vorangestellte Bereinigung der Daten deutlich verbessert werden. Dabei sind die Methoden aus der Ausreißererkennung, Glättung (Rauschen) oder Resampling (asymmetrische Daten) hilfreich.
  3. Wahl des Modells: Bei der Auswahl des Modelltyps sollten die grundlegenden Annahmen des Modells berücksichtigt werden. So ist z.B. ein lineares Modell, wie die Regression, nur gültig, um eine lineare Abhängigkeit zwischen Eingangs- und Zielvariable zu modellieren. Wechselwirkungen zwischen verschiedenen Eingangsvariablen werden dabei nicht berücksichtigt.
  4. Hyperparametertuning: Die Hyperparameter des Modells können die Leistung erheblich beeinflussen. Beispielsweise kann Overfitting, also eine zu detaillierte Anpassung an die Trainingsdaten, durch die Anpassung bestimmter Hyperparameter verhindert werden. Leider erfordert diese Aufgabe eine Menge Wissen über die Hyperparameter und viel Rechenleistung und Zeit, um möglichst viele Kombinationen von Hyperparametern zu testen.
  5. Validierung der Ergebnisse: Es ist entscheidend, sich nicht nur auf die wichtigsten Performance-Metriken zu verlassen, sondern auch einen Blick auf die Vorhersagen selbst zu werfen. Residuen- und Zeitreihendarstellungen bei temporalen Daten können immens hilfreich sein.

Und wie immer ist ein sorgfältiger und skeptischer Blick auf alles eine guter Anfang.

Haben Sie weitere Fragen? Wir beraten Sie gerne: marketing@avato.net

Impressum: 
Datum: Dezember 2019
Autor: Verena Baussenwein
Kontakt: marketing@avato.net
www.avato-consulting.com
© 2019 avato consulting ag
All Rights Reserved.