将word2vec词嵌入用作特征分类以进行文本分类(类似于对vectorizer / tfidf特征向量进行计数)

时间:2019-03-11 07:06:20

标签: machine-learning scikit-learn word2vec text-classification word-embedding

我正在尝试使用机器学习进行一些文本分类,为此,我已经使用简单的单词方法(计数向量化器)和tfidf向量化器从经过处理的文本数据中提取了特征向量。

现在,我想使用word2vec(即词嵌入)作为我的特征向量,类似于count vectorizer / tfidf vectorizer的特征向量,在这里我应该能够从训练数据中学习词汇,并使用学到的词汇来转换或拟合测试数据,但是我找不到实现该目标的方法。

//I need something like this with word2vec

count = CountVectorizer()
train_feature_ vector =count.fit_transform(train_data)
test_feature_vector = count.fit(test_data)

//So I can train my model like this
mb = MultinomialNB()
mb.fit(train_feature_vector,y_train)
acc_score = mb.score(test_feature_vector,y_test)
print("Accuracy "+str(acc_score))

1 个答案:

答案 0 :(得分:1)

您首先应该了解什么是词嵌入。当您应用CountVectorizer或TfIdfVectorizer时,您得到的是以稀疏方式表示的句子表示形式,通常称为One Hot编码。单词嵌入表示法用于在高维实数空间中表示单词

一旦您获得了每个单词的表示形式,就有一些方法可以执行此操作,请检查:How to get vector for a sentence from the word2vec of tokens in sentence