Dieser Artikel stellt hauptsächlich die Verwendung der Gensim-Bibliothek word2vec in Python vor. Jetzt kann ich ihn mit Ihnen teilen.
Pip Install Gensim Nach der Installation der Bibliothek , können Sie Folgendes importieren und verwenden:
1. Trainingsmodelldefinition
from gensim.models import Word2Vec model = Word2Vec(sentences, sg=1, size=100, window=5, min_count=5, negative=3, sample=0.001, hs=1, workers=4)
Parametererklärung:
1.sg=1 ist der Skip-Gram-Algorithmus, der auf Wörter mit niedriger Häufigkeit reagiert; der Standardwert sg=0 ist der CBOW-Algorithmus .
2.size ist die Dimension des Ausgabewortvektors. Wenn der Wert zu klein ist, wirkt sich die Wortzuordnung aufgrund von Konflikten auf die Ergebnisse aus. Wenn der Wert zu groß ist, verbraucht er Speicher und wird langsamer Im Allgemeinen liegt der Wert zwischen 100 und 200.
3.window ist der maximale Abstand zwischen dem aktuellen Wort und dem Zielwort im Satz. 3 bedeutet, dass 3-b-Wörter vor dem Zielwort und b-Wörter danach betrachtet werden (b ist zufällig zwischen 0 und 3). ).
4.min_count wird verwendet, um Wörter mit einer Häufigkeit von weniger als min-count zu filtern. Der Standardwert ist 5.
5. Negativ und Stichprobe können basierend auf den Trainingsergebnissen feinabgestimmt werden. Stichprobe bedeutet, dass Wörter mit höherer Häufigkeit zufällig auf den festgelegten Schwellenwert heruntergerechnet werden.
6.hs=1 bedeutet, dass hierarchisches Softmax verwendet wird. Standardmäßig ist hs=0 und negativ nicht 0, es wird eine negative Stichprobe ausgewählt.
7. Worker steuern die Parallelität des Trainings. Dieser Parameter ist nur gültig, nachdem Cpython installiert ist, andernfalls kann nur ein einzelner Kern verwendet werden.
Eine detaillierte Parameterbeschreibung finden Sie im Word2vec-Quellcode.
2. Speichern und Laden des Modells nach dem Training
model.save(fname) model = Word2Vec.load(fname)
3. Modellverwendung (Wortähnlichkeitsberechnung usw.)
model.most_similar(positive=['woman', 'king'], negative=['man']) #输出[('queen', 0.50882536), ...] model.doesnt_match("breakfast cereal dinner lunch".split()) #输出'cereal' model.similarity('woman', 'man') #输出0.73723527 model['computer'] # raw numpy vector of a word #输出array([-0.00449447, -0.00310097, 0.02421786, ...], dtype=float32)
Andere Inhalte werden nicht noch einmal beschrieben, Bitte beachten Sie die Details. Die offizielle Beschreibung von gensims word2vec ist sehr detailliert.
Das obige ist der detaillierte Inhalt vonVerwendung der Gensim-Bibliothek word2vec in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!