Im Folgenden wird ein grober Überblick über die in der ProDaMi-Suite (Softwarepaket) implementierten Data Mining-Methoden gegeben. Eine Data Mining-Analyse lässt sich in folgende Bereiche unterteilen:
Im Folgenden wird ein grober Überblick über die in der ProDaMi-Suite (Softwarepaket) implementierten Data Mining-Methoden gegeben. Eine Data Mining-Analyse lässt sich in folgende Bereiche unterteilen:
Die Aussagekraft des Ergebnisses einer datenbasierten Analyse eines Produktions- oder Fertigungsprozesses hängt klarerweise entscheidend von der Qualität der verwendeten Daten ab. Das Erzeugen von Daten hinreichender Qualität aus den im Prozess erfassten ist das Ziel der Datenvorverarbeitung. Welche Schritte dazu unternommen werden müssen ist im Einzelnen stark vom Kontext abhängig. Im Folgenden werden die Hauptaktivitäten kurz erläutert. Ganz allgemein ist zu sagen, dass die Datenvorverarbeitung häufig den größten Zeitanteil an einem Data Mining Projekt beansprucht. Prinzipiell kommen alle über den betrachteten Produktions- bzw. Fertigungsprozess erfassten Daten als Informationsquelle für die Analyse in Frage. Nun stammen diese in der Regel aus unterschiedlichen Quellen: Angefangen von den regelmäßig erfassten, automatisch gespeicherten Messergebnissen eines Sensors an der Produktionsanlage bis zu nur schriftlich festgehaltenen Angaben zu den verwendeten Ausgangsmaterialien kann alles vorkommen. Dies umfasst auch das Vorliegen elektronischer Daten in unterschiedlichen Formaten und Datenbanksystemen. Es entsteht also die Notwendigkeit alle relevanten Daten in ein im Wesentlichen einheitliches, elektronisches Format zu überführen. Um hierbei wirtschaftlich zu bleiben, ist es notwendig eine Vorauswahl der Daten nach ihrer Relevanz für das angestrebte Ziel durchzuführen. Klare Zielsetzungen gegebenenfalls auch zeitlich gegliedert (kurz-/mittel-/langfristig) sind daher von grundlegender Bedeutung. Bislang wurde unterstellt, dass über den betrachteten Prozess Daten in ausreichendem Umfang vorhanden sind oder erfasst werden. Dies muss nicht so sein. Es kann sich bereits während der Diskussion der Ziele eines Data Mining Projektes herausstellen, dass zur Zielerreichung mehr Daten als bisher erfasst werden müssen oder dass der Erfassungsvorgang geändert werden muss. Dies kann unter Umständen auch erst während der Datenanalyse selbst klar werden mit entsprechenden Konsequenzen für das Projekt. Nach dem Zusammenführen der relevanten Daten in ein gemeinsames Format müssen qualitative Mindestanforderungen sichergestellt werden. In diesem Zusammenhang können beispielsweise die folgenden Aktivitäten notwendig sein: - Behandeln von unvollständigen Datensätzen: Solche Datensätze können beispielsweise aus der Analyse ausgeschlossen werden, die fehlenden Komponenten können jedoch auch mit Hilfe statistischer Verfahren künstlich ergänzt werden. - Behandeln von Ausreißern: In numerischen Daten können Werte vorkommen, die sehr stark von den üblichen abweichen, und die wahrscheinlich durch Unregelmäßigkeiten im Messvorgang selbst erzeugt wurden. Wie unvollständige Datensätze müssen auch Ausreißer gesondert behandelt werden, da sie die Analyseergebnisse verzerren können. - Glätten: Hierunter versteht man ganz allgemein das Vermindern von systematischen Rauscheinflüssen auf ein Mess-Signal. Schließlich muss der Problematik unterschiedlicher Datenerfassungsintervalle Rechnung getragen werden: Messdaten eines Sensors werden in kürzeren Zeitintervallen erfasst als manuell ermittelte Qualitätseigenschaften des Endproduktes. Im Hinblick auf die Datenanalyse kann es sinnvoll sein die mit hoher Frequenz ermittelten Daten auf Zeitintervalle zu komprimieren, die mit denen der restlichen Daten vergleichbar sind. Dieses Vorgehen hat den zusätzlichen Vorteil das zu verarbeitende Datenvolumen zu verringern. Die zu wählende Art der Datenkompression hängt nun bereits stark damit zusammen, welche Data Mining Verfahren man in der Folge anwenden möchte, beziehungsweise in welchen Merkmalen der Datensätze die für die Zielsetzung relevante Information steckt. Es findet also ein fließender Übergang der Datenvorverarbeitung in den eigentlichen Data Mining Prozess statt, der auch zu einer Rückkopplung führen kann: Die Ergebnisse des Data Mining können darauf hindeuten, dass die Daten in anderer Form geglättet werden müssen oder dass eine zu weitgehende Datenkompression stattgefunden hat. In der Folge müssen dann Schritte der Datenvorverarbeitung überprüft und gegebenenfalls revidiert werden.
Zur Detektion von Prozessmustern aus Produktionsdaten ist es in der Regel nicht sinnvoll, die reinen Messdaten einer Produktion zu verwenden. Möchte man beispielsweise instationäre Prozessphasen (z.B. Anfahrphasen oder Arbeitspunktwechsel) analysieren, ist es notwendig informative Merkmale aus den Daten zu extrahieren, welche die jeweilige Prozessphase einer Produktion beschreiben. Da davon ausgegangen werden muss, dass in den Originalzeitreihen Informationen versteckt sein könnten, welche nicht ohne weiteres extrahiert werden können, bietet es sich an, durch das Berechnen von Ableitungen oder durch physikalische Gleichungen (Softsensoren) weitere Informationen zu generieren. Zudem sollte vor der Extraktion von Merkmalen eine Segmentierung der Messdaten erfolgen. Hierbei besteht das Ziel darin, spezielle Bereiche der Zeitreihen auszuwählen, welche große Informationen bezüglich des Prozessverhaltens besitzen. Das Splitten der Messreihen kann dazu anhand von a priori vorhandenem Wissen erfolgen, oder, sofern kein Wissen vorhanden ist, durch vordefinierte Zeitfenster. Im nächsten Schritt erfolgt dann die letztendlich Extraktion der Merkmale. Bei den extrahierten Merkmalen kann es sich um einfach zu interpretierende Größen handeln (z. B. Maxima oder Minima der jeweiligen Zeit-Segmente). Die Merkmale können aber auch aus schwerer zu interpretierenden Werten bestehen (z.B. Frequenzeigenschaften). Da das resultierende Muster allerdings später interpretiert werden muss, sollten möglichst einfach zu interpretierende und zugleich informationstragende Merkmale ausgewählt werden. In der ProDaMi-Suite wurden Verfahren implementiert, die ein automatisiertes Ranking der wesentlichen Prozess-Merkmale gestatten. Dabei kann in einem iterativen Verfahren vorhandenes Expertenwissen eingebracht werden.
Zum Entdecken von unbekannten Zusammenhängen in komplexen Prozessen werden sogenannte unüberwachte maschinelle Lernverfahren eingesetzt. Im Vergleich zu Verfahren, welche versuchen, Zusammenhänge in Messdaten zu beschreibenden, wird bei unüberwachten Lernverfahren kein Gütemaß verwendet, um die Güte des erlernten Zusammenhanges zu bewerten. Klassische Beispiele hierfür sind Cluster-Algorithmen, Entscheidungsbäume oder Bayes-Netze. Diese Verfahren haben alle gemeinsam, (Unter-) Gruppen in den Daten zu erkennen und dadurch die vorhandenen, aber bisher nicht bekannten Zusammenhänge sichtbar machen. Verfahren, welche Zusammenhänge entdecken können, bieten zudem unterschiedliche Darstellungsformen an. Beispielsweise liefern Clusteralgorithmen eine Einteilung der Messdaten in Klassen, Bayesnetze beispielsweise stellen die Abhängigkeit der einzelnen Messgrößen in Form von Graphen dar. Beispiele für das Entdecken von Zusammenhängen: - Erkennen von physikalischen Wirkzusammenhängen: Wenn z.B. Reaktionsmechanismen in Prozessen unbekannt sind oder nur unter erschwerten Bedingungen die Möglichkeit besteht, diese Zusammenhänge zu messen, so können diese z.T. mit Data-Mining-Methoden entdeckt werden. - Entdecken von Zusammenhängen mittels Assoziationsregeln: Hierbei wird nach Regeln gesucht, welche Beziehungen zwischen zwei oder mehr unterschiedlichen Variablen in der Form, Wenn Variable A Wert x, besitzt, dann besitzt Variable B den Wert y beschreiben. Assoziationsregeln werden beispielsweise dazu eingesetzt Fehlerketten zu erkennen und zu analysieren.
Verfahren zum Beschreiben von gefundenen oder vermuteten Zusammenhängen in Daten lassen sich in in zwei Klassen unterteilen: »Beschreiben von Zusammenhängen zwischen kontinuierlichen Größen« und »Klassen von Daten beschreiben«. Einige wichtige Verfahren werden im Folgenden kurz beschrieben:
Viele der in einem Produktions- oder Fertigungsprozess erfassten Größen sind numerisch und können prinzipiell alle Werte in einem bestimmten Werteintervall annehmen. Die quantitative Beschreibung der Abhängigkeit einer solchen kontinuierlichen Größe von anderen Größen derselben Art ist eine der Hauptaufgaben des Data Mining. Sie wird als Regression oder Regressionsanalyse bezeichnet. Im Anwendungsbeispiel Unterstützung der Prozessführung eines Aquifergasspeichers wurde die Regressionsanalyse genutzt, um den Wasseranfall des Gases w bei der Ausspeisung in Abhängigkeit zur gesamten Gasmenge s im Speicher durch eine mathematische Funktion zu beschreiben. Durch die Eingabe einer Speichermenge s in die Funktion erhält man den Wasseranfall w=f(s) für eine Sonde. ximg:Regression.jpg Die Abhängigkeit selbst wird in Form einer mathematischen Funktion angegeben. Dazu wird innerhalb einer vom Anwender gewählten Klasse von Funktionen mit Hilfe eines Regressionsverfahrens eine Funktion bestimmt, die vorliegende Daten bestmöglich widerspiegelt. Diese Funktion wird häufig als Modell der Daten bezeichnet. Die Daten bestehen aus einer Menge von Datensätzen, wobei zusammengehörige Werte der betrachteten Prozessparameter jeweils die Komponenten eines Datensatzes bilden. Je nach Einsatzgebiet kann der Anwender ein Modell zu folgenden Zwecken verwenden:
Es existiert eine erhebliche Anzahl von Regressionsverfahren. Aus Anwendersicht unterscheiden sie sich unter anderem in folgenden Punkten:
Hier werden einige wichtige Regressionsverfahren kurz beschrieben:
Die lineare Regression - das Modell ist eine lineare Funktion von Prozessparametern - gehört zu den theoretisch und praktisch am Besten ausgearbeiteten Verfahren und existiert in mehreren Varianten. Allen gemeinsam ist die Möglichkeit einer detaillierten Modellanalyse, die es erlaubt den Einfluss spezifischer Prozessparameter auf die abhängige Größe quantitativ zu erfassen. Mit Hilfe einer schrittweisen Variante können vorab die statistisch relevanten Einflussparameter bestimmt werden, eine Möglichkeit die zu betrachtende Datenmenge zu reduzieren. Die vorausgesetzte Linearität der Modellfunktion stellt eine erhebliche Einschränkung des Anwendungsbereiches dar. Die lineare Regression kann jedoch gegebenenfalls auch in prinzipiell nicht-linearen Prozessen eingesetzt werden, in dem man den Wertebereich der zu modellierenden abhängigen Größe in Bereiche zerlegt, in denen näherungsweise Linearität vorliegt.
In der polynomialen Regression sind als Modelle Polynomfunktionen von Prozessparametern zulässig, was einen erheblich breiteren Anwendungsbereich garantiert, aber auch höhere Anforderungen an die notwendige Datenmenge stellt als die lineare Regression. Mittels polynomialer Regression können Interaktionen zwischen Prozessparametern erfasst werden: Die oben als Beispiel betrachtete Wandstärke beim Glasziehen hängt möglicherweise derart von der Glastemperatur und der Abzugsgeschwindigkeit ab, dass schnelles Abziehen bei hohen Temperaturen zu ähnlichen Wandstärken führt wie langsames Abziehen bei niedrigen Temperaturen. In diesem Fall muss das Produkt beider Größen in das Modell aufgenommen werden, was bei linearer Regressionsfunktion unmöglich wäre. Im Produktions- und Fertigungskontext werden im Regelfall Interaktionen zwischen höchsten drei Größen berücksichtigt, wodurch die Komplexität der zu betrachtenden Regressionsfunktionen beschränkt wird. Die so entstehenden Modelle werden auch als Response-Surface-Modelle bezeichnet und sind für die Anwendung der Versuchsplanung (siehe unten) gut geeignet, was wiederum das Problem hinreichend großer Datenmengen etwas entschärft. Hinsichtlich der Modellanalysemöglichkeiten sind lineare und polynomiale Regression annähernd gleichwertig. Die klassische polynomiale Regression besitzt Schwächen: Sie neigt beispielsweise am Rand des durch die Daten abgedeckten Wertebereichs zu im Vergleich mit den Daten unerwartetem Verhalten (z.B. Überschwingen). Dies kann zwar durch Modifikationen des Regressionsverfahrens korrigiert werden, häufig ist es aber Erfolg versprechender in einer geeigneten Klasse anderer als polynomialer Regressionsfunktionen nach einem Modell zu suchen.
Nichtlineare parametrische Regression: Diese Art der Regression wird nur dann angewendet, wenn man aufgrund von Kontext-/Expertenwissen bereits klare Vorstellungen zum Typ der Modellfunktion besitzt und anhand der Daten nur ein Feintuning durchgeführt werden soll. Die zu bestimmende Modellfunktion wird in Form einer Gleichung mit gewissen wählbaren Parametern vom Anwender vorgegeben und die Parameter werden dann mit Hilfe eines Optimierungsverfahrens so festgelegt, dass die vorliegenden Daten möglichst gut dargestellt werden. Das dabei zu nutzende Optimierungsverfahren muss ebenfalls vom Anwender gewählt werden und kann je nach Modelltyp komplex und rechenzeitintensiv sein.
Neuronale Netze stellen eine leistungsfähige und elegante Form der nichtlinearen Regression dar. Die Modellfunktion wird durch einen automatischen, durch die vorliegenden Daten getriebenen Lernprozess das so genannte Training ermittelt. Sie liegt nur implizit im neuronalen Netz selbst kodiert vor. Der Typ der Modellfunktion sowie der Lernprozess selbst lassen sich falls gewünscht in erheblichem Umfang vom Anwender über entsprechende Einstellungen des Regressionsverfahrens beeinflussen. Alternativ können diese Einstellungen auch datengetrieben automatisch erfolgen. In jedem Fall lassen sich mit Hilfe neuronaler Netze auch komplexe Zusammenhänge bei entsprechender Datenlage mit hoher Güte darstellen. Allerdings ist eine detaillierte Analyse der Modellfunktion wie im Fall der polynomialen Regression in der Regel nicht möglich. Neuronale Netze haben die Eigenschaft der Nachtrainierbarkeit: Hat man ein neuronales Netz mit bestimmten Datensätzen trainiert und so ein Modell erhalten und erweitert man nun die Datenmenge, so kann man das bereits vorliegende trainierte Netz mit den neu hinzugekommenen Datensätzen nachtrainieren und das vorliegende Modell verbessern. Ein solches Vorgehen ist bei den anderen hier aufgeführten Verfahren in der Regel nicht möglich. Neuronale Netze sind im Vergleich also sehr rechenzeiteffizient. Das kann eine Rolle bei sehr großen Datenmengen oder sehr komplexen Datensätzen spielen.
Klassen (oder Gruppen) von Daten treten zum Beispiel in der Qualitätskontrolle der Endprodukte eines Produktionsprozesses auf. Betrachtet man etwa die Extrusion von Kunststoffprofilen, so wird in einer visuellen Endkontrolle unter Umständen die Farbhomogenität der zugeschnittenen Profile überprüft und grob in drei Klassen eingeteilt: homogen , akzeptable Inhomogenitäten und Ausschuss . Die während der Produktion eines bestimmten Profilstückes erfassten Prozessparameter wie z.B. Geschwindigkeit der Extruderschnecke, eingestellte Heiztemperatur, Hersteller und Art des verwendeten Kunststoffgranulats, Hersteller und Art des verwendeten Farbstoffs bilden einen Datensatz, der die Prozessparameter und die Qualitätsmerkmale als Komponenten besitzt. Die Gesamtheit aller Datensätze zerfällt im Hinblick auf die Farbhomogenität in drei Klassen, die durch Ausprägung der Homogenität bestimmt sind.
Für die Qualitätskontrolle stellen sich folgende grundlegende Fragen:
Es geht also darum die drei Qualitätsklassen (in Bezug auf die Farbhomogenität) mittels der Werte der Prozessparameter zu beschreiben und gegeneinander abzugrenzen. Diesen Prozess bezeichnet man allgemein als Klassifikation, die zur Abgrenzung der einzelnen Klassen verwendeten mathematischen Bedingungen als Klassifikationsregeln, da sie zur Bestimmung der wahrscheinlichen Qualitätsklasse bei gegebenen Prozessparameterwerten benutzt werden können. Sieht man von dem gerade betrachteten Szenario aus der Qualitätskontrolle ab, so kann das Erstellen von Klassifikationsregeln immer in folgender Situation angewendet werden: Es liegt eine Menge von Datensätzen mit gleichen Komponenten vor. Eine der Komponenten enthält die Ausprägungen einer kategoriellen Größe. Die Datensätze werden so in Klassen eingeteilt, dass innerhalb einer Klasse die kategorielle Größe denselben Wert hat. Die Klassifikationsregeln können nun prinzipiell dazu verwendet werden den Wert der kategoriellen Größe aus den Werten der restlichen Datensatzkomponenten zu bestimmen. Im Bereich des Data Mining sind eine Vielzahl von Verfahren entwickelt worden, mit deren Hilfe man Klassenbeschreibungen aus einer hinreichend großen Menge von Datensätzen gewinnen kann.
Sie unterscheiden sich unter anderem in diesen für den Anwender relevanten Punkten:
Im Folgenden werden die wichtigsten Verfahren zur Beschreiben von Klassen oder Gruppen von Daten kurz charakterisiert:
Bei der Nächste-Nachbarn-Methode beruht die Zuordnung eines Datensatzes zu einer Klasse auf der Betrachtung aller Datensätze in seiner Nähe : Gehören diese überwiegend zu einer bestimmten Klasse, so wird auch der gerade betrachtete derselben Klasse zugeordnet. Das Verfahren ist also einfach zu interpretieren; leider lassen sich im Allgemeinen die Klassengrenzen aber nur schlecht quantitativ analysieren. Das Verfahren ist robust und kann prinzipiell für alle Datentypen verwendet werden. Allerdings muss im Fall kategorieller Prozessgrößen vom Nutzer ein passender Nachbarschaftsbegriff definiert werden, was die Anwendung in diesem Fall unhandlich machen kann.
Die lineare Diskriminanzanalyse eignet sich in erster Linie für die Beschreibung und Untersuchung numerischer Daten, wobei die Klassifikationsregeln vom mathematisch einfachsten Typ sind. Das hat einerseits den Vorteil der Robustheit gegenüber Störungen in den Daten, schränkt aber andererseits den Anwendungsbereich ein. Die lineare Diskriminanzanalyse gibt es in verschiedenen Spielarten. Eine davon die schrittweise Diskriminanzanalyse erlaubt die Bestimmung derjenigen Prozessgrößen, die den statistisch deutlichsten Einfluss auf die Klassenzuordnung der Datensätze haben. Diese Analysemöglichkeit ist besonders nützlich, wenn in einem Produktionsprozess viele Größen erfasst werden.
Quasi-lineare Ansätze sind eine Verallgemeinerung der linearen Diskriminanzanalyse mit breiterem Anwendungsbereich. Sie stellen allerdings auch höhere Anforderungen an die notwendige Datenmenge. Ein wesentliches Merkmal dieser Verfahren ist die Möglichkeit Interaktionen zwischen Prozessgrößen zu modellieren: Die oben als Beispiel betrachtete Farbhomogenität hängt möglicherweise derart von der Drehgeschwindigkeit der Extruderschnecke und der Heiztemperatur ab, dass eine hohe Geschwindigkeit bei hoher Temperatur dieselbe Homogenität liefern wie eine bei entsprechend niedriger Temperatur langsam laufende Schnecke. Derartige Zusammenhänge können mit quasi-linearen Verfahren problemlos erfasst werden bei ansonsten mit der linearen Diskriminanzanalyse vergleichbaren Eigenschaften.
Neuronale Netze und Support-Vector-Machines sind im Hinblick auf die Komplexität möglicher Klassifikationsregeln die mächtigsten der hier aufgeführten Verfahren. Allerdings können die aus den Daten abgeleiteten Regeln im Fall neuronaler Netze nicht direkt in einfacher Form (z.B. Gleichungen, Ungleichungen) angegeben werden, da sie implizit in der Struktur des mit Daten trainierten Netzes enthalten sind. Hinzu kommt, dass die Klassifikationsregeln für beide Verfahren wegen ihrer Komplexität im Allgemeinen kaum interpretierbar sind. Man sollte diese Verfahren also dann anwenden, wenn man einerseits mit komplexen Klassifikationsregeln rechnet und eine sehr hohe Trefferquote bei der Klassifikation von Datensätzen notwendig ist, andererseits aber eine direkte Interpretation im jeweiligen Kontext keine zentrale Bedeutung hat. Neuronale Netze haben die Eigenschaft der Nachtrainierbarkeit: Hat man ein neuronales Netz mit bestimmten Datensätzen trainiert und so Klassifikationsregeln erhalten und erweitert man nun die Datenmenge, so kann man das bereits vorliegende trainierte Netz mit den neu hinzugekommenen Datensätzen nachtrainieren und die früheren Klassifikationsregeln verbessern. Ein solches Vorgehen ist bei den anderen hier aufgeführten Verfahren in der Regel nicht möglich. Neuronale Netze sind im Vergleich also sehr rechenzeiteffizient. Das kann eine Rolle bei sehr großen Datenmengen oder sehr komplexen Datensätzen spielen.
Die mittels Klassifikationsbäumen ermittelten Klassifikationsregeln lassen sich unter allen Verfahren am besten interpretieren: Sie bestehen nämlich aus logischen Kombinationen von einfachen Bedingungen an die Datensatzkomponenten hier also an die Prozessparameter. Diese Einfachheit schränkt wiederum den Anwendungsbereich ein bzw. liefert in komplexen Situationen Klassifikationsregeln mit einer eher bescheidenen Trefferquote. Hier gibt es zwar inzwischen Varianten, die diese Problematik überwinden, was aber dann wieder zu Lasten der Interpretierbarkeit geht. Ein großer Vorteil des Verfahrens ist, dass alle Datentypen direkt verarbeitet werden können. Schließlich ist ein für den Anwender etwas störendes weil nicht-intuitives Verhalten zu erwähnen: Die Verzweigungsstruktur eines aus einer bestimmten Datenmenge gewonnenen Klassifikationsbaumes kann sich auch bei einer nur moderaten Vergrößerung der Datenmenge erheblich ändern.