Revision 42 vom 2011-02-19 17:35:06

Nachricht löschen

Data Mining

Data Mining als Teilbereich der KI

Data-Mining ist ein Teilbereich der Künstlichen Intelligenz (KI) in der Informartik. Data-Mining ist ein vereinfachter Begriff für Knowledge Discovery in Databases (KDD). D.h. KDD ist der Versuch aus vorhandenen Datenmassen in Datenbanken Erkenntnisse zu bekommen. Bei nicht als Datenbanken vorliegenden Texten wird dabei zuerst Text Mining betrieben.

Bei Zahlendaten ist dieses nicht anderes als ein numerisches Verfahren, d.h. mathematische Funktionen werden durch Polynome angenähert, also eine kompliziertere Version der linearen Regression.

Bei nicht numerischen Daten versucht Data-Mining ebenfalls die Daten durch eine Funktion zu approproximieren. Diese ist dann allerdings keine analytische Funktion, sondern eine abstrahierte Funktion. Diese abstrahierte Funktion wird als vorhandenes Muster in den Daten bezeichnet, welches in der Regel zu einem diskreten Wert führt.

Zum Finden der Muster oder Funktionen gibt es verschiedene Verfahren, welche je nach vorhandenen Daten ausgewählt werden müssen. Zum Finden des Musters oder der Funktion werden Methoden des Maschinelles Lernen verwendet. Dabei finden bei Data-Mining nur Methoden des induktiven Maschinellen Lernens Anwendung (deduktives Maschinelles Lernen wird für Automatisierungen verwendet).

Vorgehensweise

Teilweise werden zuerst verschiedene Datenbanken zu einer zusammengeführt, dieses wird Datawarehouse genannt. Als nächstes werden die Daten von Fehlern bereinigt. Dann werden aus den Datensätzen sogenannte Trainingsdaten ausgewählt. Dieses ist ein heikler Punkt, da bei falscher Auswahl der Trainingsdaten es zur Überanpassung und somit fehlerhaften Ergebnissen führen kann. Dann wird eine der Methoden des Data-Mining ausgewählt um die abstrahierte Funktion oder das Muster zu finden, wobei hier das Problem ist die passende Methode auszuwählen. Dafür bedarf es theoretisch die genaue Kenntnis der Methoden. Anschließend wird die gefundene Funktion mit Testdaten, die ebenfalls aus den Datensätzen stammen, überprüft und notfalls verbessert.

Methoden des Data-Mining

Klassifizierung

Bei der Statistical_classification wird versucht in den vorhandenen Daten allgemeinen Strukturen zu finden, so dass Rückschlüsse neuen Daten gezogen werden können, d.h. es wird eine Abbildungsfunktion auf einen diskreten Wert (Klasse) oder einen numerischen Funktionswert gesucht. Methoden der Klassfizierung sind u.a. Nearest Neigbour Methode, Entscheidungsbäume und Neuronale Netze.

K-Nearest Neighbor Methode

Die K-nearest_neighbor_algorithm wird auch als Lazy Learning bezeichnet, d.h. von allem vorhandenen Datensätzen werden K-Datensätzen gesucht, die den neuen Daten am ähnlichsten sind. Dabei werden bei nicht numerischen Daten abstrahierte Abstände verwendet. Die gesuchten Werte des neuen Datensatzes werden dann mit Gewichtung 1/Abstand aus den nächsten K-Datensätzen bestimmt.

Entscheidungsbäume

Beim Lernen aus Entscheidungsbäumen (Decision_tree_learning) werden die Daten in einem abstrakten Baum dargestellt, wobei jede Verästelung eine Entscheidung darstellt. Es wird dabei von der Wurzel angefangen und bei jeder Verästelung wird ein Attribut abgefragt und die nächste Verästelung ausgewählt. Diese Prozedur wird so lange fortgesetzt, bis das Baumende erreicht ist. Da es verschieden Möglichkeiten für die Bäume gibt wird per Algorithmus versucht den Kürzesten und Optimalsten (d.h. mit dem kleinsten Fehler) zu finden. Lernen aus Entscheidungsbäumen ist eines der am häufigsten benutzten Verfahren beim Data Mining.

Naive Bayes

Bei Naive_Bayes_classifier wird vereinfacht (d.h. naiv) angenommen, dass alle Attribute der Datensätze mit einer von einander unabhängigen Wahrscheinlichkeit ein Klasse oder einen Funktionswert ergeben (D.h. die Wahrscheinlichkeit mit der jeweils islamischer Glauben, technischer Studiengang, ... einen Terroristen ausmacht). So kann das Bayes Theorem in einer vereinfachten Version verwendet werden )Wenn diese vereinfachende Annahme nicht gemacht würde, wären die Ergebnisse nur durch erheblichen rechnerischen Aufwand zu erzielen). Die Werte für die unabhänig angenommenen Wahrscheinlichkeiten lassen sich dann mit Hilfe der Trainingsdaten und dem Bayes Theorem berechnen.

Künstliche Neuronale Netze

Assoziationsregeln

Beim Association_rule_learning werden die gegenseitige Abhängigkeit von Attributen mit Hilfe von Wahrscheinlichkeitsrechnung bestimmt. (wie z.B. dicke Jacke, Selbstmordattentäter)

Clustering

Cluster_analysis ist das Einteilen der Datensätze in verschiedene Mengen (d.h. Clustern) mit ähnlichen Eigenschaften.

k-means Clustering

Beim k-means Clustering werden die Daten in eine vorher festgelegt Anzahl von Clustern (nämlich k) eingeteilt.

Hierachisches Clustering

Beim Hierachischen Clustern wird zuerst jeder Datensatz als ein Cluster angenommen um dann suksessiv die Anzahl der Cluster zu verkleinern.

