Weighted Quantile Sketch
专门处理流式和分布式加权数据集的一种分桶的方法
近似算法的一个重要步骤是提出候选分裂点。通常使用特征的百分位数来使候选数据均匀分布。形式上,设 D k = ( x 1 k , h 1 ) , ( x 2 k , h 2 ) ⋅ ⋅ ⋅ ( x n k , h n ) D_k = {(x_{1k}, h_1),(x_{2k}, h_2)···(x_{nk}, h_n)} Dk=(x1k,h1),(x2k,h2)⋅⋅⋅(xnk,hn)表示每个训练实例的第 k k k个特征值和二阶梯度统计量。我们可以定义一个秩函数 r k : R → [ 0 , + ∞ ) rk: R→[0,+∞) rk:R→[0,+∞):
r k ( z ) = 1 ∑ ( x , h ) ∈ D k h ∑ ( x , h ) ∈ D k , x < z h , r_k(z)=\dfrac{1}{\sum_{(x,h)\in\mathcal{D}_k}h}\sum\limits_{(x,h)\in\mathcal{D}_k,x<z}h, rk(z)=∑(x,h)∈Dkh1(x,h)∈Dk,x<z∑h,
表示在特征值 k k k小于

WeightedQuantileSketch是一种处理流式和分布式加权数据集的分桶方法,用于近似算法中的候选分裂点选择。通过定义秩函数和使用加权的平方损失,该算法能处理加权数据并提供理论保证。GK算法是快速计算数据流近似分位数的方法,具有确定的误差边界,适用于不断增长的数据流。XGBoost中的分位点算法利用了这些思想,实现了加权样本的高效近似。文章讨论了算法的合并和剪枝操作,以及如何在XGBoost中应用它们来优化模型训练。
最低0.47元/天 解锁文章
2744

被折叠的 条评论
为什么被折叠?



