人工智能-机器学习推荐系统修行之路

推荐算法笔记06_冷启动

2022-02-02  本文已影响0人  Nefelibatas

什么是推荐系统的冷启动?

新用户、新内容对推荐系统来说都是没有过往信息积累的、陌生的,需要通过累计一定的曝光量和互动量来

收集基础数据。这个从0到1积累基础数据的过程就是冷启动,其效果的好坏直接关系到整个产品新用户的留存和转化,而用户留存和转化的提升是做冷启动优化的动力来源。

冷启动分类

用户冷启动

物品冷启动

系统冷启动

哪些方面进行推荐系统的冷启动处理

强规则 产品侧做、区分对待 固定展示位展示新物品、一定量流量展示新物品
策略 排序队列做、区分对待 减少新物品的过滤等级、召回与排序固定百分比新物品
模型 偏向新物品的算法 针对新物品(用户)的Embedding表示、独立的新物品排序模型

冷启动的判断

image-20220105133827333.png

用户冷启动

非个性化推荐(与具体用户无关)

尽可能收集用户信息

推荐榜单设置

启动项的树形结构

image-20220105205438409.png

利用已有用户信息进行粗粒度推荐

利用算法和基础属性的做更细粒度榜单

利用外部数据寻找相似用户做推荐

少样本学习算法

image-20220105205811635.png

物品冷启动

基于规则

物品冷启动不敏感的算法

探索与利用策略

探索与利用

什么是ExplorationExploitation

ExplorationExploitation

𝜀 − 𝐺𝑟𝑒𝑒𝑑𝑦 简单贪心
𝑇ℎ𝑜𝑚𝑝𝑠𝑜𝑛 𝑆𝑎𝑚𝑝𝑙𝑖𝑛𝑔 汤普森采样
𝑈𝐶𝐵 置信上界
𝐿𝑖𝑛 − 𝑈𝐶𝐵 线性置信上界

Multi-armed bandit(多臂老虎机)

假设你进了一家赌场,面前有K台老虎机(Arms)。老虎机本质上就是个运气游戏,我们假设每台老虎机𝐴𝑟𝑚𝑖 都有一定概率𝑝𝑖吐出一块钱,或者不吐钱( 概率1 − 𝑝𝑖 )。

假设你手上只有 𝑇 枚代币。也就是说你一共只能摇𝑇次。 (tokens),而每摇一次老虎机都需要花费一枚代币,

那么如何做才能使得期望回报(expected reward)最大呢?

假设你一开始对这些机器的吐钱概率一无所知。你认为每个𝐴𝑟𝑚𝑖的𝑝𝑖是个确定的值。

你的任务就是要在有限的时间内找到那些高𝑝𝑖的机器,并尽可能多的去摇它们,以获得更多的回报。

那么这里我们注意到这类问题的一大特点,即我们只有T次机会。

如何去平衡这次的exploration(探索)和exploitation(利用)𝑇 的次数。

𝜀 − 𝐺𝑟𝑒𝑒𝑑𝑦

方法A

随机地摇N次老虎机,每次摇都是相互独立的,但是这种方法每次摇的老虎机很大概率都不是出钱概率最大的。

方法B

首先随机摇𝑚(𝑚 < 𝑁)次,然后选择这𝑚次中平均收益最大的那台老虎机,在剩余次数中一直摇这台机器。 𝑚往往不能太大,成本有限。因此这种方法选择出的老虎机也有可能不是概率最大的那台。

𝜀-Greedy方法

• 设定一个参数ε 𝜖 (0,1]

• 每次通过ε的概率随机选择, 1 − ε 的概率选择当前平均收益最大的

• Exploitation-Exploration的思路

• Exploitation是在已经累数据的基础上最大化收益

• Exploration是探索未知,增加数据积累

𝜀-Greedy改进

随着次数的增加不断减少𝜀,例如: 1/(log 𝑚 +10.00001)

Thompson Sampling

伯努利分布(Bernoulli distribution,又名两点分布或者0-1分布,是一个离散型概率分布。若伯努利试验成功,则伯努利随机变量取值为

机变量取值为0,记其成功概率为𝑝(0 ≤ 𝑝 ≤ 1),失败概率为𝑞 = 1 − 𝑝。则

image-20220105220930902.png

二项分布是𝑛个独立的伯努利试验中成功次数的离散概率分布,其中每次试验的成功概率为p

如果随机变量𝑋服从参数为𝑛和𝑝的二项分布,记做𝑋~𝑏(𝑛, 𝑝)或𝑋~𝐵(𝑛, 𝑝)

image-20220105221544314.png

贝塔分布,简称𝐵分布,是指一组定义在(0,1)区间的连续概率分布,有两个参数𝛼,𝛽 > 0

image-20220105221616668.png image-20220105221654834.png

https://zhuanlan.zhihu.com/p/69606875

贝叶斯定理,是关于随机事件𝐴和𝐵的条件概率的定理

image-20220105221742209.png

Thompson Sampling中的贝叶斯定理

image-20220105222045330.png image-20220105222128869.png

伪代码

image-20220105222205937.png

UCB

Tompson Sampling 类似,利用分布的不确定性作为探索强弱程度的依据

过程:

假设有𝐾个老虎机,对每个老虎机进行随机摇臂𝑚次,获得老虎机 𝑗 的收益的初始化经验期望 x^-_ 𝑗 用 𝑡 表示至今摇臂总次数, 𝑛_ 𝑗 表示第 𝑗 个老虎机至今被摇臂的次数,计算每个老虎机的𝑈𝐶𝐵值

UCB(j) = x^-_j+\sqrt{\frac{2logt}{n_j}}

选择𝑈𝐶𝐵最大的老虎机 𝑖 摇臂,并观察其收益𝑋𝑖,𝑡;

根据 𝑋𝑖,𝑡 更新老虎机 𝑖 的收益期望值;

重复第2步。

Hoeffding’s Inequelity (霍夫丁不等式)

image-20220105223403704.png

总体分布与局部分布偏差大于一个值的概率不会太大

image-20220105223339815.png

Lin-UCB

老虎机问题中,老虎机吐钱概率是固定的,谁摇都一样。前面的方法解决这类问题的效果比较好,这些方法称为Context Free方法,即上下文无关的方法。

在系统推荐过程中,可以把选择哪个物品理解为老虎机的选择问题,是否吐钱理解为用户是否点击,但是物品是否被点击不只与物品本身相关,还和很多因素相关,这些因素称作Contextual信息

考虑Contextual信息的Bandits问题,称作Contextual Bandits

雅虎提出Lin-UCB算法:

A contextual-Bandit Approach to Personalized News Article Recommendation

image-20220105231344692.png image-20220105231428673.png

工业实践:

https://zhuanlan.zhihu.com/p/35753281

不确定度量:

https://zhuanlan.zhihu.com/p/139470659

贝叶斯优化:

https://zhuanlan.zhihu.com/p/150555551

基于模型

几种思路:

强化学习

注:冷启动模型一般不用id类特征

系统冷启动

发挥专家作用(e.g 图书馆图书分类)

没有用户的行为数据,也没有充足的物品内容信息来计算准确的物品相似度

专家(或算法)进行标注以便根据多维度特征表示向量计算物品相似度

模型参数迁移

比如业务相似,旧业务模型迁移到新业务

总结与回顾

image-20220105231807201.png
上一篇下一篇

猜你喜欢

热点阅读