Relationales Data Mining ohne ILP

9

Ich habe einen riesigen Datensatz aus einer relationalen Datenbank, für den ich ein Klassifizierungsmodell erstellen muss. Normalerweise würde ich für diese Situation die induktive Logikprogrammierung (ILP) verwenden, aber aufgrund besonderer Umstände kann ich das nicht tun.

Die andere Möglichkeit, dies in Angriff zu nehmen, besteht darin, zu versuchen, die Werte zu aggregieren, wenn ich eine ausländische Beziehung habe. Ich habe jedoch Tausende von wichtigen und unterschiedlichen Zeilen für einige nominelle Attribute (z. B.: Ein Patient mit einer Beziehung zu mehreren unterschiedlichen Medikamentenverordnungen). Ich kann das einfach nicht tun, ohne ein neues Attribut für jede einzelne Zeile dieses nominalen Attributs zu erstellen, und außerdem hätten die meisten neuen Spalten NULL-Werte, wenn ich das tue.

Gibt es einen Nicht-ILP-Algorithmus, mit dem ich relationale Datenbanken abrufen kann, ohne auf Techniken wie das Schwenken zurückgreifen zu müssen, mit denen Tausende neuer Spalten erstellt werden?

user697110
quelle
2
Was ist mit Rules Mining? Mir ist nicht klar, was Ihr Ziel ist.
Adesantos
Bei einer guten Frage stelle ich fest, dass sie in mehreren Stack Exchange-Foren angezeigt wird ... stackoverflow.com/questions/24260299/… ; Nicht, dass ich ein Fan von solchen Dingen bin, aber ich denke, dass wir es nicht tun sollen
Hack-R
Es wäre auch sehr hilfreich, wenn Sie etwas genauer in Bezug auf das, was Sie klassifizieren, die Barriere, auf die Sie stoßen, und in einer idealen Welt uns einige Beispieldaten zur Verfügung stellen könnten
Hack-R

Antworten:

1

Zunächst einige Einschränkungen

Ich bin mir nicht sicher, warum Sie Ihr bevorzugtes Programmier- (Unter-) Paradigma *, die induktive Logikprogrammierung (ILP) , nicht verwenden können oder was Sie zu klassifizieren versuchen. Mehr Details zu geben würde wahrscheinlich zu einer viel besseren Antwort führen; zumal es etwas ungewöhnlich ist, sich der Auswahl von Klassifizierungsalgorithmen auf der Grundlage des Programmierparadigmas zu nähern, mit dem sie verbunden sind. Wenn Ihr Beispiel aus der realen Welt vertraulich ist, erstellen Sie einfach ein fiktives, aber analoges Beispiel.

Big Data-Klassifizierung ohne ILP

Nachdem wir ILP ausgeschlossen haben, haben wir 4 weitere logische Programmierparadigmen in unserer Überlegung:

  1. Abduktiv
  2. Antwortsatz
  3. Zwang
  4. Funktionell

Zusätzlich zu den Dutzenden von Paradigmen und Subparadigmen außerhalb der Logikprogrammierung.

Innerhalb der funktionalen Logikprogrammierung gibt es beispielsweise Erweiterungen von ILP, die als induktive funktionale Logikprogrammierung bezeichnet werden und auf der Inversionsverengung (dh der Inversion des Verengungsmechanismus) basieren. Dieser Ansatz überwindet mehrere Einschränkungen der ILP und ist ( zumindest einigen Wissenschaftlern zufolge ) für die Anwendung in Bezug auf die Repräsentation ebenso geeignet und hat den Vorteil, dass Probleme auf natürlichere Weise ausgedrückt werden können.

Ohne mehr über die Besonderheiten Ihrer Datenbank und die Hindernisse bei der Verwendung von ILP zu wissen, kann ich nicht wissen, ob dies Ihr Problem löst oder unter denselben Problemen leidet. Als solches werde ich auch einen völlig anderen Ansatz verwerfen.

ILP steht im Gegensatz zu "klassischen" oder "aussagekräftigen" Ansätzen für Data Mining . Diese Ansätze umfassen das Fleisch und die Knochen des maschinellen Lernens wie Entscheidungsbäume, neuronale Netze, Regression, Absacken und andere statistische Methoden. Anstatt diese Ansätze aufgrund der Größe Ihrer Daten aufzugeben, können Sie sich den Reihen vieler Data Scientists, Big Data-Ingenieure und Statistiker anschließen, die High Performance Computing (HPC) verwenden, um diese Methoden mit massiven Datenmengen anzuwenden (es gibt sie) Sie können auch Stichproben und andere statistische Techniken verwenden, um die Rechenressourcen und die Zeit zu reduzieren, die für die Analyse der Big Data in Ihrer relationalen Datenbank erforderlich sind.

HPC umfasst Dinge wie die Verwendung mehrerer CPU-Kerne, die Skalierung Ihrer Analyse durch die elastische Verwendung von Servern mit hohem Speicher und einer großen Anzahl schneller CPU-Kerne, die Verwendung von Hochleistungs-Data-Warehouse-Appliances, die Verwendung von Clustern oder anderen Formen des parallelen Rechnens usw. I ' Ich bin mir nicht sicher, mit welcher Sprache oder Statistiksuite Sie Ihre Daten analysieren, aber als Beispiel listet diese CRAN-Aufgabenansicht viele HPC-Ressourcen für die R-Sprache auf, mit denen Sie einen Aussagenalgorithmus skalieren können.

Hack-R
quelle