2017-04-22 2 views
0

Lorsque je charge le modèle doc2vec à partir du fichier pkl, j'obtiens cette erreur.L'objet 'Doc2Vec' n'a pas d'attribut 'wv'

--------------------------------------------------------------------------- 
AttributeError       Traceback (most recent call last) 
<ipython-input-45-5ed9dc71f3a6> in <module>() 
----> 1 temp_docky.infer_vector(['paypal']) 

C:\Users\Laxmikant\Anaconda\lib\site-packages\gensim\models\doc2vec.pyc in infer_vector(self, doc_words, alpha, min_alpha, steps) 
    750     train_document_dm(self, doc_words, doctag_indexes, alpha, work, neu1, 
    751         learn_words=False, learn_hidden=False, 
--> 752         doctag_vectors=doctag_vectors, doctag_locks=doctag_locks) 
    753    alpha = ((alpha - min_alpha)/(steps - i)) + min_alpha 
    754 

C:\Users\Laxmikant\Anaconda\lib\site-packages\gensim\models\doc2vec_inner.pyx in gensim.models.doc2vec_inner.train_document_dm (./gensim/models/doc2vec_inner.c:5165)() 
    406  # default vectors, locks from syn0/doctag_syn0 
    407  if word_vectors is None: 
--> 408  word_vectors = model.wv.syn0 
    409  _word_vectors = <REAL_t *>(np.PyArray_DATA(word_vectors)) 
    410  if doctag_vectors is None: 

AttributeError: 'Doc2Vec' object has no attribute 'wv' 

Pourriez-vous s'il vous plaît aider avec l'erreur?

Répondre

0

De quelle version de gensim le modèle a-t-il été sauvegardé et dans quelle version le chargez-vous? (La façon dont les vecteurs de mots sont stockés dans le modèle a changé dans les versions récentes.)

Généralement, gensim a essayé de s'assurer que les anciens modèles se chargent correctement, mais certains versions ont eu des oublis dans une telle rétrocompatibilité ... donc c'est aussi vaut la peine d'essayer le tout dernier gensim, pour voir s'il charge votre ancien modèle sans cette erreur. (Et si cela donne la même erreur, signalez-le comme un bug sur le project discussion list ou Github project bug tracker.)