使用word2vec编码分类特征是一个好主意吗?

我正面临一个二进制预测任务,并且具有一组所有功能都是分类的。因此,一个关键的挑战是将这些分类特征编码为数字,而我一直在寻找做到这一点的聪明方法。 我偶然发现了主要用于NLP的word2vec,但我想知道是否可以使用它对变量进行编码,即仅将神经网络的权重作为编码特征。

但是,我不确定这是否是一个好主意,因为在我的情况下,与word2vec最初是为之而生的真实句子相比,在word2vec中用作输入特征的上下文词或多或少是随机的。

你们对此有任何建议,想法和建议吗?

wanganqideming 回答:使用word2vec编码分类特征是一个好主意吗?

如果您正在寻找一种使用嵌入来分类变量的方法,则应该研究实体嵌入

,

使用word2vec算法来训练诸如关键字,标签,类别等之类的“密集嵌入”当然是可能的。已经完成了,有时是有益的。

对于您而言,这是否一个好主意取决于您的数据和目标-唯一可以确定的方法就是尝试一下,并评估结果与替代方案。 (例如,如果分类的数量在受控词汇表中很小,则对分类进行一次热编码可能是可行的,并且根据您在下游使用的二进制分类器的种类,分类器本身可能能够学习相同的分类另一方面,如果类别非常多且混乱,类别之间的微妙相互关系也可以通过word2vec模型来学习。如果将类别“压缩”到较小的空间,则类似类别具有相似的相似性代表性向量,可能会更有帮助。)

此类令牌与真正的自然语言文本不太具有相同的频率分布和周围环境,这可能意味着值得在任何word2vec模型上尝试更广泛的非默认训练选项。

特别是,如果您的类别没有自然的顺序而产生有意义的近邻关系,则使用巨型window(因此,单个“文本”中的所有单词都在彼此的上下文中)也许值得考虑。

Python的最新版本gensim Word2Vec允许更改名为ns_exponent的参数-在许多早期实现中已将其固定在0.75上,但是至少有一篇论文建议对于某些语料库数据和类似推荐的应用程序,可以与该值相差很大。

本文链接:https://www.f2er.com/3111127.html

大家都在问