召回05 矩阵补充、最近邻查找

matrix completion

上述矩阵补充模型:

基于embadding做推荐,输入用户和物品id,输出一个实数,即用户对物品兴趣的预估值。把id映射到一个向量a,是对用户的表征,embadding层是一个矩阵,a是矩阵的一列;b是物品的表征,a与b长度相同,两个embadding层不共享参数。

模型训练的思路:

求最小化,可以使用随机梯度下降等算法,随机更新矩阵a和b的一列,从而学出矩阵A和B。

为什么称为矩阵补充?

矩阵中大多是灰色没有曝光,使用绿色位置数据训练模型,从而预估灰色部分的分数,进而进行推荐。每一行选取分数高的推荐给用户。

但工业中不使用矩阵补充。原因:

基于矩阵补充的线上服务:

训练好模型之后,可以用于推荐系统中的召回通道。

用户和笔记的数量很多,从而矩阵A 和B的列数很多,需要特殊的存储方法保证可以快速找到。

最近邻查找nearest neighbor search,但逐一对比所有物品是不现实的,达不到线上的实时查找。接下来通过一些算法,加速最近邻查找,避免暴力枚举。

近似最近邻查找:

推荐系统最常用的是余弦相似度,其最近邻就是向量夹角最小的,但有的系统不支持余弦相似度,将所有向量做归一化,其二范数等于1,其内积就是余弦相似度。

每一个点的embadding向量都是模型训练的时候计算出来的,想要召回某个用户感兴趣的物品。

介绍一种加速最近邻查找的算法:

近似最近邻查找:

step1: 线上服务之前,先做数据预处理,数据划分很多区域,划分方法取决于最近邻衡量的标准,余弦相似度是下图的扇形;欧式距离划分结果是多边形。

step2: 划分区域之后建立索引,每个区域用一个单位向量表示,将这个向量作为区域的key,将区域中所有点的列表作为value,即给定某一区域的key,就可以快速取回该区域的所有点。

有了这样的索引就可以在线上快速做召回。

step3: 线上给用户做推荐,用户的embadding向量记作a,将a与索引中的key向量做对比,计算相似度,索引数量远低于全部物品的数量,找到相似度最高的索引。

step4: 通过索引找到该区域的全部物品,找a最相似的三个点,即夹角最小的点,这三个物品就是找到的结果。

总结:

工业界使用更先进的双塔模型。query查询

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/149892.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Dify部署及初步测试

文章目录 Dify安装Dify启动模型接入模型测试 Dify安装 根据Docker Compose 部署中的相关指引,完成以下步骤 git clone https://github.com/langgenius/dify.git cd dify/docker cp .env.example .env docker compose up -d查看容器状态:docker compose…

408选择题笔记|自用|随笔记录

文章目录 B树:访问节点建堆!将结点插入空堆广义指令求每个子网可容纳的主机数量虚拟内存的实现方式文件目录项FCB和文件安全性管理级别索引文件三种存取方式及适用器件成组分解访问磁盘次数 C语言标识符 最小帧长物理传输层介质 局域网&广域网考点总…

【全新课程】正点原子《基于GD32 ARM32单片机项目实战入门》培训课程上线!

正点原子《ESP32物联网项目实战》全新培训课程上线啦!正点原子工程师手把手教你学!彻底解决ARM32单片机项目入门难的问题! 一、课程介绍 本课程专为ARM32单片机的入门学习者设计,涵盖了环境搭建、编程软件使用、模块基础驱动和多…

Vue3 + ElementPlus 的后台菜单指引

文章目录 需求实现思路 需求 实现思路 引导页用 Drive.js 基本的使用操作这里写了一些菜单使用 ElementPlus 的组件,可以调用组件中暴露的这个方法,具体使用方法在这里说明 二者结合一下,就可以有这样的效果了

10.软件工程知识详解上

软件工程概述 软件开发生命周期 软件定义时期:包括可行性研究和详细需求分析过程,任务是确定软件开发工程必须完成的总目标,具体可分成问题定义、可行性研究、需求分析等。软件开发时期:就是软件的设计与实现,可分成…

MySQL—触发器详解

基本介绍 触发器是与表有关的数据库对象,在 INSERT、UPDATE、DELETE 操作之前或之后触发并执行触发器中定义的 SQL 语句。 触发器的这种特性可以协助应用在数据库端确保数据的完整性、日志记录、数据校验等操作。 使用别名 NEW 和 OLD 来引用触发器中发生变化的记…

水电站/水库大坝安全监测系统完整解决方案

