这个面试的时候也经常会问,让你比较某几个算法的适用条件,数据、特征量到什么规模时选用哪种算法。
(1)决策树
适用条件:数据不同类边界是非线性的,并且通过不断将特征空间切分为矩阵来模拟。特征之间有一定的相关性。特征取值的数目应该差不多,因为信息增益偏向于更多数值的特征。
优点:1.直观的决策规则;2.可以处理非线性特征;3.考虑了变量之间的相互作用。
缺点:1.容易过拟合(随机森林);2.处理缺失数据时的困难。
(2) SVM
适用条件:特征空间大,可以处理非线性的特征。
优点:1.可以处理高维特征;2.使用和函数应对非线性特征空间;3.分类面不依赖所有数据;4.对缺失的一些数据并不敏感。
缺点:1.对于大量的预测样本,效率会很低;2.需要找合适的核函数。
(3) LR
适用条件:数据线性分布;
优点:1.模型简单,训练速度快;2.逻辑回归广泛应用与工业问题上。
缺点:1.特征空间大时性能不好;2.对于非线性特征需要转换;3.依赖于全部数据。
(4) 三者对比:
模型复杂度:SVM支持核函数,可处理线性非线性问题;LR模型简单,训练速度快,适合处理线性问题;决策树容易过拟合,需要进行剪枝
损失函数:SVM hinge loss; LR L2正则化; DT adaboost 指数损失
数据敏感度:SVM添加容忍度对outlier不敏感,只关心支持向量,且需要先做归一化; LR对远点敏感
数据量:数据量大就用LR,数据量小且特征少就用SVM非线性核
(5) 神经网络
适用条件:数据量庞大,参数之间存在内在联系。
优点:1.并行分布处理能力强;2.提取数据特征;3.逼近复杂的非线性关系。
缺点:1.需要大量参数;2.学习时间过长;3.不能观察之间的学习过程,输出结果难以解释。
2965



被折叠的 条评论
为什么被折叠?



