Fregata 轻量级大规模机器学习算法库

程序名称:Fregata

授权协议: Apache

操作系统: 跨平台

开发语言: Scala

Fregata 介绍

Fregata 是一个基于 Apache Spark 的轻量级、超快速、大规模的机器学习库,并在 Scala 中提供了高级 API。

特性

  • 更准确:对于各种问题,Fregata 可以实现比 MLLib 更高的精度。

  • 更快速:对于广义线性模型,Fregata 在绝大部分数据上都能够扫描一遍数据即收敛。对于 10 亿 X 10 亿的数据集,Fregata 可以在 1 分钟内用内存缓存训练广义线性模型,或在没有内存缓存的情况下训练 10 分钟。通常,Fregata 比 MLLib 快 10-100 倍。

  • 算法无需调参(调参相对简单):Fregata 使用 GSA SGD 优化。GSA 算法是梯度型随机优化算法,也是 Fregata采用的核心优化方法。它是基于随机梯度下降法(SGD)的一种改进:保持了 SGD 易于实现,内存开销小,便于处理大规模训练样本的优势,同时免去了 SGD 不得不人为调整学习率参数的麻烦。

  • 更轻量:Fregata 只使用 Spark 的标准 API,能快速,无缝地集成到 Spark 大多数业务的数据处理流程上。

架构

这份文档是关于 Fregata 0.1 版本的

  • core : 主要实现基于 GSA 的独立算法,包括 分类、回归聚类分析

    • Classification:支持二进制和多重分类

    • Regression:即将发布

    • Clustering:即将发布

  • spark : 主要通过包裹 core.jar 实现基于 spark 的大规模机器学习算法,并提供相应的算法

Fregata 支持 spark 1.x 以及带 scala 2.10 和 scala 2.11 的 2.x

算法

Fregata 官网

https://github.com/TalkingData/Fregata

相关编程语言

欧盟第7框架计划(FP7)的LarKC项目的目标是开发大规模...
Salad 是一种有效且灵活的实现著名的异常检测方法回...
multilanguage 是一个多语开发工具包,用于缓存多语...
go-cortex 是一个服务,通过倾听你的句子,并视图理...
DKPro Core 是基于 Apache UIMA 框架之上的自然语言...
NLTK 会被自然地看作是具有栈结构的一系列层,这些层...