选自arXiv, 作者:Tony Duan、Anand Avati等,机器之心编译,参与:熊猫。在此论文中,来自斯坦福的研究者们提出了 NGBoost 梯度提升方法以解决现有梯度提升方法难以处理的通用概率预测中的技术难题。
自然梯度提升(NGBoost / Natural Gradient Boosting)是一种算法,其以通用的方式将概率预测能力引入到了梯度提升中。预测式不确定性估计在医疗和天气预测等很多应用中都至关重要。概率预测是一种量化这种不确定性的自然方法,这种模型会输出在整个结果空间上的完整概率分布。梯度提升机(Gradient Boosting Machine)已经在结构化输入数据的预测任务上取得了广泛的成功,但目前还没有用于实数值输出的概率预测的简单提升方案。NGBoost 这种梯度提升方法使用了自然梯度(Natural Gradient),以解决现有梯度提升方法难以处理的通用概率预测中的技术难题。这种新提出的方法是模块化的,基础学习器、概率分布和评分标准都可灵活选择。研究者在多个回归数据集上进行了实验,结果表明 NGBoost 在不确定性估计和传统指标上的预测表现都具备竞争力。
链接:https://arxiv.org/pdf/1910.03225v1.pdf
引言
很多真实世界的监督机器学习问题都具有表格式的特征和实数值的目标。但模型很少应该对预测结果有绝对的信心。在这样的任务中,估计预测结果中的不确定性就很重要了,尤其是当预测结果与自动化决策直接相关时——因为概率式不确定性估计在确定工作流程中的人工后备方案方面非常重要。
而梯度提升机(GBM)是一系列能很好地处理结构化输入数据的高度模块化的方法,即使数据集相对较小时也能很好地完成。但是,如果方差被假定为常数,那么这种概率式解释就没什么用处。预测得到的分布需要有至少两个自由度(两个参数),才能有效地体现预测结果的幅度和不确定度。正是这个基础学习器多个参数同时提升的问题使得 GBM 难以处理概率式预测,而 NGBoost 通过使用自然梯度能够解决这个问题。
这篇论文提出了自然梯度提升,这是一种用于概率预测的模块化的提升算法,其使用了自然梯度,从而可以灵活地整合不同的以下模块:
-
基础学习器(比如决策树)
-
参数概率分布
-
评分规则(MLE、CRPS 等)
NGBoost: 自然梯度提升
NGBoost 算法是一种用于概率预测的监督学习方法,其实现提升的方式是以函数形式预测条件概率分布的参数。研究者这里的实验关注的重点是实数值输出,但他们也表示这些方法全都可用于其它模式的预测,比如分类和事件发生时间预测。
-
基础学习器(f)
-
参数概率分布(P_θ)
-
合适的评分规则(S)
在每次迭代 m,对于每个样本 i,算法都会根据该样本直到该阶段的预测结果参数计算评分规则 S 的自然梯度 g_i。注意 g_i 和维度与 θ 一致。该迭代的一组基础学习器 f 将进行拟合,以便预测每个样本 x_i 的自然梯度的对应分量。