Gensim Doc2Vec Exception AttributeError: 'str' object has no attribute 'words'과 비슷한 질문이 있지만 유용한 답변을 얻지 못했습니다.20newsgroups 데이터 세트에서 Doc2Vec 교육. 예외 얻기 AttributeError : 'str'객체에 'words'속성이 없습니다.
20newsgroups corpora에서 Doc2Vec을 교육하려고합니다. 나는 모델을 학습하고 결과를 저장 그런
from sklearn.datasets import fetch_20newsgroups
def get_data(subset):
newsgroups_data = fetch_20newsgroups(subset=subset, remove=('headers', 'footers', 'quotes'))
docs = []
for news_no, news in enumerate(newsgroups_data.data):
tokens = gensim.utils.to_unicode(news).split()
if len(tokens) == 0:
continue
sentiment = newsgroups_data.target[news_no]
tags = ['SENT_'+ str(news_no), str(sentiment)]
docs.append(TaggedDocument(tokens, tags))
return docs
train_docs = get_data('train')
test_docs = get_data('test')
alldocs = train_docs + test_docs
model = Doc2Vec(dm=dm, size=size, window=window, alpha = alpha, negative=negative, sample=sample, min_count = min_count, workers=cores, iter=passes)
model.build_vocab(alldocs)
: screen
I : I 모델을로드 할 때
model.train(train_docs, total_examples = len(train_docs), epochs = model.iter)
model.train_words = False
model.train_labels = True
model.train(test_docs, total_examples = len(test_docs), epochs = model.iter)
model.save(output)
문제가 나타납니다 는 여기가 Vocab의 구축 방법 시도 :
레이블 사용 대신 TaggedDocument
대신 목록에 추가의 TaggedDocument를 산출의 edSentence는
설정 min_count 1 그래서 단어 (단지의 경우) 무시 될 것이다
또한 문제의 발생 python2뿐만 아니라 python3.
제발,이 문제를 해결하도록 도와주세요.