写点什么

Datumbox:基于 Java 的新的开源机器学习框架

  • 2014-10-24
  • 本文字数:1813 字

    阅读完需:约 6 分钟

当今时代的探索和发现都是基于大量的算法、模型以及统计学的测试和工具。Datumbox 公司应运而生,它提供了一套强有力的基于 Java 的开源机器学习框架。

Datumbox API 提供了海量的分类器和自然语言处理服务,能够被应用在很多领域的应用,包括了情感分析、话题分类、语言检测、主观分析、垃圾邮件检测、阅读评估、关键词和文本提取等等。目前,Datumbox 所有的机器学习服务都能够通过 API 获取,该框架能够让用户迅速地开发自己的智能应用。目前,基于 GPL3.0 的 Datumbox 机器学习框架已经开源并且可以从 GitHub 上进行下载。

早期的 Datumbox 0.3.x 之前的框架是去年 8 月和 9 月开发的,它们是使用 PHP 来写的。在今年的五月和六月,新的 0.4.x 版本使用 Java 语言并且扩展了很多特性。这些版本都已经通过了商业应用的深度测试。目前的版本是 Datumbox 0.5.0,相关功能正在进一步完善,这只是第一款对于公众发布的 Alpha 版本。尽管是第一款,框架的 API 已经通过了无数的测试。并且在不久,将会有更加稳定并且优良的版本。

Datumbox 的机器学习平台很大程度上已经能够取代普通的智能应用。用户可以很轻松地注册,并且使用其强有力的、易于使用的 API 来构建自己智能平台服务。Datumbox 的机器学习 API 让每个开发者都能够迅速地构建自己的智能软件和服务。整个实现过程是十分简单的,几分钟就能够搞定。它具有如下几个显著的优点:

  1. 强大并且开源。Datumbox API 使用了强大的开源机器学习框架 Datumbox ,使用其高度精确的算法能够迅速地构建创新的应用。
  2. 易于使用。平台 API 十分易于使用,它使用了 REST&JSON 的技术,对于所有的分类器都提供了一套普通的接口,并且有一套简明的文档和代码样例,来帮助用户进行开发。
  3. 迅速使用。Datumbox 去掉了那些很花时间的复杂机器学习训练模型。用户能够通过平台直接使用分类器。

Datumbox 主要可以应用在四个方面。一个是社交媒体的监视,评估用户观点能够通过机器学习解决,Datumbox 能够帮助用户构建自己的社交媒体监视工具。第二是搜索引擎优化,其中非常有效的方法就是文档中重要术语的定位和优化。第三点是质量评估,在在线通讯中,评估用户产生内容的质量对于去除垃圾邮件是非常重要的,Datumbox 能够自动的评分并且审核这些内容。最后是文本分析,自然语言处理和文本分析工具推动了网上大量应用的产生,平台 API 能够很轻松地帮助用户进行这些分析。

类似于 Datumbox, Mahout Scikit-Learn 也是同一类型的项目,尽管它们拥有完全不同的目标。Mahout 仅仅支持有限的并行算法,这样能够使用 Hadoop 的 Map-Reduce 框架处理大数据。对于另外一个,Scikit-Learn 支持大量的算法但是它不能处理海量的数据。另外,它是基于 Python 进行开发的,能够很好的进行样板开发和科学计算,但并不是软件开发的最好的语言。

不同于如上两种平台,Datumbox 框架采取了一个折中的方式。它使用了 Java,尝试去支持大量的算法,这意味着它能够更轻松地包含产品代码,并且能够调整优化以减少内存消耗,从而使用在实时的系统中。尽管当前 Datumbox 框架只能处理到中型的数据集,它具有扩展到处理大数据的能力。

