Algorithmus für neuronale Themenmodellierung (NTM) - Amazon SageMaker

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Algorithmus für neuronale Themenmodellierung (NTM)

Amazon SageMaker NTM ist ein unüberwachter Lernalgorithmus, der zum Organisieren eines Datensatzes von Dokumente in verwendet wird-Themen, die Wortgruppen basierend auf ihrer statistischen Verteilung enthalten. Dokumente mit häufigen Vorkommen von Wörtern wie "Fahrrad", "Auto", "Zug", "Laufleistung" und "Geschwindigkeit" haben wahrscheinlich das gemeinsame Thema "Transport". Die Themenmodellierung kann verwendet werden, um Dokumente basierend auf den erkannten Themen zu klassifizieren oder zusammenzufassen oder um Informationen abzurufen oder Inhalte basierend auf Themengemeinsamkeiten zu empfehlen. Die Themen aus Dokumenten, die NTM lernt, werden als latente Darstellung bezeichnet, da die Themen aus den beobachteten Wortverteilungen im Datensatz abgeleitet werden. Die Semantik der Themen wird in der Regel abgeleitet, indem die enthaltenen Wörter mit dem höchsten Rang untersucht werden. Da die Methode unüberwacht ist, wird nur die Anzahl der Themen, jedoch nicht die Themen selbst vorab definiert. Darüber hinaus kann nicht garantiert werden, dass die Kategorisierung der Themen so aussieht, wie sie ein Mensch vornehmen würde.

Themenmodellierung bietet eine Möglichkeit zur Visualisierung der Inhalte eines großen Dokumentkorpus im Hinblick auf die gelernten Themen. Für das Thema relevante Dokumente können indiziert werden oder man kann auf der Basis weicher Themenkennzeichnungen nach ihnen suchen. Die latenten Darstellungen der Dokumente können auch verwendet werden, um ähnliche Dokumente im Themenraum zu finden. Sie können die latenten Darstellungen von Dokumenten, die das Themenmodell lernt, auch als Eingabe für einen anderen überwachten Algorithmus verwenden, wie z. B. einen Dokumenten-Classifier. Da latente Darstellungen von Dokumenten die Semantik der zugrunde liegenden Dokumente erfassen sollen, ist davon auszugehen, dass Algorithmen, die teilweise auf diesen Darstellungen basieren, bessere Ergebnisse liefern als Algorithmen, denen nur lexikalische Merkmale zugrunde liegen.

Sie können zwar sowohl Amazon SageMaker NTM als auch LDA-Algorithmen für die Themenmodellierung verwenden, doch es handelt sich dabei um verschiedene Algorithmen, sodass sie bei denselben Eingabedaten unterschiedliche Ergebnisse liefern können.

Weitere Informationen zu den mathematischen Hintergründen von NTM finden Sie unter Neural Variational Inference for Text Processing.

E/A-Schnittstelle für den NTM-Algorithmus

Das neuronale Themenmodell von Amazon SageMaker unterstützt vier Datenkanäle: Schulung, Validierung, Test und Zusatz. Die Validierungs-, Test- und Zusatzdatenkanäle sind optional. Wenn Sie einen der folgenden optionalen Kanäle angeben, legen Sie den Wert des S3DataDistributionType-Parameters für sie auf FullyReplicated fest. Wenn Sie die Validierungsdaten bereitstellen, wird der Datenverlust für jede Epoche protokolliert und das Modell stoppt die Schulung, sobald es erkennt, dass der Validierungsverlust sich nicht verbessert. Wenn Sie keine Validierungsdaten bereitstellen, stoppt der Algorithmus früh auf Basis der Schulungsdaten, dies kann jedoch weniger effizient sein. Wenn Sie die Testdaten bereitstellen, erfasst der Algorithmus den Testverlust des letzten Modells.

