Ein neues Software erleichtert Datenbankbenutzern die Durchführung komplizierter statistischer Analysen tabellarischer Daten, ohne dass sie wissen müssen, was hinter den Kulissen vor sich geht.
GenSQL, ein generatives KI-System für Datenbanken, könnte Benutzern dabei helfen, mit nur wenigen Tastenanschlägen Vorhersagen zu treffen, Anomalien zu erkennen, fehlende Werte zu erraten, Fehler zu beheben oder synthetische Daten zu generieren.
Würde das System beispielsweise zur Analyse der medizinischen Daten eines Patienten eingesetzt, der schon immer unter Bluthochdruck litt, könnte es einen Blutdruckwert ermitteln, der bei dem betreffenden Patienten zwar niedrig ist, ansonsten aber im normalen Bereich liegt.
GenSQL integriert automatisch einen tabellarischen Datensatz und ein generatives probabilistisches KI-Modell, das Unsicherheiten berücksichtigen und die Entscheidungsfindung auf der Grundlage neuer Daten anpassen kann.
Darüber hinaus kann GenSQL verwendet werden, um synthetische Daten zu erzeugen und zu analysieren, die die realen Daten in einer Datenbank nachahmen. Dies kann insbesondere in Situationen nützlich sein, in denen vertrauliche Daten nicht weitergegeben werden können, wie z. B. Patientenakten, oder wenn reale Daten spärlich sind.
Dieses neue Software basiert auf SQL, einer Programmiersprache zum Erstellen und Bearbeiten von Datenbanken, die Ende der 1970er Jahre eingeführt wurde und von Millionen Entwicklern weltweit verwendet wird.
„Historisch hat SQL der Geschäftswelt beigebracht, was ein Laptop kann. Sie mussten keine benutzerdefinierten Programme schreiben, sondern nur in einer höheren Programmiersprache Fragen an eine Datenbank stellen. Wir glauben, dass wir, wenn wir von der bloßen Datenabfrage zur Befragung von Modellen und Daten übergehen, eine analoge Sprache benötigen, die den Menschen die zusammenhängenden Fragen beibringt, die sie einem Laptop stellen können, der ein probabilistisches Modell der Daten hat“, sagt Vikash Mansinghka ’05, MEng ’09, PhD ’09, leitender Autor eines Papier zur Einführung in GenSQL und leitender Forschungswissenschaftler und Leiter des Probabilistic Computing Undertaking in der Abteilung für Gehirn- und Kognitionswissenschaften des MIT.
Als die Forscher GenSQL mit gängigen, KI-basierten Ansätzen zur Datenanalyse verglichen, stellten sie fest, dass es nicht nur schneller conflict, sondern auch genauere Ergebnisse lieferte. Wichtig ist, dass die von GenSQL verwendeten Wahrscheinlichkeitsmodelle erklärbar sind, sodass Benutzer sie lesen und bearbeiten können.
„Wenn man sich die Daten ansieht und versucht, mithilfe einiger einfacher statistischer Regeln aussagekräftige Muster zu finden, übersieht man möglicherweise wichtige Interaktionen. Man möchte in einem Modell die Korrelationen und Abhängigkeiten der Variablen erfassen, die recht kompliziert sein können. Mit GenSQL möchten wir einer großen Anzahl von Benutzern ermöglichen, ihre Daten und ihr Modell abzufragen, ohne alle Particulars kennen zu müssen“, fügt Hauptautor Mathieu Huot hinzu, ein Wissenschaftler in der Abteilung für Gehirn- und Kognitionswissenschaften und Mitglied des Probabilistic Computing Undertaking.
An dem Papier beteiligen sich Matin Ghavami und Alexander Lew, MIT-Studenten, Cameron Freer, ein Wissenschaftler, Ulrich Schaechtle und Zane Shelby von Digital Storage, Martin Rinard, ein MIT-Professor in der Abteilung für Elektrotechnik und Informatik und Mitglied des Laptop Science and Synthetic Intelligence Laboratory (CSAIL), sowie Feras Saad (Abschlussjahr 2015, MEng 2016, PhD 2022, Assistenzprofessor an der Carnegie Mellon College. Die Forschungsergebnisse wurden kürzlich auf der ACM-Konferenz zum Entwurf und zur Implementierung von Programmiersprachen vorgestellt.
Modelle und Datenbanken kombinieren
SQL steht für Structured Question Language und ist eine Programmiersprache zum Speichern und Bearbeiten von Informationen in einer Datenbank. In SQL können Benutzer mithilfe von Schlüsselwörtern Abfragen zu Daten stellen, beispielsweise durch Summieren, Filtern oder Gruppieren von Datenbankeinträgen.
Die Abfrage eines Modells kann jedoch tiefere Einblicke liefern, da Modelle erfassen können, was Daten für eine Einzelperson bedeuten. Eine Entwicklerin, die sich beispielsweise fragt, ob sie unterbezahlt ist, interessiert sich wahrscheinlich eher dafür, was Gehaltsdaten für sie persönlich bedeuten, als für Developments aus Datenbankeinträgen.
Den Forschern fiel auf, dass SQL keine effektive Möglichkeit bot, probabilistische KI-Modelle einzubinden. Gleichzeitig unterstützten Ansätze, die probabilistische Modelle zur Schlussfolgerung nutzen, jedoch keine komplexen Datenbankabfragen.
Um diese Lücke zu schließen, haben sie GenSQL entwickelt, das es ermöglicht, sowohl einen Datensatz als auch ein Wahrscheinlichkeitsmodell mithilfe einer einfachen, aber leistungsstarken formalen Programmiersprache abzufragen.
Ein GenSQL-Benutzer lädt seine Daten und sein Wahrscheinlichkeitsmodell hoch, die das System automatisch integriert. Anschließend kann er Abfragen für Daten ausführen, die auch Eingaben vom Wahrscheinlichkeitsmodell erhalten, das im Hintergrund ausgeführt wird. Dies ermöglicht nicht nur komplexere Abfragen, sondern kann auch genauere Antworten liefern.
Eine Abfrage in GenSQL könnte beispielsweise lauten: „Wie wahrscheinlich ist es, dass ein Entwickler aus Seattle die Programmiersprache Rust kennt?“ Wenn man nur die Korrelation zwischen Spalten in einer Datenbank betrachtet, können subtile Abhängigkeiten übersehen werden. Durch die Einbindung eines Wahrscheinlichkeitsmodells können komplexere Interaktionen erfasst werden.
Darüber hinaus sind die Wahrscheinlichkeitsmodelle, die GenSQL verwendet, überprüfbar, sodass Benutzer sehen können, welche Daten das Modell zur Entscheidungsfindung verwendet. Darüber hinaus bieten diese Modelle zusammen mit jeder Antwort kalibrierte Unsicherheitsmaße.
Wenn beispielsweise mit dieser kalibrierten Unsicherheit das Modell nach den prognostizierten Ergebnissen verschiedener Krebsbehandlungen für einen Patienten aus einer im Datensatz unterrepräsentierten Minderheitengruppe abgefragt wird, teilt GenSQL dem Benutzer mit, dass und wie unsicher die Unsicherheit ist, anstatt allzu selbstsicher die falsche Behandlung zu befürworten.
Schnellere und genauere Ergebnisse
Um GenSQL zu evaluieren, verglichen die Forscher ihr System mit gängigen Basismethoden, die neuronale Netzwerke verwenden. GenSQL conflict zwischen 1,7 und 6,8 Mal schneller als diese Ansätze, führte die meisten Abfragen in wenigen Millisekunden aus und lieferte dabei genauere Ergebnisse.
Sie haben GenSQL auch in zwei Fallstudien angewendet: In einer davon identifizierte das System falsch gekennzeichnete Daten aus klinischen Studien und in der anderen generierte es genaue synthetische Daten, die komplexe Zusammenhänge in der Genomik erfassten.
Als nächstes wollen die Forscher GenSQL breiter anwenden, um groß angelegte Modelle menschlicher Populationen durchzuführen. Mit GenSQL können sie synthetische Daten generieren, um Rückschlüsse auf Dinge wie Gesundheit und Gehalt zu ziehen und gleichzeitig kontrollieren, welche Informationen in der Analyse verwendet werden.
Sie möchten GenSQL außerdem benutzerfreundlicher und leistungsfähiger machen, indem sie dem System neue Optimierungen und Automatisierungen hinzufügen. Langfristig möchten die Forscher es Benutzern ermöglichen, Abfragen in natürlicher Sprache in GenSQL zu stellen. Ihr Ziel ist es, irgendwann einen ChatGPT-ähnlichen KI-Experten zu entwickeln, mit dem man über jede beliebige Datenbank sprechen kann und der seine Antworten auf GenSQL-Abfragen stützt.
Diese Forschung wird zum Teil von der Protection Superior Analysis Tasks Company (DARPA), Google und der Siegel Household Basis finanziert.