Nowe narzędzie ułatwia użytkownikom baz danych wykonywanie skomplikowanych analiz statystycznych danych tabelarycznych bez konieczności wglądu w to, co dzieje się za kulisami.

GenSQL, generatywny system sztucznej inteligencji dla baz danych, może pomóc użytkownikom tworzyć prognozy, wykrywać anomalie, odgadywać brakujące wartości, naprawiać błędy lub generować syntetyczne dane za pomocą zaledwie kilku naciśnięć klawiszy.

Przykładowo, gdyby system wykorzystano do analizy danych medycznych pacjenta, który zawsze miał wysokie ciśnienie krwi, mógłby on wykryć zaniżone ciśnienie krwi u tego konkretnego pacjenta, ale mieszczące się w normie.

GenSQL automatycznie integruje tabelaryczny zbiór danych i generatywny probabilistyczny model sztucznej inteligencji, który może uwzględniać niepewność i dostosowywać proces podejmowania decyzji na podstawie nowych danych.

Ponadto GenSQL można wykorzystać do tworzenia i analizowania danych syntetycznych, które naśladują rzeczywiste dane w bazie danych. Może to być szczególnie przydatne w sytuacjach, w których nie można udostępniać poufnych danych, takich jak dokumentacja medyczna pacjentów lub gdy rzeczywiste dane są rozproszone.

To nowe narzędzie zbudowano w oparciu o język programowania SQL służący do tworzenia i obsługi baz danych, który wprowadzono pod koniec lat 70. ubiegłego wieku i z którego korzystają miliony programistów na całym świecie.

„Historycznie rzecz biorąc, SQL uczył świat biznesu, co może zrobić komputer. Nie musieli pisać niestandardowych programów, musieli tylko zadawać pytania do bazy danych w języku wysokiego poziomu. Uważamy, że gdy przejdziemy od zwykłego przeszukiwania danych do zadawania pytań do modeli i danych, będziemy potrzebować analogicznego języka, który nauczy ludzi spójnych pytań, jakie można zadać komputerowi, który ma probabilistyczny model danych” — mówi Vikash Mansinghka ’05, MEng ’09, PhD ’09, starszy autor artykułu wprowadzającego GenSQL oraz główny naukowiec badawczy i lider Probabilistic Computing Project w MIT Department of Brain and Cognitive Sciences.

Gdy badacze porównali GenSQL do popularnych podejść opartych na sztucznej inteligencji do analizy danych, odkryli, że nie tylko było szybsze, ale także dawało dokładniejsze wyniki. Co ważne, modele probabilistyczne używane przez GenSQL są wyjaśnialne, więc użytkownicy mogą je czytać i edytować.

„Patrzenie na dane i próba znalezienia znaczących wzorców poprzez użycie kilku prostych reguł statystycznych może spowodować pominięcie ważnych interakcji. Naprawdę chcesz uchwycić korelacje i zależności zmiennych, które mogą być dość skomplikowane, w modelu. Dzięki GenSQL chcemy umożliwić dużej grupie użytkowników wyszukiwanie danych i modeli bez konieczności znajomości wszystkich szczegółów” — dodaje główny autor Mathieu Huot, naukowiec badawczy w Department of Brain and Cognitive Sciences i członek Probabilistic Computing Project.

Dołączyli do nich Matin Ghavami i Alexander Lew, studenci studiów podyplomowych MIT; Cameron Freer, naukowiec badawczy; Ulrich Schaechtle i Zane Shelby z Digital Garage; Martin Rinard, profesor MIT w Department of Electrical Engineering and Computer Science i członek Computer Science and Artificial Intelligence Laboratory (CSAIL); oraz Feras Saad ’15, MEng ’16, PhD ’22, adiunkt na Carnegie Mellon University. Badania zostały niedawno zaprezentowane na konferencji ACM Conference on Programming Language Design and Implementation.

Łączenie modeli i baz danych

SQL, co oznacza Structured Query Language, to język programowania służący do przechowywania i manipulowania informacjami w bazie danych. W SQL ludzie mogą zadawać pytania o dane, używając słów kluczowych, np. sumując, filtrując lub grupując rekordy bazy danych.