Die Schulungs-, Validierungs- und Testdatenkanäle für NTM unterstützen sowohl recordIO-wrapped-protobuf (mit hoher und niedriger Dichte) als auch CSV als Dateiformate. Wird das CSV-Format verwendet, muss jede Zeile dicht mit Nullzählern für Wörter dargestellt werden, die im entsprechenden Dokument nicht vorhanden sind und die Dimension haben gleich: (Anzahl Datensätze) * (Vokabulargröße). Sie können entweder den Datei- oder den Pipe-Modus verwenden, um Modelle mit Daten, die als recordIO-wrapped-protobuf oder CSV formatiert sind, zu schulen. Der Zusatzkanal wird verwendet, um eine Textdatei mit Vokabular bereitzustellen. Durch Bereitstellen der Vokabulardatei können Benutzer die wichtigsten Wörter für jedes der Themen im Protokoll anstelle ihrer Ganzzahl-IDs sehen. Wenn die Vokabulardatei vorliegt, kann NTM außerdem die Word Embedding Topic Coherence (WETC)-Bewertungen berechnen. Diese neue Metrik wird im Protokoll zur effektiven Erfassung von Ähnlichkeiten zwischen den wichtigsten Wörtern in jedem Thema angezeigt. Der ContentType für den Zusatzkanal lautet text/plain, wobei jede Zeile ein einziges Wort enthält, und zwar in der Reihenfolge der in den Daten enthaltenen Ganzzahl-IDs. Die Vokabulardatei muss den Namen vocab.txt tragen. Derzeit wird nur UTF-8-Codierung unterstützt.

Für die Inferenz werden die Inhaltstypen text/csv, application/json, application/jsonlines und application/x-recordio-protobuf unterstützt. Daten mit geringer Dichte können auch für application/json und application/x-recordio-protobuf übergeben werden. Die NTM-Inferenz gibt application/json- oder application/x-recordio-protobuf-Prognosen zurück, in denen der topic_weights-Vektor für jede einzelne Beobachtung enthalten ist.

Weitere Informationen zur Verwendung des Zusatzkanal und der WETC-Bewertungen finden Sie in unserem Blog-Beitrag und im begleitenden Notebook. Weitere Informationen zum Berechnen der WETC-Bewertung finden Sie unter Coherence-Aware Neural Topic Modeling. Wir haben das in diesem Dokument beschriebene paarweise WETC für das Neuronale Themenmodell von Amazon SageMaker verwendet.

Weitere Informationen über die Eingabe- und Ausgabedateiformate finden Sie unter NTM-Antwortformate für Inferenz und unter NTM-Beispiel-Notebooks.

EC2-Instance-Empfehlung für den NTM-Algorithmus

NTM-Schulungen unterstützen sowohl GPU- und CPU-Instance-Typen. Wir empfehlen GPU-Instances, aber bei bestimmten Arbeitslasten können CPU-Instances die Schulungskosten senken. CPU-Instances sollten für Inferenz ausreichend sein.

NTM-Beispiel-Notebooks

Ein Beispiel-Notebook, das den SageMaker NTM-Algorithmus zum Aufdecken von Themen in Dokumenten aus einer synthetischen Datenquelle verwendet, in denen die Themenverteilungen bekannt sind, finden Sie unterEinführung in die Grundfunktionalität von NTMaus. Anweisungen zum Erstellen von und Zugreifen auf Jupyter-Notebook-Instances, die Sie verwenden können, um das Beispiel in SageMaker auszuführen, finden Sie unter.Verwenden von Amazon SageMaker Notebook-Instancesaus. Sobald Sie eine Notebook-Instance erstellt und geöffnet haben, wählen Sie die RegisterkarteSageMaker Beispiele, um eine Liste aller SageMaker Beispiele anzusehen. Die Beispiel-Notebooks zur Themenmodellierung unter Verwendung der NTM-Algorithmen finden Sie im Abschnitt Einführung in die Amazon-Algorithmen. Zum Öffnen eines Notebooks klicken Sie auf die Registerkarte Use (Verwenden) und wählen Sie Create copy (Kopie erstellen) aus.