Wie word2vec verwendet werden kann, um unsichtbare Wörter zu identifizieren und sie mit bereits trainierten Daten in Beziehung zu setzen


11

Ich habe an einem word2vec Gensim-Modell gearbeitet und fand es wirklich interessant. Ich bin daran interessiert herauszufinden, wie ein unbekanntes / unsichtbares Wort, wenn es mit dem Modell überprüft wird, ähnliche Begriffe aus dem trainierten Modell erhalten kann.

Ist das möglich? Kann word2vec dafür optimiert werden? Oder der Trainingskorpus muss alle Wörter haben, von denen ich Ähnlichkeit finden möchte.

Antworten:


9

Jeder Algorithmus, der sich mit Textdaten befasst, verfügt über ein Vokabular. Im Fall von word2vec besteht das Vokabular aus allen Wörtern im Eingabekorpus oder zumindest aus Wörtern oberhalb der Mindestfrequenzschwelle.

Algorithmen neigen dazu, Wörter zu ignorieren, die außerhalb ihres Wortschatzes liegen. Es gibt jedoch Möglichkeiten, Ihr Problem so umzugestalten, dass es im Wesentlichen keine Wörter außerhalb des Wortschatzes gibt.

Denken Sie daran, dass Wörter in word2vec einfach "Token" sind. Sie könnten Ngramme oder Buchstaben sein. Eine Möglichkeit, Ihren Wortschatz zu definieren, besteht darin, zu sagen, dass jedes Wort, das mindestens X-mal vorkommt, in Ihrem Wortschatz enthalten ist. Dann werden die häufigsten "Silben" (n Gramm Buchstaben) zu Ihrem Wortschatz hinzugefügt. Dann fügen Sie Ihrem Wortschatz einzelne Buchstaben hinzu.

Auf diese Weise können Sie jedes Wort als eines definieren

  1. Ein Wort in Ihrem Wortschatz
  2. Eine Reihe von Silben in Ihrem Wortschatz
  3. Ein kombinierter Satz von Buchstaben und Silben in Ihrem Wortschatz

3

word2vec behandelt Wörter als Atome. Um aussagekräftige Vektoren für unbekannte Wörter zu erhalten, müssen Sie entweder

  • ändere, was diese Atome sind, z. B. wechsle zum Buchstaben n-Gramm wie in Jamesmfs Antwort, oder
  • Verwenden Sie ein anderes Modell, das explizit untersucht, was in Ihren Worten enthalten ist, z. B. das CWE-Modell unter https://github.com/Leonard-Xu/CWE ist einfach zu verwenden.


Ja, das habe ich versucht, funktioniert aber nicht gut mit Aufgaben wie der morphologischen Segmentierung.
Gaurus


0

Word2Vec und FastText schlagen fehl, wenn das Wort nicht im Wortschatz enthalten ist. Wirft einen Fehler. Es gibt eine Liste mit Punkten für verwandte Wörter. Aber ein unsichtbares Wort wird nicht im Wortschatz enthalten sein, nicht wahr? Wie löst es das unsichtbare Wortproblem?

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.