我有一个语料库是CSV文件或者文本文件的形式。我想用它来训练 word2vec 模型。然后我想使用训练好的模型来向量化一个包含类和类描述的CSV文件,即每个类将对应一个向量。如何使用 python 来完成?
到目前为止,我已经研究过训练一个自定义的 word2vec 模型,但它们都给出了单个单词的向量作为输出。我想传递一个描述并得到一个向量作为输出
如果你只有词向量,并且你想要一个更长的多词文本的向量,一个快速简单的选择是将较长文本中所有词的词向量平均在一起。
在 Gensim 库中,
.get_mean_vector()
模型类上有一个辅助方法KeyedVectors
(用于存储/访问一组词向量),可以让您提供一个词列表,并取回所有词的平均值他们的词向量。
例子:
mean_vector = w2v_model.get_mean_vector(list_of_words)
这样一个多词文本向量,来自词向量的平均值,可能非常适合广泛的“时事性”目的,但本质上不能捕捉通过仔细排序/语法安排创造的那种意义——因为它完全是忘记订购。
(举一个例子,
'not'
这个词对huans如何感知文本的影响根据它的位置而有很大的不同:它是颠倒单个形容词,还是整个谓词,还是其他东西?所有的简单平均值单词不能使用 'not'
来翻转正确的东西,它只是混合了一点点 'not'
最普遍的影响。你需要更复杂的深度/循环模型,理解排序/语法,对于这样的细粒度建模。)