机器学习Adaboost算法----SAMME算法和SAMME.R算法

Adaboost算法----SAMME算法

自适应提升机(Adaptive Boosting,简称 AdaBoost)是一种集成学习算法,通过组合多个弱分类器(弱分类器有多种选择,如决策树)来构建一个强分类器。AdaBoost在Python环境SKlearn里主要包含了SAMME算法和SAMME.R算法。

AdaBoost SAMME算法的核心思想是逐步调整训练数据的权重,使得模型能够专注于那些难以分类的样本。基于超声雷达回波数据对目标障碍物进行高低分类属于二分类机器学习任务,使用AdaBoost算法比较合适。

在使用AdaBoost对目标数据集进行训练时,首先会对所有目标样本进行权重初始化,假设当前目标样本数量为N个,则单个样本的初始权重为:

在第一次迭代时,第一个弱分类器会根据当前的所有训练样本进行预测,并筛选出所有被错误分类的样本,然后用错误分类的样本的权重计算当前弱分类器的加权误差:

并用加权误差计算当前弱分类器的最终权重:

\\alpha_t 即为当前弱分类器的最终权重,并用于更新样本权重作为下一个弱分类器的样本权重,以此进行迭代计算:

使用adaboost算法进行二分类任务模型训练时,算法会把所有样本标签转为 1 或 -1 用于训练。 模型训练好后用于对目标cluster进行高低分类预测时,每一个弱分类器都会对目标障碍物进行预测并输出预测结果(预测结果为 1或-1),最后对所有弱分类器的输出结果进行相加,根据结果的正负作为最终的预测结果(大于0为正样本,小于0为负样本)。为避免出现所有弱分类器和为0的情况(一般不会出现),弱分类器个数可设为奇数。

Adaboost算法----SAMME.R算法

在AdaBoost中使用SAMME.R算法(Stagewise Additive Modeling using a Multi-class Exponential loss function with Real-valued predictions)进行二分类时,基分类器(决策树)的行为与SAMME有本质区别:

1. ​​SAMME.R的核心要求​

  • SAMME.R要求基分类器能够输出类别概率(即软分类),而非离散的类别标签。
  • 算法利用这些概率计算加权的类别概率估计,并直接更新加法模型的输出(无需显式的基分类器权重αt)。

2. ​​决策树叶节点的输出​

  • ​在训练时​​:决策树会按照标准方法构建(例如使用加权基尼指数或加权熵选择分裂),但在叶节点处需要输出​​属于每个类别的概率估计​​(而不仅仅是多数票类别)
  • ​概率计算方式​
    • 对于二分类问题,假设叶节点包含样本的权重向量wi和类别标签(0或1)。

    • 计算该叶节点中每个类别的权重和:

      复制代码
      S0​=∑​wi​,yi​=0
      S1​=∑​wi​,yi​=1
    • 叶节点输出概率为归一化的权重比例:

      复制代码
      p0​=S0​/(S1+​S0)​​,p1​=S1/(S0+​S1)​​
    • 因此,叶节点输出是一个概率向量,例如[p_0, p_1](二分类时两个值)。

3. ​​AdaBoost SAMME.R的训练过程​

  • 算法根据基分类器输出的概率pt(x)计算加权概率估计,并更新加法模型:

    复制代码
    Fk​(x)←Fk​(x)+(K−1)(logpt​(k∣x)−K1​j=1∑K​logpt​(j∣x))

    其中K为类别数(二分类时K=2)。

  • 注意:不需要计算基分类器的权重αt,因为直接使用概率输出。

以上就是Adaboost算法----SAMME算法和SAMME.R算法的解释,希望能帮助到各位。

相关推荐
CS创新实验室10 小时前
算法、齿轮与硅基大脑:数值计算发展简史
人工智能·算法·数值计算
海石12 小时前
1563分的简单题,可能就简单在能被暴力AC
算法·leetcode
海石12 小时前
1400分的dp汗流浃背之【交替子数组计数】
算法·leetcode
奋发向前wcx12 小时前
P2590 树的统计 题目解析
数据结构·算法·深度优先
imbackneverdie13 小时前
AI4S不止于分子药物:以MedPeer为代表的科研基建打开产业新增量
大数据·人工智能·算法·aigc·科研·学术·ai 4s
EQUINOX113 小时前
【论文阅读】| MoCo精读
论文阅读·人工智能·python·深度学习·机器学习
额鹅恶饿呃14 小时前
C语言中的数据结构和变量
c语言·数据结构·算法
运行时记录15 小时前
prompt-optimizer skill
算法
万法若空15 小时前
【数据结构-哈希表】哈希表原理
数据结构·算法·散列表
退休倒计时15 小时前
【每日一题】LeetCode 437. 路径总和 III TypeScript
算法·leetcode·typescript