我见过在神经网络模型中使用CBOW的例子很少(尽管我不理解它)
我知道Word2Vec不同于BOW或TFIDF,因为CBOW没有单一的值。
我看到的所有例子都是使用神经网络。
我有两个问题
1-我们可以将向量转换为单个值并将其放入数据帧中,以便在Logistic回归模型中使用它吗?
2-是否有使用逻辑回归的CBOW的简单代码?
更多解释。
在我的例子中,我有一个语料库,我想对BOW和CBOW中的热门特性进行比较
转换为弓后
我得到了这个数据集
RepID Label Cat Dog Snake Rabbit Apple Orange ...
1 1 5 3 8 2 0
2 0 1 0 0 6 9
3 1 4 1 5 1 7 转换为TFIDF后
我得到了这个数据集
RepID Label Cat Dog Snake Rabbit Apple Orange ...
1 1 0.38 0.42 0.02 0.22 0.00 0.19
2 0 0.75 0.20 0.08 0.12 0.37 0.21
3 1 0.17 0.84 0.88 0.11 0.07 0.44我正在观察每个模型中最重要的3个特性的结果
因此,我的数据集如下所示
BOW (我在这里为将要省略的值设置了null )
RepID Label Cat Dog Snake Rabbit Apple Orange ...
1 1 5 null 8 null null 7
2 0 null null null 6 9 2
3 1 4 null 5 null 7 nullTFIDF (我在这里为将要省略的值设置了null )
RepID Label Cat Dog Snake Rabbit Apple Orange ...
1 1 0.38 0.42 null 0.22 null null
2 0 0.75 null null null 0.37 0.21
3 1 null 0.84 0.88 null null 0.44我现在想用Word2Ven CBOW做同样的事情。
我想要取CBOW模型中的最高值
RepID Label Cat Dog Snake Rabbit Apple Orange ...
1 1 v11 v12 v13 v14 v15 v16
2 0 v21 v22 v23 v24 v25 v26
3 1 v31 v32 v33 v34 v35 v36就像这样
RepID Label Cat Dog Snake Rabbit Apple Orange ...
1 1 v11 null v13 null v15 null
2 0 null null v23 null v25 v26
3 1 v31 null v33 v34 null null发布于 2021-06-13 02:45:04
无论内部训练方法是CBOW还是skip-gram,单词向量总是一个多维向量:它包含许多浮点数。
因此,在某种程度上,这是一个“值”-其中“值”是一个向量。但它从来都不是一个数字。
词向量,即使具有它们的所有维度,也绝对可以作为下游逻辑回归任务的输入。但确切的细节取决于您正在操作的数据,以及您打算实现的目标-因此,您可能想要扩展您的问题,或者询问更具体的后续问题,以及有关您正在考虑的特定数据/任务的更多信息。
还要注意:这通常是通过像scikit-learn这样的库的管道完成的。将密集的高维单词向量本身(或从单词向量派生的其他特征)直接放入“数据帧”通常是一个错误,与在(比方说) numpy数组的更紧凑/原始格式中处理如此大的特征向量相比,增加了开销和间接性。
https://stackoverflow.com/questions/67951891
复制相似问题