Collaborative Metric Learning(www 2017)

news2024/11/26 0:56:25

Background

传统基于MF的模型,将特征向量的点积作为预测结果,这存在一个很大的问题,即dot product 不满足三角不等式),这会导致学到的特征向量次优(难以捕捉用户细粒度的偏好)。本文提出了一种Collaborative+Metric Learning模型,不仅能捕捉用户细粒度偏好,还可以捕捉用户-用户/物品-物品相似性。

 

注:

度量学习目的:通过一个投影函数 f 将物品投影到一个潜在特征空间中,在此空间中相似物品距离近,不相似物品距离远。

三角不等式:x为用户,y,z用户交互过的两物品,根据三角不等式公式d(y,z)≤d(x,y) +d(x,z),可知在缩短(x,y),(x,z)之间距离的同时,(y,z)两物品之间的距离也会因为约束的存在而被缩短,可将此现象看做相似度传递。

Pre-model

在隐式反馈中无法直接获得用户评分作为label,这就使得rating变得不准确,所以本文在隐式反馈场景下,将问题转变为对不同物品排序问题。

Large margin nearest neighbor(LMNE)

拉近

推远

 Bayesian Personalized Ranking

训练样本为三元组(i,j,k),j为用户i交互过的物品,k为用户未交互过的物品。\sigma:sigmoid

缺点:

从公式中可以看出,在损失函数中,任意一组三元组地位相同。换言之,该模型只能区分出正负样本,而每类样中的区分度是非常小的,即在topk推荐中保证正样本出现在推荐序列中,但并不考虑排列顺序对结果的影响(排序顺序是存在bias的)。

CML

Method

本文模型:

 rank_d(i,j):度量d下,物品j在给用户i推荐列表的位置。0<=rank_d(i,j)<=列表长度

约束

1、特征约束

将物品j的特征向量,限制在f(x_j)周围。

x_j:物品原始特征

f:两层MLP(256维)+0.5 Dropout 

v_j:物品j的特征向量

 2、独立性约束

通过协方差,解偶特征向量各维度间的线性相关性。 

y:用户/物品的特征向量

损失函数

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

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

相关文章

【Java笔试强训 20】

&#x1f389;&#x1f389;&#x1f389;点进来你就是我的人了博主主页&#xff1a;&#x1f648;&#x1f648;&#x1f648;戳一戳,欢迎大佬指点! 欢迎志同道合的朋友一起加油喔&#x1f93a;&#x1f93a;&#x1f93a; 目录 一、选择题 二、编程题 &#x1f525;字符串反…

第十八章 协程

我们知道脚本都是继承自MonoBehaviour类&#xff0c;而其中的Update方法里面放置了大部分的游戏逻辑处理代码。Update方法是游戏循环的每一帧都去执行&#xff0c;这就要求我们的代码“无时无刻”不在处理所有的可能发生的情况&#xff0c;并做出相应的处理。如果我们想要完成“…

Vue之render函数

概述 render函数从名字上看就可以看出&#xff0c;它是一个用于渲染的函数&#xff0c;在Vue中我们要将我们写的界面展示到屏幕上时&#xff0c;使用的方式都是组件中的template:标签下编写内容后&#xff0c;由Vue将我们编写的界面渲染到屏幕上。而这个render函数就是比templ…

B. Divide Candies(数学 + 思维)

Problem - B - Codeforces Arkady和他的朋友们喜欢在一个n n的棋盘上玩跳棋。这个棋盘的行和列从1到n编号。 他的朋友们最近赢了一场比赛&#xff0c;所以Actady想用一些糖果来取悦他们。记得一则古老寓言(但不记得寓意)》&#xff0c;Arlady想给他的朋友们每个格子一个糖果组…

SpringMVC学习总结(一)SpringMVC简介入门案例

SpringMVC学习总结&#xff08;一&#xff09;SpringMVC简介/入门案例 一、SpringMVC简介 &#xff08;一&#xff09;什么是MVC MVC是一种软件架构的思想&#xff0c;将软件按照模型、视图、控制器来划分。 M&#xff1a;Model&#xff0c;模型层&#xff0c;指工程中的Ja…

手把手教你学会gitee的注册和代码的提交

欢迎来到壮壮的代码世界 gitee的注册和提交 一、gitee是什么&#xff1f;二、gitee怎么注册三、gitee的一些基本配置四、在gitee上创建远程仓库&#xff08;存储代码的地方&#xff09;五、clone远程仓库到本地电脑六、怎么把本地的代码推送到远程仓库去&#xff08;git的三板斧…

jQuery操作

文章目录 1. jQuery基本介绍1.1 原理示意图1.2 快速入门1.2 什么是jquery对象1.3 dom对象转jQuery对象1.4 jQuery对象转dom对象1.5 jQuery选择器1.5.1 jQuery基本选择器1.5.2 jquery层次选择器1.5.3 基础过滤选择器1.5.4 内容过滤选择器1.5.5 可见度过滤选择器1.5.6 属性过滤选…

Vue(Vue脚手架)

