不同ML分类器的不同性能,我能推断出什么?

时间:2016-02-03 17:07:52

标签: machine-learning scikit-learn classification prediction

我使用python scikit-learn在我的研究中使用了ML方法。我发现SVM和逻辑回归分类器效果最好(例如:85%的准确度),决策树的工作效率明显更差(65%),然后Naive Bayes的工作效率明显更差(40%)。

我会写出结论来说明一些ML分类器在很大程度上比其他分类器工作得更好,但是我还可以根据这些观察结果对我的学习任务或数据结构说些什么呢?

版:

数据集涉及500,000行,我有15个特征,但有些特征是某些文本的子串的各种组合,因此它自然地扩展到数万个列作为稀疏矩阵。我使用人名来预测一些二进制类(例如:性别),尽管我从名称实体中提取了很多工程师,比如名称的长度,名称的子串等等。

1 个答案:

答案 0 :(得分:1)

我建议您通过scikit-learn小组http://scikit-learn.org/stable/tutorial/machine_learning_map

访问选择正确的估算工具这张精彩的地图

描述你自己案件的细节将是一项艰巨的任务(我完全理解你没有这样做!)我鼓励你问自己几个问题。因此,我认为“选择正确的估算器”的地图是一个良好的开端。

从字面上看,转到地图中的“开始”节点,然后按照路径进行操作:

  • 是我的样本数> 50?

等等。最后你可能会在某个时候结束,看看你的结果是否与地图中的建议相符(即我最终是否在SVM中,这给了我更好的结果?)。如果是这样,请深入了解文档,并问自己为什么一个分类器在文本数据或任何洞察力方面表现更好。

正如我告诉你的那样,我们不知道你的数据的细节,但你应该能够提出这样的问题:我有什么类型的数据(文本,二进制,...),有多少样本,要预测多少个类,...理想情况下,您的数据会为您提供有关问题背景的一些提示,因此为什么某些估算器的性能优于其他估算器。

但是,你的问题在一个答案中是非常广泛的(特别是在不知道你正在处理的问题类型的情况下)。例如,您还可以检查是否有更多倾向于过度拟合的方法。

推荐列表可能是无穷无尽的,这就是为什么我鼓励你开始定义你正在处理的问题类型和你的数据(加上样本数量,它是否正常化了?它是否分散?你在稀疏矩阵中表示文本,你的输入是否从0.11浮动到0.99)。

无论如何,如果您想分享一些关于数据的细节,我们可能会更准确地回答。希望这有点帮助,但是;)