数据挖掘面试 模型对比

决策树

ID3

优点:是理论清晰、方法简单、学习能力较强

缺点:只能处理分类属性的数据,不能处理连续的数据;划分过程会由于子集规模过小而造成统计特征不充分而停止;ID3算法在选择根节点和各内部节点中的分支属性时,采用信息增益作为评价标准。信息增益的缺点是倾向于选择取值较多的属性,在有些情况下这类属性可能不会提供太多有价值的信息。

C4.5

  1. 采用二分法对连续属性进行处理。先将特征取值排序,以连续两个值中间值作为划分标准。尝试每一种划分,并计算修正后的信息增益,选择信息增益最大的分裂点作为该属性的分裂点。

优点:克服了 ID3 仅仅能够处理离散属性的问题,以及信息增益偏向选择取值较多特征的问题。

CART

  1. 必须为二叉树,无论属性取值有多个还是两个。

优点:Gini 指数的计算不需要对数运算,更加高效。

Gini 指数更偏向于连续属性,熵更偏向于离散属性。

预剪枝和后剪枝的比较

判断是否带来泛化性能的提升:留出法,即预留一部分数据作为验证集来进行性能评估。根据验证集的精度是否提升进行判断。

预剪枝是指在决策树的生成过程中,对每个节点在划分前先进行评估,若当前的划分不能带来泛化性能的提升,则停止划分,并将当前节点标记为叶节点。

优点:降低过拟合,显著减少了训练时间开销和测试时间开销。

缺点:容易导致欠拟合。

后剪枝是指先从训练集生成一颗完整的决策树,然后自底向上对非叶节点进行考察,若将该节点对应的子树替换为叶节点,能带来泛化性能的提升,则将该子树替换为叶节点。(注:无提升也要剪枝,因为剪枝后的模型更简单)。

优点:欠拟合风险小,泛化性能优于预剪枝。

缺点:训练时间久。

LR

在实际应用中,对于逻辑回归需要注意正则化的问题。L1正则(也称LASSO) 假设模型参数取值满足拉普拉斯分布, L2正则(也称RIDGE) 假设模型参数取值满足高斯分布。

逻辑回归 vs 线性回归

  1. 两者都属于广义线性模型。
  2. 线性回归属于回归任务,而逻辑回归属于分类任务。线性回归在整个实数范围内进行预测,敏感度一致。逻辑回归是在线性回归的基础上,将通过 sigmoid函数,将预测值限定为 [0,1] 间的一种回归模型。
  3. 线性回归优化目标函数用的最小二乘法,而逻辑回归用的是最大似然估计。
  4. 逻辑曲线在 z=0时,十分敏感,在 z远大于0或 z远小于0处,都不敏感 。逻辑回归的鲁棒性比线性回归要好。

L1 和 L2 正则对比

  1. 均为了防止过拟合。
  2. L1 正则化,向量中各元素绝对值之和。L2 正则化,向量中各元素的平方和开根号。
  3. L1正则化倾向于使向量的分量尽量稀疏,L2 正则化倾向于非零分量个数尽量稠密。
  4. L1 会趋向于产生少量的特征,而其他的特征都是 0,而 L2 会选择更多的特征,这些特征都会接近于 0。
  5. L1 正则化又叫稀疏规则算子,关键在于能够实现特征的自动选择,参数稀疏可以避免非必要的特征引入的噪声。

LR与感知机的异同点:

  1. 两类都是线性分类器;
  2. 损失函数两者不同:逻辑斯蒂回归使用极大似然(对数损失函数),感知机使用的是均方损失函数(即错误点到分离平面的距离,最小化这个值)
  3. 逻辑斯蒂比感知机的优点在于对于激活函数的改进。
  4. 前者为sigmoid function,后者为阶跃函数。这就导致LR是连续可导,而阶跃函数则没有这个性质。
  5. LR使得最终结果有了概率解释的能力(将结果限制在0-1之间),sigmoid为平滑函数,能够得到更好的分类结果,而step function为分段函数,对于分类的结果处理比较粗糙,非0即1,而不是返回一个分类的概率。

SVM

应用拉格朗日对偶性,通过求解对偶问题得到原始问题的最优解。优点:

  1. 一是对偶问题往往更容易求解;
  2. 二是自然引入核函数,进而推广到非线性分类问题。

优缺点

缺点:

  1. 时空开销比较大,训练时间长;
  2. 核函数的选取比较难,主要靠经验。

优点:

  1. 在小训练集上往往得到比较好的结果;
  2. 使用核函数避开了高纬空间的复杂性;
  3. 泛化能力强。

LR和SVM的区别

  1. Linear SVM和LR都是线性分类器
  2. Linear SVM和LR都是判别模型
  3. Linear SVM不直接依赖数据分布,分类平面不受一类点影响,受支持向量的影响;LR则受所有数据点的影响,如果数据不同类别处于极其不平衡的状态, 一般需要先对数据做平衡处理。
  4. Linear SVM依赖数据表达的距离测度,所以需要对数据先做标准化;LR不受其影响
  5. Linear SVM依赖惩罚项的系数,实验中需要做交叉验证
  6. Linear SVM和LR的执行都会受到异常值的影响,其敏感程度而言,谁更好很难下明确结论。
  7. Linear SVM和LR损失函数不同, LR为logloss, SVM为hinge loss.

SVM与感知机的区别

SVM分类超平面的解是唯一的,要满足间隔最大化

感知机的解不唯一,没有间隔最大化的约束条件,满足分开数据点的分界面都是可以的

随机森林

优点:

  1. 由于每次不再考虑全部的属性,而是一个属性子集,所以相比于 Bagging 计算开销更小,训练效率更高;
  2. 由于增加了属性的扰动,随机森林中基学习器的性能降低,使得在随机森林在起始时候性能较差,但是随着基学习器的增多,相比于 Bagging,随机森林通常会收敛于更低的泛化误差;
  3. 两个随机性的引入,使得随机森林不容易陷入过拟合,具有很好的抗噪声能力;
  4. 对数据的适应能力强,可以处理离散和连续的,无需要规范化;
  5. 可以得到变量的重要性, 基于oob错误率(包外错误率out-of-bag error)和基于 Gini 系数的变化;
  6. 不同决策树可以由不同主机并行训练生成,效率很高。

缺点:

  1. 在噪声较大的时候容易过拟合。

boosting

主要关注降低偏差。对训练样本分布调整,主要是通过增加误分类样本的权重,降低正确分类样本的权重。

训练目标:最小化指数损失函数。

  1. 先从初始训练集中学习一个基学习器;
  2. 根据基学习器的表现对训练样本分布进行调整,使得先前基学习器做错的训练样本在后续收到更多关注;
  3. 基于调整后的样本分布来训练下一个基学习器;
  4. 如此反复,直到基学习器数目达到 T,最终将这 T 个基学习器进行加权结合。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值