下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

如何利用CLimF算法设计推荐系统

作者:课课家教育     来源: http://www.kokojia.com点击数:1144发布时间: 2019-05-07 13:03:43

标签: 人工智能Python开发人员 Python人工智能爱好者python

其实,算法是非常重要的,某些方面也说明了算法是很重要的(数据结构承上启下,最终也是要为算法服务)。 算法是用来解决问题的,要理解什么是算法,先要明白什么是问题。

自 2010 年开始,推荐系统领域出现了许多不同的排序学习的方法。所谓排序学习,指的是推荐系统机器学习算法优化的指标是推荐给用户的物品的排名,而不是具体的评分。排序学习解决问题的思路一般是首先提出一个需要优化的信息检索领域的指标,然后对其进行优化。因为这个指标通常是不光滑的,所以首先需要对这个指标进行近似,使得其成为一个光滑函数。信息检索的指标不同,产生了不同的算法。本文所要介绍的算法叫做 Collaborative Less is More Filtering (CLimF) 是 2013 年在人工智能的权威会议 IJCAI 发布的文章。

CLimF 优化的信息检索指标叫做 Reciprocal Rank (RR) ,是指的推荐给用户的物品列表中第一个被点击的物品的排名的倒数。例如,系统推荐了 10 个电影给用户,用户第一个点击的是在系统中排名第 2 的电影,那么用 RR 来衡量系统,得分就是 1/2 。因为推荐给用户的物品的列表都是按照推荐系统给出的评分从高到低进行排序的,因此排名越靠前的物品是越被推荐系统看好。所以用户点击的物品排名越靠前,说明推荐的效果越好。这是 RR这个指标设计的初衷。

CLimF 试用的场景是推荐给用户的物品不多,但是比较有价值的情况。比如社交网络里的友邻推荐,在这种场景下,Top 3 或者 Top 5 的推荐通常更有价值。

RR 的正式定义如下:

如何利用CLimF算法设计推荐系统_人工智能_算法_算法设计_课课家

尽管我们最新得到的公式是个光滑函数,但是它的复杂度极高,因此在实际应用中,我们需要找到替代的公式。

最后我们通过随机梯度下降的方式对最优化函数进行求解。

CLiMF 函数跟其他算法相比的测评效果如下:

CLiMF 与其他算法的比较:

  • CofiRank : CofiRank 是第一个将排序学习应用于推荐系统的算法,它优化的指标是 NDCG ,不适合二分类问题
  • Bayesian Personalized Ranking : 需要负样本,而 CLiMF 只需要正样本

小编结语:其实,算法是非常重要的,算法是在有限步骤内求解某一问题所使用的一组定义明确的规则。通俗点说,就是计算机解题的过程。在这个过程中,无论是形成解题思路还是编写程序,都是在实施某种算法。前者是推理实现的算法,后者是操作实现的算法。 一个算法应该具有以下五个重要的特征: 1、有穷性: 一个算法必须保证执行有限步之后结束。

赞(0)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程