欢迎光临散文网 会员登陆 & 注册

社区项目分享 | 用 Jina 搭建一个电影推荐系统

2022-05-06 16:27 作者:Jina_AI  | 我要投稿

 我们每天都在接触推荐系统,短视频、电商、外卖、演出、广告……

今天,我们将演示 Jina AI 社区用户 Achintya 的项目,他用 Jina 搭建了一个电影推荐系统。

电影推荐系统原理概览

在这个 Demo 中,作者将电影推荐转换成了文本搜索问题。

系统将用户输入作为文本 query,并在数据库中搜索与查找类似电影。

注:开始前需要向模型提供电影的名称、描述和类型等字段。

技术栈:Jina,Rest API,Dart

数据库:IMDB 电影数据集

电影推荐系统架构图

具体过程如下:

1、从 Kaggle 下载 IMDB 电影数据集:https://www.kaggle.com/datasets/harshitshankhdhar/imdb-dataset-of-top-1000-movies-and-tv-shows

2、将数据添加至 DocumentArray 中,以便进一步预处理和索引。

3、将 DocumentArray 发送至 Flow,用 Jina Hub 上的 Executor 对数据进行索引。

4、搜索 Flow 将对输入查询进行编码,并在索引数据中搜索最匹配的选项。

5、找到最佳匹配后,发送 Rest API 作为输出数据(该 API 适用于各种前端框架)。

代码演示:3 个关键步骤打造电影推荐系统

本 Demo 的核心步骤包括:构建 Flow、索引以及和搜索功能。

1、创建 Flow

这里会用到两个 Executor: SimpleIndexerTransformerTorchEncoder

2、创建 Index 函数

Index 函数获取文本格式的图像数据集,并将其转换为 Jina 原生的 DocumentArray,发送至 Flow 进行索引和搜索。

3、创建搜索函数

搜索函数接收文本输入,并发出 HTTP post 请求,从 Jina 后端获取类似的电影片名。

以上就是用 Jina 创建电影推荐系统的全部过程,完整代码请访问 GitHub Repo:

https://github.com/achintya-7/Movie_Recommender_Flutter

关于作者 Achintya:

Jina AI 社区成员,计算机科学专业大二学生,专注于机器学习及应用开发。

本文涉及的学习资料:

Learning Bootcamp:https://learn.jina.ai/

DocArray 文档:https://docarray.jina.ai/

Jina 文档:https://docs.jina.ai/

加入 Jina 社区:https://slack.jina.ai/

阅读原 blog:https://medium.com/jina-ai/movie-recommender-powered-by-jina-ai-933ebe118c30


社区项目分享 | 用 Jina 搭建一个电影推荐系统的评论 (共 条)

分享到微博请遵守国家法律