machine-learning - 如何组合两个不同维度的特征?

标签 machine-learning classification feature-extraction

让我们考虑文本分类问题。因此,如果文档表示为词袋,那么我们将有一个 n 维特征,其中文档中有 n 个单词。现在,如果我决定也想使用文档长度作为特征,那么该特征的维度(长度)将为一。那么我如何结合使用这两个功能(长度和词袋)。现在应该将特征视为二维(n 维向量(BOW)和一维特征(长度)。如果这不起作用,我如何组合这些特征。对此的任何指示也会有所帮助?

最佳答案

这个说法有点含糊:“因此,如果文档表示为词袋,那么我们将有一个 n 维特征,其中 n- 文档中的单词数。”

我的解释是,您的语料库中出现的每个单词都有一列(可能仅限于某些感兴趣的字典),并且对于每个文档,您都计算了该单词出现的次数。您的列数现在等于字典中出现在任何文档中的单词数。您还有一个“长度”功能,它可以是文档中单词数的计数,并且您想知道如何将其合并到您的分析中。

一种简单的方法是将某个单词出现的次数除以文档中单词的总数。

这具有根据文档大小缩放单词出现次数的效果,新功能称为“术语频率”。下一个自然步骤是对术语频率进行加权,以补偿语料库中更常见的术语(因此不太重要)。由于我们对不太常见的术语给予较高的权重,这称为“逆文档频率”,整个过程称为“术语频率乘以逆文档频率”,或 tf-idf。你可以谷歌这个以获取更多信息。

<小时/>

您可能正在以不同的方式进行字数统计 - 例如,计算每个段落(而不是每个文档)中出现的单词数。在这种情况下,对于每个文档,每个段落都有一个字数统计,典型的方法是使用奇异值分解等过程合并这些段落计数。

关于machine-learning - 如何组合两个不同维度的特征?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12333444/

相关文章:

python - keras flow_from_directory 超过或欠采样一个类

python - 从 sklearn 的 MLPClassifier 中检索最终的隐藏激活层输出

image - 低分辨率图像的特征检测器和描述符

Haar特征提取的matlab实现

scikit-learn - OneHotEncoder 的分类特征问题

python - 科学数据包 : calculate precision and recall using cross_val_score function

python - 将实体嵌入映射回原始分类值

matlab - 使用线性分类器最小化训练误差

python - Scikit Learn - 通过加载 CSV 识别目标

classification - l1/l2 正则化导致 Vowpal wabbit 中所有特征权重为零是否合理?