如何在统计算法中使用Word2Vec CBOW



我很少看到在神经网络模型中使用CBOW的例子(尽管我不理解(

我知道Word2Verc与BOW或TFIDF不相似,因为CBOW 没有单一值

我看到的所有例子都是使用神经网络。

我有两个问题

1-我们可以将向量转换为单个值并将其放入数据帧中,以便在逻辑回归模型中使用它吗?

2-是否有任何简单的代码用于逻辑回归的CBOW使用?

更多解释。

在我的案例中,我有一个语料库,我想对BOW和CBOW 中的顶级功能进行比较

转换为BOW 后

我得到这个数据集

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(此处将省略的值设为空(

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   null

TFIDF(此处将省略的值设为空(

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

无论内部训练方法是CBOW还是skip gram,单词向量始终是多维向量:它包含许多浮点数。

所以在一个层面上;值"-其中";值";是一个矢量。但它从来都不是一个单一的数字。

词向量,即使具有所有维度,也绝对可以作为下游逻辑回归任务的输入。但确切的细节取决于你正在使用的数据,以及你打算实现的目标——所以你可能想扩大你的问题,或者问一个更具体的跟进问题,提供更多关于你正在考虑的具体数据/任务的信息。

还需要注意的是:这通常是通过像scikit-learn这样的库的管道来完成的。将密集的高维单词向量本身(或从单词向量导出的其他特征(直接放入";数据帧";通常是一个错误,增加了开销&与在更紧凑/原始格式的(例如(CCD_ 2阵列中使用这样的大特征向量相比。

最新更新