一种用于平滑 L2 正则化损失函数大规模无约束最小化的多项式展开线搜索及其在 Apache Spark 中的实现
数值分析
2016-01-27 v2 分布式、并行与集群计算
数值分析
摘要
在有限内存 BFGS (LBFGS) 等大规模无约束优化算法中,一个常见子问题是沿下降方向最小化损失函数的线搜索。常用线搜索迭代地寻找满足 Wolfe 条件的近似解,通常每次线搜索需要多次函数与梯度求值,由于通信需求在并行时代价高昂。本文针对损失函数可解析的情况(如最小二乘回归、逻辑回归或低秩矩阵分解)提出一种新的线搜索方法。我们用截断泰勒多项式近似损失函数,其系数可高效并行计算,且比计算梯度通信更少,随后该多项式可在展开点邻域内高精度最小化。我们的多项式展开线搜索 (PELS) 在 Apache Spark 框架中实现,并用于加速使用 LBFGS 和非线性共轭梯度 (NCG) 方法对 LIBSVM 库中的二分类数据集训练逻辑回归模型。在使用 URL、KDDA 和 KDDB 数据集的 16 节点 256 核集群上的大规模并行数值实验中,与经典 Wolfe 线搜索相比,PELS 方法带来了显著的收敛改进。例如,为达到最终训练标签预测精度,采用 PELS 的 LBFGS 在迭代次数和所需时间上均比采用 Wolfe 线搜索的 LBFGS 加速 1.8--2 倍,这归因于线搜索中计算的步长具有更高精度。PELS 有潜力显著加速大规模回归与分解计算,并适用于具有平滑损失函数的连续优化问题。
引用
@article{arxiv.1510.08345,
title = {A polynomial expansion line search for large-scale unconstrained minimization of smooth L2-regularized loss functions, with implementation in Apache Spark},
author = {Michael B Hynes and Hans De Sterck},
journal= {arXiv preprint arXiv:1510.08345},
year = {2016}
}
备注
9 pages, 8 figures, 2 tables. Preprint appearing in SIAM Conf on Data Mining, Miami, FL, 2016