使用IntelliJ IDEA 编译开源的机器学习源码--Oryx

 

What is Oryx?

大名鼎鼎的Sean Owen (http://www.linkedin.com/in/srowen) 正在 Cloudera 作为 Director of Data Science 专注投身于名为Oryx的开源机器学习项目当中。(Oryx意思是剑羚,属于非洲羚羊的一类分支)。如果您读过《Mahout in Action》这本书,您应该有印象:此书的作者之一就是Sean Owen。

Oryx的开发意图在于帮助Hadoop用户构建机器学习模式并将其加以部署,这样我们就能够以实时方式查询并获取其结果——例如将其作为垃圾邮件过滤器或者推荐引擎的组成部分。

作为Hadoop当中实现机器学习模式创建的传统途径,Apache Mahout "已经走到了发展道路的尽头。"Owen如是说

The Oryx open source project provides simple, real-time large-scale machine learning / predictive analytics infrastructure.

Architecture

Oryx does two things at heart: builds models, and serves models. These are the responsibilities of two separate components, the Computation Layer and Serving Layer, respectively.

 

在 IntelliJ IDEA 中编译 Oryx 

虽然我是忠实的 Visual Studio 的拥趸(老牌的Windows Phone Developer),但是在工作中不可避免也会遇到 Java 开发的工作,比如目前专注的基于机器学习算法的推荐引擎。对我而言,Eclipse 是生命中不能承受之轻(至少目前为止是如此),之前基于 Apache Mahout 所做的推荐算法是在 Eclipse 中编码和生成Jar包,遇到的问题无数。比如在 Eclipse 中导入 不管是 Mahout 还是 Oryx 的源码都出现我无法解决的编译错误。众所周知 Mahout 和 Oryx 都是基于 Maven 编译的,而在我的 Eclipse 开发环境中出现的 Maven 编译错误,花费了很多时间查找资料,但是最终还是无从解决。

在得知机器学习领域的大神Sean Owen 使用 IntelliJ IDEA 开发 Oryx ,毅然决然地安装 IntelliJ IDEA Community Edition ( http://www.jetbrains.com/idea/download/ )。

在 Cloudera 的开发者社区 Data Science and Machine Learning 论坛您可发现 Owen 的足迹,耐心地为开发者解答 Apache Mahout 和 Oryx 的疑问。

 

在 Windows 8.1 中启动 IntelliJ IDEA,打开从 GitHub 下载的 Oryx 开源代码 (https://github.com/cloudera/oryx ) 。

 

 

在 Oryx Project 上点击鼠标右键,选择 "Maven" – "Reimport",IntelliJ IDEA 重新导入项目所依赖的 Maven Libraries。

 

至此,Oryx 的源码即可编译成功,研究之,学习之。

 

posted @ 2014-03-20 19:24  Xuesong  阅读(3238)  评论(3编辑  收藏  举报