关于Embedding的一些零碎笔记

  • 《深度学习推荐系统》一书中指出:,Embedding 就是用一个低维稠密的向量“表示”一个对象( object )。Embedding 向量能够表达相应对象的某些特征 ,同时向量之间的距离反映了对象之间的相似性。
  • 推荐系统的应用场景一般大量使用 one-hot 编码,这使得特征向量非常稀疏,深度学习的结构特点使其不利于稀疏特征向量的处理 , 因此几乎所有深度学习推荐模型都会由 Embedding 层负责将高维稀疏特征向量转换成稠密低维特征向量。
  • Graph Embedding已被提出
  • Embedding 对物品、用户相似度的计算是常用的推荐系统召回层技术。
  • Item2vec是对于Word2vec的推广,由NLP领域中对“词序列”进行Embedding演化为对“物品序列”的Embedding(由特定用户的浏览、购买等行为产生的历史行为记录序列)。
  • 关于MF模型,它可以将一个大的 u s e r − i t e m user-item useritem向量转化为用户隐向量和物品隐向量,也可以将其分别看作 用户Embedding向量和物品Embedding向量
  • 事实上,Embedding 对物品进行向量化的方法远不止 Item2vec。广义上讲, 任何能够生成物品向量的方法都可以称为 Item2vec
  • 广义上的 Item2vec 模型其实是物品向量化方法的统称 ,它可以利用不同的深度学习网络结构对物品 特征进行 Embedding 化。
  • Item2vec 方法也有其局限性,因为只能利用序列型数据,所以 Item2vec 在处 理互联网场景下大量的网络化数据时往往显得捉襟见肘 ,这就是 Graph Embedding 技术出现的动因。
  • Graph Era
  • Graph Embedding 是一种对图结构中的节点进行 Embedding 编码的方法,节点 Embedding 向量一般包含图的结构信息及附近节点的局部相似性信息。
  • 2014 年提出的 DeepWalk,采用随机游走的方式在图上乱跑,以行动轨迹为基础产生物品序列。因此,DeepWalk 可以被看作连接序列 Embedding 和 Graph Embedding 的过渡方法。
  • Node2vec,它通过调整随机游走权重的方法使 Graph Embedding 的结果更 倾向于体现网络的同质性( homophily ) 或结构性( structural equivalence )。同质性即图中相近结点的Embedding应该相近,结构性即图中结构上所处位置相似的结点的Embedding也应该相似。
  • 为了找到同质性和结构性的Embedding表示,使用BFS衡量结构性,使用在一个集团内部进行的DFS表达同质性。
  • 同质性相同的物品很可能是同品类 、同属性 ,或者经常被一同购买的商品 , 而结构性相同的物品则是各品类的爆款 、各品类的最佳凑单商品等拥有类似趋势 或者结构性属性的商品。
  • EGES( Enhanced Graph Embedding with Side Information ) 其基本思想是在 DeepWalk 生成的 Graph Embedding 基础上引人补充信息,以解决冷启动问题,获得较为合理的初始Embedding。即将一个物品的多个Embedding融合为一个最合理的Embedding。最简单的方式是在神经网络中加入平均池化层,并对每个Embedding加入权重参数进行学习。
  • 用矩阵的形式表达 Embedding 层,本质上是求解一个 m ( 输人高维稀疏向量的维度 )n ( 输出稠密向量的维度 )维的权重矩阵的过程。
  • Embedding 的本质是建立高维向量到低维向量的映射,而 “映 射” 的方法并不局限于神经网络 ,可以是任何异构模型.
  • 通常,Graph Embedding 的训练过程只能独立 于推荐模型进行,这使得 Embedding 预训练成为在深度学习推荐系统领域更受青 睐的 Embedding 训练方法。
  • 在模型部署过程中,没有必要部署整个深度神经网络来完成从原始特征向量 到最终输出的预测过程,只需要将用户 Embedding 和物品 Embedding 存储到线上 内存数据库 ,通过内积运算再排序的方法就可以得到物品的排序 ,再通过取序列 中 Top 7V 的物品即可得到召回的候选集合,这就是利用 Embedding 作为召回层的 过程。
  • 由于用户和物品的 Embedding 同处于一个向量空 间内,所以召回与用户向量最相似的物品 Embedding 向量的过程其实是一个在向 量空间内搜索最近邻的过程。主流的快速 Embedding 向量最近邻搜索方法 局部敏感哈希( Locality Sensitive Hashing , LSH )
  • 局部敏感哈希的基本思想是让相邻的点落人同一个 “桶”,这样在进行最近 邻搜索时 ,仅需要在一个桶内,或相邻的几个桶内的元素中进行搜索即可。如果 保持每个桶中的元素个数在一个常数附近 ,就可以把最近邻搜索的时间复杂度降 低到常数级别。
  • 首先清晰一个定理:在欧式空间中 ,将高维空间的点映射到低维空间,原本相近的点在低维空间 中肯定依然相近 ,但原本远离的点则有一定概率变成相近的点。
  • 利用低维空间可以保留高维空间相近距离关系的性质,就可以构造局部敏感 哈希 “桶”。
    在这里插入图片描述
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值