推荐系统介绍

推荐系统介绍

什么是推荐系统

这里先说一下“连接”这个词,凡是能够产生关系的都是连接,像用户对物品的行为,用户的属性和物品的属性一样等等。随着各种物品智能化,
万物互联的时代到来,会倾向于建立越来越多的连接。人和人有更多连接,于是有了各种社交产品;人和物品有越来越多消费连接,于是有了
各种电商产品等。
推荐做的事就是连接,也就是将用户和物品连接起来。推荐系统通过背后算法和技术,用已有的连接去预测未来用户和物品之间会出现的连接。
从本质上来讲,他提高了信息分发和信息获取的效率。

你需要推荐系统吗?

现在我们很多时候盲目跟风个性化,但是我们需要推荐系统吗,这是我们经常忽略的问题。我觉得可以考虑下面几点:
1.要有足够多的物品。物品少的话其实没有必要个性化,编辑下热门就够了。当物品丰富后,根本无法人工编辑,才有推荐系统的土壤。
2.要有足够的用户,并且用户有明显的区分度。用户少的话和物品少一样,人工编辑下就可以了。用户区分度不够的话,可能只需要根据用户
几个大分类处理下就好了。
3.要有足够的连接数据。连接很少的话是无法建立很精准的推荐的,这时应该考虑的是怎么提高用户连接数据。
否则,在不成熟的情况下,我们可能投入了大量的资源,却看不到收益。

推荐系统的阻碍和挑战

推荐系统解决的问题看起来很朴素,但是要搭建一个高效有价值的推荐系统是很困难的。推荐系统是一个比较大的系统工程,要落地到业务上
需要大量的工程开发。涉及到日志埋点,日志收集,ETL,分布式计算,特征工程,推荐算法建模,数据存储,提供接口服务,UI展示与交互,
推荐效果评估,实验平台,推荐系统安全,监控等各个方面。
我这里从技术工程角度上讲一下构建推荐系统面临的挑战:
1.推荐系统精准度问题。首先得需要足够的数据,然后全面的特征工程,构建好的推荐算法来实现,才会有好的效果。
2.数据问题。噪声数据、缺失数据怎么处理,他们可以对推荐系统可以产生很大干扰,怎么保证数据质量,这是很重要的问题;非结构化数据
怎么高效的利用,提供更多的信息输入,我们可以借助深度学习解决。
3.冷启动问题。推荐系统是数据贪婪型的。新用户、新物品是没有相关行为的,这个时候怎么给用户推荐,把物品给推出去,需要结合实际的
业务场景处理才可能有好的体验。
4.探索与利用问题。如果我们知道用户的喜好,那该怎么推荐呢?最好是,大部分推荐他喜欢的,小部分试探他感兴趣的,怎么定大部分和小
部分,这就是探索与利用。
5.推荐系统评估问题。怎么服务于业务目标,怎么评估推荐效果的好坏,怎么衡量推荐系统的价值产出,这些都是需要我们考虑的。量化相关
指标,才能更好的优化推荐系统,发挥推荐系统的价值。
6.实时推荐问题。实时推荐需要我们实时的收集用户的反馈,从而做到更及时精准的推荐。大规模用户实时响应,他对我们算法,计算,处理
都是很大的考验。
7.大量用户问题。这是一个互联网常见的问题,当有大量用户后,他对我们服务,存储,计算会有很大压力,怎样构建一个能处理大规模用户
的系统,也是一个很大的挑战。
8.安全问题。恶意攻击会收到很多垃圾数据,更严重会影响推荐结果,损失产品的商业利益。所以,推荐系统对于恶意攻击的防御也很重要。
9.UI 和 UE设计问题。略

推荐系统的作用

对于大部分互联网产品,推荐系统很好的解决了用户方,物品提供方,平台方三方的需求。
从用户角度看,推荐系统可以让用户在纷繁芜杂的海量信息中快速找到自己感兴趣的东西,节约了用户的时间。并且当不经意推荐到用户喜欢
的东西,极大地提高了用户体验。
从物品提供方看,可以将提供方的物品推荐给喜欢的用户,提高有效的曝光率、转化率,从而带来收益。
从平台角度来讲,精准的推荐,能增加用户对平台的粘性,让用户喜欢上你的平台。并且它主要在信息生产方和信息消费方搭建起桥梁,用投
其所好的方式存储用户的注意力。平台可以将注意力作为商品与人交换产生价值,像广告、电商销售、其他增值服务,这些都是存储了注意力,
并对其进行了变现。
最后,推荐系统减少了物品的周转周期,提高了信息流通的效率,对弈社会资源的节省和有效利用也是大有益处的。

推荐系统的应用领域

推荐系统广泛用于各类互联网公司,基于上面的介绍,只要存在大量的“供用户消费的商品”的互联网产品,推荐系统就有用武之地。具体来说
推荐系统的应用领域主要有如下几类:
电商网站:如淘宝,京东,亚马逊等
视频:Netflix,优酷,抖音,快手等
音乐:网易云音乐,qq音乐等
资讯类:今日头条,浏览器等
生活服务类:美团,携程等
交友类:陌陌,珍爱网等
下图展示了几类常见的互联网推荐产品,大家应该都不陌生。

undefined