Robotron Datenbank-Software GmbH Prozessoptimierung durch Datenanalyse & Datenprognose mit R in der Praxis Simon Hofinger Nürnberg, 20.11.2013
Prozessoptimierung durch Datenanalyse & -prognose mit R in der Praxis
Zahlen und Fakten Robotron Datenbank-Software GmbH Gründungsjahr 1990 Mitarbeiterzahl 312 (Stand 11/2013) Stammkapital Umsatz 2012 Geschäftssitz 2,4 Mio. EUR 31,1 Mio. EUR Stuttgarter Str. 29 01189 Dresden Oracle-Partner ISO 9001 zertifiziert
Das Leistungsangebot von Robotron
Agenda Vorstellung des Business Case Datenanalyse und -prognose Modelloptimierung Verwendete Daten Integrationsmöglichkeiten
Business case Das Unternehmen Automobilzulieferer produziert Sensoren Auslöser des Projekts Für jeden Sensor müssen zur Kalibrierung Messungen an über 500 verschiedenen Messpunkten durchgeführt werden. Die Messwerte werden anschließend von einer komplizierten und schlecht zu wartenden Software ausgewertet.
Prozessoptimierung Ziel Reduzierung der Anzahl der zur Sensorkalibrierung nötigen Messpunkte Prognose der 14 vom Parameterrechner berechneten Zielvariablen in ausreichender Qualität zur korrekten Berechnung der Gänge Vorgehen Identifikation der aussagekräftigsten Messpunkte Identifikation des besten Prognosemodells
Identifikation der aussagekräftigsten Messpunkte Prozess Prozessdaten bereitstellen Unabhängige Variablen: Messungen des magnetischen Flusses an über 500 verschiedenen Messpunkten Sensorspezifische Parameter Abhängige Variablen: Sollwerte der 14 Zielvariablen
Identifikation der aussagekräftigsten Messpunkte Prozess Zugriff auf Prozessdaten über ROracle library(ore) ore.connect(user="user1",sid="sid1",host="localhost", password="***", port=1521) ore.sync() messpunkte_ore <- ore.get("messpunkte") messungen_ore <- ore.get("messungen") zielwerte_ore <- ore.get("zielwerte")
Identifikation der aussagekräftigsten Messpunkte Prozess Auswahl eines Messpunkts - Durch drei Dimensionen eindeutig bestimmt: Hebelposition (X, Y) und Luftspalt Auswahl einer Zielvariable - 14 Variablen in 3 verschiedenen Kategorien
Identifikation der aussagekräftigsten Messpunkte Prozess Datenanalyse und Prognose Schätzung eines Regressionsmodells Prüfung des Modells durch 10-fache Kreuzvalidierung Berechnung eines Gütemaßes pro Zielvariable und abschließend für den gesamten Messpunkt Übergang zum nächsten Messpunkt
Identifikation der aussagekräftigsten Messpunkte Prozess 10-fache Kreuzvalidierung
Identifikation der aussagekräftigsten Messpunkte Prozess Auswahl des besten Messpunkts Gütemaß = 14 i=1 ( Fehlerquadratsummen i )² n Standardabweichung i mit i = Zielvariable, n = Anzahl der Sensoren
Gütemaß Identifikation der aussagekräftigsten Messpunkte Prozess 21 18 15 12 9 6 3 0 1 2 3 4 5 6 7 Anzahl Messpunkte
Identifikation der aussagekräftigsten Messpunkte Prozess for(iteration in 1:number_of_iterations){ for(measurement_point in 1:number_of_measurement_points){ for(target_variable in 1:number_of_target_variables){ for(i in 1:10){ glm_model <- glm(formel, family=gaussian(link="identity"), data=dataset[dataset$partition!=i,])
Identifikation des besten Prognosemodells Für jede Zielvariable wird das Modell mit dem niedrigsten Root Mean Squared Error ermittelt: Modelle Var_1 Var_2 Generalized Linear Model 3,76 1,48 Random Forest 1,64 3,00 Support Vector Machine 1,78 2,04 Neuronal Networks 3,34 1,53 Kombinationen von Modellen können die Qualität der Prognosen weiter steigern
Identifikation des besten Prognosemodells Güte nach ASIC-Simulation 3 optimale Messpunkte (0,58% von 514): zu 97,5% die gleichen Gänge erkannt 7 optimale Messpunkte (1,36% von 514): zu 98,6% die gleichen Gänge erkannt
Identifikation des besten Prognosemodells Beispiel: Bestes gefundenes Vorgehen bei Var_1 1. Neue Prädiktoren aus vorhandenen Daten erzeugen: Quadrate Quotienten 2. Generalized Linear Model anwenden 3. Automatische Selektion der aussagekräftigsten Prädiktoren aus: Quadrate Quotienten Ergebnisse aus Schritt 2 4. Random Forest Model anwenden Ergebnis: Verbesserung des RMSE von 1,64 auf 0,95
Datenbasis Trainingsdaten Testdaten
Datenbasis Trainingsdaten: von 2011 bis 2012 Lose: 1, 2 Testdaten: von 2012 bis 2013 Lose: 2, 3
Integrationsmöglichkeiten Oracle R Enterprise bietet R Embedded Execution Bestandteil von Oracle Advanced Analytics R -Skripte werden direkt auf dem Datenbankserver ausgeführt Zwei Schnittstellen sind verfügbar: R (R, RStudio, Revolution R, etc.) SQL (SQL*Plus, SQL Developer, etc.) Oracle Data Miner bietet eigene statistische Modelle Verwendbar über die R-Schnittstelle
Integrationsmöglichkeiten Embedded Execution über die R-Schnittstelle library(ore) ore.connect(user= user1",sid= sid1",host= host1", password= ***", port=1521) ore.sync() m_points <- ore.get("messpunkte") Measurements <- ore.get("messungen") target_variables <- ore.get("zielwerte") ore.create(results_train, table = "TRAIN_SET") ore.sync(table=" TRAINING_SET ") TRAINING_SET <- ore.get(" TRAINING_SET ") ore_glm <- ore.tableapply( TRAINING_SET, function(x) { glm_t1<- glm(var1 ~ A + B + C, family=gaussian(link="identity"), data=x) }); glm_modell <- ore.pull(ore_glm) ore.predict(glm_modell, newdata = test_set)
Integrationsmöglichkeiten Verwendung des Oracle Data Miners über die R-Schnittstelle library(ore) library(rodm) ore.connect(user= user1",sid= sid1",host= host1", password= ***", port=1521) ore.sync() m_points <- ore.get("messpunkte") measurements <- ore.get("messungen") target_variables <- ore.get("zielwerte") glm_modell <- ore.odmglm(var1 ~ A + B + C, type="normal", data= training_set) ore.predict(glm_modell, newdata = test_set)
Integrationsmöglichkeiten
Besuchen Sie unseren Stand auf der DOAG Konferenz 2013! Wir freuen uns, Sie persönlich kennenzulernen! am Stand 226 auf Ebene 2
Unsere Vorträge auf der DOAG Konferenz 2013 Session Tag Zeit Raum Heiko Eitner (ZEBIT), Marco Mischke: Datenbanken Konsolidiert in der Cloud Simon Hofinger: Prozessoptimierung durch Datenanalyse & - prognose mit R in der Praxis Bobby Urland: Report-Herausforderungen mit dem BI Publisher 11g - Ein Praxisbericht Rico Haupt: OBIEE 11g Integration mit Oracle Access Manager & MS Active Directory Marco Friebe, Dirk Läderach: ODA "virtualized" - Transformation zur ISV Appliance Di 12:00 12:45 Konferenzraum EG zu Halle 7A Mi 13:00 13:45 Helsinki Do 11:00 11:45 Stockholm Do 15:00 15:45 Oslo Do 16:00 16:45 Hongkong
Referent Simon Hofinger Systemberater T: +49 30 2639292-437 simon.hofinger@robotron.de