【开源】北大团队大规模稀疏数据机器学习库xLearn,c++ trending 已超TensorFlow-阿里云开发者社区

开发者社区> 技术小能手> 正文

【开源】北大团队大规模稀疏数据机器学习库xLearn,c++ trending 已超TensorFlow

简介: 机器学习博士马超近日在微博上介绍他和导师肖臻教授一起开发的一款专门针对大规模稀疏数据的机器学习库xLearn并开源。并称, vision 是将 xLearn 打造成和 xgboost,MXNet一样的工业事实标准。
+关注继续查看

该项目由肖臻教授和马超博士合作完成。

肖臻教授 美国康奈大学博士 之前任美国AT&T 和 IBM 科学家。研究方向分布式系统和机器学习。在国际顶级刊物发表论文60余篇,论文引用超过4000次。

马超,北大云计算课题组博士生,研究方向分布式系统与大规模机器学习。同时担任亚马逊AWS 应用科学家实习生,负责MXNet 分布式性能优化。

14e73b29582988856bde27723e49f8912bce0380

目前在c++ trending 上,xLearning已经超过 tensorflow

马超在微博上介绍:

在机器学习里,除了深度学习和树模型 (GBDT, RF) 之外,如何高效地处理高维稀疏数据也是非常重要的课题,Sparse LR, FM, FFM 这些算法被广泛运用在实际生产和kaggle比赛中。现有的开源软件例如 liblinear, libfm, libffm 都只能针对特定的算法,并且可扩展性、灵活性、易用性都不够友好。基于此,我在博士期间开发了 xLearn,一款专门针对大规模稀疏数据的机器学习库,曾在之前 NIPS 上做过展示。经过打磨,现开源(https://github.com/aksnzhy/xlearn) 。我们的 vision 是将 xLearn 打造成和 xgboost,MXNet一样的工业事实标准。

相比于已有的软件,xLearn的优势主要有(1)通用性好,我们用统一的架构将主流的算法(lr, fm, ffm 等)全部囊括,用户不用再切换于不同软件之间。(2)性能好。xLearn由高性能c++开发,提供 cache-aware 和 lock-free learning,并且经过手工 SSE/AVX 指令优化。 在单机MacBook Pro上测试 xLearn 可以比 libfm 快13倍,比 libffm 和 liblinear 快5倍(基于Criteo CTR数据 bechmark)。(3)易用性和灵活性,xLearn 提供简单的 python 接口,并且集合了机器学习比赛中许多有用的功能,例如:cross-validation,early-stopping 等。除此之外,用户可以灵活选择优化算法(例如,SGD,AdaGrad, FTRL 等)(4) 可扩展性好。xLearn 提供 out-of-core 计算,利用外存计算可以在单机处理 1TB 数据。除此之外,xLearn 也提供分布式训练功能。这里我希望更多的朋友加入这个开源项目!

e94e403f46e96f710943146bb5c9742dddbeded0

马超的微博截图

性能

c5ab6d58454b56ef47e9c2f2fb9e7986cb3435c8

xLearn是由高性能的C ++代码精心设计和优化而开发的。系统旨在最大限度地利用CPU和内存,提供缓存感知计算,并支持无锁学习。通过结合这些见解,与相似系统相比,xLearn速度提高了5倍 - 13倍。

易用

0df0021faeddca495a5256ec4e77f15cbd902b9d

xLearn不依赖任何第三方库,因此用户只需克隆代码并使用cmake编译即可。此外,xLearn支持用户非常简单的Python API。除此之外,xLearn支持许多有用的功能,已经在机器学习竞赛中广泛使用,如交叉验证,提前停止等。

可扩展性

ee1328e7daac946e2ca6fb2008226ab8c1ed587c

xLearn可以用来解决大规模的机器学习问题。首先,xLearn支持非核心训练,只需利用单台机器的磁盘即可处理非常大的数据(TB)。此外,xLearn还可以支持分布式训练,这种训练在许多机器上都可以扩展到数十亿个示例。


原文发布时间为:2017-11-26

本文作者:弗格森

本文来自云栖社区合作伙伴新智元,了解相关信息可以关注“AI_era”微信公众号

原文链接:【开源】北大团队大规模稀疏数据机器学习库xLearn,c++ trending 已超TensorFlow

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里 Pouch 技术开源负责人孙宏亮:如何在复杂场景下实现容器技术的大规模运用
在双十一买买买的狂潮之后,阿里选择第一时间将 Pouch 技术开源,无疑,这又一次吸引无数开发者的目光。 借助阿里将自研容器技术 Pouch 开源的契机,采访了阿里 Pouch 技术的开源负责人孙宏亮。
4209 0
大型项目开发: 隔离 (《大规模C++程序设计》书摘)
书中第六章 隔离。 主要在撰述什么需要定义在头文件?什么应当移到编译单元中? 核心仍然是先区分接口定义与实现细节。
880 0
蚂蚁金服 Service Mesh 大规模落地系列 - 核心篇
当 Service Mesh 遇到双十一又会迸发出怎样的火花?蚂蚁金服的 LDC 架构继续演进的过程中,Service Mesh 要承载起哪方面的责任?让我们一起来揭秘蚂蚁金服 Service Mesh 双十一实战,可能是业界最大规模落地。本文为《蚂蚁金服 Service Mesh 落地实践系列》第一篇 - 核心篇
897 0
阿里深度学习框架开源了!无缝对接TensorFlow、PyTorch
阿里巴巴将于12月开源其内部深度学习框架 X-DeepLearning,面向广告、推荐、搜索等高维稀疏数据场景,以填补TensorFlow、PyTorch等现有开源深度学习框架主要面向图像、语音等低维稠密数据的不足。
2611 0
企业打开云HBase的正确方式,来自阿里云云数据库团队的解读
一、HBase的历史由来 HBase是一个开源的非关系型分布式数据库(NoSQL),基于谷歌的BigTable建模,是一个高可靠性、高性能、高伸缩的分布式存储系统,使用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。
3917 0
开启数据智慧,阿里云大数据团队调研高新区
随着“云计算”、“互联网”、“物联网”的快速发展,大数据(Big Data)也吸引了越来越多的人关注,成为社会热点之一。大街小巷不论是技术人员、咨询人士以及各行各业的精英达人都在探讨着“大数据”,“大数据”显然已经成为新一代“网红”。
2013 0
Netflix开源面向稀疏数据优化的轻量级神经网络库Vectorflow
在Netflix公司,我们的机器学习科学家在多个不同的领域处理着各种各样的问题:从根据你的爱好来定制电视和推荐电影,到优化编码算法。我们有一小部分问题涉及到处理极其稀疏的数据;手头问题的总维度数很容易就能达到数千万个特征,即使每次要看的可能只是少数的非零项。
4234 0
+关注
技术小能手
云栖运营小编~
7208
文章
9
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载