资讯动态

孙旭东、黄哲学等:LogoML——一个面向分布式大数据分析的开放机器学习库

发布时间:2026/8/4 13:07:51 来源:尧图企业网站定制
在 Hadoop、Spark 上跑分布式机器学习长期被三座大山压着迭代算法效率低下、数据扩展性差、把复杂算法硬拆进 Map/Reduce 的刚性结构异常困难——最后这点直接让许多好用的算法「上不了分布式」。深圳大学黄哲学团队在《Big Data Mining and Analytics》提出 LogoML它扎根于 RSP 随机样本划分数据模型与 LOGO 分布式计算框架让算法以「顺序写法」并行执行每次只取约 5% 的数据块却在效率、精度与可扩展性上全面压过 Spark MLlib 与 Smile。论文信息英文题名LogoML: An Open Machine Learning Library for Distributed Big Data Analytics作者孙旭东、蔡永达、陶艺、麦浪杰、黄哲学通讯单位深圳大学管理学院、深圳大学计算机与软件工程学院等期刊Big Data Mining and AnalyticsBDMA2026pp.1—19DOI10.26599/BDMA.2025.9020104关键词机器学习库大数据分析近似计算分布式计算一、为什么分布式机器学习「算法少、跑得慢」传统顺序库R / Scikit-learn / Smile 等算法丰富却跑不动大数据分布式库本该补位现实却相反算法稀少Hadoop 上的 Mahout 只有 27 个算法Spark 的 MLlib 约 50 个而 Scikit-learn、Smile 有 150图算法、神经网络、NLP、可视化等大量任务缺位。迭代效率低MapReduce 每次迭代都有沉重的 I/O 与节点间通信开销训练类算法尤其吃亏。数据扩展性差分布式算法依赖内存计算可用内存直接卡死了能算的数据规模。编程太难把复杂算法拆成一对对 Map/Reduce 几乎不可能导致很多有用算法在分布式系统里「不可用」。根因在于 MapReduce 范式本身。LogoML 的破局思路是换一套计算范式。二、核心思想RSP LOGO让顺序算法「原地」分布式LogoML 站在两项新技术之上。其一是 RSP随机样本划分数据模型把一份分布式数据文件表示成一组「随机样本数据块」每块都是原文件的随机样本、可独立分析。其二是 LOGO 分布式计算框架用一种非 MapReduce 范式把一次分析拆成两个核心操作局部操作 LOLocal Operation把同一个顺序算法在多个节点/虚拟机上并行地跑在一组 RSP 数据块上各自产出「局部结果」。此阶段节点间零通信迭代算法因此极快且无需把顺序算法改写成分布式版本。全局操作 GOGlobal Operation在主节点用集成ensemble算法把所有局部结果聚合成最终的「集成结果」。只需一次把局部结果汇总到主节点GO 本身也没重迭代、计算轻。【图1】LOGO 系统架构HDFS 上的数据经 RSP 转换与采样层进入 InputRDD由 DAGScheduler/TaskScheduler 调度worker 节点并行做 LO主节点做 GO 集成。【图2】LogoML 库架构算法按 LO分类/回归/聚类/特征工程/关联规则/NLP与 GO分类/回归/聚类集成两类组织。【图3】一次分析任务的数据流RspDataset → LO → RspRDD局部结果→ GO → RspRDD集成结果。三、四项关键设计如何协同1. 顺序算法的「即插即用」封装借助 LOGOLogoML 用标准算子把来自 Smile、Scikit-learn 或自研的顺序代码包起来。以决策树为例先定义标准算子 LO_Decision_Tree若算法输入格式与 TrainRDD 不一致就用 dataConvert 函数转换再用 Maven 编译进 LogoML 的 JAR 包应用里即可像调 API 一样调用见图4 封装模板。任意顺序算法都能这样变身为分布式算法。2. GO 的三类集成方法LO 产出的局部结果形态各异GO 据结果类型用不同集成算法监督学习多数投票、加权投票、平均、加权平均、Stacking 等无监督学习聚类用各 RSP 块产出的簇中心做「重聚类」consensus避开传统集成聚类对关联矩阵的依赖频繁项集挖掘FIM用 FP-Growth 在各块产出局部频繁项集再以投票决定最终项集、以多块支持度的均值作为最终支持度得到近似频繁项集。3. 开放架构算法可长可加LogoML 提供标准 API 与封装模板用户能方便地把新算法加进库里。团队已把基础算法库与实验代码开源在 GitHub鼓励社区共建个性化算法库。4. 近似计算只用 5% 数据块基于统计理论LogoML 每次分析只随机取约 5% 的 RSP 数据块大数据集可更低、小数据集可更高。这是块级随机采样比 SparkML-OS 的记录级随机采样更高效也是其高效与可扩展的关键。四、在评测中见真章环境30 节点集群Spark 3.5.0 YARN跑分布式算法桌面服务器i7、64GB跑顺序算法对比对象为 LogoML、SparkMLMLlib 全量、SparkML-OSMLlib 采样 5%、Smile单机全量共 15 个算法。真实数据集HIGGS7.48GB28 特征2 类、MNIST_PCA6.79GB87 特征10 类合成数据集DS1—DS28100GB—10TB100 特征2 类、DS29—DS4810^5—10^9 笔交易评频繁项集。小数据集又快又准在 HIGGS 上决策树执行时间 LogoML 12.03 秒远快于 SparkML 的 100.85 秒与 Smile 的 118.33 秒随机森林 21.54 秒 vs 177.50 / 226.44 秒。精度上集成学习让 LogoML 多数占优随机森林 HIGGS 准确率 0.7061SparkML 0.7041、Smile 0.7042逻辑回归 MNIST_PCA 0.8619另两者约 0.80。部分算法在单机上直接内存溢出标 O更显分布式之必要。大数据集SparkML 撞上内存墙LogoML 岿然不动在 100GB—10TB 的合成数据上SparkML 执行时间随数据量接近内存极限而指数级飙升并失效SparkML-OS 因在线采样呈线性增长而 LogoML 的执行时间几乎不随数据量变化——块级采样让它天然可扩展到 TB 级。频繁项集挖掘的召回率/精确率随数据量增大收敛至近 100%普遍高于 97%。硬数字通信开销是隐形杀手节点间数据通信是分布式学习的大头。实验显示去掉通信开销后Bisecting K-means 与 FP-Growth 的执行时间分别减少 72.3% 与 72.7%平均而言用 LogoML 替换 Spark MLlib 对应算法约可省下 50% 的总执行时间。这正来自 LOGO 在 LO 阶段「节点间零通信」的设计。五、落地应用与未来方向LogoML 瞄准的是企业智能化最日常的需求数据集成、预处理、特征工程、模型构建与可视化乃至 NLP。它算法丰富、迭代高效、可扩展到 TB 级以上数据特别适合金融、零售、制造等拥有海量事务与业务数据的行业做挖掘与决策。团队当前正探索两件大事把 LogoML 部署到多集群分析分布在地理分散数据中心的大数据设计新架构让 LogoML 支持深度学习算法。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价