So finden Sie mithilfe von word2vec das nächste Wort zu einem Vektor

8

Ich habe gerade begonnen, Word2vec zu verwenden, und ich frage mich, wie wir das nächste Wort zu einem Vektor finden können.  Ich habe diesen Vektor, der der durchschnittliche Vektor für eine Menge von Vektoren ist:

%Vor%

Gibt es einen direkten Weg, um das ähnlichste Wort in meinen Trainingsdaten zu diesem Vektor zu finden?

Oder die einzige Lösung besteht darin, die Kosinusähnlichkeit zwischen diesem Vektor und den Vektoren jedes Worts in meinen Trainingsdaten zu berechnen und dann die nächste auszuwählen?

Danke.

    
sel 24.09.2015, 11:03
quelle

2 Antworten

18

Für genesim Implementierung von word2vec gibt es most_similar() function, mit der Sie Wörter semantisch nahe an einer gegebenen finden können Wort:

%Vor%

oder zu seiner Vektordarstellung:

%Vor%

wobei topn die gewünschte Anzahl der zurückgegebenen Ergebnisse definiert.

Mein Bauchgefühl ist jedoch, dass die Funktion genau dasselbe tut, was Sie vorgeschlagen haben, d. h. Kosinusähnlichkeit für den gegebenen Vektor und jeden anderen Vektor im Wörterbuch berechnet (was ziemlich ineffizient ist ...)

    
Nicolas Ivanov 10.11.2015, 11:36
quelle
4

Vergessen Sie nicht leeres Array mit negativen Worten in most_similar Funktion hinzuzufügen:

%Vor%     
Andrew Krizhanovsky 16.03.2016 15:28
quelle