windows - apache mahout ALS 可以在没有 hadoop 的情况下工作吗?
问题描述
我尝试使用 ParallelALSFactorizationJob,但它在这里崩溃:
Exception in thread "main" java.lang.NullPointerException
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1012)
at org.apache.hadoop.util.Shell.runCommand(Shell.java:445)
at org.apache.hadoop.util.Shell.run(Shell.java:418)
at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:650)
at org.apache.hadoop.util.Shell.execCommand(Shell.java:739)
命令行帮助提到使用文件系统,但它似乎需要 hadoop。如何在 Windows 上运行它,mahout.cmd 文件已损坏:
"===============DEPRECATION WARNING==============="
"This script is no longer supported for new drivers as of Mahout 0.10.0"
"Mahout's bash script is supported and if someone wants to contribute a fix for this"
"it would be appreciated."
那么这可能吗(ALS + Windows - hadoop)?
解决方案
Mahout 是一个社区驱动的项目,它的社区非常强大。
“Apache Mahout 是最早也是最著名的大数据机器学习平台之一。它在 Hadoop 和 Spark 等分布式处理平台之上实现机器学习算法。”
-Tiwary, C. (2015)。学习 Apache Mahout。
Apache Spark 是一个开源、内存中的通用计算系统,可在 Windows 和类 Unix 系统上运行。Spark 不是类似 Hadoop 的基于磁盘的计算,而是使用集群内存将所有数据上传到内存中,并且可以重复查询这些数据。
“随着 Spark 在数据科学家中越来越受欢迎,Mahout 社区也在迅速致力于让 Mahout 算法在 Spark 的执行引擎上运行,以将其计算速度提高 10 到 100 倍。Mahout 提供了几个重要的构建块来使用 Spark 创建建议。”
-古普塔,A(2015 年)。学习 Apache Mahout 分类。
(最后一本书还提供了使用 Mahout 的 Spark shell的分步指南(他们不使用 Windows,但不清楚他们是否使用 Hadoop)。有关该主题的更多信息,请参阅https的实施部分://mahout.apache.org/users/sparkbindings/play-with-shell.html。)
除此之外,您还可以使用 Spark 构建推荐引擎,例如Spark MLlib和
在 Spark 中,(...) 交替最小二乘法 ( ALS ) 方法用于生成基于模型的协同过滤。
-Gorakala, S. (2016)。构建推荐引擎。
在这一点上,在回答您的问题之前还有一个问题需要回答:我们可以在没有 Hadoop 的情况下运行 Spark 吗?.
所以,是的,可以使用 Spark(没有 Hadoop)在 Windows 上使用 ALS 方法。
推荐阅读
- xcode - React-Native 无法手动链接 XCode 上的库
- c# - 如何建立与远程数据库 sql server 的连接?
- node.js - 可以注意在 Elastic Beanstalk AWS 上使用 Nodejs 在本地磁盘上保存图像吗?
- r - 逻辑 glmer{lme4} 模型 isSingular 尽管非常简单
- flutter - “模板具有自由形式的签名者。” 文档
- file-upload - 在发送 GraphQL API 模拟请求数据时在 Postman 响应中获取不支持的媒体类型
- python - 单击带有 python 请求的按钮
- ubuntu - 如何阻止无人值守升级升级我自定义安装的 Debian 软件包?
- plotly-python - 使用 plotly 实时绘图
- .net - 如何最小起订量 linq 表达式 Where()?