Regression

Die Regression_analysis wird mit Hilfe von numerischen Methoden eine mehrdimensionale Funktion für die Daten approximiert.

Anwendungen von Data-Mining

SPAM Erkennung

Spam_(electronic) Erkennungsprogramm verwenden Data-Mining, dabei wird Naive Bayes verwendet. SPAM-Erkennung ist ein gutes Beispiel für das was Data Mining kann und was nicht. Es ist kein Problem für einen Menschen Mails in Spam und Nicht-Spam einzuteilen, Merkmale die in allen Spams vorkommen rauszufinden ist dagegen schwieriger. Bei Anwendung von Data Mining zur SPAM-Erkennung wurde entdeckt, dass die meisten SPAM-Mails die Zeichenfolge FF0000 enthielten, da wäre manuell niemand drauf gekommen, es ist aber logisch da es in HTML zur Erzeugung von roter Schrift dient. D.h. es ist eine Erkenntnis auf die der Mensch selber hätte kommen können, total überraschende Erkenntnisse kann Data Mining nämlich nicht liefern.

Scooring

Beim Scooring werden Entscheidungsbäume und andere Methoden der Klassifizierung verwendet um die Menschen in kredit- und nicht kreditwürdig einzuteilen.

INDECT

Im Rahmen der EU gibt es ein Projekt namens INDECT indem alle Datenbanken, alle durch Überwachungstechnik aufgezeichneten Daten und durch Software Agenten im Netz gefundenen Daten mit Hilfe von Data-Mining geplante Verbrechen a la Minority_Report vorhergesehen werden sollen.

Kritik

Von Data Mining wird häufig geglaubt, es diene dazu, Zusammenhänge automatisch zu entdecken, an die bisher noch nicht einmal jemand gedacht hat, und Fragen zu beantworten, die nicht einmal noch jemand gestellt hat (siehe auch Data Mining Mythen ). Dieses ist, wie in den meisten Bereichen der Künstlichen Intelligenz, eine Überschätzung der Fähigkeiten. Diese Überschätzung kann dazu führen, dass die Ergebnisse des Data-Minings unhinterfragt als Wahr angesehen werden. Bei falscher zielgruppenorientierter Werbung ist das für den Beworbenen erstmal lustig oder auch nur nervig. Bei negativen Scooring der Kreditwürdigkeit ist das ärgerlich, bei der falscher Verdächtigung von der Polizei kann es dann allerdings richtig unangenehm werden.

Problematik bei der Anwendung im Polizei-Bereich

Gerade im Sicherheitsbereich, wenn Data-Mining Software bei der Polizei dazu benutzt wird aus polizeiliche Datenbanken neue Erkenntnisse zu gewinnen, kann es dazu führen, dass nicht mehr ergebnissoffen in alle Richtungen ermittelt wird. Bei einem Serientäter kann es so ersten zu Problem für die Allgemeinheit werden, da so der oder die Täterin nicht gefunden wird und zweitens kann es für die eventuell Falschverdächtigten zu den üblichen Nachteilen führen. Ganz problematisch wird es allerdings, wenn geglaubt wird mittels Data Mining Prognosen über zukünftige Straftäter anstellen zu können. Da in INPOL schon Daten über Personen geführt werden, die nach Meinung der Polizei in Zukunft Straftaten begehen werden, ist es nicht unwahrscheinlich das diese Personen in Zukunft (oder jetzt schon) durch Data-Mining ausgewählt werden.

Anschauliche Erläuterung der Gefahren von Data-Mining

In einem FAZ-Artikel über Data-Mining von Frank Rieger wird die Problematik von Data-Minig sehr anschaulich beschrieben:

Die Profile sind nützlich, um uns gezielt zum Kauf von mehr nutzlosem Tand oder interessanteren Büchern zu verleiten, uns effizienter zu verwalten und zukünftiges Verhalten zu prognostizieren. Und um Menschen unter präventive Überwachung zu stellen, deren Profil sich bedenklich dem von Straftätern nähert. Dabei geht es nicht um hundertprozentige Präzision der Vorhersage. Wahrscheinlichkeiten, Neigungen, Tendenzen, Zugehörigkeit zu Kohorten sind die Währungen der algorithmischen Orakel.

Grundsätzliche Kritik an de KI

Einer der ersten und versiertesten Kritiker der Künstlichen Intelligenz Forschung ist Joseph Weizenbaum. Joseph Weizenbaum war einer der Pioniere in der Künstlichen Intelligenz Forschung. Er hat das Programm Eliza entwickelt, welches einen Psychiater symuliert. Seine Intention für das Programm war allerdings nur eine bloße Übung, wie der Computer mit Sprache umgehen kann. Zu seinem Erschrecken wurde das Programm von vielen (auch seinen Kolleg_innen und Mitarbeiter_innen) als ernste Alternative zu einem realen Psychiater angenommen. Dieses Schlüsselerlebnis hat Joseph Weizenbaum zu einem entschiedenen Warner vor den Gefahren der KI gemacht (und dem latenten Größenwahn der Wissenschaftler_innen).

Programme für Data Mining

Es gibt eine Java-Klassen Bibliothek für Data-Mining, die heißt Weka:

Weka Webseite

Das Programm KMIME ist mit dieser Bibliothek geschrieben worden:

KMIME

Weitere Infos

Grundkurs Künstliche Intelligenz von Wolfgang Ertel, Vieweg-Verlag -- bietet eine einfache und theoretisch fundierte Einführung in Künstliche Intelligenz und es gibt auch ein Kapitle zu Data Mining

Seminararbeit zu Data-Mining -- bietet eine Übersicht

Data-Mining Skript zu einer Vorlesung in Halle (pdf)

Artikel in der RHZ zu Data Mining (txt)