Suchen

Definition Was ist Gensim?

Autor / Redakteur: Dipl.-Ing. (FH) Stefan Luber / Nico Litzel

Gensim ist eine Open-Source-basierte Python Library. Sie ermöglicht semantische Textanalysen, Inhaltsmodellierung und semantische Dokumentenvergleiche. Eingesetzt wird die Library beispielsweise für das Natural Language Processing (NLP) oder die computergestützte Suche nach komplexen Inhalten (Information Retrieval – IR). Gensim setzt die Python Packages NumPy and SciPy voraus.

Firmen zum Thema

(Bild: © aga7ta - stock.adobe.com)

Der Name Gensim leitet sich von „Generate Similar“ ab. Es handelt sich um eine Open-Source-basierte Library für Python. Sie erlaubt es, Texte oder Dokumente semantisch zu analysieren, Inhalte zu modellieren, Dokumente zu indexieren oder semantische Dokumentenvergleiche mithilfe des unbeaufsichtigten Maschinellen Lernens (ML) durchzuführen. Typische Einsatzbereiche der Python-Bibliothek sind das Natural Language Processing (NLP) oder die computergestützte Suche nach komplexen Inhalten (Information Retrieval – IR).

Gensim ist 2008 aus verschiedenen Python-Skripten der Czech Digital Mathematics Library hervorgegangen. Im Laufe der Jahre wurde Gensim hinsichtlich Skalierbarkeit und Effizienz stetig optimiert. Die Library zählt heute zu den im Umfeld der semantischen Modellierung am häufigsten eingesetzten Lösungen. Sie ist in Python and Cython implementiert und kann große Textmengen oder Dokumente verarbeiten. Hierfür nutzt die Library das Daten-Streaming und Online-Algorithmen. Verfügbar ist der Open Source Code über GitHub unter GNU-LGPLv2.1-Lizenz.

Den kommerziellen Support für Gensim leistet das Unternehmen RARE Technologies Ltd. Gensim arbeitet plattformunabhängig auf Rechnern mit Betriebssystemen wie Windows, Linux oder macOS und unterstützt verschiedene Python-Versionen. Voraussetzung für die Nutzung der Library ist die Installation der Python Packages NumPy and SciPy. Zudem ist die Installation einer BLAS Library (Basic Linear Algebra Subprograms) empfohlen. Die aktuelle Gensim-Version ist die Version 3.8.3 (Stand Mitte 2020).

Merkmale und Funktionen von Gensim

Ein wichtiges Merkmal der Bibliothek Gensim ist, dass die Algorithmen nahezu Arbeitsspeicher-unabhängig arbeiten. Gensim nutzt das Data Streaming und die Daten direkt verarbeitende Algorithmen. Dadurch kann die Bibliothek große Textmengen oder Dokumente prozessieren. Viele gängige Algorithmen sind in der Bibliothek implementiert. Diese sind unter anderem:

  • Latent Semantic Analysis (LSA/LSI/SVD)
  • Latent Dirichlet Allocation (LDA)
  • Random Projections (RP)
  • Hierarchical Dirichlet Process (HDP)
  • fastText, word2vec und doc2vec

fastText verwendet Neuronale Netzwerke und ermittelt Vektor-Repräsentationen für Wörter. Bei word2vec handelt es sich um neuronale Netzwerkmodelle zur Rekonstruktion des linguistischen Kontext der Wörter. Latent Semantic Analysis (LSA) ist eine Technik für das Natural Language Processing, die Beziehungen zwischen Dokumenten und den enthaltenen Begriffen herstellen kann. Auch LDA ist eine NLP-Technik. Sie wird eingesetzt, um Ursachen für Ähnlichkeiten zu ermitteln. Gensim unterstützt verteiltes Computing und kann semantische Analysen auf Clustern mit mehreren Rechnern ausführen.

Die grundlegenden Elemente von Gensim

Das Konzept von Gensim basiert auf den folgenden grundlegenden Elementen:

  • Document: ein Text beziehungsweise eine Textsequenz (es kann sich um wenige Wörter, einen Textabsatz, einen Artikel oder ein komplettes Buch handeln)
  • Corpus: eine Sammlung mehrerer Dokumente
  • Vector: die mathematische Repräsentation eines Dokuments
  • Model: Algorithmus zur Transformation von Vektoren einer Repräsentation in eine andere Repräsentation

Einsatzmöglichkeiten der Bibliothek Gensim

Gensim wird für unterschiedliche kommerzielle, nicht-kommerzielle und akademische Anwendungen eingesetzt. Branchen, die die Bibliothek verwenden, sind beispielsweise die Medizinbranche, die Finanzbranche, Versicherungen, Patent-Behörden und viele mehr. Unter anderem nutzen Unternehmen wie Amazon (Dokumentenanalysen), Cisco (Betrugsanalysen), Talentpair (Bewerberauswahl), Search Metrics (Content Marketing) oder das National Institutes of Health (Verarbeitung von Publikationen oder Genehmigungen) die Software.

Vorteile der Python Library Gensim

Die Open-Source-basierte Library Gensim bietet eine Vielzahl an Vorteilen. Sie stellt zahlreiche Algorithmen und Funktionen für semantische Analysen von Dokumenten oder Texten und die Modellierung von Inhalten zur Verfügung. Die Software ist frei verfügbar, arbeitet plattformunabhängig mit verschiedenen Betriebssystemen und hat eine große Unterstützer-Community im Netz.

Aufgrund der Nutzung des Data Streamings und Daten direkt verarbeitender Algorithmen ist Gensim nahezu unabhängig vom vorhandenen Arbeitsspeicher nutzbar und kann große Textmengen oder Dokumente prozessieren. Im Vergleich zu anderen Methoden müssen für die Analysen nicht die kompletten Daten in den Arbeitsspeicher geladen werden. Gensim skaliert sehr gut, arbeitet robust, ist effizient implementiert und unterstützt die Verteilung von Aufgaben auf Clustersysteme. Die Bibliothek ist in Python-Umgebungen mit SciPy und NumPy einsetzbar. Sie bietet eine Vielzahl an effizient arbeitenden Multicore-Implementierungen gängiger Algorithmen wie Latent Semantic Analysis (LSA), Latent Dirichlet Allocation (LDA), Random Projections (RP), Hierarchical Dirichlet Process (HDP), fastText, word2vec und doc2vec. Dank der GNU-LGPL-Lizenz ist Gensim zu kommerziellen, nicht-kommerziellen und akademischen Zwecken einsetzbar. Über das Unternehmen RARE Technologies Ltd. steht kommerzieller Support für die Python-Bibliothek zur Verfügung.

(ID:46743974)

Über den Autor