『壹』 用于数据挖掘的分类算法有哪些,各有何优劣

常见的机器学习分类算法就有,不常见的更是数不胜数,那么我们针对某个分类问题怎么来选择比较好的分类算法呢?下面介绍一些算法的优缺点:

1. 朴素贝叶斯
比较简单的算法,所需估计的参数很少,对缺失数据不太敏感。如果条件独立性假设成立,即各特征之间相互独立,朴素贝叶斯分类器将会比判别模型,如逻辑回归收敛得更快,因此只需要较少的训练数据。就算该假设不成立,朴素贝叶斯分类器在实践中仍然有着不俗的表现。如果你需要的是快速简单并且表现出色,这将是个不错的选择。其主要缺点现实生活中特征之间相互独立的条件比较难以实现。

2. 逻辑回归
模型训练时,正则化方法较多,而且你不必像在用朴素贝叶斯那样担心你的特征是否相关。与决策树与支持向量机相比,逻辑回归模型还会得到一个不错的概率解释,你甚至可以轻松地利用新数据来更新模型(使用在线梯度下降算法)。如果你需要一个概率架构(比如简单地调节分类阈值,指明不确定性,获得置信区间),或者你以后想将更多的训练数据快速整合到模型中去,逻辑回归是一个不错的选择。

3. 决策树
决策树的分类过程易于解释说明。它可以毫无压力地处理特征间的交互关系并且是非参数化的,因此你不必担心异常值或者数据是否线性可分。它的一个缺点就是不支持在线学习,于是在新样本到来后,决策树需要全部重建。另一个缺点是容易过拟合,但这也就是诸如随机森林(或提升树)之类的集成方法的切入点。另外,随机森林经常是多分类问题的赢家(通常比支持向量机好上那么一点),它快速并且可调,同时你无须担心要像支持向量机那样调一大堆参数,所以随机森林相当受欢迎。

4. 支持向量机
高准确率,为避免过拟合提供了很好的理论保证,而且就算数据在原特征空间线性不可分,只要给个合适的核函数,它就能运行得很好。在超高维的文本分类问题中特别受欢迎。可惜内存消耗大,难以解释,运行和调参也有些烦人,所以我认为随机森林要开始取而代之了。

但是,好的数据却要优于好的算法,设计优良特征比优良的算法好很多。假如你有一个超大数据集,那么无论你使用哪种算法可能对分类性能都没太大影响(此时就根据速度和易用性来进行抉择)。
如果你真心在乎准确率,你一定得尝试多种多样的分类器,并且通过交叉验证选择最优。