User Diverse Preference Modeling by Multimodal Attentive Metric Learning

news2024/11/15 11:37:01

BACKGROUND

现有模型通常采用一个固定向量p_u去表示用户偏好,在假设——特征向量每一个维度都代表了用户的一种特性或者一个方面,这种方式似乎不妥,因为用户对于不同物品的偏好是不一样的,例如因演员喜欢一部电影,而因特效而喜欢另一部特效,鉴于此,本文采用注意力和度量学习方式,使得用户特征向量随着物品的不同而变化。        

METHOD

p_u,q_i 分别代表用户和物品的潜在特征向量,采用随机初始化。

注:推荐系统的核心就是学习用户&物品的特征向量。

通过整体框架图可知,本文的训练样本为三元组(u,i,k)其中i为正样本(用户交互过的物品),k为负样本(用户未交互过的物品),正负样本的处理方式相同,核心是注意力模块,通过计算得到的注意力,对p_u,q_i进行更改。因为该模块的输入为user_id,item_id即item相关的特征向量,所以对于不同的user和item,计算得到的注意力不同,则用户的特征表示也不同。

另外本文采用距离相关性替换了MF中的点积操作(点积不满足三角不等式,限制了性能)

Item Features

对于每个物品i 分别从评论和图片中提取出文本特征F_{t,i}视觉特征F_{v,i},本文通过多层神经网络进行特征融合,具体如下:

 并将最后的结果,作为物品i的特征表示 F_tv,i = z_i

Attention Mechanism

 [;]为concat。本文的注意力部分的亮点为注意力分数到注意力分数的转化方式。

   本文\alpha数字为特征向量的长度。

为什么不直接用softmax?

从上文可知,本步输出作用在用户&物品的特征向量上,换言之,要在初始id_embedding每维上乘以一个数得到新的新的特征向量,注意力计算模块的input&output的维度都等于id_embedding=f的维度,假设f=100,则权重的平均值为0.01非常小,训练时会因为区分小,而影响模型性能。

Optimization 

如上可知,损失函数有三部分组成,让我们分别来看一下组成形式和作用。

Metric Learning

m为边缘距离,[\ ]_+ = max\{0,x\} ,此处时损失函数的主要部分,本文用欧式距离替换了MF的点积。

关于rank_d细节见: Cheng-Kang Hsieh, Longqi Yang, Yin Cui, Tsung-Yi Lin, Serge Belongie, and Deborah Estrin. 2017. Collaborative metric learning. In WWW. IW3C2, 193–201

Regularization

一、实现文本特征和视觉特征越相似的物品在潜在空间中接近。

二、通过协方差来消除特征空间中的维度线性相关性,

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

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

相关文章

C++中的vector容器

文章目录 vector的介绍vector的使用vector的定义vector初始化vector iterator的使用vector空间增长问题vector增删改查vector迭代器失效问题 vector的介绍 vector是封装动态数组的顺序容器。   就像数组一样,vector也采用的连续存储空间来存储元素。这也就意味着我…

Java核心技术 卷1-总结-15