Jednak zapytanie modelu może zapewnić głębsze spostrzeżenia, ponieważ modele mogą uchwycić, co dane oznaczają dla danej osoby. Na przykład programistka, która zastanawia się, czy jest niedopłacana, prawdopodobnie bardziej interesuje się tym, co dane o wynagrodzeniu oznaczają dla niej indywidualnie, niż trendami z rekordów bazy danych.

Naukowcy zauważyli, że SQL nie zapewnia efektywnego sposobu na włączanie probabilistycznych modeli sztucznej inteligencji, a jednocześnie podejścia wykorzystujące modele probabilistyczne do wyciągania wniosków nie obsługują złożonych zapytań do baz danych.

Aby wypełnić tę lukę, stworzyli GenSQL, umożliwiając użytkownikowi wykonywanie zapytań zarówno na zbiorach danych, jak i w modelu probabilistycznym, przy użyciu prostego, ale potężnego formalnego języka programowania.

Użytkownik GenSQL przesyła swoje dane i model probabilistyczny, które system automatycznie integruje. Następnie może uruchamiać zapytania na danych, które również otrzymują dane wejściowe z modelu probabilistycznego działającego w tle. To nie tylko umożliwia bardziej złożone zapytania, ale może również zapewnić dokładniejsze odpowiedzi.

Na przykład zapytanie w GenSQL może wyglądać mniej więcej tak: „Jakie jest prawdopodobieństwo, że programista z Seattle zna język programowania Rust?”. Samo spojrzenie na korelację między kolumnami w bazie danych może nie uwzględniać subtelnych zależności. Włączenie modelu probabilistycznego może uchwycić bardziej złożone interakcje.

Ponadto modele probabilistyczne GenSQL są audytowalne, więc ludzie mogą zobaczyć, jakich danych model używa do podejmowania decyzji. Ponadto modele te dostarczają miary skalibrowanej niepewności wraz z każdą odpowiedzią.

Przykładowo, jeśli przy użyciu tej skalibrowanej niepewności ktoś zapyta model o przewidywane wyniki różnych metod leczenia raka u pacjenta należącego do grupy mniejszościowej, która jest niedostatecznie reprezentowana w zbiorze danych, GenSQL poinformuje użytkownika, że ​​wyniki są niepewne, oraz poda stopień niepewności, zamiast z przesadną pewnością siebie opowiadać się za niewłaściwym sposobem leczenia.

Szybsze i dokładniejsze wyniki

Aby ocenić GenSQL, badacze porównali swój system do popularnych metod bazowych, które wykorzystują sieci neuronowe. GenSQL był od 1,7 do 6,8 razy szybszy od tych podejść, wykonując większość zapytań w ciągu kilku milisekund, a jednocześnie dostarczając dokładniejsze wyniki.

Zastosowali również GenSQL w dwóch studiach przypadku: w pierwszym system zidentyfikował błędnie oznaczone dane z badań klinicznych, a w drugim wygenerował dokładne dane syntetyczne, które uchwyciły złożone zależności w genomice.

Następnie badacze chcą szerzej zastosować GenSQL do przeprowadzenia modelowania populacji ludzkich na dużą skalę. Dzięki GenSQL mogą generować syntetyczne dane, aby wyciągać wnioski na temat takich rzeczy, jak zdrowie i pensja, kontrolując jednocześnie, jakie informacje są wykorzystywane w analizie.

Chcą również, aby GenSQL był łatwiejszy w użyciu i bardziej wydajny, dodając nowe optymalizacje i automatyzację do systemu. Na dłuższą metę badacze chcą umożliwić użytkownikom wykonywanie zapytań w języku naturalnym w GenSQL. Ich celem jest ostateczne opracowanie eksperta AI podobnego do ChatGPT, z którym można by porozmawiać o dowolnej bazie danych, który opiera swoje odpowiedzi na zapytaniach GenSQL.

Badania te są częściowo finansowane przez Agencję Zaawansowanych Projektów Badawczych w Obszarze Obronności (DARPA), Google i Fundację Rodziny Siegel.



Source link