Nutzung von LLMs für effiziente Annotation von tabellarischen Daten
Dieses Papier zeigt eine Methode, wie man LLMs nutzen kann, um tabellarische Daten mit minimalem Aufwand von Menschen zu annotieren.
― 15 min Lesedauer
Inhaltsverzeichnis
Tabellarische Daten sind überall in unserem Alltag und online, aber das Labeln dieser Daten hat oft viel menschlichen Aufwand erfordert, was es schwer macht, sie für maschinelles Lernen zu skalieren. Dieses Papier präsentiert eine neue Methode, wie wir grosse Sprachmodelle (LLMs) nutzen können, um tabellarische Daten zu verstehen und zu labeln.
Mit unserer Methode können wir schnell und einfach eine riesige Menge an tabellarischen Daten labeln. Wir können anpassen, wie das Labeling basierend auf spezifischen Bedürfnissen erfolgt und zeigen das mit Beispielen wie SQL-Abfrageerstellung und Identifizierung von Eingabe-Ziel-Spalten in Tabellen. Wir teilen einen Datensatz namens AnnotatedTables, der 32.119 Datenbanken mit durch LLMs erstellten Annotationen enthält. Das umfasst 405.616 gültige SQL-Programme und macht ihn zum grössten SQL-Datensatz, der mit tabellarischen Daten verknüpft ist und Abfragetests ermöglicht.
Um zu zeigen, wie nützlich unsere Methoden und unser Datensatz sind, haben wir zwei Folgeuntersuchungen durchgeführt.
Wir haben untersucht, ob LLMs SQL-Programme in eine andere Programmiersprache namens Rel umwandeln können, die LLMs vorher nicht gelernt hatten, während sie immer noch die gleichen Ergebnisse erzielen. Durch Anpassung unserer Eingabeaufforderungen basierend auf Feedback zur Ausführung haben wir herausgefunden, dass LLMs mit nur wenigen Beispielen anständige Übersetzungen machen können.
Wir haben bewertet, wie gut ein neuronales Netzwerkmodell, TabPFN, bei 2.720 Tabellen mit Eingabe-Ziel-Spalten, die von LLMs identifiziert und labelt wurden, abschnitt. Insgesamt schnitt TabPFN ähnlich ab wie ein Basisverfahren, aber die Ergebnisse konnten von einer Datentabelle zur anderen stark variieren, sodass beide Modelle je nach Situation nützlich sein können.
Unsere Arbeit zeigt, wie effektiv LLMs sein können, um den Prozess des Labelns grosser Mengen vielfältiger tabellarischer Daten zu optimieren.
Tabellarische Daten sind eine der häufigsten Datenformen und werden in Bereichen wie Finanzen, Gesundheitswesen und Marketing verwendet. Das tabellarische Format ermöglicht es uns, strukturierte Daten in relationalen Datenbanken zu organisieren. Maschinenlernmodelle können die Daten dann verstehen und SQL-Abfragen für diese Datenbanken erstellen, und LLMs sind zu einer Schlüsselmethode in diesem Bereich geworden. Jüngste Studien zeigen, dass LLMs in der Lage sind, SQL mit gut formulierten Eingabeaufforderungen zu generieren, aufgrund der riesigen Menge an Open-Source-SQL-Code, auf dem sie trainiert wurden.
Allerdings reicht SQL-Code allein nicht aus, um alle Herausforderungen des tabellarischen maschinellen Lernens zu bewältigen. Zum Beispiel, wenn wir testen, wie gut ein Modell Text in SQL übersetzen kann, sind sowohl die tabellarischen Daten als auch der SQL-Code nötig, um die Erfolgsquote zu messen. Während wir vielleicht genügend SQL-Code oder tabellarische Daten haben, kann es ziemlich herausfordernd sein, beides gleichzeitig zu sammeln.
Dieses Problem führt zu dem, was wir das Problem der Annotation tabellarischer Datensätze nennen. Frühere beliebte Datensätze wie WikiSQL und Spider haben begrenzte Grössen, weil die Methoden, auf denen sie annotiert wurden, nicht skalieren, um die riesigen Mengen an tabellarischen Daten oder SQL-Code, die online verfügbar sind, auszunutzen. WikiSQL sammelt seine tabellarischen Daten aus Wikipedia, einer eingeschränkten Quelle, die die Komplexität realer tabellarischer Daten nicht erfasst. Ihre SQL-Programme werden manuell über einen Dienst namens Amazon Mechanical Turk annotiert, und in WikiSQL fragt jedes SQL-Programm nur eine Tabelle zur Zeit ab, ohne Tabellen zu verbinden.
Im Gegensatz dazu umfasst Spider komplexere Abfragen über mehrere Tabellen, aber es stützt sich auch auf eine kleine Gruppe von College-Studenten für die Annotationen. Menschliche Annotation ist teuer und zeitaufwendig, was es schwierig macht, diese Datensätze zu erweitern.
Jüngste Arbeiten haben gezeigt, dass LLMs erfolgreich SQL-Code aus Anweisungen generieren können, was uns dazu gebracht hat zu überlegen, ob LLMs auch andere Arten von Daten labeln und teure menschliche Annotationen für tabellarische Datensätze ersetzen können. Inspiriert von der Fähigkeit der LLMs, mehrere Aufgaben zu erfüllen, sehen wir Potenzial darin, das Problem der Annotation tabellarischer Datensätze anzugehen.
Dieses Papier stellt AnnotatedTables vor, einen grossangelegten tabellarischen Datensatz, der mit LLM-Annotationen gefüllt ist. Um den Engpass zeitaufwendiger menschlicher Annotationen zu vermeiden, verwenden wir LLMs, um tabellarische Daten zu interpretieren und synthetische Labels zu erzeugen. Unser Datensatz umfasst verschiedene tabellarische Daten, die in realen Anwendungen gesehen werden, und ist gleichzeitig allgemein genug für andere Datenquellen.
Durch sorgfältiges Design der Eingabeaufforderungen leiten wir LLMs an, SQL-Code ohne vorherige Beispiele zu erstellen, und dieser Ansatz hat sich als schnell und kosteneffektiv erwiesen, um einen umfassenden Datensatz ohne menschlichen Aufwand aufzubauen. Um die Qualität des von den LLMs generierten SQL-Codes sicherzustellen, validieren wir ihn, indem wir die Abfragen auf den tabellarischen Daten ausführen und die Ergebnisse dieser generierten SQL-Abfragen bestätigen.
AnnotatedTables ist jetzt die grösste Sammlung ausführbarer SQL-Codes, die mit den entsprechenden tabellarischen Daten verknüpft sind. SQL-Programme sind nicht die einzigen Annotationen, die LLMs bereitstellen können. Einige Tabellen-Spalten können als Eingabe für Vorhersagen dienen, und LLMs können verwendet werden, um diese Eingabe-Ziel-Beziehungen zu identifizieren, sodass sie für die tabellarische Klassifikation nutzbar werden.
Unsere Arbeit zeigt, wie LLMs den Prozess der Erstellung tabellarischer Datensätze vereinfachen und automatisieren können. Um die Nützlichkeit und Qualität unseres Datensatzes zu validieren, führten wir zwei zusätzliche Studien durch. Zuerst untersuchten wir die Fähigkeit von LLMs, eine neue Programmiersprache durch Beispiele zu lernen. Zweitens haben wir die Bewertung eines neuartigen Klassifikationsmodells, TabPFN, mit vielfältigen realen Daten hochskaliert. Beide Studien heben hervor, wie LLM-Annotationen unseren Datensatz anpassen können, um spezifische Forschungsziele zu erreichen.
Zusammenfassend sind die Hauptbeiträge unserer Arbeit wie folgt:
- Wir präsentieren Methoden, die In-Context-Learning mit LLMs nutzen, um eine grosse Menge an realen tabellarischen Daten zu verstehen und zu annotieren, und begegnen damit effektiv den Herausforderungen traditioneller menschlicher Annotationen.
- Wir führen einen bereichsübergreifenden Datensatz, AnnotatedTables, ein, der derzeit der grösste SQL-Datensatz mit ausführbaren tabellarischen Daten ist.
- Wir bewerten die Qualität der von LLMs generierten Annotationen umfassend im Laufe unserer Forschung und zeigen das Forschungspotenzial von AnnotatedTables durch zwei Folgeuntersuchungen.
- Wir führen eine Technik namens Inkrementelles Prompt-Engineering ein, um LLMs beizubringen, SQL in Rel-Programme mit ausreichender Genauigkeit zu übersetzen, selbst für eine Sprache, die die LLMs zuvor nicht erlernt hatten.
- Wir nutzen die identifizierten Eingabe-Ziel-Spalten, die von LLMs annotiert wurden, um die Leistung von TabPFN bei verschiedenen Aufgaben der tabellarischen Klassifikation zu bewerten.
Im Abschnitt zu verwandten Arbeiten diskutieren wir die Schnittstelle zwischen Datenbanksystemen und Deep Learning. Sprachmodelle können darauf trainiert werden, SQL-Abfragen aus natürlichen Sprachbeschreibungen zu generieren. Darüber hinaus können neuronale Netzwerke verwendet werden, um die Anzahl der durch Abfragen zurückgegebenen Zeilen zu schätzen und Optimierungen umzusetzen. Weitere datenbankbezogene Deep-Learning-Anwendungen umfassen Abfrageantwortung und Anomalieerkennung.
All diese Bereiche könnten von einem grossen Multi-Domain-Datensatz wie AnnotatedTables profitieren. Die LLM-Annotationen können genutzt werden, um grosse Trainingsdatensätze im tabellarischen Format zu erwerben, die für Aufgaben wie Text-zu-SQL-Generierung und Kardinalitätsschätzung von entscheidender Bedeutung sind. Die Unterstützung unseres Datensatzes für die Ausführung von Abfragen ist notwendig für diese Aufgaben, um ihre Genauigkeit zu validieren.
Derzeit verlassen sich die meisten gängigen SQL-Datensätze auf menschliche Annotationen, während unser Ansatz der erste ist, der einen tabellarischen Datensatz erstellt, der von LLMs annotiert wurde. Diese Innovation ermöglicht es uns, ein bedeutendes Volumen an Annotationen zu generieren, die dem entsprechen oder sogar über das hinausgehen, was im Internet verfügbar ist. Während bestehende SQL-Datensätze oft englische Beschreibungen enthalten, bewerten oder garantieren wir deren Qualität nicht, da SQL-Programme durch Ausführung validiert werden können, während englische Beschreibungen das nicht können.
LLMs wurden auch zuvor auf Datenannotation in Textfeldern angewendet und schneiden oft besser ab als menschliche Annotatoren. Sie können schädliche Sprache erkennen und natürliche Sprach-Erklärungen als notwendige Annotationen liefern. Ausserdem werden LLMs zur Bewertung der natürlichen Sprachgenerierung verwendet, was eng mit menschlichen Bewertungen übereinstimmt.
Beim Aufbau unseres Datensatzes begannen wir mit dem Sammeln öffentlicher tabellarischer Daten. Unser Ziel war es, in den Reichtum unannotierter Daten, die online verfügbar sind, einzutauchen und uns auf kuratierte Tabellen aus praktischen Datenwissenschaftsanwendungen zu konzentrieren. Wir fanden heraus, dass Kaggle, eine Datenwissenschaftsplattform, unsere Kriterien gut erfüllt. Kaggle hostet Tabellen, die von einer Gemeinschaft von Datenenthusiasten und Fachleuten crowdsourced werden. Nutzer können Datensätze zu einer Vielzahl von realen Themen teilen und analysieren.
Bewertungen und Einblicke von Nutzern tragen zur Kuratierung von nutzbaren und zuverlässigen Daten bei. Obwohl individuelle Kaggle-Datensätze in früheren Forschungen untersucht wurden, fasst unser Ansatz sie aggregiert zusammen und untersucht sie kollektiv, wodurch eine beträchtliche und vielfältige Sammlung von qualitativ hochwertigen Daten sichtbar wird. Mithilfe von Kaggle's öffentlicher API suchten wir nach Datensätzen zwischen 10 Megabyte und 1 Gigabyte, um eine schnellere Datensammlung und -verarbeitung zu gewährleisten. Wir sorgten auch dafür, dass jeder Datensatz eine Mindestbewertungsnote für die Nutzbarkeit erfüllte, um minderwertige Datensätze herauszufiltern. Insgesamt sammelten wir 70.000 Kaggle-Datensätze zur weiteren Verarbeitung.
Die Methode, die wir verwendet haben, um Daten mit LLMs zu annotieren, ist sowohl flexibel als auch automatisiert und kann potenziell auf andere Quellen ausserhalb von Kaggle-Datensätzen angewendet werden.
Um LLMs bei der Interpretation tabellarischer Daten zu unterstützen, entwickelten wir eine textuelle Beschreibung für jede Datenbank als Teil der Eingabeaufforderung. Da die Verwendung ganzer Tabellen in einer Eingabeaufforderung möglicherweise die Eingabebegrenzungen der LLMs überschreitet, entschieden wir uns für kürzere Beschreibungen, die das grundlegende Schema und Beispielzeilen enthalten. Das Schema beschreibt die Struktur der Tabelle, listet den Tabellennamen, die Spaltennamen und den Datentyp jeder Spalte auf.
Um das Schema zu extrahieren, entdeckten wir, dass tabellarische Daten in CSV-Dateien innerhalb der Kaggle-Datensätze gespeichert waren. Da CSV-Dateien keine Tabellennamen enthalten, verliessen wir uns auf die Dateinamen zu diesem Zweck. Die Kopfzeile der CSV-Dateien lieferte die Spaltennamen. Unsere erste Inspektion ergab, dass die Spaltennamen und Dateinamen in der Regel klar und beschreibend sind, was es dem LLM erleichtert, die Informationen der Tabelle zu interpretieren.
Eine bestehende Datenanalyse-Software namens pandas wurde verwendet, um die Tabellen zu laden und die Datentypen der Spalten zu ermitteln. Unsere Methode zur Schemaextraktion erwies sich als effektiv und praktisch. Einige Kaggle-Datensätze könnten mehrere Tabellen enthalten, was die Erstellung mehrerer Schemata erforderlich macht. Zusammen beschreiben diese Schemata die Struktur der Datenbank und geben an, wie viele Tabellen vorhanden sind, welche Spalten und Typen innerhalb dieser Tabellen existieren und ob eine Spalte möglicherweise als JOIN-Schlüssel dient.
Beispielzeilen aus der Tabelle sind ebenfalls entscheidend, da sie es den LLMs ermöglichen, SQL-Abfragen effektiv zu konstruieren, wie zum Beispiel WHERE-Anweisungen, um Daten zu filtern. Zum Beispiel in einer Abfrage wie SELECT * FROM CUSTOMERS WHERE COUNTRY='MEXICO'
können der Tabellenname und die Spaltennamen aus dem Schema abgeleitet werden, während der Wert 'MEXICO' in einer Tabellenzeile zu finden ist. Daher liefern wir Beispielzeilen neben dem Schema, damit die LLMs WHERE-Anweisungen in SQL präzise erstellen können.
Für die Beispielzeile wählten wir die erste Zeile jeder Tabelle und wandten sie in ein textuelles Format für das LLM um. Unsere Schema- und Beispielzeilendefinitionen sind ausreichend breit, sodass sie für nahezu alle Formen von tabellarischen Daten verwendet werden können.
Durch Zero-Shot-Learning leiteten wir die LLMs an, SQL-Code zu generieren, der unsere gesammelten Tabellen abfragt, was eine der Annotationstypen ist. Derzeit ist OpenAIs ChatGPT eines der effizientesten LLMs für verschiedene Aufgaben, und wir haben uns entschieden, es als unser Annotation-LLM zu verwenden.
Beim Generieren von SQL für jede Datenbank erstellen wir eine Eingabeaufforderung, die Anweisungen, das Datenbankschema und die Beispielzeile aus jeder Tabelle enthält. Die Anweisung fordert das LLM auf, SQL-Abfragen "zu erstellen, die typische Benutzer schreiben könnten, um auf diese Datenbank zuzugreifen." Ausserdem wird um komplexere Abfragen gebeten, um den Wert des Datensatzes zu erhöhen, insbesondere wird dazu ermutigt, mehr JOINs zu erstellen, wenn mehrere Tabellen verfügbar sind.
Für jeden Kaggle-Datensatz mit tabellarischen Daten forderten wir das LLM auf, fünfzehn SQL-Programm-Annotationen zusammen mit Erklärungen in natürlicher Sprache zu generieren.
Einige generierte SQL-Programme könnten falsch sein, daher haben wir ein System eingerichtet, um die Qualität dieser Annotationen zu überprüfen. Da AnnotatedTables Zugang zu den tabellarischen Daten hat, validierten wir die SQL-Programme, indem wir sie ausführten. Wenn ein SQL-Programm ausgeführt wird und nicht leere Ergebnisse zurückgibt, betrachten wir es als gültig. Programme, die leere Ergebnisse zurückgeben, werden als solche gekennzeichnet. Um genaue Vergleiche während unserer Folgeuntersuchung zur SQL-zu-Rel-Übersetzung zu gewährleisten, verwenden wir keine SQL-Abfragen, die leere Ergebnisse zurückgeben.
Wir haben in unserer Forschung anerkannt, dass wir die von den LLMs generierten englischen Beschreibungen nicht validieren. Alle Zwischen-Datenarten werden als Teil von AnnotatedTables öffentlich gemacht.
Bei der Untersuchung der Qualität der Annotationen fanden wir heraus, dass LLMs SQL-Programme, die die menschliche Intention effektiv widerspiegeln, erstellen konnten. Wir fanden einen hohen Prozentsatz (82,25 %) gültiger SQL-Programme, was auf eine insgesamt gute Qualität hinweist. Das LLM konnte komplexe Abfragen mit einer Reihe von SQL-Komponenten erstellen.
In nahezu allen Kategorien von SQL-Komponenten, ausser JOINs, überstiegen die Prozentsätze gültiger Abfragen 50 %. JOIN-Abfragen erreichten jedoch nur eine Gültigkeitsrate von 49,47 %, was möglicherweise auf ein tieferes Verständnis oder Programmierkenntnisse beim Verknüpfen mehrerer Tabellen hindeutet.
Wir stellten fest, dass bestimmte einfache SQL-Anweisungen häufig auftauchten, wie SELECT * FROM table
, die einen grossen Teil (48,4 %) der gültigen SQL-Programme ausmachten. Während diese Anweisungen gültig sind, sind sie weniger informativ als kompliziertere Abfragen für weiteres Lernen.
In unseren Eingabeaufforderungen leiteten wir das LLM an, SQL-Programme "mit relativ hoher Komplexität" zu erstellen, was teilweise erfolgreich war. Allerdings kann das widersprüchliche Ziel, komplexe und korrekte Abfragen zu erstellen, dazu führen, dass LLMs einfachere Abfragen erzeugen, um die Genauigkeit zu wahren.
Wie gezeigt, können ungültige SQL-Annotationen aus verschiedenen Gründen entstehen. Manchmal erstellt das LLM nicht existierende Tabellennamen oder lässt Platzhaltertext stehen, oder in einigen CSV-Dateien können Spaltennamen numerisch sein, was in SQL-Abfragen ungültig ist. Darüber hinaus können einige korrekte SQL-Programme leere Ergebnisse zurückgeben, werden aber für die Messung der Ausführungsgenauigkeit als ungültig gekennzeichnet.
Wir nutzten AnnotatedTables, um die Fähigkeit der LLMs zu untersuchen, eine neue Programmiersprache, Rel, zu lernen.
Da es nur wenige Beispiele für Open-Source-Rel-Code gibt, wandten wir uns dem Few-Shot-In-Context-Learning als natürliche Lösung zu. Obwohl ICL untersucht wurde, ist die Übersetzung zwischen zwei unterschiedlichen Programmiersprachen eine einzigartige Forschungsherausforderung.
Alle SQL-Programme in AnnotatedTables sind ausführbar, was es ermöglicht, die Übersetzungsgenauigkeit effektiv zu bewerten. Die SQL-Programme ahmen die typische Datenbanknutzung nach, und die Übersetzung dieser Abfragen ermöglicht es uns, einen umfangreichen Datensatz von Rel-Programmen zu erstellen, der für nachfolgende Forschungen wertvoll ist.
Beim Lernen einer neuen Programmiersprache kann es herausfordernd sein, genug Trainingsdaten zu bekommen. Unsere Ergebnisse zeigen, dass die Übersetzungsgenauigkeit mit mehr In-Context-Beispielen kontinuierlich steigt und mit 45 Übersetzungsbeispielen etwa 40 % Genauigkeit erreicht wird.
Um die Aufgabe der SQL-zu-Rel-Übersetzung zu formulieren, beginnen wir mit einem ausführbaren SQL-Programm, das auf einer bestimmten Tabelle arbeitet. Unser Ziel ist es, ein Modell zu entwickeln, das das SQL-Programm in ein Rel-Programm übersetzt und sicherstellt, dass beide beim Ausführen auf derselben Tabelle die gleichen Abfrageergebnisse liefern.
Die Ausführungsgenauigkeit misst, wie oft die übersetzten SQL- und Rel-Programme die gleichen nicht-leeren Ergebnisse erzeugen. Allerdings kann es schwierig sein, SQL- und Rel-Programme direkt zu vergleichen, aufgrund inhärenter Sprachunterschiede.
Um die Übersetzungsfähigkeiten zu verbessern, führten wir eine Technik namens Inkrementelles Prompt-Engineering (IPE) ein, die Ausführungsfeedback verwendet, um die gelernten Übersetzungsbeispiele zu verfeinern. Wir begannen mit einigen anfänglichen SQL-zu-Rel-Übersetzungsbeispielen und wiesen das Sprachmodell an, ungesehene SQL-Programme zu übersetzen und für jeden Schritt die Ausführungsgenauigkeit zu berechnen.
Das Feedback ermöglicht es uns, zu identifizieren, wo das LLM bei der Übersetzung versagt, und diese Beispiele in die nächste Trainingsrunde aufzunehmen, wobei wir die Anzahl der Beispiele stetig erhöhen, bis wir eine zufriedenstellende Übersetzungsgenauigkeit erreichen.
Durch den IPE-Prozess stellten wir fest, dass die Übersetzungsgenauigkeit sich verbesserte, während wir mehr Beispiele hinzufügten. Sobald wir 30 Beispiele überschritten, boten weitere Beispiele abnehmende Renditen und die Genauigkeit konvergierte um die 40 %.
Für unsere Bewertung von TabPFN verwendeten wir AnnotatedTables, um seine Klassifikationsleistung bei vielen unterschiedlichen Datensätzen zu testen. TabPFN ist eine neue Art von neuronalen Netzwerk, das mit synthetischen Daten aus einem bayesianschen Prior trainiert wurde.
Sobald es trainiert ist, verarbeitet es alle Daten auf einmal und macht Vorhersagen in einem einzigen Vorwärtsdurchlauf. Angesichts seiner fortschrittlichen Ergebnisse in kleineren Benchmarks waren wir neugierig, wie TabPFN sich gegenüber den Komplexitäten realer tabellarischer Daten schlagen würde.
TabPFN wird mit Standardmethoden und ein paar führenden AutoML-Frameworks verglichen, wobei verschiedene Datensätze verwendet werden, um seine Robustheit zu bewerten. Während wir unsere Bewertung auf 2.720 Klassifikationsprobleme ausweiten, gehen wir weit über die früheren Benchmarks hinaus.
In unserem experimentellen Setup behalten wir die gleichen Parameter wie die ursprünglichen Autoren von TabPFN bei und trainieren AutoGluon mit einem Zeitbudget von ein oder fünf Minuten, wobei wir die Daten nur einmal pro Tabelle aufteilen, um Zeit zu sparen.
Wir verlassen uns auf die LLM-Annotationen, um geeignete Eingabe- und Zielspalten innerhalb der Kaggle-Datensätze für TabPFN zu identifizieren. Dieser Prozess stellt sicher, dass die Eingabespalten numerisch sind, während das Ziel kategorisch für eine effektive Klassifikation ist.
In unseren Ergebnissen zeigt TabPFN eine solide Leistung bei den 2.720 getesteten Klassifikationsproblemen, mit einigen signifikanten Ergebnissen im Vergleich zu AutoGluon, was zeigt, dass LLMs Eingabe-Ziel-Spalten und die tabellarische Struktur präzise identifizieren können, die für effektive Klassifikationsaufgaben erforderlich ist.
Schliesslich hat die Verwendung von AnnotatedTables das Potenzial von LLMs hervorgehoben, wie wir maschinelles Lernen Datensätze erstellen. Die Fähigkeit, LLMs zur Automatisierung des Annotationprozesses zu nutzen, kann die Kosten senken und es Forschern erleichtern, die massgeschneiderten Daten zu erhalten, die sie für ihre spezifischen Projekte benötigen, und neue Wege in der Datenwissenschaft zu eröffnen.
Titel: AnnotatedTables: A Large Tabular Dataset with Language Model Annotations
Zusammenfassung: Tabular data is ubiquitous in real-world applications and abundant on the web, yet its annotation has traditionally required human labor, posing a significant scalability bottleneck for tabular machine learning. Our methodology can successfully annotate a large amount of tabular data and can be flexibly steered to generate various types of annotations based on specific research objectives, as we demonstrate with SQL annotation and input-target column annotation as examples. As a result, we release AnnotatedTables, a collection of 32,119 databases with LLM-generated annotations. The dataset includes 405,616 valid SQL programs, making it the largest SQL dataset with associated tabular data that supports query execution. To further demonstrate the value of our methodology and dataset, we perform two follow-up research studies. 1) We investigate whether LLMs can translate SQL programs to Rel programs, a database language previously unknown to LLMs, while obtaining the same execution results. Using our Incremental Prompt Engineering methods based on execution feedback, we show that LLMs can produce adequate translations with few-shot learning. 2) We evaluate the performance of TabPFN, a recent neural tabular classifier trained on Bayesian priors, on 2,720 tables with input-target columns identified and annotated by LLMs. On average, TabPFN performs on par with the baseline AutoML method, though the relative performance can vary significantly from one data table to another, making both models viable for practical applications depending on the situation. Our findings underscore the potential of LLMs in automating the annotation of large volumes of diverse tabular data.
Autoren: Yaojie Hu, Ilias Fountalis, Jin Tian, Nikolaos Vasiloglou
Letzte Aktualisierung: 2024-06-24 00:00:00
Sprache: English
Quell-URL: https://arxiv.org/abs/2406.16349
Quell-PDF: https://arxiv.org/pdf/2406.16349
Lizenz: https://creativecommons.org/licenses/by/4.0/
Änderungen: Diese Zusammenfassung wurde mit Unterstützung von AI erstellt und kann Ungenauigkeiten enthalten. Genaue Informationen entnehmen Sie bitte den hier verlinkten Originaldokumenten.
Vielen Dank an arxiv für die Nutzung seiner Open-Access-Interoperabilität.