文档聚类/分类中的功能?

时间:2013-08-12 07:24:31

标签: machine-learning libsvm feature-selection svm

这可能听起来很天真,但我只是想确保在使用机器学习术语时,文档聚类中的功能是从文档中选择的单词,如果某些单词在词干之后被丢弃或作为停止词。

我正在尝试使用LibSvm库,它说不同类型的{no_of_instances,no_of_features}有不同的方法。

如果no_of_instances比no_of_features低很多,那么线性内核会这样做。如果两者都很大,线性会很快。但是,如果no_of_features很小,则非线性内核更好。

因此,对于我的文档聚类/分类,我有少量文档,例如100,每个文档可能有2000左右的单词。所以我属于小no_of_instances和大no_of_features类别,具体取决于我认为的功能。

我想将tf-idf用于文档。

那么no_of_features是我从tf-idf得到的向量的大小吗?

1 个答案:

答案 0 :(得分:1)

你在这里谈论的只是一种可能性,实际上是定义文档功能的最简单方法。在机器学习中,术语特征是从输入空间(在此特定示例中 - 从文档空间)到某个抽象空间的任何映射,该抽象空间适用于特定的机器学习模型。大多数ML模型(如神经网络,支持向量机等)都在数值向量上工作,因此要素必须是从文档到(常量)数字向量的映射。这是有时选择 bag of owrds 的表示的原因,其中我们有一个单词'count vector作为文档表示。这种限制可以通过使用特定模型来克服,例如Naive Bayes(或SVM的自定义内核,使其能够使用非数字数据),只要我们可以定义特定的条件概率,它就可以在任何对象上工作 - 在这里,最基本的方法是将包含特定单词的文档视为“特征”。一般来说,这不是唯一的可能性,有许多方法使用统计特征,语义特征(基于像wordnet这样的一些本体)等。

总结一下 - 这只是机器学习模型的一个最简单的文档表示。很高兴开始,很好地理解基础知识,但远不是一个“功能定义”。

修改

no_of_features是您用于文档表示的向量的大小,因此如果使用tf-idf,则生成的vecor的大小为no_of_featuers