从平台的各个方面来看,特别是这仅仅是一个 Alpha 版本,Datumbox 机器学习框架有它自己的独特的但是可以接受的限制:

  1. 文档限制:目前说明文档没有很好覆盖所有的部分,更多的需要进行补充。
  2. 没有多线程:这个框架目前没有支持多线程处理,当然并不是所有的机器学习算法都可以并行化。
  3. 代码样例:尽管这个框架已经被发布,在网上可以找到的代码样例是很少的。
  4. 代码结构:为这样一个巨大的工程构建一个坚固的框架是很具有挑战性的,除此之外还需要处理可能彼此之间完全不同的机器学习算法。
  5. 模型持续性和大数据集:目前训练出的模型以 MongoDM 数据库形式存储在硬盘中。为了处理大量的数据,必须要开发另外的解决方案。例如 MapDB 可能是一个很好的选择。
  6. 新的算法、测试以及模型:目前还有很多很强大的技术没有被支持,特别是时序分析方面的技术。

总之,Datumbox 开源项目是一个新推出的很好的项目。对于机器学习、大数据处理方面很有需要的研究者来说,这不得不说是一个福音。用户可以尝试去深究一下开源的代码,从而更加深刻地了解这个平台,让自己地研究更加迅速和模式化。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-10-24 01:334584
用户头像

发布了 268 篇内容, 共 133.9 次阅读, 收获喜欢 24 次。

关注

评论

发布
暂无评论
发现更多内容

软件设计原则作业

梅子黄时雨

极客大学架构师训练营

【玩转写作社区】如何让专业编辑青睐你的文章?被推荐置顶?

InfoQ写作社区官方

写作平台 InfoQ 玩转写作平台 热门活动

使用 Python 制作酷炫多彩的 Jenkins 插件词云图

donghui

jenkins wordcloud

POJO类中布尔类型为啥不让用isXxx命名

Java课代表

Flink on Zeppelin (4) - 机器学习篇

Geek_8o1tcx

大数据 flink 学习 流计算 Zeppelin

【面向对象】—依赖倒置、接口隔离

不二架构

极客大学架构师训练营 依赖倒置 接口隔离原则

第二周作业

Diven

奈学教育《大数据架构师》课程大纲(1)

古月木易

大数据

Cache类接口隔离设计

石刻掌纹

游戏夜读 | 中国的游戏制作人

game1night

TiDB原理解析

二叉查找树的解读和实现

ytao

Java 数据结构

奈学教育《百万架构师》课程大纲(1)

古月木易

极客大学架构师训练营

如何看待年仅 28 岁的程序员实现财务自由,宣布从字节跳动退休?

非著名程序员

程序员 自由职业 程序人生 财富

高承实:区块链将对哪些场景赋能,如何赋能?

CECBC

区块链技术 产业 赋能

UML实践-食堂就餐卡系统

shangyu

极客大学架构师训练营

XSKY发布S3 Console,助力企业轻松玩转非结构化数据可视化管理

XSKY星辰天合

架构师训练营第二周课程感想1

tuuezzy

Java 架构师

使用wavm运行wasi wasm程序

Foliage

记录一下,我的记录之道

非著名程序员

学习 程序员 提升认知 工作效率

实时即未来?一个小微企业心中的流计算

Apache Flink

大数据 flink 流计算 实时计算

图解 Vue1.0 响应式系统

前端黑板报

源码分析 Vue Reactive

架构师-第二周

师哥

奈学教育《百万架构师》课程大纲(1)

奈学教育

架构师

依赖倒置总结

石刻掌纹

《实现领域驱动设计》拆书稿 DDD入门 & 领域、子域和限界上下文

三界

架构 领域驱动设计 DDD

Flink 在快手实时多维分析场景的应用

Apache Flink

大数据 flink 流计算 实时计算

【摘】Git-从零单排 04期

卡尔

数仓大法好!跨境电商 Shopee 的实时数仓之路

Apache Flink

大数据 flink 流计算 实时计算

细说几种内聚

落英亭郎

高内聚 面向对象设计 面向对象思想

奈学教育《大数据架构师》课程大纲(1)

奈学教育

大数据

Datumbox:基于Java的新的开源机器学习框架_Java_张天雷_InfoQ精选文章