博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何选择分类器?
阅读量:5154 次
发布时间:2019-06-13

本文共 1245 字,大约阅读时间需要 4 分钟。

如何为实际的分类应用选择合适的分类器?如果你很关心分类的精度,那么最好的选择是逐个尝试不同的分类器并采用不同的参数,从中选择最好的一个。如果你只是想大致了解一下分类结果,那么本文接下来给出几个挑选原则。

(1)你的数据集有多大?

如果数据集较小,high bias/low variance类型的分类器(例如naive bayes)比low bias/high variance分类器(例如kNN)更有优势,因为后者容易导致过拟合。然而随着训练集的增长,则low bias/high variance分类器更好,因为其渐进误差更小,而此时high bias/low variance分类器不能提供足够准确的分类模型。

 

(2)各分类器的特点。

naive bayes分类器的特点:如果nb分类器的条件独立性假设成立,则naive bayes分类器比logistic regression等discriminative model性能更好,不需要过多的训练集。即便是此假设不成立,naive bayes分类器的实际效果仍然很好,并且能简单快速的得出分类结果。其主要缺点是不能学习特征间的关系。

 

Logistic Regression分类器的特点:相比于Naive Bayes分类器,不需要考虑特征间的关联问题,同时可以规范化模型。相比于决策树或SVM分类器,LR的分类结果具有很好的概率解释,且当训练数据增加时,可以利用在线梯度下降法很容易的更新模型。当你需要一个概率框架(通过调节分类器的阈值得到置信区间)或你希望将来能够接受更多训练数据并快速更新分类模型时,可以使用LR分类器。

 

决策树分类器的特点:很容易解释分类结果,能够处理特征间的关联,非参数化,不需要考虑异常样本或数据是否为线性可分的,其缺点是不支持在线学习,所以当训练集中有新样本加入时,需要重建决策树模型。另外,该分类器容易过拟合(这是随机森林等组合方法共同的问题,随机森林在很多方面比其他分类器较好,其速度快且具有较好的可扩展性,同时不需要像SVM一样调整大批参数)

 

SVM分类器的特点:精度较好,且对于过拟合具有理论保证。如果采用合适的核函数,则可以支持非线性可分的数据分类。在文本分类等高维分类应用中广泛使用。然而SVM分类器是内存密集型,且训练得到的分类模型难以解释,运行和调参比较麻烦。

 

然而,更好的训练数据往往比更好的算法更重要,同时设计更好的特征集合也对分类结果有较大的影响。如果你有大量的数据集,那么不同的分类算法对于分类结果的影响不大,所以你需要选择速度最快或最容易使用的分类算法。如果你比较关心分类的准确度,那么你最好尝试多种分类器并选择效果最好的一个。

 

翻译自http://blog.echen.me/2011/04/27/choosing-a-machine-learning-classifier/

转载于:https://www.cnblogs.com/zqliu133/p/4920753.html

你可能感兴趣的文章
GIS坐标方面术语
查看>>
ANDROID内存优化(大汇总——中)
查看>>
3.3 idea中使用git遇到的一些问题
查看>>
windows应用程序配置log4net日志记录
查看>>
Unity3D For Android 开发教程【转http://game.ceeger.com/Unity/Doc/2011/Unity3D_For_Android.html】...
查看>>
Map集合HashMap,TreeMap
查看>>
用 1,2,2,3,4,5 六个数字,打印出所有不同的排列,要求:"4"不能在第三位,"3"与"5"不能相连...
查看>>
10道典型的JavaScript面试题
查看>>
c# 对象类型、对象总结 ref、out关键字
查看>>
python random模块
查看>>
javascript 和php的要点概括
查看>>
国际聚餐--DDM组圣诞party
查看>>
操作系统
查看>>
20150715竞赛总结
查看>>
ASP.NET中检测图片真实否防范病毒上传
查看>>
Python
查看>>
[ 转载 ] Java基础11--Java总结篇系列:Java泛型
查看>>
40086311Nim
查看>>
CSS实现背景图片屏幕自适应
查看>>
JS强制刷新页面、清除缓存刷新
查看>>