1

我正在尝试使用向量空间模型在 SVM Light 中构建一个 SVM 分类器。我有 1000 个文档和一个术语词典,我将使用它来矢量化每个文档。在 1000 个文档中,600 个用于我的训练集,而其余 400 个将平均分配(每个 200 个)用于我的交叉验证集和我的测试集。

现在假设我要使用我的 600 个训练集(使用 tf-idf 向量化)来训练我的 SVM 分类器,以便生成分类模型。

当我将模型应用于我的交叉验证集时,我会使用相同的 idf(因为模型对应于我的训练集),还是需要根据交叉验证集计算一个新的 idf?另外,如果我要将模型应用于单个文档,我将如何应用 idf,因为该集合仅包含 1 个文档?

4

2 回答 2

2

您在培训文档中构建 idf,并在新的测试文档出现时使用它。对于每个测试文档,您可以使用查询中每个术语的 idf 为查询创建一个单词列表。如果 idf 中不包含某个词,则查询返回 0。根据已建立的 idf 获取分类。

于 2013-12-12T16:38:09.853 回答
1

您应该使用与训练集相同的 idf,因为您构建了与该 idf 对应的分类器,因此您的结果将与新的 idf 不同。

于 2013-12-12T16:04:55.773 回答