开源的机器学习框架:Apache Mahout Framework

分类:博客, 资源 标签:

过去十年里,从大量原始数据中解析出相关信息的需求急剧增长,以致于聚类(clustering)、协同过滤(collaborative filtering)和分类(categorization)等机器学习技术的需求也是呈稳定增长势态。基于此,和开发了的开源框架Apache Mahout,Apache Mahout项目采用的开发语言是Java,目前已经推出了它的0.3版本,它的源代码可以通过Subversion获取:
svn checkout http://svn.apache.org/repos/asf/lucene/mahout/trunk lucene/mahout/trunk

目前它的API文档可以在此()浏览。

Grant Ingersoll这样介绍Mahout项目

将已知方法语境中的文档聚类()有助于把注意力集中到某些特定的聚类和内容上,从而避免在无关的内容上浪费精力。
推荐算法()常常用来向用户推荐书籍、音乐、电影等内容,也可以用于多用户协作的应用中精简所需关注的数据。
模式匹配()可用于归类之前没有见过的文档。归类新文档时,算法在模式中查找文档中涉及的词汇, 计算该文档属于各个模式的概率,最后文档将归于概率最大的模式,输入的结果往往都以数值来表示算法本身对这个结果的正确与否有多大的把握。
Mahout项目通过的支持来获得伸缩性。

500万彩票Mahout另一个重点是,它提供一系列把文本数据表示成矩阵形式。这也是采用Mahout机器学习算法来处理数据的首要任务。

Mahout项目是由(开源搜索项目)社区几个热衷于聚类、分类等机器学习算法的技术人员所发起。社区最初的开发“追随”于Ng et al.发表的论文“支持多核之上的机器学习的Map-Reduce框架()”,自项目启动以来,社区也致力于的开发。

最新Apache Mahout版本的亮点有:

500万彩票新添功能:基于高性能的的math、collections模块

500万彩票采用而实现更快的频繁模式增长(Frequent Pattern Growtt)算法

并行计算(基于模型的聚类算法)

并行计算基于共现算法的推荐引擎

结合基于LLR的ngram生成算法并行处理文本文档到向量的转换

并行(奇异 值分解)计算

提供运行算法、工具以及范例的脚本程序

Ingersoll这样介绍这个版本中最激动人心的特性

新添加的分布式奇异值分解(Singular Value Decomposition)计算非常令人期待,此外,还有那些方便用户把内容导入到Mahout的诸多工具。其中,最激动人心的其实并不是有形的,而是Mahout社区的成长。社区目前已吸引到数量众多的贡献者和用户。任何开源项目的发展过程当中,最初阶段往往都很惨淡,工作常常只有一两个人去做,一旦当中有人离开甚至只是减缓开发速度,整个项目都有可能中途夭折。但我相信Mahout已经通过了这样的考验,现在已经有非常多非常活跃的社区成员正努力把它变成一个真正令人激动的项目。

Mahout项目的未来计划包括:

500万彩票今年发布1.0版本,从1.0版本开始发布稳定的API

500万彩票实现诸如随机梯度下降的在线学习功能

提供支持向量机实现

500万彩票SGD和SVM的实现将适宜于文档挖掘以及其它一些与文本或重复归类数据相关的应用。

500万彩票尤其令人期待的是SGD系统将引入在线创建的能力。

这里有一篇比较详细的介绍可供参考



分类:博客, 资源 标签:

发表评论

You must be logged in to post a comment.