动手学推荐系统:基于PyTorch的算法实现(微课视频版)
上QQ阅读APP看书,第一时间看更新

第1章 推荐系统的初步了解

1.1 什么是推荐系统

推荐系统是帮助用户从海量信息中选择有效物品的系统。

随着目前人类世界的发展,信息越来越多。若不加处理,普通人很难靠自己从海量的信息中选择适合自己的内容,这个问题的学名叫作信息过载。

曾几何时,电视的频道总共只有十几个甚至更早才几个。每天晚上7点总是知道自己该看什么电视节目,因为总共只有几个选择,而如今可在网络上观看有史以来的绝大多数的电视节目,包括电影、综艺等。

而相对新闻内容,这些影视信息其实还算有限,人类世界每天都能产生上亿事件,但并不是所有事件都值得去关心,并且也不是所有事件让我们想要去关心。假设一个新闻平台仅仅是将每天的新闻平铺在界面中,那么相信没有人能够有这个心思从这些内容中寻找自己关心的事件。

为了解决信息过载的问题,人类发明了推荐系统。推荐系统要做的事情是通过用户的行为数据判断出用户的喜好,再结合系统内物品的数据从而计算出用户可能喜欢的物品,然后将这些物品推荐给用户。只要系统推荐出的物品的确令用户满意,那么信息过载的问题自然也就解决了。

但是推荐系统的潜力并不只是解决信息过载,因为最令用户满意的物品并不代表是最适合用户的物品。举个简单的例子,例如一个景点推荐系统,今天用户向系统询问推荐的景点,系统根据用户的历史数据统计并预测出用户今天一定最想去迪斯尼乐园,但是系统发现因为周末的原因迪斯尼乐园今天的游玩人数很多,如果用户真去迪斯尼乐园未必能有好的游玩体验,所以系统再结合所有的数据综合得到今天最适合该用户去的景点为动物园。