Boosting 框架

Boosting

boosting介绍

  • Boosting是利用n个弱学习器串行生成并融合从而减少整体偏差的集成学习框架

  • Boosting算法的三个要素

    1. 函数模型: Boosting的函数模型是叠加型的,即

    F ( x ) = ∑ i = 1 k f i ( x ; θ i ) F(x)=\sum_{i=1}^k f_i\left(x ; \theta_i\right) F(x)=i=1∑kfi(x;θi)
    2. 目标函数: 选定某种损失函数作为优化目标

    E { F ( x ) } = E { ∑ i = 1 k f i ( x ; θ i ) } E\{F(x)\}=E\left\{\sum_{i=1}^k f_i\left(x ; \theta_i\right)\right\} E{F(x)}=E{i=1∑kfi(x;θi)}
    3. 优化算法: 贪婪地逐步优化,即

    θ m ∗ = arg ⁡ min ⁡ θ m E { ∑ i = 1 m − 1 f i ( x ; θ i ∗ ) + f m ( x ; θ m ) } \theta_m^*=\arg \min {\theta_m} E\left\{\sum{i=1}^{m-1} f_i\left(x ; \theta_i^*\right)+f_m\left(x ; \theta_m\right)\right\} θm∗=argθmminE{i=1∑m−1fi(x;θi∗)+fm(x;θm)}

  • 需要解决两个问题:

    1. 如何调整训练集,使得在训练集上训练的弱分类器得以进行;
    2. 如何将训练得到的各个弱分类器联合起来形成强分类器。
  • 特点

    1. Boosting是一种框架算法,拥有系列算法,如AdaBoost,GradientBoosting,LogitBoost等算法。
    2. Boosting系列算法的主要区别在于其三要素选取的函数不同
    3. 可以提高任意给定学习算法准确度
    4. 训练过程为阶梯状,弱分类器按次序一一进行训练(实现上可以做到并行),弱分类器的训练集按照某种策略每次都进行一定的转化。最后以一定的方式将弱分类器组合成一个强分类器。
    5. Boosting中所有的弱分类器可以是不同类的分类器

Gradient Boosting代码

  • Gradient Boosting代码

    python 复制代码
    class GradientBoosting:
    	def __init__(self, base_learner, n_learners, learning_rate):
    		self.learners = clone(base_learner for _ in range(n_learners)]
    		self.lr = learning_rate
    	
    	def fit(self, X, y):
    		residual = y.copy()
    		for learner in self.learners:
    			learner.fit(X, residual)
    			residual -= self.lr * learner.predict(X)
    	
    	def predict(self,X):
    		preds = [learner.predict(X) for learner in self.learners]
    		return np.array(preds).sum(axis=0) * self.lr 
相关推荐
2301_800074214 分钟前
map,list简单方法
windows·python·list
yychen_java16 分钟前
九:Text-to-SQL 智能数据查询与 Human-in-the-Loop 人机协作
java·人工智能·架构
AI科技先锋报17 分钟前
AI数据资产管理平台全景洞察:从治理基座到智能体应用
大数据·人工智能
章老师说29 分钟前
BFE v1.8.6 正式发布:AI 网关计费精细化、Claude 协议与会话亲和性升级
运维·人工智能·ai·负载均衡·ai-native
冬奇Lab43 分钟前
一天一个开源项目(第206篇):T3 Code - AI 编程 Agent 的统一控制台
人工智能·开源·资讯
IT古董43 分钟前
AI 资讯日报 | 2026年9月1日 :混元 Hy4 开源、DeepSeek 多模态登顶、可灵获国家队 14 亿注资
人工智能·开源
冬奇Lab43 分钟前
Code Agent 解剖(18):AgentTeams——TeamFanout 与 TeamCollect 的并行机制
人工智能
ai小陈1 小时前
FramePack图生视频云端部署实战:从单图输入到视频输出的完整流程
服务器·人工智能·安全·ai·音视频·gpu算力
DeepVisionary1 小时前
30B 参数打平 1 万亿参数:Meta 开源 Muse Glimmer,跑分 35 对 36
python·自动化
程序员-Benothing1 小时前
OpenAI断供Cursor:当AI巨头开始“清理门户“,开源生态的中立性还能撑多久?
人工智能·开源·大模型