'Word2Vec' 对象没有属性 'index2word'
'Word2Vec' object has no attribute 'index2word'
我在 python 中的以下代码中遇到此错误 "AttributeError: 'Word2Vec' object has no attribute 'index2word'"。任何人都知道我该如何解决它?
实际上 "tfidf_weighted_averaged_word_vectorizer" 抛出错误。 "obli.csv" 包含句子行。
谢谢。
from feature_extractors import tfidf_weighted_averaged_word_vectorizer
dataset = get_data2()
corpus, labels = dataset.data, dataset.target
corpus, labels = remove_empty_docs(corpus, labels)
# print('Actual class label:', dataset.target_names[labels[10]])
train_corpus, test_corpus, train_labels, test_labels = prepare_datasets(corpus,
labels,
test_data_proportion=0.3)
tfidf_vectorizer, tfidf_train_features = tfidf_extractor(train_corpus)
vocab = tfidf_vectorizer.vocabulary_
tfidf_wv_train_features = tfidf_weighted_averaged_word_vectorizer(corpus=tokenized_train,
tfidf_vectors=tfidf_train_features,
tfidf_vocabulary=vocab,
model=model,
num_features=100)
def get_data2():
obli = pd.read_csv('db/obli.csv').values.ravel().tolist()
cl0 = [0 for x in range(len(obli))]
nonObli = pd.read_csv('db/nonObli.csv').values.ravel().tolist()
cl1 = [1 for x in range(len(nonObli))]
all = obli + nonObli
db = Db(all,cl0 + cl1)
db.data = all
db.target = cl0 + cl1
return db
这是来自 Dipanjan Sarkar Python 的文本分析第 4 章的代码。
gensim 中的 index2word 自该文本发布后已被移动。
而不是 model.index2word
你应该使用 model.wv.index2word
.
我在 python 中的以下代码中遇到此错误 "AttributeError: 'Word2Vec' object has no attribute 'index2word'"。任何人都知道我该如何解决它? 实际上 "tfidf_weighted_averaged_word_vectorizer" 抛出错误。 "obli.csv" 包含句子行。 谢谢。
from feature_extractors import tfidf_weighted_averaged_word_vectorizer
dataset = get_data2()
corpus, labels = dataset.data, dataset.target
corpus, labels = remove_empty_docs(corpus, labels)
# print('Actual class label:', dataset.target_names[labels[10]])
train_corpus, test_corpus, train_labels, test_labels = prepare_datasets(corpus,
labels,
test_data_proportion=0.3)
tfidf_vectorizer, tfidf_train_features = tfidf_extractor(train_corpus)
vocab = tfidf_vectorizer.vocabulary_
tfidf_wv_train_features = tfidf_weighted_averaged_word_vectorizer(corpus=tokenized_train,
tfidf_vectors=tfidf_train_features,
tfidf_vocabulary=vocab,
model=model,
num_features=100)
def get_data2():
obli = pd.read_csv('db/obli.csv').values.ravel().tolist()
cl0 = [0 for x in range(len(obli))]
nonObli = pd.read_csv('db/nonObli.csv').values.ravel().tolist()
cl1 = [1 for x in range(len(nonObli))]
all = obli + nonObli
db = Db(all,cl0 + cl1)
db.data = all
db.target = cl0 + cl1
return db
这是来自 Dipanjan Sarkar Python 的文本分析第 4 章的代码。
gensim 中的 index2word 自该文本发布后已被移动。
而不是 model.index2word
你应该使用 model.wv.index2word
.