🔥 今日值得一读 树集成推理提速7.8倍!TreeWalker分组部分求值,兼容LightGBM和XGBoost
TreeWalker: Partial Evaluation for Grouped Tree-Ensemble Inference
arXiv LG (cs.LG) 🔥 重点 #推理优化#树模型#部分求值 🕐 今天 12:00
👨‍💼 主理人解读 · 为什么值得关注
适合生存分析、CTR预估等成组打分场景,一次遍历复用共享计算,显著降低推理延迟。

📖 AI 总结

TreeWalker 针对树集成模型推理中普遍存在的“分组共享特征”场景提出优化方案。此类场景包括离散时间生存模型将每位患者展开为多个时间步、点击率模型对同一搜索会话内所有条目打分,以及仅变动少量输入的情景分析等。传统推理逐行独立处理,导致共享计算被重复执行 G 次。TreeWalker 引入部分求值思想,将组内常量特征视为静态、变化特征视为动态,对每棵树在每组内仅遍历一次,并利用位掩码在动态分裂处划分行、跳过空子树,且无需改动训练流程,可直接读取 LightGBM 与 XGBoost 模型。作者证明了结构性工作分解,并给出每行工作量随 G 增大趋近于 (d_v+1)/(d+1) 的理论结果。实验显示,在 Intel 平台上其速度较逐行遍历提升 2.5 至 3.2 倍,G=128 时在生存数据集上提升 6.8 至 7.8 倍,Arm 平台收益更大,情景分析基准的全部 16 种配置均更快;数值精度方面,f64 模型输出与 treelite GTIL 在求和顺序范围内一致,f32 模型采用 f64 累加在 99.98% 的行上更接近 Kahan 补偿参考值。该工作为分组推理提供了可证明的加速框架,对生存分析、推荐与情景分析等实际负载具有直接应用价值。

🔑 关键词速览

TreeWalker一种针对分组树集成推理的部分求值方法,通过利用组内共享特征值来减少重复计算。
部分求值 (Partial Evaluation)一种程序优化技术,在编译或运行时将部分输入视为常量,从而特化计算过程。
树集成 (Tree Ensemble)由多棵决策树组成的模型,通过聚合各树的预测结果来进行推理,如 LightGBM 和 XGBoost。
分组推理 (Grouped Inference)对具有共享特征值的行组进行批量推理,而非独立处理每一行。
Kahan 补偿求和一种减少浮点求和舍入误差的算法,通过补偿项提高数值精度。
infoAI 公众号二维码

📱 每天一份 AI 前沿日报

关注公众号,每天 09:00 推送 · 不错过任何重磅