自己实现的hashCode方法应该与equals方法兼容 Java核心技术 卷1-总结-15 视图与包装器子范围不可修改的视图同步视图受查视图 并发线程状态新创建线程可运行线程被阻塞线程和等待线程被终止的线程 视图与包装器 子范围 可以为很多集合建立子范围(subrange&#x…

机器学习——朴素贝叶斯

目录 一、贝叶斯 1.什么是贝叶斯 3.贝叶斯下的朴素贝叶斯 二、朴素贝叶斯 1.高斯朴素贝叶斯 2.伯努利朴素贝叶斯 3.多项式朴素贝叶斯 前言 在所有的机器学习分类算法中,朴素贝叶斯和其他绝大多数的分类算法都不同。对于大多数的分类算法,比如决策…

【业务数据分析】—— 用户留存分析(以挖掘Aha时刻为例)

目录 一、用户留存是什么 二、为什么要考虑用户留存 1、为什么要考虑用户留存? 2、影响用户留存的可能因素 3、用户留存的3个阶段 三、怎么进行用户留存分析(挖掘Aha时刻) 1、Aha时刻 2、Aha时刻的作用 3、挖掘Aha时刻 一、用户留存是什么 在互联网行业中…

Three——二、加强对三维空间的认识

Three——二、加强对三维空间的认识 接上个例子我们接着往下看 辅助观察坐标系 THREE.AxesHelper()的参数表示坐标系坐标轴线段尺寸大小,你可以根据需要改变尺寸。 使用方法: // AxesHelper:辅助观察的坐标系 const axesHelper new THRE…

Jetson nano B01学习笔记 -- 系统环境配置以及ROS安装

文章目录 一、Jetson nano 简介二、 系统环境配置1、系统镜像烧录2、CUDA环境配置 三、 ROS安装和环境配置总结 一、Jetson nano 简介 Jetson Nano是一款体积小巧、功能强大的人工智能嵌入式开发板,于2019年3月由英伟达推出。它预装Ubuntu 18.04LTS系统,…

有什么好用的远程工具吗

沟通在任何类型的工作中都扮演着重要的角色。但当谈到远程工作时,这一点就更为重要。因此,您的组织必须找到可以让您的团队保持一致的工具。 在某些方面,项目管理扮演着类似的角色。 您会注意到,下面的大多数工具都会直接影响您的…

Android进阶宝典—Koin使用和原理分析

一、理解设计模式 控制反转 是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。 实现控制反转最常见的方式叫做依赖注入(Dependency Injection,简称DI),依赖注入(Dependency Injection)和控制反…

提高硬件设计能力的学习路线

不懂硬件的人,会觉得硬件高深莫测,“为什么他改几个电阻、电容就调出来,我弄个半天没搞定?”,“噢,靠的是经验”,但是经验又是什么呢?不能形容,反正就是不明觉厉。 就是…

Git(版本控制:前端git使用全流程)

1.版本控制(简单理解:就是软件对每次操作之后提交的记录) 文件版本 版本控制软件 版本控制的好处 版本控制的分类 本地版本控制系统 集中化版本控制系统 分布式版本控制系统 2. Git基础概念与工作流程 什么是Git? 开源的…

单片机编程中的裸机编程和多任务系统FreeRTOS系统详解,以及怎么学习FreeRTOS,看哪家的教程?(合集)

单片机编程中的裸机系统和多任务系统 学习了那么久的stm32还停留在裸机??? 单片机编程中的裸机系统和多任务系统.1 裸机系统1.1轮询系统1.2 前后台系统 2 多任务操作系统3 为什么要学习多任务操作系统??4 怎么学习Free…

诊断CAPL自动化(6) —— 诊断自动化测试,实战演示

🍅 我是蚂蚁小兵,专注于车载诊断领域,尤其擅长于对CANoe工具的使用🍅 寻找组织 ,答疑解惑,摸鱼聊天,博客源码,点击加入👉【相亲相爱一家人】🍅 玩转CANoe,博客目录大全,点击跳转👉 下图是UDS协议测试的部分测试用例,该表格在文章末尾网盘自己获取经过前面几…

Cesium实践(4)——空间数据加载

文章目录 前言几何形体点线面体 标签文字图标 几何文件GeoJsonKMLCZML 三维模型总结 前言 本文介绍Cesium如何加载空间数据,空间数据即明确定义在三维空间中的数据,空间数据包括以下几类:1、几何形体(点、线、面、体)…

“支付+SaaS”赋能传统产业数字化转型

易观:传统支付业务利润空间在政策监管和市场竞争下不断被压缩,多家上市支付机构逐步将业务经营重点转移切入到企业交易环节,为企业提供包括SaaS服务、行业解决方案、营销服务及金融科技服务等在内的企业服务收入成为新的增长点。 伴随着“十四…

OSCP-AuthBy(Server 2008提权)

目录 扫描 FTP WEB 提权 扫描 nmap -sV -sC -p- 192.168.73.46 FTP 检查端口21上的匿名登录 导航到accounts目录,可以观察ftp服务上的帐户 Offsec, anonymous, admin

Java8函数式编程(Lambda表达式,Stream流,Optional)

一.函数式编程思想 面向对象思想主要是关注对象能完成什么事情,函数式编程思想就像函数式,主要是针对数据操作;代码简洁容易理解,方便于并发编程,不需要过分关注线程安全问题 二.lambda表达式 1.概念 lambda表达式…

提升金融写作效率:金融校对软件的优势与应用

金融行业的写作任务繁重且要求高度专业,涉及财务报告、研究报告、合同、政策文件等各类文档。金融校对软件应运而生,为金融专业人士提供有效的支持,帮助他们提高写作效率和质量。本文将探讨金融校对软件的优势与应用。 一、金融校对软件的优势…

【NFS共享存储服务】

目录 一、NFS (Network File System)网络文件系统1.1、NFS工作原理1.2、举例1.2.1、共享文件总结 一、NFS (Network File System)网络文件系统 依赖于RPC (远端过程调用) 需安装nfs-utils、rpcbind软件包 系统服务: nfs、rpcbind 共享配置文件: /etc/ex…

跳表的实现

目录 简介跳表的实现 简介 skiplist本质也是一种查找结构,和搜索树、哈希表一样可以作为key或者key/value模型的查找结构,从命名可以看出它也是一个链表结构,链表的查找效率是O(n),作为在链表基础上优化的一种查找结构,跳表的查找…

app拉新充场代理

我认为您可能是想了解APP充值拉新软件的功能吧。通常,APP充值拉新软件会具有以下功能: 充值服务:提供多种支付方式,让用户方便快捷地进行充值操作。 活动推广:通过不同的方式,如折扣、优惠码等&…