之前有做过一个360的个性化推荐排序与点击率预估方案。很遗憾,方案最终落选于一堆清华北大的队伍中。记得当时评估人(一个很资深的大牛)问我:如果把用户分组了,不是会抹杀掉用户的一些特征吗?我当时完全答不上来。现在想想,还真是不需要分用户组,直接根据所有用户投票的结果选择就可以了。
但是能够在一周内快速的做出一个方案来,这段黑暗的岁月还是值得铭记在心的。下面,就把这个方案分享一下:
点击率预估
点击率预估现在普遍应用在广告投放中,因为直接与用户和利益相关,是各个企业非常重视的一部分。
但是,用户的点击是具有很大随机性的,因此,为了能够为用户提供更好的推荐结果,并且考虑到用户点击的随机性,我们提出了基于蚁群算法的点击率预估模型。此模型主要采用针对用户行为随机性的概率模型,通过实现用户对一组物品兴趣的动态更新来进行点击率预估。
整个模型分为标签代表概率模型和用户偏好概率模型。前者主要是为了选取最能够代表应用的标签,后者则主要选出最能够代表用户偏好的标签。所以,一切都是基于标签库的。
在标签代表概率模型中,我们针对一个应用可能会有多个标签的问题,遍历标签库中所有的标签,利用贝叶斯分类计算每个标签能够体现该应用特征的代表概率。概率值越大,则该标签越能代表该应用的特征。
而用户偏好概率模型则是基于基于蚁群算法的,通过计算每个标签被用户的喜好程度来选出最能代表用户兴趣的标签组。
通过上述两个步骤的构建,我们对于每一个包含很多标签的应用,计算用户点击的联合概率ÿ