We present a suite of packages in R, Python, Julia, and C++ that efficiently solve the Sorted L-One Penalized Estimation (SLOPE) problem. The packages feature a highly efficient hybrid coordinate descent algorithm that fits generalized linear models (GLMs) and supports a variety of loss functions, including Gaussian, binomial, Poisson, and multinomial logistic regression. Our implementation is designed to be fast, memory-efficient, and flexible. The packages support a variety of data structures (dense, sparse, and out-of-memory matrices) and are designed to efficiently fit the full SLOPE path as well as handle cross-validation of SLOPE models, including the relaxed SLOPE. We present examples of how to use the packages and benchmarks that demonstrate the performance of the packages on both real and simulated data and show that our packages outperform existing implementations of SLOPE in terms of speed.
翻译:本文介绍一套R、Python、Julia及C++语言程序包,用于高效求解排序L1惩罚估计(SLOPE)问题。这些程序包采用高效混合坐标下降算法,可拟合广义线性模型(GLM),并支持多种损失函数,包括高斯、二项式、泊松及多项逻辑回归。我们的实现旨在追求快速、内存高效及灵活性。程序包支持多种数据结构(稠密、稀疏及内存外矩阵),并能高效拟合完整SLOPE路径以及处理SLOPE模型的交叉验证,包括松弛SLOPE。我们通过使用示例及基准测试,展示了程序包在真实和模拟数据上的性能,并证明我们的程序包在速度上优于现有的SLOPE实现。