机器学习-决策树系列-Adaboost算法-集成学习-29
1. adaboost算法的基本思想
集成学习是将多个弱模型集成在一起 变成一个强模型 提高模型的准确率,一般有如下两种:
bagging: 不同的base model可以并行计算,输出预测结果少数服从多数,回归问题则对多个模型输出的结果求平均。
boosting:后一个模型的训练需要依赖前一个模型,所以模型的训练会特备耗时没法并行,Adaboost、GBDT、Xgboost主要有这三种。
对样本赋予权重,迭代的方式构造弱分类器,后一个分类器依赖前一个分类器 。
多个弱分类器的线性组合得到最终的强分类器。

例如:



对于前一个分类器分错的样本,后一个分类器会格外的注重,训练的时候增加该样本的权重,以便这次训练的时候要分对,训练模型的同时 计算出本次的弱模型输出结果的权重

算法的核心:通过调整输入数据的权重,让本来还不错的分类器的权重正确率达到1/2
什么是权重正确率?
数据预测的错误率 =(错误数据的个数)/(全部数据的个数)
数据预测的权重错误率 =(预测错误数据的权重和)/(全部数据的权重和)
举例:
有一个标签集实际是{+1,+1,+1,+1,-1}
训练出一个g1(x)的分类结果{+1,+1,+1,+1,+1}
最后一个分出错了,如果这5条样本的权重是一样的 错误率=1/5
如果最后那个样本的权重是1/2 其余的是1/8 那么权重错误率是多少? 1/2
1/2 / 1/2+1/8+1/8+1/8+1/8
也就是说做错的那道题分数分其他的题是不一样的 越难的题分数越高
2. 具体实现
通过权重不同来训练弱分类器模型gt(x),那么我们每次找到g(x)都应该使当前时刻权重正确率最大。



调整t+1次训练的样本的权重 使得: 正确率(带权重的) 等于 错误率(带权重)
如何调整?引入缩放因子
t+1 样本权重的计算:

Δt 一般是一个大于1的数
对于分类正确的样本 权重除以Δt
对于分类错误的样本 权重乘以Δt
本次的弱模型输出权重:
也就是:α=ln(Δt)

U1 到 U2 是如何计算的
过程:

