Python: gensim: Absturz mit Laufzeitfehler: Sie müssen zuerst bei der Wortbildung vor dem training des Modells

Ich weiß, diese Frage wurde schon gefragt, aber ich war noch nicht in der Lage, eine Lösung zu finden.

Möchte ich nutzen, gensim ist word2vec auf einem benutzerdefinierten Datensatz, aber jetzt bin ich immer noch herauszufinden, in welchem format der datasets werden. Ich hatte einen Blick auf dieser Beitragwo der Eingang ist im Grunde eine Liste von Listen (eine große Liste mit anderen Listen, sind Token, Sätze aus dem NLTK Brown corpus). Also dachte ich, dass dies das input-format habe ich für den Befehl word2vec.Word2Vec(). Allerdings funktioniert es nicht mit meinem kleinen test-set, und ich verstehe nicht warum.

Was ich versucht habe:

Dies funktionierte:

from gensim.models import word2vec
from nltk.corpus import brown
import logging
logging.basicConfig(format='%(asctime)s : %(levelname)s : %(message)s', level=logging.INFO)

brown_vecs = word2vec.Word2Vec(brown.sents())

Dies hat nicht funktioniert:

sentences = [ "the quick brown fox jumps over the lazy dogs","yoyoyo you go home now to sleep"]
vocab = [s.encode('utf-8').split() for s in sentences]
voc_vec = word2vec.Word2Vec(vocab)

Ich verstehe nicht, warum es nicht funktioniert mit dem "mock" - Daten, obwohl es hat die gleiche Datenstruktur wie die Sätze aus dem Brown corpus:

vocab:

[['the', 'quick', 'brown', 'fox', 'jumps', 'over', 'the', 'lazy', 'dogs'], ['yoyoyo', 'you', 'go', 'home', 'now', 'to', 'sleep']]

Braun.sents(): (der Anfang davon)

[['The', 'Fulton', 'County', 'Grand', 'Jury', 'said', 'Friday', 'an', 'investigation', 'of', "Atlanta's", 'recent', 'primary', 'election', 'produced', '``', 'no', 'evidence', "''", 'that', 'any', 'irregularities', 'took', 'place', '.'], ['The', 'jury', 'further', 'said', 'in', 'term-end', 'presentments', 'that', 'the', 'City', 'Executive', 'Committee', ',', 'which', 'had', 'over-all', 'charge', 'of', 'the', 'election', ',', '``', 'deserves', 'the', 'praise', 'and', 'thanks', 'of', 'the', 'City', 'of', 'Atlanta', "''", 'for', 'the', 'manner', 'in', 'which', 'the', 'election', 'was', 'conducted', '.'], ...]

Kann jemand mir bitte sagen, was ich falsch mache?

InformationsquelleAutor der Frage user56591 | 2015-11-30

Schreibe einen Kommentar