机器学习之集成学习(一)Ensemble Learning

集成学习( Ensemble Learning )

  • 定义:集成学习是使用一系列学习器进行学习,并使用某种规则把各个学习结果进行整合从而获得比单个学习器更好的学习效果的一种机器学习方法。一般情况下,集成学习中的多个学习器都是同质的"弱学习器"。
  • 介绍:机器学习在生产、科研和生活中有着广泛应用,而集成学习则是机器学习的首要热门方向。
  • 思想:集成学习是训练一系列学习器,并使用某种结合策略把各个学习结果进行整合,从而获得比单个学习器更好的学习效果的一种方法。如果把单个学习器比作一个决策者的话,集成学习的方法就相当于多个决策者共同进行一项决策。集成模型不是单独的ML模型,而是通过先构建后结合多个ML模型来完成学习任务。

集成学习的两个问题

  • 先构建:如何得到若干个个体学习器、弱学习器、基础学习器、基学习器(同质的,异质的,主流的)
  • 后结合:如何选择一种结合策略,将这些个体学习器集合成一个强学习器
    回归
    Boosting:直接叠加、正则后叠加、学习法(Stacking)
    Bagging :平均法、带权平均法、学习法
    分类
    Boosting :直接叠加、正则后叠加、学习法
    Bagging :投票法、带权投票法、学习法

集成学习的两种思想

Boosting思想

  • 个体学习器之间存在强依赖关系,一系列个体学习器基本都需要串行生成,然后使用组合策略,得到最终的集成模型,这就是boosting的思想
    在这里插入图片描述

Bagging思想( Bootstrap AGGregatING )拔靴

  • 个体学习器之间不存在强依赖关系,一系列个体学习器可以并行生成,然后使用组合策略,得到最终的集成模型,这就是Bagging的思想
    在这里插入图片描述

基于Bagging的回归的例题

在这里插入图片描述

代码实现如下

import pandas as pd
from sklearn.tree import DecisionTreeRegressor
import numpy as np
# 上述数据
df = pd.DataFrame([[1,5.56],[2,5.7],[3,5.91],[4,6.4],[5,6.8],[6,7.05],[7,8.9],[8,8.7],[9,9],[10,9.05]])

M = []# 存储决策树模型的数组
n_trees = 20  # 设置树的颗数
for i in range(20):  # 训练多棵树
    tmp = df.sample(frac=1,replace=True)# 对样本进行采样,目的是建造不同的树
    X = tmp.iloc[:,:-1]  # 构造X
    Y = tmp.iloc[:,-1] # 构造Y
    model = DecisionTreeRegressor(max_depth=1)   # 新建决策树模型
    # 将决策树模型加入数组
    model.fit(X,Y)
    M.append(model)
    # 打印每个基础模型的效果
    print(model.score(X,Y))

X = df.iloc[:,:-1]# 获取全部数据的X
Y = df.iloc[:,-1]# 获取全部数据的Y
res = np.zeros(len(X))# 初始化全零向量
for i in M: # 遍历模型数组
    res += i.predict(X) #将每个模型预测值叠加到res变量
#取平均输出最终对每个样本标签的预测值
print(res/len(M))

'''
# 效果如下
0.9174312129413125
0.9933611875456895
0.8834052788835288
0.9790699506984106
0.9283118374340684
0.8590321059602172
0.9159507153079276
0.8995985226717107
0.9087798506403157
0.7801729763892038
0.9224175713033511
0.9071987434636697
0.8830137295487387
0.8597925404878746
0.893260566409407
0.9243444301530738
0.8819039973866
0.8474055206398489
0.8433414796024934
0.8164014870065539
>>[6.24846369 6.24846369 6.24846369 6.24846369 6.41153512 6.56273512
 8.24609524 8.90065476 8.90065476 8.90065476]
'''
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
完整全套资源下载地址:https://download.csdn.net/download/qq_27595745/66030967 【完整课程列表】 完整版 南京邮电大学 机器学习课程教程PPT课件 1-1.机器学习简介-上课版part1(共31页).ppt 完整版 南京邮电大学 机器学习课程教程PPT课件 1-2 机器学习简介-上课版part2(共55页).ppt 完整版 南京邮电大学 机器学习课程教程PPT课件 2. 概念学习 分类(共27页).ppt 完整版 南京邮电大学 机器学习课程教程PPT课件 3 决策树(共44页).ppt 完整版 南京邮电大学 机器学习课程教程PPT课件 4-1 贝叶斯学习(共18页).ppt 完整版 南京邮电大学 机器学习课程教程PPT课件 5. 神经网络(共42页).ppt 完整版 南京邮电大学 机器学习课程教程PPT课件 6 支持向量机(共29页).ppt 完整版 南京邮电大学 机器学习课程教程PPT课件 7. 基于实例的学习-k近邻(共17页).ppt 完整版 南京邮电大学 机器学习课程教程PPT课件 8-1 模式选择和评估(共30页).pdf 完整版 南京邮电大学 机器学习课程教程PPT课件 8-2 模式选择和评估(共14页).ppt 完整版 南京邮电大学 机器学习课程教程PPT课件 9. 计算学习理论(共26页).ppt 完整版 南京邮电大学 机器学习课程教程PPT课件 10 聚类分析(共74页).ppt 完整版 南京邮电大学 机器学习课程教程PPT课件 12 特征选择(共36页).ppt 完整版 南京邮电大学 机器学习课程教程PPT课件 13 Sparse-SDM10(共133页).pdf 完整版 南京邮电大学 机器学习课程教程PPT课件 14 机器学习总结(共25页).ppt 完整版 南京邮电大学 机器学习课程教程PPT课件 15 Overview of ensemble(共31页).ppt

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值