Data Extraction

3 quelloffene NLP-Tools

12.07.2023 von Isaac Sacolick
Diese Open-Source-Tools für Natural Language Processing bringen Sie in Sachen Data Extraction weiter.
NLP-Tools unterstützen Sie dabei, Mehrwert aus unstrukturierten Daten zu generieren.
Foto: tookitook - shutterstock.com

Developer und Datenwissenschaftler nutzen Generative AI beziehungsweise Large Language Models (LLMs), um große Mengen unstrukturierter Daten abzufragen. Dabei ist es manchmal wünschenswert, Natural-Language-Processing (NLP)-Funktionen in einer Plattform oder Anwendung zu bündeln.

Beispielsweise unterstützen LLMs, Chatbots oder KI-basierte Suchmaschinen natürlichsprachliche Fragen und Interaktionen. Andere Fälle erfordern hingegen dedizierte NLP-Tools, um Informationen zu extrahieren und unstrukturierte Dokumente und Texte anzureichern.

3 quelloffene NLP-Tools

Im Folgenden werfen wir einen Blick auf drei quelloffene NLP-Tools, die unter Devs und Data Scientists beliebt sind, um unstrukturierte Daten zu erkennen und produktionsreife NLP-Engines zu entwickeln.

Natural Language Toolkit

Das Natural Language Toolkit (NLTK) wurde 2001 veröffentlicht und ist eine der beliebtesten Python-Bibliotheken im Bereich NLP. Nach Meinung von Steven Devoe, Director of Data and Analytics bei der Unternehmensberatung SPR, ist es zudem das wichtigste NLP-Tool, das unter Apache 2.0 lizenziert ist: "Bei allen Data-Science-Projekten besteht ein Großteil der Arbeit darin, Daten zu verarbeiten und zu bereinigen - insbesondere, wenn es um NLP geht. NLTK beschleunigt einen Großteil dieser Arbeit über mehrere geschriebene Sprachen hinweg. So können die Algorithmen den Text besser interpretieren."

Die Vorteile von NLTK liegen in seiner Langlebigkeit und den zahlreichen Beispielen, die Entwicklern zur Verfügung stehen, die in das Tool einsteigen möchten. Wenn Sie Natural-Language-Processing-Techniken lernen möchten, sollten Sie dieses Tool als erste Anlaufstelle nutzen. Es bietet eine einfache Möglichkeit, mit Grundlagen wie Tokenisierung, Stemming und Chunking zu experimentieren.

spaCy

spaCy ist eine neuere Bibliothek - Version 1.0 wurde im Jahr 2016 veröffentlicht. spaCy unterstützt mehr als 72 Sprachen, Performance-Benchmarks werden regelmäßig veröffentlicht.

"spaCy ist eine freie, quelloffene Python-Bibliothek, die fortschrittliche NLP-Funktionen mit hoher Geschwindigkeit auf großen Textmengen anwendet", erklärt Nikolay Manchev, Head of Data Science EMEA bei Domino Data Lab, und fügt hinzu: "Mit dem Tool können Sie Modelle und Produktionsanwendungen erstellen, die Dokumentenanalyse, Chatbots und alle anderen Formen der Textanalyse unterstützen. Das spaCy-Framework ist heute eine der populärsten Python-Bibliotheken für natürliche Sprache."

Die spaCy-Tutorials weisen ähnliche Features aus wie NLTK, einschließlich Named Entity Recognition und Part-of-Speech (POS) Tagging. Ein Vorteil: spaCy gibt Dokumentobjekte zurück und unterstützt Wortvektoren. Das ermöglicht Entwicklern mehr Flexibilität bei der Post-NLP-Datenverarbeitung und Textanalyse.

Spark NLP

Wenn Sie bereits Apache Spark verwenden und dessen Infrastruktur konfiguriert haben, ist Spark NLP ein besonders schneller Weg zu Ihrem ersten NLP-Experiment. Mehrere Installationsoptionen stehen dabei zur Wahl, darunter AWS, Azure Databricks und Docker.

Laut David Talby, CTO von John Snow Labs - dem Unternehmen hinter Spark NLP, ermöglicht die Open-Source-Bibliothek Unternehmen, Informationen und Antworten aus Freitextdokumenten mit hoher Genauigkeit zu extrahieren. Er gibt einige praktische Beispiele: "Das ermöglicht zum Beispiel, relevante Gesundheitsdaten aus handschriftlichen Notizen zu extrahieren, Hassrede in sozialen Medien zu identifizieren oder rechtliche Dokumente zusammenzufassen."

Laut Talby kann Spark NLP darüber hinaus auch dazu beitragen, den Trainingsaufwand für die Entwicklung von Modellen zu minimieren: "Die kostenlose und quelloffene Bibliothek enthält mehr als 11.000 vortrainierte Modelle und bietet die Möglichkeit, diese wiederzuverwenden, zu trainieren, abzustimmen und zu skalieren."

NLP: 6 Best Practices

Wenn Sie mit Natural Language Processing in einem neuen Bereich starten:

Beginnen Sie mit einem der hier vorgestellten Open-Source-Tools und bauen Sie Ihre NLP-Datenpipeline dann entsprechend Ihrem Budget und Ihren Anforderungen auf. (fm)

Dieser Beitrag basiert auf einem Artikel unserer US-Schwesterpublikation Infoworld.