最流行的用于预测的机器学习算法简介及其优缺点说明
预测问题一直是机器学习领域最重要的问题之一。很多算法包括回归、决策树等都是用来解决预测的常用算法。预测问题的核心是基于已有的有标签的数据来判断新数据的标签。一般来说,根据预测标签是离散的还是连续的可以分成分类问题和回归问题。注意,本篇博客主要是快速回顾描述各个模型的优缺点,因此不会对模型有很深的介绍。
本文主要总结一下常见的六种预测算法,每一类算法都会简要地描述其概念及其优缺点。
一、线性回归(Linear Regression)
二、逻辑回归(Logistic Regression)
三、决策树(Decision Tree)
四、随机森林(Random Forest)
五、梯度提升(Gradient Boosting)
六、神经网络(Neural Networks)
一、线性回归(Linear Regression)
描述:线性回归是一种统计的方法,它尝试使用一个线性方程来拟合两个变量之间的关系。其中一个变量是解释变量,另一个是因变量。在线性回归中,使用线性预测函数对关系进行建模,其未知的模型参数是根据数据估计的。
优点:1、易于理解;2、可以看到哪个变量对模型影响最大。
缺点:1、对于复杂的变量关系难以捕捉;2、容易过拟合。
二、逻辑回归(Logistic Regression)
描述:逻辑回归其实算是线性回归的一种,但是其预测标签是只有0和1。所以它其实是一种分类模型。如下图所示,逻辑回归最终是由一个sigmoid函数将结果映射到0-1之间,并且一般会设置一个threshold,高于这个值的预测结果为1,低于这个值的结果为0。
优点::易于理解
缺点::与线性回归一样,有时候容易过拟合,且不能捕捉过于复杂的关系。
三、决策树(Decision Tree)
描述:它使用树模型来描述观察特征到目标变量之间的路径。在这些树结构中,叶子代表类标签,树枝代表导致这些类标签的特征的连接。目标变量可以取连续值(通常为实数)的决策树被称为回归树。
优点:容易理解且易于实现
缺点:对于复杂数据的建模能力较差,现实使用较少。
四、随机森林(Random Forest)
描述:随机森林或随机决策森林是一种用于分类、回归和其他任务的集合学习方法,它通过在训练时构建大量的决策树来操作。
优点:使用多棵树群体决策,有时候会产生非常好的结果,同时训练的速度很快。
缺点:与其它算法相比,产生预测结果可能比较慢。是一个相对黑盒的模型,不太容易理解预测结果。
五、梯度提升(Gradient Boosting)
描述:梯度提升是一种用于回归、分类和其他任务的机器学习技术,它以弱预测模型(通常是决策树)的集合形式产生预测模型。当决策树是弱学习者时,产生的算法被称为梯度提升树,它通常优于随机森林。 它像其他提升方法一样以阶段性的方式建立模型,它通过允许优化任意可分损失函数对它们进行泛化。
优点:预测性能很好。
缺点:训练集或者是预测集微小的变化会导致模型巨大的改变。同时对于预测结果不太容易理解。
六、神经网络(Neural Networks)
描述:神经网络或者说深度学习是这几年很火的模型了,在预测领域它也有很好的表现,有不同的隐层组成的神经网络结构是预测很好的模型。
优点:可以处理非常复杂的数据集,规模越大效果可能越好。
缺点:训练过程很慢,且需要很多的资源。几乎无法对结果理解。