我一直试图通过阅读各种博客、网站来理解梯度提升,并试图通过查看例如 XGBoost 源代码来找到我的答案。但是,对于梯度提升算法如何产生概率估计,我似乎找不到一个可以理解的解释。那么,他们如何计算概率呢?
梯度提升如何计算概率估计?
机器算法验证
机器学习
分类
集成学习
助推
2022-02-08 22:29:48
1个回答
TL;DR:样本的对数几率是其终端叶子的权重之和。样本属于第 1 类的概率是总和的逆 logit 变换。
与逻辑回归类似,逻辑函数计算在 logit 尺度上呈线性的概率:
与逻辑回归不同,“特征”被构造为使用提升过程的决策树集合的终端节点。每一行收集每个样本的终端叶子;该行是-热二元向量,对于树的数量。(每个 XGBoost 树都是根据特定算法生成的,但这与这里无关。)
有中的列,每个终端节点一列。终端节点的总数没有表达式,因为节点的数量可能因树而异(根据我的经验,通常是这样)。
树中的每一片叶子都有一个相关的“权重”。该重量记录在. 要符合, 有中的元素. 权重本身来自梯度提升过程;请参阅:在 XGboost 中,是为每个样本估计的权重,然后取平均值
其它你可能感兴趣的问题