数据挖掘——集成学习

数据挖掘------集成学习

集成学习

集成学习(Ensemble learning)方法通过组合多种学习算法来获得比单独使用任何一种算法更好的预测性能。

动机是为了提高但分类器的性能

Bagging:有放回采样

Bagging算法,也称作Bootstrap Aggregating,是一种集成学习的方法。它通过从原始数据集中随机抽取多个有放回的样本集,然后基于这些样本集训练多个独立的学习器,最后将这些学习器的输出进行组合以得到最终的预测结果。

具体的步骤如下:

  1. 从原始训练集中随机抽取多个有放回的样本集,每个样本集的大小与原始训练集相同。
  2. 使用每个样本集训练一个独立的学习器,可以使用任何分类或回归算法。
  3. 对于分类问题,将每个学习器的输出进行投票,选择得票最多的类别作为最终的预测结果。
    对于回归问题,将每个学习器的输出进行平均,作为最终的预测结果。
  4. 最终的预测结果即为集成学习器的输出。

Bagging算法通过在训练过程中引入随机性,可以减小过拟合的风险,提高模型的稳定性和泛化能力。它适用于大部分机器学习算法,并且可以并行地训练多个学习器,提高模型训练的效率。

随机森林

基本思想:随机森林就是通过集成学习的思想将多棵树集成的一种算法,它的基本单元是决策树(如CART)。

随机森林的名称中有两个关键词,一个是"随机",一个就是"森林"。

  • "森林"很好理解,一棵叫做树,那么成百上千棵就可以叫做森林了,其实这也是随机森林的主要思想--集成思想的体现。
  • "随机"的包括随机选取训练样本集和随机选取分裂属性集。

优点:

  • 两个随机性的引入,使得随机森林不容易陷入过拟合
  • 两个随机性的引入,使得随机森林具有很好的抗噪声能力
  • 对数据集的适应能力强:既能处理离散型数据,也能处理连续型数据,数据集无需规范化且能够有效地运行在大数据集上
  • 能够处理具有高维特征的输入样本,而且不需要降维
  • 对于缺省值问题也能够获得很好得结果。

Boosting

核心思想:样本的权重

  • 没有先验知识的情况下,初始的分布应为等概分布,也就是训练集如果有N个样本,每个样本的分布概率为1/N
  • 每次循环后提高错误样本的分布概率,分错样本在训练集中所占权重增大, 使得下一次循环的弱学习器能够集中力量对这些错误样本进行判断

弱学习器的权重

  • 准确率越高的弱学习机权重越高

循环控制:损失函数达到最小

  • 在强学习器的组合中增加一个加权的弱学习器,使准确率提高,损失函数值减小

Stacking

Stacking算法(也称为stacked generalization)是一种用于集成学习的算法。它通过将多个基础模型的预测结果作为输入,再通过一个元模型来组合这些预测结果,从而得到最终的预测结果。Stacking算法的基本思想是将基础模型的预测结果作为新的特征,再将这些特征输入给元模型进行训练和预测。具体而言,Stacking算法的步骤如下:

  1. 将训练数据集分为若干个子集(通常是交叉验证的折数);
  2. 对于每个子集,使用不同的基础模型进行训练,并使用该模型对剩下的子集进行预测;
  3. 将不同模型的预测结果堆叠在一起,作为新的特征;
  4. 使用元模型(通常是线性回归、逻辑回归等)对新特征进行训练,并使用该模型对测试数据进行预测。

Stacking算法的优点在于它能够结合不同模型的优势,提高预测准确性。然而,Stacking算法也存在一些缺点,例如需要更多的计算资源和时间,以及可能会导致过拟合问题。因此,在使用Stacking算法时需要谨慎选择基础模型和元模型,并进行适当的调参和交叉验证。

相关推荐
AI科技星几秒前
引力与电磁的动力学耦合:变化磁场产生引力场与电场方程的第一性原理推导、验证与统一性意义
服务器·人工智能·科技·线性代数·算法·机器学习·生活
hkNaruto2 分钟前
【AI】AI学习笔记:OpenAI Tools完全指南:从原理到实战入门
人工智能·笔记·学习
狮子座明仔5 分钟前
MiMo-V2-Flash 深度解读:小米 309B 开源 MoE 模型如何用 15B 激活参数吊打 671B 巨头?
人工智能·语言模型·自然语言处理
紧固件研究社6 分钟前
从标准件到复杂异形件,紧固件设备如何赋能制造升级
人工智能·制造·紧固件
木头左6 分钟前
贝叶斯深度学习在指数期权风险价值VaR估计中的实现与应用
人工智能·深度学习
反向跟单策略7 分钟前
期货反向跟单—高频换人能够提高跟单效率?
大数据·人工智能·学习·数据分析·区块链
哎吆我呸7 分钟前
Android studio 安装Claude Code GUI 插件报错无法找到Node.js解决方案
人工智能
咕噜企业分发小米8 分钟前
独立IP服务器有哪些常见的应用场景?
人工智能·阿里云·云计算
YJlio9 分钟前
WinObj 学习笔记(15.7):看懂内核对象管理器与命名空间的“地图”
linux·服务器·网络·windows·笔记·学习·微信
测试者家园13 分钟前
AI 智能体如何构建模拟真实用户行为的复杂负载场景?
人工智能·压力测试·性能测试·智能体·用户行为·智能化测试·软件开发和测试