Mahout 推荐器、Flink、Spark MLLib、'gray box'
Mahout recommender, Flink, Spark MLLib, 'gray box'
我是 Mahout-Samsara 的新手,我正在尝试了解不同项目的 "domain" 以及它们之间的相互关系。
我了解到 Apache Mahout-Samsara 弃用了许多 MapReduce 算法,并且这些算法将基于 Apache Flink 或 Spark 或其他引擎,如 h2o(基于 "Apache Mahout: Beyond MapReduce" 书中的介绍)。
我想尝试一些推荐算法,但我不太确定什么是新的,什么是 'deprecated'。我看到以下链接,
参考spark-rowsimilarity
和spark-itemsimilarity
。 (我不明白这些链接是在谈论一种独立的算法还是一种设计……这可能是一种设计,因为它们没有在 mahout dot apachedot org/users/basics/algorithms.html 中列出。 .. 无论如何...)。
同时,Apache Flink(或者是Spark MLLib?)实现了推荐的ALS算法(Machine Learning for Flink and Spark MLlib)。
一般问题:
是否弃用了 mahout.apache.org 中的这些算法并将它们迁移到 Flink / Spark MLLib,以便 Flink / Spark MLLib 的 ML 库和支持会增长?
Flink / Spark MLLib 更像是一个引擎还是引擎+算法库,对算法有很好的支持?
有助于对话的其他链接:
具体问题:
我想尝试推荐算法 'gray box'(部分 'black box' 因为我不想太深入数学,部分 'white box' 因为我想将模型和数学调整到我需要改进结果的程度)。
我对其他 ML 算法还不感兴趣。我考虑过从现成的东西开始,然后更改 MLLib 的 ALS 实现。那会是一个好方法吗?还有其他建议吗?
Spark-itemsimilarity 和 spark-rowsimialrity 是命令行可访问的驱动程序。它们基于 Mahout-Samsara 中的 类。这些描述适用于自 v0.10.0 以来支持的 运行 代码。
link https://mahout.apache.org/users/basics/algorithms.html 显示 "compute-engine" 支持哪些算法。 "Mapreduce" 列中的任何内容都符合弃用要求。
也就是说,Mahout-Samsara 不像 0.10.0 之前的 Mahout 那样是算法的集合。它现在有一个类似 R 的 DSL,其中包括广义张量数学,大多数 Mahout-Samsara 算法都是从中构建的。因此,请将 Mahout 视为 "roll-you-own math and algorithm" 工具。但是每个产品都可以根据您选择的计算引擎进行扩展。引擎本身也可以本地使用,因此您不必仅使用抽象的 DSL。
关于 Mahout-Samsara 与 MLlib 或任何算法库的关系,它们之间会有重叠,两者都可以在您的代码中互换使用。
关于推荐系统,新的 SimilarityAnalysis.cooccurrence 实施了一项重大创新,称为交叉出现,它允许推荐系统吸收几乎所有关于用户或用户上下文的已知信息,甚至可以考虑项目内容的相似性。 Mahout-Samsara 部分是相关交叉事件的引擎。请参阅此处描述算法的一些幻灯片:http://www.slideshare.net/pferrel/unified-recommender-39986309
使用成熟的 PredictionIO 框架(PIO 本身现在是拟议的 Apache 孵化器项目)有一个完整的端到端实现,可以使用以下说明进行安装:https://github.com/actionml/cluster-setup/blob/master/install.md
我已经在 Flink 上研究 ML 有一段时间了,我正在做我公平的侦察工作,我正在监控这个生态系统中发生的事情。您要问的是根本不存在的项目之间的合理协调。算法一遍又一遍地重新实现,就我所见,这样做比与不同的框架集成更容易。 Samsara 它实际上是最便携的解决方案之一,但它只适用于少数应用程序。
Is it that these algorithms from mahout.apache.org are deprecated and they are being migrated to Flink / Spark MLLib, so that the ML library and support at Flink / Spark MLLib will grow?
正如我所说,这需要项目之间的协调,这不是一回事。
Is Flink / Spark MLLib intended to be more an engine or engine + algorithm library with good support for the algorithms?
他们应该是理想生态系统中的第一件事,但他们会继续为商业目的构建自己的 ML 库:开箱即用的带有 ML 库的计算引擎卖得很好。事实上,我全职致力于 Flink ML 并不是因为我相信它一定是在 Flink 上进行 ML 的最佳方式,而是因为,现在,它是 Flink 需要在许多环境中销售的东西。
@pferrel 建议 PredictionIO 是一款出色的软件,但有许多替代品正在开发中:例如 Beam 正在设计机器学习 API 以概括不同运行器的实现(Flink、Spark、H2O 和很快)。另一种选择是数据分析平台,如 Knime、RapidMiner 等,它们可以在 Spark 或其他大数据工具上构建管道。
我是 Mahout-Samsara 的新手,我正在尝试了解不同项目的 "domain" 以及它们之间的相互关系。 我了解到 Apache Mahout-Samsara 弃用了许多 MapReduce 算法,并且这些算法将基于 Apache Flink 或 Spark 或其他引擎,如 h2o(基于 "Apache Mahout: Beyond MapReduce" 书中的介绍)。
我想尝试一些推荐算法,但我不太确定什么是新的,什么是 'deprecated'。我看到以下链接,
参考spark-rowsimilarity
和spark-itemsimilarity
。 (我不明白这些链接是在谈论一种独立的算法还是一种设计……这可能是一种设计,因为它们没有在 mahout dot apachedot org/users/basics/algorithms.html 中列出。 .. 无论如何...)。
同时,Apache Flink(或者是Spark MLLib?)实现了推荐的ALS算法(Machine Learning for Flink and Spark MLlib)。
一般问题:
是否弃用了 mahout.apache.org 中的这些算法并将它们迁移到 Flink / Spark MLLib,以便 Flink / Spark MLLib 的 ML 库和支持会增长?
Flink / Spark MLLib 更像是一个引擎还是引擎+算法库,对算法有很好的支持?
有助于对话的其他链接:
具体问题:
我想尝试推荐算法 'gray box'(部分 'black box' 因为我不想太深入数学,部分 'white box' 因为我想将模型和数学调整到我需要改进结果的程度)。
我对其他 ML 算法还不感兴趣。我考虑过从现成的东西开始,然后更改 MLLib 的 ALS 实现。那会是一个好方法吗?还有其他建议吗?
Spark-itemsimilarity 和 spark-rowsimialrity 是命令行可访问的驱动程序。它们基于 Mahout-Samsara 中的 类。这些描述适用于自 v0.10.0 以来支持的 运行 代码。
link https://mahout.apache.org/users/basics/algorithms.html 显示 "compute-engine" 支持哪些算法。 "Mapreduce" 列中的任何内容都符合弃用要求。
也就是说,Mahout-Samsara 不像 0.10.0 之前的 Mahout 那样是算法的集合。它现在有一个类似 R 的 DSL,其中包括广义张量数学,大多数 Mahout-Samsara 算法都是从中构建的。因此,请将 Mahout 视为 "roll-you-own math and algorithm" 工具。但是每个产品都可以根据您选择的计算引擎进行扩展。引擎本身也可以本地使用,因此您不必仅使用抽象的 DSL。
关于 Mahout-Samsara 与 MLlib 或任何算法库的关系,它们之间会有重叠,两者都可以在您的代码中互换使用。
关于推荐系统,新的 SimilarityAnalysis.cooccurrence 实施了一项重大创新,称为交叉出现,它允许推荐系统吸收几乎所有关于用户或用户上下文的已知信息,甚至可以考虑项目内容的相似性。 Mahout-Samsara 部分是相关交叉事件的引擎。请参阅此处描述算法的一些幻灯片:http://www.slideshare.net/pferrel/unified-recommender-39986309
使用成熟的 PredictionIO 框架(PIO 本身现在是拟议的 Apache 孵化器项目)有一个完整的端到端实现,可以使用以下说明进行安装:https://github.com/actionml/cluster-setup/blob/master/install.md
我已经在 Flink 上研究 ML 有一段时间了,我正在做我公平的侦察工作,我正在监控这个生态系统中发生的事情。您要问的是根本不存在的项目之间的合理协调。算法一遍又一遍地重新实现,就我所见,这样做比与不同的框架集成更容易。 Samsara 它实际上是最便携的解决方案之一,但它只适用于少数应用程序。
Is it that these algorithms from mahout.apache.org are deprecated and they are being migrated to Flink / Spark MLLib, so that the ML library and support at Flink / Spark MLLib will grow?
正如我所说,这需要项目之间的协调,这不是一回事。
Is Flink / Spark MLLib intended to be more an engine or engine + algorithm library with good support for the algorithms?
他们应该是理想生态系统中的第一件事,但他们会继续为商业目的构建自己的 ML 库:开箱即用的带有 ML 库的计算引擎卖得很好。事实上,我全职致力于 Flink ML 并不是因为我相信它一定是在 Flink 上进行 ML 的最佳方式,而是因为,现在,它是 Flink 需要在许多环境中销售的东西。
@pferrel 建议 PredictionIO 是一款出色的软件,但有许多替代品正在开发中:例如 Beam 正在设计机器学习 API 以概括不同运行器的实现(Flink、Spark、H2O 和很快)。另一种选择是数据分析平台,如 Knime、RapidMiner 等,它们可以在 Spark 或其他大数据工具上构建管道。