推荐系统实战第02课召回算法和业界最佳实践Part1

@toc

推荐系统实战第02课. Match Algorithms and Practices (Part 1)

召回Match(CF,找到候选者);排序;重排序(多样性/新颖性)

推荐系统的 Match 模块介绍

业界通⽤推荐系统架构

Deep Neural Networks for YouTube Recommendations, RecSys ’16

在这里插入图片描述

**Match & Rank **

•定义:Match基于当前user(profile、history) 和context,快速在全库⾥找到TopN最相关的 item,给Rank来做⼩范围综合多⽬标最⼤化。

•通常做法:通常情况下,⽤各种算法做召回,⽐如user/item/model-based CF,Contentbased,Demographic-based、DNN-Embedding-based等等,做粗排之后交由后⾯的Rank层 做更精细的排序,最终展现TopK item

一般来说,需要多种算法就行融合,增加召回率。

Match 算法典型应⽤

猜你喜欢

​ •多样推荐

相似推荐

​ •看了还看

搭配推荐

​ •买了还买

在这里插入图片描述

Collaborative Filtering 算法介绍

Collaborative Filtering 定义

•Collaborative Filtering (CF) is the most well-known technique for recommendation.

“CF makes predictions (filtering) about a user’s interest by collecting preferences information from many users (collaborating)” ---Wikipedia

从相似的用户(物品),来预测、过滤用户的兴趣。

•数学形式化: 矩阵补全问题

在这里插入图片描述

基于共现关系的 Collaborative Filtering 算法

**User-based CF **

•多⽤于挖掘那些有共同兴趣的⼩团体,通常新颖性较好,但是准确性稍差

Item-based CF

•侧重于挖掘item之间的关系,然后根据⽤户的历史⾏为来为⽤户⽣成推荐列表

•相⽐user-based⽅法,item-based 的应⽤更为⼴泛

综合上述问题,在冷启动的问题中,一般来说,Item-based CF会更好

1、相似度:余弦距离

在这里插入图片描述

Similarity(\vec{A}, \vec{B})=\cos (\vec{A}, \vec{B})=\frac{\vec{A} \bullet \vec{B}}{\|\vec{A}\|^{*}\|\vec{B}\|}
2、用户商品倒排表

在这里插入图片描述

用来加速计算User-CF分子,构造用户-商品倒排表即可,只对有效的pair进行计算,从而简化计算。

在这里插入图片描述

p_{u j}=\sum_{i \in N(u) \cap S(j, K)} w_{j i} r_{u i}

UserCF、ItemCF 优缺点对比

在这里插入图片描述

基于ItemCF的推荐算法调⽤⽰意图

在这里插入图片描述

最新 CF算法 实践

Item CF 算法 最新实践

•改进版 I2I

​ •motivation:热门⽤户、哈利波特效应、⽤户⾏为缺乏考虑

​ •solution:热门⽤户降权、热门Item降权

•实时I2I

​ •motivation:新品推荐问题

​ •Solution:实时增量i2i

•Hybrid I2I

​ •motivation:⽆监督学习,⽆法刻画场景差异

​ •solution:有监督Hybrid多种i2i算法

改进版I2I

降低热门⽤户影响
w_{i j}=\frac{\sum_{u \in N(i) \bigcap N(j)} \frac{1}{\log 1+|N(u)|}}{\sqrt{|N(i)||N(j)|}}
分子是两个向量的内积,贡献的数量。

缓解哈利波特效应

所有人都会买哈利波特,其他产品会经常推荐热门的产品。调低后,就不在重视他本身的热门度。
w_{i j}=\frac{|N(i) \cap N(j)|}{|N(i)|^{ |-\alpha}|N(j)|^{\alpha}}

综合考虑 :1、⽤户⾏为差 2、热门⽤户降权
\operatorname{Sim}\left(\mathrm{I}_{\mathrm{i}}, \mathrm{I_j}\right)=\frac{\sum_{\mathrm{u} \in \mathrm{U}_{\mathrm{i}} \cap \mathrm{U}_{j}} \mathrm{W}_{\mathrm{u}}^{2} /\left(1+\delta\left(a b s\left(t_{u i}-t_{u j}\right)\right)\right)}{\sqrt{\sum_{\mathrm{u} \in \mathrm{U}\left(\mathrm{I}_{\mathrm{i}}\right)} \mathrm{W}_{\mathrm{u}}^{2}} \sqrt{\sum_{\mathrm{u} \in \mathrm{U}\left(\mathrm{I}_{\mathrm{j}}\right)} \mathrm{W}_{\mathrm{u}}^{2}}}

