使用 Apache Spark 和 Elasticsearch 构建一个推荐系统  

通过 Jupyter Notebook 演示如何使用 Apache Spark 和 Elasticsearch 来训练和使用一个推荐模型

Last updated | By Nick Pentreath, Rich Hagarty

Description

推荐引擎是应用机器学习的最著名、使用最广泛、价值最大的用例之一。尽管有许多资源可用作训练推荐模型的基础,但解释如何实际部署这些模型来创建大型推荐系统的资源相对较少。

概览

本 code pattern 将演示使用 Apache Spark 和 Elasticsearch 创建推荐系统的关键要素。Jupyter Notebook 将展示如何通过存储在 Elasticsearch 中的评分数据,使用 Spark 来训练一个协同过滤推荐模型,并将模型因素保存到 Elasticsearch,然后使用 Elasticsearch 通过该模型来提供实时推荐。

完成上述操作后,您将掌握如何:

  • 使用 Elasticsearch Spark 连接器将用户事件数据摄入到 Elasticsearch 中并建立索引。
  • 将事件数据加载到 Spark DataFrames 中,并使用 Spark 的机器学习库 (MLlib) 来训练一个协同过滤推荐系统模型。
  • 将训练后的模型导出到 Elasticsearch 中。
  • 使用一个自定义 Elasticsearch 插件,计算个性化的用户和类似电影推荐,并将推荐与搜索和内容过滤相结合。

  1. 将电影数据集加载到 Spark 中。
  2. 使用 Spark DataFrame 操作清理该数据集,并将它加载到 Elasticsearch 中。
  3. 使用 Spark MLlib,训练一个协同过滤推荐模型。
  4. 将得到的模型保存到 Elasticsearch 中。
  5. 使用 Elasticsearch 查询和一个自定义矢量评分插件,生成一些示例推荐。使用 Movie Database API 来显示所推荐的电影的电影海报图像。

相关博客

未找到与您的短代码搜索条件匹配的帖子。

相关链接

数据科学

查看目前发布的别的关于数据科学的 Code Pattern。

数据科学简介

通过该教程的学习,您可以了解机器学习的基础知识,包括数据工程、模型学习和操作。

IBM Watson Studio

在配置好的、协作的环境中使用 RStudio、Jupyter 和 Python 分析数据,其中包括 IBM 增值服务,比如托管 Spark。

通过 Apache Spark 和 Hive ETL 分析犯罪数据

在本教程中,您将学习对英国犯罪数据进行分析,从一开始直到获取最终结果,涵盖数据下载、数据转换,将数据加载至分布式数据仓库 Apache Hive,随后使用 Apache Spark 进行后续分析。