2.2 推荐系统
2.2.1 推荐系统概述
互联网技术的迅速发展,给用户带来的直观感受是各类新闻很多、商品种类繁杂,相对于个人接收力严重“超载”,用户很难从大量信息中找到自己感兴趣的信息。为了解决这类问题,众多工程师和科学家提出许多优秀的解决方案,其中具有代表性的解决方案是搜索引擎和推荐系统。搜索引擎和推荐系统有什么区别呢?下面通过举例来说明。
如果你想买一包瓜子,或者明确地想买一包五香味的瓜子,可以打开淘宝或者京东等电商平台搜索五香味瓜子,接着会看到许多瓜子的相关信息,选择喜欢的商品,填写地址、付费,然后等待送货上门即可。在此过程中,用户利用了搜索引擎,在电商平台的众多商品中寻找自己需要的商品的前提是用户有明确的需求,比如用户需要的是五香味的瓜子。但是,如果用户没有明确的需求呢?比如你今天心情不好,感觉很无聊,想找一部电影看看。但当你打开豆瓣电影,面对不胜枚举的电影,你会一筹莫展,不知道哪一部最适合你目前的心情。此时你需要一个人或者一个工具来帮你完成选择,这样的人可能是了解你的朋友,而这样的工具可以根据你观看电影的记录,从庞大的电影库中找到几部符合你兴趣的供你选择,这样的工具就是推荐系统。
虽然百度、谷歌等搜索引擎提高了用户搜索信息的效率,但推荐系统的优势在于更加个性化并且可以主动收集用户的特征信息,有选择地向用户提供信息,还可以根据用户需求的改变而调整推荐内容,成为解决“信息过载”的主流方法。
大数据和人工智能技术的普及,促进了个性化推荐技术的快速发展。以新闻平台为例,过去主要以搜狐新闻这类中心化平台为代表,而现在以今日头条为代表的新闻App均在首页根据用户偏好为用户推送新闻,推动了新闻平台向个性化推荐转型。京东、淘宝、亚马逊等电商平台则设有类似“猜你喜欢”等专区,该专区展示的是根据用户最近浏览和购买的行为记录为用户推荐的商品,有助于进一步提高商品的销售量。京东电商平台“您可能还需要”专区如图2-4所示。
图2-4 京东电商平台“您可能还需要”专区
由上述示例可知,推荐系统可根据用户的需求、喜好,将用户感兴趣的信息推荐给用户。一个典型的推荐系统一般包含5个模块:对象特征提取、用户画像、系统推荐、结果展示,以及结果评价和反馈。推荐系统的简略框架如图2-5所示。
图2-5 推荐系统的简略框架
① 对象特征提取模块:收集系统中推荐对象的特征信息,分析不同推荐对象间的联系,进行推荐对象建模,构建物品画像模型。
② 用户画像模块:利用用户提供的个人喜好、信息等了解用户的偏好,结合用户的历史行为和特征信息,比如用户浏览了哪些电影、对哪些电影进行了评价、观影时长等对用户进行画像,根据不同的应用场景,建立相应的用户画像模型。
③ 系统推荐模块:首先建立推荐模型,然后将用户画像模型和物品画像模型中的特征信息匹配,采用推荐算法计算出推荐的结果并将结果传送给系统。
④ 结果展示模块:在系统中将推荐结果展示给对结果可能感兴趣的用户,并作为推荐结果评价的重要依据。
⑤ 结果评价和反馈模块:结合实际的具体应用场景,依据相应的性能测评方法和评测指标,从不同方面对推荐算法进行性能评价,以便在具体应用中选择更优的推荐算法,并对用户画像和推荐对象建模方法进行改进。
推荐系统能够根据用户属性对用户进行建模,实现个性化推荐。在电子商务领域,使用推荐系统可以增加用户与商品的契合度,提升用户的忠诚度,促使用户消费,提高商品销售量。推荐系统的优势是对用户的历史行为进行分析,从而对用户的偏好和需求进行预测,实现个性化推荐。