首页 > 其他分享 >一种推荐系统架构设计

一种推荐系统架构设计

时间:2023-11-22 20:34:28浏览次数:27  
标签:架构设计 存储 例如 推荐 系统 CF 组件 模型

机器学习系统设计的这个问题由两个主要构建块组成:

1-离线组件:该组件侧重于训练和验证推荐模型。

2-在线组件:该组件负责实时生成(推断)推荐。

最初的离线训练过程遵循经典的数据科学生命周期,从数据收集和转换为特征开始,到模型构建和验证结束。这些步骤的结果是捕获特征并存储在特征存储中的数据集,以及保存在 Blob 存储介质(例如 S3 等分布式文件系统)中的模型。
本文特别关注在线组件。例如,在此子系统中,用户通过 REST API 提交请求。然后,该请求被转发到包含推荐功能的应用服务器。在我们的架构中,我们建议利用负载均衡器来为服务层提供更高的可扩展性、性能、可靠性和冗余。水平扩展这一层使我们能够处理来自数十亿用户的请求,并通过最小化吞吐量来缩短响应时间。
如图架构所示,推荐模块由两个组件组成:(i) 内容过滤 (CF) 算法,根据每个用户的个人资料和历史观看数据识别相关视频,以及 (ii) 分配分数的排名算法到推荐的视频。
内容过滤 (CF) 中采用的技术范围从基本方法(例如简单的相似性匹配)到涉及深度神经网络模型的更高级方法。在这个特定的示例中,我们重点关注使用上面段落中暗示的模型。在推理时,CF 算法从模型存储中读取模型,并从特征存储中读取其他相关特征(例如用户个人资料数据),并预测与用户及其观看历史匹配的最佳电影。在此架构中,我们利用内存缓存系统来减少访问较慢的存储层时可能出现的数据检索延迟。
生成推荐后,算法会将业务指标(例如营业额和点击率)以及系统级元数据(例如推理时间戳及其响应时间)发送到模型存储。这些指标有助于 (i) 协助触发模型重新训练的决策过程和 (ii) 为监控仪表板提供数据。可以及时触发模型的重新训练(例如,每日模型重新训练)。它还可能是由于数据漂移和概念漂移事件达到某个阈值而导致的。

https://asmazgo.github.io/machine-learning/feature/2023/06/01/recommender-system.html#topofpage

标签:架构设计,存储,例如,推荐,系统,CF,组件,模型
From: https://www.cnblogs.com/little-horse/p/17850211.html

相关文章

  • Linux系统源码安装node和npm
    系统:CentOS7.964bit一、创建安装文件夹mkdir/opt/nodejs二、下载node下载地址https://nodejs.org/en/download/里面找右键可以复制链接地址cd/opt/nodejswgethttps://nodejs.org/dist/v20.9.0/node-v20.9.0.tar.gz下载成功可以看到多个node-v20.9.0.tar.gz文件......
  • 4CCS1CS1 计算机系统
    使用实验室5的电路,你应该编写一个程序来显示你的国王K号的数字LED上。让你的程序分别写出你的K数的每个数字,写出最左边的数字数字优先。例如,如果您的K编号是K1070542,那么您的程序将首先写出一个1,接着是0,然后是7,然后是0,接着是5,然后是4,最后是2。每个数字应显示1秒。2显示您的首字......
  • COMP 340 操作系统 Bounded Buffer问题解决
    这里有3个发生器,每个发生器独立地产生一种独特的材料。所有这些材料在被转发给操作员之前被存储在大小为10的输入缓冲器中。我们有三个具有相同优先级的运营商,他们负责生产基于这些材料。每种产品需要2种不同的材料。每次操作员需要2个用于此目的的工具。总共为这些操作员提供了3......
  • 升级Switch大气层系统
    一、备份数据1、备份完成后,将NS关机,取下SD卡,使用读卡器将SD卡插入电脑2、在电脑上打开SD卡,将下面的文件夹复制到电脑上备用:SD:\jksv\(存档备份目录)SD:\switch\Checkpoint\(如果你用的是checkpoint备份存档的话这个目录也要备份)SD:\atmosphere\contents\(文件夹......
  • SEHH2042 计算机编程飞机调度管理系统
    在一个或多个高级语言编程环境中开发计算机程序;设计和开发结构化和文档化的计算机程序;解释面向对象编程的基本原理并将其应用于计算机程序发展结合计算机编程技术解决实际问题。介绍在本任务中,您将开发一个“飞行时间表管理系统”,该系统运行在命令行环境。系统存储到达和离开的时......
  • 表格制作软件排行榜,热门做表格的软件推荐
    在数字化时代,表格不仅仅是企业管理和数据整理的重要工具,更是学术研究、项目规划以及日常生活中必不可少的一部分。为了更高效地进行表格制作,选择一款优秀的表格制作软件是至关重要的。在众多的软件中,我们特别推荐一款备受好评的表格制作软件——VeryReport。编辑搜图请点击输入图片......
  • 【操作系统】磁盘克隆/系统迁移的奔溃总结
    在最近的计算机维护过程中,发现leader的电脑过于老旧,硬盘出现问题,为了保护数据安全,这边也是建议leader更换新的主机leader一听到,卧槽会丢数据,果断同意。接下来就开启我崩溃的一天。【操作系统】磁盘克隆/系统迁移的奔溃总结1.磁盘克隆由于新的主机是品牌机,考虑到保修等等问题,......
  • 对比多家互联网医院系统技术代码:数字医疗服务的背后
    1.在线问诊模块1.1A医疗系统A医疗系统采用WebSocket实现实时通信,使用Node.js和Socket.io来建立WebSocket连接://服务器端Node.js代码constexpress=require('express');consthttp=require('http');constsocketIo=require('socket.io');constapp=express();c......
  • 探秘互联网医院系统的技术内幕:代码解析与创新
    随着科技的飞速发展,互联网医院系统正日益改变着传统医疗服务的面貌。这些系统的背后,隐藏着精密而创新的技术。本文将深入研究互联网医院系统的技术内幕,透过代码解析,揭示这些系统如何实现医疗服务数字化的伟大使命。1.实时通信模块:WebSocket的魔力互联网医院系统中,实时通信是在线问......
  • 软件系统测试有哪些类型和方法?
    在软件开发过程中,系统测试是确保软件质量和稳定性的重要环节。不同类型的软件系统测试覆盖了不同的测试需求,而不同的测试方法则能够有效地提高测试效果。一、常见的软件系统测试类型:1、功能测试:验证软件是否按照需求规格说明书中定义的功能完成。2、性能测试:评估和......