17、Learning and Transferring IDs Representation in E-commerce笔记
一、摘要
电子商务场景:主要组成部分(用户ID、商品ID、产品ID、商店ID、品牌ID、类别ID等)
传统的编码两个缺陷:如onehot,(1)存在稀疏性问题,维度高(2)不能反映关系,以两个不同的id为例,无论它们是否相似,两种id都具有由一个热编码测量的恒定距离。以条目ID和存储ID为例,由于它们位于不同的空间,它们之间的关系甚至无法度量。
这些IDs中,可以是同质也可以是异质的。
本文提出了一个基于嵌入的框架来学习和传输ID的表示。
1、作为用户的隐式反馈,易从交互session中收集大量的项目ID序列。
2、通过联合实验这些信息序列和IDs之间的结构连接,所有类型的IDs可以嵌入到一个低维语义空间中。
3、学习到的embedding表示可在四个场景中被利用和转移:(1)测量项目之间的相似性(2)从已知的项目转移到未知的项目(3)转移跨不同领域(4)跨不同应用场景转移
二、引言
NLP:如单词嵌入(Word2vec),将单词嵌入到低维表示中,以捕获单词之间的语法与语义关系。
item2vec通过对交互序列中的项目ID共现进行建模,将项目ID嵌入到低维表示中。
本文扩展了item2vec,并提出了一个基于嵌入的框架来学习和传输所有类型id的低维表示。除了用户的隐式反馈之外,本文还考虑了项目ID和其他类型ID之间的结构连接(如图1)。

- 衡量项目之间的相似性。
- 从已看到的项目转移到未看到的项目。(冷启动,这意味着没有历史记录的项目ID对推荐系统是不可见的。)
- 跨域传输。对于像盒马这样的新兴平台,很高比例的用户是新客户,因此个性化推荐是非常具有挑战性的。在我们的方法中,用户id的嵌入向量是通过聚合项id的嵌入向量来构造的。我们将看到这些向量可以从像淘宝这样的长期存在的平台上转移到新兴的平台上。
三、盒马平台背景
在传统的推荐框架中,点击率(CTR)是在用户和项目之间计算的。但是,由于用户项对太多,因此无法计算和存储所有用户和所有项之间的CTR分数。在本文的工作中,建议框架分为四个过程来克服这一挑战:
•准备。离线计算用户触发偏好得分(u2t)和触发项匹配得分(t2i),并将结果存储在密钥值数据库中,以实现高效的在线检索。
•匹配。对于每个用户访问,首先根据用户ID检索触发器,然后基于这些触发器获得推荐项的候选集。
•过滤。删除重复和无效的项目,如已售完的项目等。
•排名。根据综合得分对筛选出的项目进行排序,综合得分考虑了偏好得分、匹配得分和其他业务目标。
四、学习ID的表征方式
1、Skip-gram on User’s Interactive Sequences
17、Learning and Transferring IDs Representation in E-commerce笔记的更多相关文章
- 阅读记录:Learning multiple layers of representation(杂乱笔记)
典型的浅层学习结构: 传统隐马尔可夫模型(HMM).条件随机场 (CRFs).最大熵模型(Maxent).支持向量机(SVM).核回归及仅含单隐层的多层感知器(MLP)等. 局部表示,分布式表示和稀疏 ...
- 论文解读(S^3-CL)《Structural and Semantic Contrastive Learning for Self-supervised Node Representation Learning》
论文信息 论文标题:Structural and Semantic Contrastive Learning for Self-supervised Node Representation Learn ...
- Deep Reinforcement Learning for Visual Object Tracking in Videos 论文笔记
Deep Reinforcement Learning for Visual Object Tracking in Videos 论文笔记 arXiv 摘要:本文提出了一种 DRL 算法进行单目标跟踪 ...
- Learning ROS for Robotics Programming Second Edition学习笔记(六) indigo xtion pro live
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Learning ROS for Robotics Programming Second Edition学习笔记(五) indigo computer vision
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Learning ROS for Robotics Programming Second Edition学习笔记(四) indigo devices
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Learning ROS for Robotics Programming Second Edition学习笔记(三) 补充 hector_slam
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Learning ROS for Robotics Programming Second Edition学习笔记(三) indigo rplidar rviz slam
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Learning ROS for Robotics Programming Second Edition学习笔记(二) indigo tools
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
随机推荐
- 使用极光第三方IM的时候服务器报错Caused by: java.net.UnknownHostException: api.im.jpush.cn
Caused by: java.net.UnknownHostException: api.im.jpush.cn 服务器报这个:首先查看服务器是否能ping通,如果能ping通,则看下 vi /et ...
- centos7安装rsync及两台机器进行文件同步
安装及配置 yum -y install rsync #启动rsync服务 systemctl start rsyncd.service systemctl enable rsyncd.service ...
- readiness与liveness
一.liveness(存活探针)方式 HTTP GET:对指定的端口和路径执行http get请求,返回非错误代码即代表正常 TCP socket:对指定端口建立TCP链接,链接通过则代表正常 Exe ...
- Android EditText禁止回车换行
在做一个登录页面的时候,发现了输入手机号的EditText可以输入回车的bug,影响用户体验,在此分享下解决办法. 百度了很多,都是设置singline=true的或者设置maxLines=" ...
- ThreadLocal源代码1
public class ThreadLocalTrxt { static ThreadLocal<Object> x1 = new ThreadLocal<Object>() ...
- Linux文件的基本操作函数
1.Linux文件的基本操作 Linux文件的基本操作主要包括了文件的创建.打开.读写和关闭等基本操作. 1.1.文件操作系统调用 (1)创建文件系统函数 int creat(const char * ...
- 使用Prometheus监控bind9的DNS服务
首先编译bind_exporter,编译方式参见bind_exporter 创建一个systemd配置文件来运行bind_exporter vi /etc/systemd/system/bind_ex ...
- golang 之 go-micro
在安装之前首先需要对go-micro有一定的了解 https://micro.mu/docs/cn/ go-micro中文文档 https://juejin.im/post/5cebafe6f265 ...
- 关于java中是引用传递还是值传递的问题
关于JAVA中参数传递问题有两种,一种是按值传递(如果是基本类型),另一种是按引用传递(如果是對象).首先以两个例子开始:1)public class Test2 { public static vo ...
- C#/.NET 中启动进程时所使用的 UseShellExecute 设置为 true 和 false 分别代表什么意思?
原文:C#/.NET 中启动进程时所使用的 UseShellExecute 设置为 true 和 false 分别代表什么意思? 在 .NET 中创建进程时,可以传入 ProcessStartInfo ...