【问题标题】:How do I combine two features of different dimension?如何组合两个不同维度的特征?
【发布时间】:2012-09-02 05:49:32
【问题描述】:
让我们考虑一下文本分类的问题。因此,如果将文档表示为 Bag of words ,那么我们将有一个 n 维特征 ,其中文档中有 n 个单词。现在,如果我决定我也想使用文档长度作为特征,那么这个特征的维度(长度)将是一。那么我如何结合使用这两种功能(长度和词袋)。现在应该将特征视为 2 维(n 维向量(BOW)和 1 维特征(长度)。如果这不起作用,我该如何组合这些特征。任何关于此的指针也会有所帮助?
【问题讨论】:
标签:
machine-learning
classification
feature-extraction
【解决方案1】:
这句话有点模棱两可:“所以如果文档被表示为 Bag of words,那么我们将有一个 n 维特征,其中文档中有 n- 个单词。”
我的解释是,您的语料库中出现的每个单词都有一个列(可能仅限于某些感兴趣的字典),并且对于每个文档,您都计算了该单词的出现次数。您的列数现在等于字典中出现在任何文档中的单词数。您还有一个“长度”功能,它可以计算文档中的字数,并且您想知道如何将其合并到您的分析中。
一种简单的方法是将单词出现的次数除以文档中的总单词数。
这具有根据文档大小缩放单词出现的效果,新功能称为“词频”。下一个自然步骤是对术语频率进行加权,以补偿语料库中更常见(因此不太重要)的术语。由于我们对不太常见的术语赋予更高的权重,这称为“逆文档频率”,整个过程称为“术语频率乘以逆文档频率”,或 tf-idf。你可以谷歌这个以获取更多信息。
您可能正在以不同的方式计算字数,例如,计算每个段落(而不是每个文档)中出现的字数。在这种情况下,对于每个文档,每个段落都有一个字数,典型的方法是使用诸如奇异值分解之类的过程来合并这些段落数。