【推荐系统学习笔记】-- 2、特征工程

1、可利用的特征

1.1 用户行为特征

  • 显性反馈行为:点赞、评分、评价等
  • 隐形反馈行为:点击、浏览、播放、加入购物车等

1.2 用户关系数据

  • 显性:关注、好友关系
  • 隐形:点赞、共同观影
  • 使用Graph Embedding生成用户和物品的Embedding

1.3 属性、标签类数据

推荐系统中另外一大类特征来源是属性、标签类数据,这里我把属性类数据(Attribute Data)和标签类数据(Label Data)归为一组进行讨论,是因为它们本质上都是直接描述用户或者物品的特征。属性和标签的主体可以是用户,也可以是物品

用户特征、物品特征,然后通过Multi-hot或GNN(Graph Neural Network),使特征数值化

1.4 内容类数据

内容类数据(Content Data)可以看作属性标签型特征的延伸,同样是描述物品或用户的数据,但相比标签类特征,内容类数据往往是大段的描述型文字、图片,甚至视频。

同样通过One-hot或者GNN变成Embedding

1.5 场景信息(上下文信息)

最后一大类是场景信息,或称为上下文信息(Context Information),它是描述推荐行为产生的场景的信息。最常用的上下文信息是“时间”和通过 GPS、IP 地址获得的“地点”信息。

2、特征数值化 – 传统方法

  • 类别特征:one-hot、multi-hot
  • 数值型特征:归一化、分桶

3、特征数值化 – Embedding技术

3.1 从word2vec到item2vec

从NLP中,对文字向量化的思想中得到启发,对物品向量化。以前简单总结了一下词向量技术:word2vec等词向量简述

Word2vec
在这里插入图片描述
思路:根据上下文实现对单词的Embedding,采用3层结构,图中hidden即是词的Embedding

方式有两种:

  • CBOW:通过上下文预测单词,Input是目标词上下文的Multi-hot,连接全连接层到Hidden,再连接softmax到output,output是One-hot表示的目标词
  • Skip-gram:与CBOW相反,Input是目标词,Output是上下文的Multi-hot

两个优化学习方法:

  • 多层Softmax:由于样本不均衡,采用多层sigmoid的方式学习
  • 负采样:上下文有2N个正样本,根据单词的出现频率,采样2N个负样本进行学习

item2vec
与Word2vec的原理完成一致,把用户的浏览、购买、观看序列,传入word2vec模型,就形成物品等Embedding

3.2 Graph Embedding

单纯的用item2vec没有考虑到结构信息,仅仅考虑到了序列的前后关联。

  • DeepWalk:将item的前后连成图,在图上随机游走采样,形成序列,在传入item2vec
  • Node2vec:DeepWalk采用完全随机游走的采样方式,没有考虑到图的同质性和结构性,Node2vec采用带有权重的随机游走方式,兼顾到了这两方面的:
    • 同质性: 倾向于向远处游走,考虑图的全貌,加大DFS的权重
    • 结构性:倾向于在附近游走,考虑图的附近结构,加大BFS的权重

Graph Embedding应用

Graph Embedding的应用有三种形式:

  • 直接应用:利用相似的item embedding推荐物品
  • 预训练:预训练物品的Embedding,传入模型作为土整
  • 端到端:把物品的Embedding训练加入到模型中
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值