一、背景 在当今社会,随着全球对清洁能源需求的日益增长,水电站作为可再生能源的重要组成部分,其安全稳定运行显得尤为重要。水电站,尤其是大型水库大坝,不仅承载着发电、防洪、灌溉等多重功能,还直接关系…

后端回写前端日期格式化

问题 不进行格式化处理&#xff0c;就会导致传递的字符串很奇怪 解决方案 注解&#xff08;字段&#xff09; <dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.9.2</…

pandas外文文档快速入门

pandas资源可以在github中进行查询 特点&#xff1a; 1、基于numpy库进行开发 2、主要处理一维、二维的数据 3、可以处理sql&#xff0c;execl&#xff0c;时间表等复杂数据结构 导言 创建一维、二维表 创建的表格其实会和二维表很像 假设我们存储一些数据 其中&#xf…

2024年流动式起重机司机证考试题库及流动式起重机司机试题解析

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2024年流动式起重机司机证考试题库及流动式起重机司机试题解析是安全生产模拟考试一点通结合&#xff08;安监局&#xff09;特种作业人员操作证考试大纲和&#xff08;质检局&#xff09;特种设备作业人员上岗证考试…

单周涨粉过万,这3种AI绘画风格也太火了!

今天给大家分享小红书平台的一些爆款AI绘画类型&#xff0c;如果想要通过AI绘画赚钱或者想要快速起号一定要看&#xff01; 当然&#xff0c;除了小红书平台也可以发一些到其他自媒体平台上&#xff0c;变现方式有很多&#xff0c;可以开店铺卖壁纸、提示词、头像、接定制、合…

Linux centerOS 服务器搭建NTP服务

1&#xff0c;安装 NTP软件 sudo yum -y install ntp2&#xff0c;编辑配置文件 sudo vim /etc/ntp.conf 3&#xff0c;修改配置 在ntp.conf文件中&#xff0c;可以配置服务器从哪些上游时间源同步时间。如果你想让你的服务器对外同步时间&#xff0c;可以去掉restrict d…

蓝象智联与高德签署战略合作,共创时空“数聚港”

9月20日&#xff0c;高德地图副总裁兼高德云图总经理董振宁一行莅临蓝象智联杭州总部进行座谈交流。蓝象智联董事长童玲、CEO徐敏以及合伙人兼算法科学家毛仁歆给予热情接待。在双方的共同见证下&#xff0c;蓝象智联与高德云图签署战略合作协议&#xff0c;标志着双方在数据流…

牛客小白月赛101(上)

tb的区间问题 题目描述 登录—专业IT笔试面试备考平台_牛客网 运行代码 #include <iostream> #include <climits>using namespace std;int main() {int n, k;cin >> n >> k;int arr[50000];for (int i 0; i < n; i) {cin >> arr[i];}int …

从零开始,Docker进阶之路(一):Docker基础

一、简介与概述 1.Docker是一个开源的应用容器引擎&#xff0c;基于Go语言并遵从Apache2.0协议开源。 Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中&#xff0c;然后发布到任何流行的Linux机器上&#xff0c;也可以实现虚拟化。 2.Docker的主要…

可视化设计:华为不出,谁与争锋。

在可视化设计上&#xff0c;华为也是独树一帜的存在&#xff0c;本期分享几个华为的可视化作品。

vue echarts tooltip动态绑定模板,并且处理vue事件绑定

先上代码&#xff1a; tooltip: {// 这里是车辆iconshow: true,// trigger: "item",// backgroundColor: "transparent",appendToBody: true,textStyle: {color: "#ffffff" //设置文字颜色},formatter: (params) > {const TruckTooltip Vue.…

# 高可用的并发解决方案nginx+keepalived(三)

高可用的并发解决方案nginxkeepalived&#xff08;三&#xff09; 一、Nginx搭建图片服务器 针对任何站点&#xff0c;几乎都要访问图片&#xff0c;而一个网页里面几乎有好些张图片&#xff0c;这时候会占据大量tomcat连接&#xff0c;造成大量并发&#xff0c;我们可以通过…

动漫影视渲染合成- NVMe全闪NAS存储应用

电台、影视制作中心、动漫公司等需要进行大量视频渲染&#xff0c;动画渲染的机构&#xff0c;选用NVMe全闪存储 NAS性能发挥稳定

第十四届蓝桥杯嵌入式国赛

一. 前言 本篇博客主要讲述十四届蓝桥杯嵌入式的国赛题目&#xff0c;包括STM32CubeMx的相关配置以及相关功能实现代码以及我在做题过程中所遇到的一些问题和总结收获。如果有兴趣的伙伴还可以去做做其它届的真题&#xff0c;可去 蓝桥云课 上搜索历届真题即可。 二. 题目概述 …