GOOGLE ADS

Dienstag, 12. April 2022

Wie bekomme ich die Abmessungen eines word2vec-Objekts in Python?

Ich habe ein word2vec-Modell für meine Daten ausgeführt list_of_sentence:

from gensim.models import Word2Vec
w2v_model=Word2Vec(list_of_sentence,min_count=5, workers=4)
print(type(w2v_model))
<class 'gensim.models.word2vec.Word2Vec'>

Ich würde gerne die Dimensionalität von w2v_modelVektoren wissen. Wie kann ich es überprüfen?


Lösung des Problems

Die Vektordimensionalität ist als Argument enthalten in Word2Vec:


  • In gensim-Versionen bis 3.8.3 hieß das Argument size( docs )

  • In den neuesten gensim-Versionen (ab 4.0) wird das relevante Argument umbenannt in vector_size( docs )


In beiden Fällen hat das Argument einen Standardwert von 100; Das bedeutet, dass, wenn Sie es nicht explizit angeben (wie Sie es hier tun), die Dimensionalität 100 ist.

Hier ist ein reproduzierbares Beispiel mit gensim 3.6:

import gensim
gensim.__version__
# 3.6.0
from gensim.test.utils import common_texts
from gensim.models import Word2Vec
model = Word2Vec(sentences=common_texts, window=5, min_count=1, workers=4) # do not specify size, leave the default 100
wv = model.wv['computer'] # get numpy vector of a word in the corpus
wv.shape # verify the dimension of a single vector is 100
# (100,)

Wenn Sie diese Dimensionalität beispielsweise auf 256 ändern möchten, sollten Sie Word2Vecmit dem Argument size=256(für Gensim-Versionen bis 3.8.3) oder vector_size=256(für Gensim-Versionen 4.0 oder höher) aufrufen.

Keine Kommentare:

Kommentar veröffentlichen

Warum werden SCHED_FIFO-Threads derselben physischen CPU zugewiesen, obwohl CPUs im Leerlauf verfügbar sind?

Lösung des Problems Wenn ich das richtig verstehe, versuchen Sie, SCHED_FIFO mit aktiviertem Hyperthreading ("HT") zu verwenden, ...