一、使用Vue脚手架&#xff08;Vue Cli&#xff09; Vue官方提供脚手架平台选择最新版本&#xff1a; 可以相加兼容的标准化开发工具&#xff08;开发平台&#xff09; 禁止&#xff1a;最新的开发技术版本和比较旧版本的开发平台 Vue CLI&#x1f6e0;️ Vue.js 开发的标准工…

AWS VPC 配置指南:快速创建和设置你的虚拟私有云

文章目录 一、前言二、创建 VPC2.1 进入 AWS VPC 服务2.2 创建 VPC2.3 选择所要创建的 VPC 资源2.4 输入 VPC 名称2.5 设置 IPv4 CIDR block&#xff08;IPv4 CIDR 块&#xff09;2.6 选择可用区2.7 选择公有子网的数量2.8 设置 NAT 网关和 VPC 终端节点2.9 完成创建 VPC2.10 查…

python ast 详解与用法

目录 基本概念节点类型ast.Assignast.Nameast.Constantast.Callast.Attribute 结点的遍历ast源码示例 结点的修改示例 参考链接 基本概念 python 语言在编译前会解析为抽象语法树&#xff0c;整个文件可以看作一棵树&#xff0c;树上的每个节点就代表一条语句&#xff0c;中序…

计算机中找不到msvcp140.dll无法继续执行代码,解决方法

DLL是Dynamic Link Library的缩写&#xff0c;意为动态链接库。dll文件是电脑系统及软件运行的重要文件&#xff0c;电脑如果丢失dll文件&#xff0c;那么很多软件跟游戏都是无法运行的&#xff0c;msvcp140.dll丢失这个问题就有很多小伙伴遇到&#xff0c;小编今天就分享找不到…

山东专升本计算机第一章-计算机信息技术与计算机文化

计算机信息技术与计算机文化 计算机中的信息表示 数制及其转换 数制&#xff1a;用进位的原则进行计数数码&#xff1a;数制中表示基本数值大小的不同数字符号基数&#xff1a;一种数制所使用的数码个数位权&#xff1a;数码在不同位置的权值 数制的转换 • R进制转化为十进…

【操作系统和强化学习】1.内存管理策略

文章目录 前言1.内存是什么1.1 基本硬件保护措施 碎片1.2 分段机制1.2.1 分段硬件1.3 分页 前言 CPU的调度可以提高CPU的利用率和计算机的响应用户的速度。为了改进性能&#xff0c;应该将多个进程保存在内存中。也就是说必须共享内存。 本文讨论的是如管理内存。 1.内存是什么…

知识变现海哥:我是如何通过知识变现年赚100万的

我叫王海青&#xff0c;大家都称我海哥&#xff0c;是一名知识变现导师&#xff0c;海青教育创始人。从2011年开始&#xff0c;已经从事知识变现培训服务10多年&#xff0c;帮助3000人实现了个人知识技能变现&#xff0c;一直致力于帮助普通人&#xff0c;把自己的一项知识技能…

TiDB实战篇-操作系统参数TiDB Server

操作系统参数 CPU 绿色的是设置cpu用最高的频率去使用cpu。 专门有一个内存给指定的cpu使用。减少cpu的相应时间。 内存 大页的优化&#xff0c;操作系统关闭大页 。 磁盘 TiDB Server配置 cpu 同时多少个会话 如果负载很高那么就往下面调节。 控制优先级&#xff08;…

计算卸载论文阅读01-理论梳理

标题&#xff1a;When Learning Joins Edge: Real-time Proportional Computation Offloading via Deep Reinforcement Learning 会议&#xff1a;ICPADS 2019 一、梳理 问题&#xff1a;在任务进行卸载时&#xff0c;往往忽略了任务的特定的卸载比例。 模型&#xff1a;针…

BUUCTF ciscn_2019_c_1

小白垃圾做题笔记而已&#xff0c;不建议阅读。 1前期&#xff1a; 其实刚开始拿到程序的时候我还以为是逆向题放错地方了。唉&#xff0c;做题太少了。啥也不会。我是大笨蛋。 题目中用的是ubuntu18&#xff0c;我的ubuntu没怎么用过&#xff0c;vmtools都不能用&#xff0c…

【源码解析】canal核心功能源码解析

1. 项目地址 https://github.com/alibaba/canal.git2. 模块介绍 canal核心模块的功能&#xff1a; deployer模块&#xff1a;独立部署模块&#xff0c;用于canal-server的独立启动&#xff0c;包括本地配置解析、拉取远程配置、启动canal-server。server模块&#xff1a;cana…

山东专升本计算机第六章-数据库技术

数据库技术 SQL数据库与NOSQL数据库的区别 数据库管理系统 考点 6 数据库管理系统的组成和功能 组成 • 模式翻译 • 应用程序的翻译 • 交互式查询 • 数据的组织和存取 • 事务运行管理 • 数据库的维护 功能 • 数据定义功能 • 数据存取功能 • 数据库运行管理…

MySQL备份和恢复

文章目录 一、库的备份和恢复1.库的备份2.库的恢复 二、表的备份和恢复1.表的备份2.表的恢复 备份数据&#xff0c;其实就是生成一个 sql 文件&#xff0c;把创建数据库、创建表、插入数据等各种 SQL 语句都装载到这个文件中。恢复数据&#xff0c;其实就是按顺序执行 sql 文件…