имя 'doc2ve c' не определено - PullRequest
0 голосов
/ 28 мая 2020

Я пытаюсь использовать doc2ve c для классификации текста, но после импорта, когда я пытаюсь использовать его внутри функции, он говорит, что doc2ve c не определен. Пожалуйста, помогите мне определить, какие все библиотеки я должен установить для использования doc2ve c.

здесь у меня есть 2 столбца с именами Action (текст или предложения) и Category (фактические теги)

from gensim.models import Doc2Vec
import gensim
from gensim.models.doc2vec import TaggedDocument
def label_sentences(corpus, label_type):
    labeled = []
    for i, v in enumerate(corpus):
        label = label_type + '_' + str(i)
        labeled.append(doc2vec.TaggedDocument(v.split(), [label]))
    return labeled
X_train, X_test, y_train, y_test = train_test_split(df.Action, df.Category, random_state=0, test_size=0.3)
X_train = label_sentences(X_train, 'Train')

Error
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-66-d20e5f21684d> in <module>
----> 1 X_train = label_sentences(X_train, 'Train')

<ipython-input-53-bca3c695cfb6> in label_sentences(corpus, label_type)
      8     for i, v in enumerate(corpus):
      9         label = label_type + '_' + str(i)
---> 10         labeled.append(doc2vec.TaggedDocument(v.split(), [label]))
     11     return labeled

NameError: name 'doc2vec' is not defined

Ответы [ 3 ]

1 голос
/ 28 мая 2020

Вы импортировали TaggedDocument, а не doc2vec, но использовали его таким образом labeled.append(doc2vec.TaggedDocument(v.split(), [label]))

Так что просто используйте TaggedDocument напрямую или, если вам это не нужно, просто импортируйте doc2ve c from gensim.models import doc2vec

0 голосов
/ 28 мая 2020

из gensim.models import doc2ve c или labeled.append (TaggedDocument (v.split (), [label]))

отлично работает

0 голосов
/ 28 мая 2020
def label_sentences(corpus, label_type):
    labeled = []
    for i, v in enumerate(corpus):
        label = label_type + '_' + str(i)
        labeled.append(TaggedDocument(v.split(), [label]))
    return labeled
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...