内容已经转出,请移步以下网址:

https://viadean.notion.site

Flask 打包 PostgreSQL/PyTorch 的图像推荐系统在 Heroku 云平台上运行

 二维码 12
文章附图

前文

推荐图像理论简述

PyTorch 推荐相似图像实现

图像推荐 Flask App

步骤

我已经为这个项目设定并满足了以下要求。

  1. 该网络应用程序可在互联网上访问。

  2. 该应用程序有一个带分页的图像库,仅加载页面的相关数据。

  3. 图库和推荐的数据是从数据库中获取的。

  4. 推荐是来自可能较大的图像集中的最相似的图像。它们必须立即出现;这意味着相似度计算是离线进行的。

  5. 图库是反应式的。

  6. Flask 应用程序被适当地打包以供将来扩展/重用。

本文中,我们将展示如何实现所有其他要求,如何在本地使用 SQLite 数据库和 Heroku 上的 PostgreSQL,如何使用它进行分页,如何清理工作并将其部署到 Heroku ,使其通过电脑端或智能手机上的浏览器访问互联网时可用。

实现步骤

  • 描述应用程序的功能

  • 重新审视图像之间相似度的计算

  • 描述应用程序的封装结构

  • 介绍了 SQL 模型

  • 后端应用逻辑介绍

  • 模板介绍

  • 解释了 Heroku 部署的所有步骤

应用程序的特点

为了更好地理解实现的目的,让我简要解释一下应用程序的特性。

图库

可以在自编图库中浏览一组图像,显示来自初始输入集(从我的私人图像存储库生成的小型测试集)中的所有图像,如下所示:

图库有一个使用样式表创建的自定义设计。它定义了标题的大小、鼠标反应、图像、文本覆盖和分页号外观。

分页

您可以在图库中的图像下方看到数字。 这些允许选择带有图像的页面。 为了不一次加载所有数据,我放弃了基于 JavaScript 的方法,这会导致隐藏更多信息,但它仍在加载所有图像。 对于所呈现的实现,仅加载相关数据。

图像推荐

反应式

数据库命令

离线计算推荐

打包 app

数据模型

后端应用逻辑

模板

云部署

源代码


阅读完整文档