def predict(self,X):
self.sents_test=X
self.sents_all=self.sents_train + self.sents_test
if self.sents_shuffle :
s_indexs=range(len(self.sents_all))
random.shuffle(s_indexs)
s_invers_indexs=range(len(s_indexs))
for n in range(len(s_indexs)):
s_invers_indexs[s_indexs[n]]=n
sents_all=[self.sents_all[n] for n in s_indexs]
else:
sents_all=self.sents_all
all_docs = list(LabeledListSentence(self.sents_all))
self.doc2vec_set(all_docs)
#print 'size',self.doc2vec.vector_size
self.X_train= [self.doc2vec.infer_vector(s) for s in self.sents_train]
self.X_test= [self.doc2vec.infer_vector(s) for s in self.sents_test]
self.logistic =LogisticRegressionCV(class_weight='balanced')#,n_jobs=-1)
self.logistic.fit(self.X_train,self.Y_train)
Y_test_predict=self.logistic.predict(self.X_test)
return Y_test_predict
评论列表
文章目录