\mathrm{W}_{\mathrm{u}}=\frac{1}{\log _{2}\left(3+\mathrm{q}_{\mathrm{u}}\right)}

实时I2I(腾讯2015)
\operatorname{sim}\left(i_{p}, i_{q}\right)=\frac{\text { pairCount }\left(i_{p}, i_{q}\right)}{\sqrt{\text { itemCount }\left(i_{p}\right)} \sqrt{\text { itemCount }\left(i_{q}\right)}}

where
\left(i_{p}\right)=\sum r_{u, p}

\left(i_{p}, i_{q}\right)=\sum_{u \in U} \mathrm{co-rating}\left(i_{p}, i_{q}\right)

\operatorname{sim}\left(i_{p}, i_{q}\right)^{\prime}=\frac{\operatorname{pairCount}\left(i_{p}, i_{q}\right)^{\prime}}{\sqrt{\text { item Count }\left(i_{p}\right)^{\prime}} \sqrt{\text { item Count }\left(i_{q}\right)^{\prime}}}

=\frac{\text { pairCount }\left(i_{p}, i_{q}\right)+\Delta \operatorname{co-rating}\left(i_{p}, i_{q}\right)}{\sqrt{\text { itemCount }\left(i_{p}\right)+\Delta r_{u_{p}}} \sqrt{\text { item Count }\left(i_{q}\right)+\Delta r_{u_{q}}}}

TencentRec: Real-time Stream Recommendation in Practic

http://net.pku.edu.cn/~cuibin/Papers/2015SIGMOD-tencentRec.pdf

Hybrid i2i——Learning to Rank

在这里插入图片描述

Learning to Rank for Information Retrieval,Tie-Yan Liu

https://www.cda.cn/uploadfile/image/20151220/20151220115436_46293.pdf

Hybrid i2i 算法架构

•利⽤LTR的思想重构i2i(以短视频推荐为例)

•Feature

​ •Trigger-item Relavance: i2i_score/favor2favor sim/text sim…

​ •Item Feature: video_ctr、video_pv、video_comment、

​ •Trigger Feature: trigger_ctr、topic_ctr

•Model

​ •Loss:Pairwise Loss,同时优化CTR、LikeR、FavorR •Lambdamart/Neural Nets

在这里插入图片描述

Learning To Rank之LambdaMART的前世今生

https://blog.csdn.net/huagong_adu/article/details/40710305

思考题
A.买了还推怎么解决?

B.推荐过于同质化怎么解决?

C.搭配推荐该如何做

Model Based CF 演变历程

Model Based CF 问题定义

在这里插入图片描述

Deep Learning for Matching in Search and Recommendation,
Jun Xu Chinese Academy of Sciences
Xiangnan He National University of Singapore
Hang Li Bytedance AI La

Model Based CF算法(SVD)

在这里插入图片描述

SVD is Suboptimal for CF

•⼏个缺点

​ •Missing data和观测到的数据权重相同(>99% 稀疏性)

​ •没有正则项,容易过拟

强大的矩阵奇异值分解(SVD)及其应用

Model Based CF算法(Adjust SVD)

The “SVD” model in the context of recommendation:


在这里插入图片描述

•Matrix Factorization (MF) 推荐算法

•⽤latent vector来表⽰user和item(ID embedding)

•组合关系⽤ 内积 inner product (衡量user对于某⼀类商品的偏好)

Matrix Factorization Techniques for Recommender Systems, Koren, 2009

Factored Item Similarity Model

•MF ⽤UserID来表⽰⽤户

​ •可以叫做 user-based CF (i.e., find similar users for recom)

•另外⼀种做法是⽤⽤户评价过的item来表⽰⽤户

​ •可以叫做 item-based CF (i.e., find similar items for recom)

在这里插入图片描述

FISM: Factored Item Similarity Models for Top-N Recommender Systems

SVD++: Fusing User-based and Item-based CF

•MF (user-based CF) ⽤UserID来表⽰⽤户

​ •直接映射ID到隐空间

•FISM (item-based CF) ⽤⽤户评价的item来表⽰⽤户

​ •映射items到隐空间

•SVD++ 混合了两种想法

​ •Netflix 百万⼤奖⽐赛 单模型最佳

在这里插入图片描述

