使用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 的源码即可编译成功,研究之,学习之。
使用IntelliJ IDEA 编译开源的机器学习源码--Oryx的更多相关文章
- Spring源码学习01:IntelliJ IDEA2019.3编译Spring5.3.x源码
目录 Spring源码学习01:IntelliJ IDEA2019.3编译Spring5.3.x源码 前言 工欲善其事必先利其器.学习和深读Spring源码一个重要的前提:编译源码到我们的本地环境.这 ...
- Spring源码解析 | 第一篇 :IntelliJ IDEA2019.3编译Spring5.3.x源码
前言 工欲善其事必先利其器.学习和深读Spring源码一个重要的前提:编译源码到我们的本地环境.这样方便我们在本地环境添加注释.断点追踪.查看类或接口的继承关系等等,更加高效的学习Spring源码.个 ...
- 开源MyBatisGenerator组件源码分析
开源MyBatisGenerator组件源码分析 看源码前,先了解Generator能做什么? MyBatisGenerator是用来生成mybatis的Mapper接口和xml文件的工具,提供多种启 ...
- 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新
本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...
- 【原】Android热更新开源项目Tinker源码解析系列之一:Dex热更新
[原]Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Tinker是微信的第一个开源项目,主要用于安卓应用bug的热修复和功能的迭代. Tinker github地址:http ...
- 【原】Android热更新开源项目Tinker源码解析系列之二:资源文件热更新
上一篇文章介绍了Dex文件的热更新流程,本文将会分析Tinker中对资源文件的热更新流程. 同Dex,资源文件的热更新同样包括三个部分:资源补丁生成,资源补丁合成及资源补丁加载. 本系列将从以下三个方 ...
- android 在线升级借助开源中国App源码
android 在线升级借助开源中国App源码 http://www.cnblogs.com/luomingui/p/3949429.html android 在线升级借助开源中国App源码分析如下: ...
- 编译hadoop2.2.0源码时报错
编译hadoop2.2.0源码时, mvn install -DskipTests 报错: [ERROR] COMPILATION ERROR : [INFO] ------------------- ...
- Ubuntu12.04编译Android4.0.1源码全过程-----附wubi安装ubuntu编译android源码硬盘空间不够的问题解决
昨晚在编译源码,make一段时间之后报错如下: # A fatal error has been detected by the Java Runtime Environment: # # SIGSE ...
随机推荐
- WPF钟表效果实现
WPF在样式定义和UI动画上面相对于以前的技术有了不少的提升,下面给出WPF技术实现钟表的效果: 1.Visual Studio新建一个WPF应用程序,命名为WpfClock,新建一个images文件 ...
- NodeJS API简介
简单介绍下NodeJS现有API. Assert(断言):该模块用于编写程序的单元测试用例. Buffer(缓冲块) :处理二进制数据. C/C++ Addons(拓展):Addons插件就是动态连接 ...
- JavaScript学习笔记-面向对象的模块化编程
面向对象的模块化编程 模块是一个独立的JS文件,模块文件可以包含一个类定义.一组相关的类.一个实用函数库.一些待执行的代码 模块化的目标:支持大规模的程序开发,处理分散源代码的组装,并能让代码正确执行 ...
- 拓展:使用终端创建、编译、链接OC…
本文介绍一下如何使用Mac OS X自带终端快速创建.编译.链接OC程序. 1.打开终端 顺序:打开Finder——应用程序——实用工具——终端 2.打开需要存放 .m 文件的路径(比如我需要放到桌面 ...
- socket编程中客户端常用函数 以及简单实现
1 常用函数 1.1 connect() int connect(int sockfd, const struct sockaddr *servaddr, socklen_taddrlen); 客 ...
- Android网络请求框架
本篇主要介绍一下Android中经常用到的网络请求框架: 客户端网络请求,就是客户端发起网络请求,经过网络框架的特殊处理,让后将请求发送的服务器,服务器根据 请求的参数,返回客户端需要的数据,经过网络 ...
- ios 返回指定导航控制器
UINavigationController *navigationVC = self.navigationController; NSMutableArray *viewControllers = ...
- XCLNetTools1.0(ASP.NET常用类库)
版权声明:本文为博主原创文章,未经博主允许不得转载. 2016-01-01开放所有源代码: 项目地址:https://github.com/xucongli1989/XCLNetTools 下载地址: ...
- 试用 Nexus OSS 3.0 的docker仓库 (一)
Nexus 3.0 可以创建三种docker仓库: 1. docker (proxy) 代理和缓存远程仓库 ,只能pull 2. docker (hosted) 托管仓库 ,私有仓库, ...
- js中Prototype属性解释及常用方法
1.prototype的定义 javascript中的每个对象都有prototype属性,Javascript中对象的prototype属性的解释是:返回对象类型原型的引用. 每一个构造函数都有一个属 ...