Data Extraction

3 quelloffene NLP-Tools

12.07.2023
Von 


Isaac Sacolick ist Autor des Amazon-Bestsellers "Diving Digital: The Leader's Guide to Business Transformation thourh Technology". Er schreibt als freier Autor unter anderem für unsere US-Schwesterpublikation CIO.com.

 
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.
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 kleinen, aber repräsentativen Beispiel.

  • Identifizieren Sie die Zielgruppen-Personas und wie die extrahierten Informationen deren Arbeitsabläufe optimieren.

  • Spezifizieren Sie die erforderlichen Informations-Extraktionen und die angestrebte Genauigkeit.

  • Testen Sie mehrere Ansätze und verwenden Sie Metriken zum Benchmarking.

  • Verbessern Sie die Genauigkeit iterativ, insbesondere wenn Sie den Umfang der Texte/Dokumente erhöhen.

  • Planen Sie mit Data-Stewardship-Tools für die Datenqualität und um Ausnahmen zu händeln

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.