FactorizationMeetstheNeighborhood: aMultifaceted CollaborativeFilteringModel

如何融⼊更多的信息(Side Info)

•CF 只⽤交互矩阵来build模型

•如何利⽤ user/item 属性 和 上下⽂?

•Side info 实例

在这里插入图片描述

Generic Feature-based Recommendation

在这里插入图片描述

FM: Factorization Machines

•FM 受到前⾯所有的分解模型的启发

•每个特征都表⽰成embedding vector,并且构造⼆阶关系

•FM 允许更多的特征⼯程,并且可以表⽰之前所有模型为特殊的FM(⼤家思考⼀ 下)

– E.g.,MF,SVD++,timeSVD(Koren,KDD’09),PITF(Rendle,WSDM’10)etc.

在这里插入图片描述

Factorization Machines

Rating Prediction is Suboptimal

之前的⼯作都在优化L2 loss

在这里插入图片描述

– 很多证据表明
⼀个低MSE模型不⼀定代表排序效果好。。

– Possible Reasons:

  1. 均⽅误差(e.g., RMSE) and 排序指标之间的分歧

  2. 观察有偏 – ⽤户总是去对喜欢的电影打分

Towards Top-N Recommendation

•现在的⼯作开始逐步朝着优化pairwise ranking loss •Known as the Bayesian Personalized Ranking loss (Rendle, UAI’09). 优化相对序关系,⽽不是优化绝对值

在这里插入图片描述

下节预告

Deep Collaborative Filtering Model

​ •Methods of representation learning

在这里插入图片描述

​ •Methods of matching function learning

在这里插入图片描述

BAT搜索推荐核⼼系统架构(2018)

在这里插入图片描述

⼈⼯智能在淘宝搜索中的应⽤ https://www.sohu.com/a/212035397_612370

实践:Movielens上的MF实战 (TensorFlow)

在这里插入图片描述

其他参考资料

•ItemBased Collaborative Filtering Recommendation Algorithms

•Amazon.com recommendations: Item-to-Item Collaborative Filtering

•推荐系统实战.项亮 http://vdisk.weibo.com/s/aSXlSkLAQjzMT

•天猫推荐业务与算法架构.张奇.2013. http://topic.it168.com/factory/adc2013/ doc/zhangqi.pdf

•淘宝搜索技术演变 https://mp.weixin.qq.com/s/jUQHnATSiOpKfDeY_vQ6YA

•淘宝⽹的推荐算法具体是怎么样的? - xiao ma的回答 - 知乎 https:// www.zhihu.com/question/29108284/answer/43247127

•双⼗⼀⼿淘⾸页个性分享 https://mp.weixin.qq.com/s/vpxLTcwenvlIvj5D-8uolg

•淘宝天猫个性化推荐技术演进史 https://blog.csdn.net/broadview2006/article/ details/71455437

•深度解析京东个性化推荐系统演进史 https://blog.csdn.net/qq_40027052/ article/details/78733365

•今⽇头条推荐算法原理 http://www.sohu.com/a/217314007_297710

数据和代码汇总

阿⾥天池数据集合https://tianchi.aliyun.com/datalab/index.htm?spm=5176.100073.0.0.21316fc1Q34jZU

•CTR预估代码汇总 https://github.com/shenweichen/DeepCTR

•CTR-CVR相关模型 https://arxiv.org/abs/1804.07931

•Movielens推荐 https://github.com/chengstone/movie_recommender

•随⼿看到的LTR代码:https://github.com/shiba24/learning2rank

课后作业

运⾏MF的movielens notebook,⽤notebook,改改⽹络结构,找到调模型感觉

•学会使⽤Google、Github搜索引擎解决问题、查找论⽂和代码

•熟悉天池数据平台,了解如何使⽤更贴近⼯业界的数据

预习资料

•2013 微软:Learning Deep Structured Semantic Models for Web Search using Clickthrough Data https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/cikm2013_DSSM_fullversion.pdf

•2016 Youtube :Deep Neural Networks for YouTube Recommendations https://research.google.com/pubs/archive/45530.pdf

•解读 Airbnb KDD2018 best paper: Embeddings at Airbnb - 吴海波的⽂章 - 知乎 https://zhuanlan.zhihu.com/p/49537461

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,657评论 6 505
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,889评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,057评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,509评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,562评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,443评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,251评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,129评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,561评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,779评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,902评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,621评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,220评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,838评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,971评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,025评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,843评论 2 354

推荐阅读更多精彩内容