机器学习-决策树系列-Adaboost算法-集成学习-29的更多相关文章
- 基于单层决策树的AdaBoost算法源码
基于单层决策树的AdaBoost算法源码 Mian.py # -*- coding: utf-8 -*- # coding: UTF-8 import numpy as np from AdaBoos ...
- 机器学习笔记(九)---- 集成学习(ensemble learning)【华为云技术分享】
集成学习不是一种具体的算法,而是在机器学习中为了提升预测精度而采取的一种或多种策略.其原理是通过构建多个弱监督模型并使用一定策略得到一个更好更全面的强监督模型.集成学习简单的示例图如下: 通过训练得到 ...
- 机器学习实战之AdaBoost算法
一,引言 前面几章的介绍了几种分类算法,当然各有优缺.如果将这些不同的分类器组合起来,就构成了我们今天要介绍的集成方法或者说元算法.集成方法有多种形式:可以使多种算法的集成,也可以是一种算法在不同设置 ...
- 基于单层决策树的AdaBoost算法原理+python实现
这里整理一下实验课实现的基于单层决策树的弱分类器的AdaBoost算法. 由于是初学,实验课在找资料的时候看到别人的代码中有太多英文的缩写,不容易看懂,而且还要同时看代码实现的细节.算法的原理什么的, ...
- 机器学习——提升方法AdaBoost算法,推导过程
0提升的基本方法 对于分类的问题,给定一个训练样本集,求比较粗糙的分类规则(弱分类器)要比求精确的分类的分类规则(强分类器)容易的多.提升的方法就是从弱分类器算法出发,反复学习,得到一系列弱分类器(又 ...
- 《机器学习技法》---AdaBoost算法
1 AdaBoost的推导 首先,直接给出AdaBoost算法的核心思想是:在原数据集上经过取样,来生成不同的弱分类器,最终再把这些弱分类器聚合起来. 关键问题有如下几个: (1)取样怎样用数学方式表 ...
- 机器学习-决策树之ID3算法
概述 决策树(Decision Tree)是一种非参数的有监督学习方法,它是一种树形结构,所以叫决策树.它能够从一系列有特征和标签的数据中总结出决策规则,并用树状图的结构来呈现这些规则,以解决分类和回 ...
- 《机器学习实战》AdaBoost算法(手稿+代码)
Adaboost:多个弱分类器组成一个强分类器,按照每个弱分类器的作用大小给予不同的权重 一.Adaboost理论部分 1.1 adaboost运行过程 注释:算法是利用指数函数降低误差,运行过程通过 ...
- 机器学习--聚类系列--DBSCAN算法
DBSCAN算法 基本概念:(Density-Based Spatial Clustering of Applications with Noise) 核心对象:若某个点的密度达到算法设定的阈值则其为 ...
- 机器学习--聚类系列--K-means算法
一.聚类 聚类分析是非监督学习的很重要的领域.所谓非监督学习,就是数据是没有类别标记的,算法要从对原始数据的探索中提取出一定的规律.而聚类分析就是试图将数据集中的样本划分为若干个不相交的子集,每个子集 ...
随机推荐
- C# 基础编程题集锦
简单字符串加密 编写一个应用程序用来输入的字符串进行加密,对于字母字符串加密规则如下: 'a→d' 'b'→'e' 'w'→z' ...... x'→'a' 'y'→b' 'z→c' 'A'→'D' ...
- Python:单元测试框架unittest
1.什么是单元测试 测试函数/方法或者一段代码,用于检验被测代码的一个很小的.很明确的功能是否正确,通常是开发做. 在Python中的单元测试框架有Unittest和Pytest,现在总结Unitte ...
- 设置ElementUI的el-table组件表格内容居中
方式一:比较麻烦 // 在每一个el-table-column中添加align='center'属性 <el-table-column prop='createTime' label='创建时间 ...
- 算法那么多,AI量化交易策略如何选择最佳算法?
常见算法优劣比较 算法没有最好,只有更好. 这个问题的答案取决于许多因素,例如股票市场的条件,数据集的质量和特征工程的有效等.接下来,我们来看看这些算法的优势和劣势: 神经网络:适用于复杂的非线性问题 ...
- Selenium-ActionChains动作链(针对鼠标、滚轮等操作
https://www.selenium.dev/documentation/webdriver/actions_api/ 注意:对于滚轮的操作,只支持chrome浏览器,且selenium版本在4. ...
- 文心一言 VS 讯飞星火 VS chatgpt (165)-- 算法导论13.1 5题
五.用go语言,证明:在一棵红黑树中,从某结点 x 到其后代叶结点的所有简单路径中,最长的一条至多是最短一条的 2 倍. 文心一言: 首先,我们要理解红黑树的性质.红黑树是一种自平衡的二叉查找树,它满 ...
- Springboot快速集成阿里云RocketMq
前言 随着互联网的兴起,越来越多的用户开始享受科技带来的便利,对于服务的压力也日益增大,随即便有了高并发.高性能.高可用等各种解决方案,这里主要介绍RocketMq的集成方法.(文末附源码地址) 正文 ...
- Guava Cache 异步刷新技巧,你值得拥有!
Guava Cache是一款非常优秀的本地缓存框架,提供简洁易用的 API 供开发者使用. 这篇文章,我们聊聊如何使用 Guava Cache 异步刷新技巧带飞系统性能 . 1 基本用法 首先,在 J ...
- zabbix 利用脚本发邮件(mail)
# 源码安装mailx tar jxvf mailx-12.3.tar.bz2 make && make install UCBINSTALL=/usr/bin/install #yu ...
- Docker 部署工具
Docker 容器的创建比较简单,容器解决了应用程序对于运行环境的依赖问题,但是在当前所处的微服务盛行的情况下,手动管理容器是一件比较重复其及其枯燥的工作,这项工作理论上可以通过计算机来完成,因此涌现 ...