什么是推荐系统

基于深度学习的推荐系统正在助力网络巨头们高速成长;现在,借助NVIDIA Merlin应用框架及GPU加速,搭建基于深度学习的推荐系统正在变得触手可及。
by 英伟达中国

过去,搜索,你可能会获得你想要的信息。

但是当你在互联网上花费了足够长的时间,你想要的信息就会在你需要的时候主动找上门来。

这就是当今互联网的主要驱动力 – 推荐系统,当今世界上最重要的应用。

因为,在信息大爆炸的今天,面对海量的选择,用户无法去浏览搜索得到的所有结果。

例如,在某知名电商网站上,共有超过20亿件商品。顾客想要完整浏览整个商品目录,即便在手机app上划一次只需1秒钟,也需要花费65年——几乎要花上一辈子的时间。

这正是如今互联网变得如此个性化的原因之一。否则,对于全球几十亿的互联网用户来说,从数以千亿计的信息中找到对于他们各自有价值的产品、服务甚至专业知识,是一件根本不可能的事情。

此外,推荐系统可能也是最具人性化的了。毕竟,当你向他人寻求建议时,或征询反馈的时候,就是在寻求一个推荐。

如今,在海量用户的偏好数据驱动下,各类推荐系统都在竞相进步。

互联网已经知道很多有关你的信息:你的名字,住址,或是你的出生地。但是,推荐系统更希望了解的是你的喜好,甚至于比那些认识你的人更关心你的喜好。

网络公司成功的关键

推荐系统并不是一个新概念。Jussi Karlgren于1990年就提出了推荐系统或是“数字书架(Digital bookshelf)”的概念。在接下来的20年里,来自麻省理工学院(MIT)和贝尔实验室(Bellcore)的研究人员进一步推进完善了此项技术。

此项技术真正引起大众的关注是在2007年,当时,主营模式还是通过邮寄方式出租DVD的Netflix公司推出了一项公开竞赛,奖金高达100万美元。该竞赛要求参赛者能够提供一套协同过滤算法,帮助Netflix将其推荐系统的准确性提高10%。最终,奖金于2009年被人赢走。

在接下来的十年中,这种推荐系统成为了Netflix、亚马逊、Facebook、阿里和百度等互联网公司成功的关键。

良性数据循环

新一代的基于深度学习的推荐系统为企业市场推广注入了魔力,使得企业能够为用户提供他们更感兴趣的内容,从而提高点击率。

如今,这种收集数据、处理数据、利用数据训练AI模型并将这些模型部署到其业务当中,从而帮助用户找到他们想要的信息的能力,已经成为了大型互联网公司们所拥有的最大竞争优势之一。

而且,它正在推动着一个良性的循环——更好的技术将带来更加优质的推荐结果,而更好的推荐又能吸引更多的用户,进而让这些公司能够负担得起更好的技术。

以上所讲的是商业模式。那么这项技术究竟是如何工作的呢?

收集信息

推荐系统首先需要收集信息——记录你的请求,比如你在视频app上搜索了哪些电影,你关于这些电影的打分和评论,购买记录,以及你过去所采取的其他行动。

或许更重要的是,它们能够跟踪你所做的选择:你点击了什么,你如何浏览信息。例如,你看一部电影时,看了多长时间;你点开了哪些广告,或者你和哪些朋友有过互动。

所有这些信息都将汇聚到大型数据中心,并编译成复杂的多维表格。这些表格会很快变大,可能有几百TB大,而且会一直增长。

其数据量如此之大并不是因为它从单个用户的身上收集到了大量的数据,而是因为它要从许多用户身上去收集数据,尽管从单个用户身上收集只收集了很少量的信息。

换言之,这些表格是非常稀疏的,这主要体现在,对于绝大部分用户的信息和服务的偏好,都是没有相应记录的 — 也就是表格中相应位置数值为零。

但是,总的来说,这些表格所包含的信息体现了大部分人的喜好偏向。

这将有助于公司根据特定类型用户的喜好,做出明智的决策。

内容过滤,协同过滤

虽然推荐算法和技术有很多,但大体上可以分为两大类:协同过滤和内容过滤。

协同过滤能够通过找到与你相似的用户,来帮助你找到你所喜欢的内容。

例如,尽管推荐系统可能对于你的音乐品味一无所知,但如果它知道你和另一个用户在读书方面有着相似的喜好品味,那么推荐系统就有可能会向你推荐一首这位用户喜欢的歌曲。

相比之下,内容过滤则是通过分析了解每个产品的基本特性来实现的。

比如,如果推荐系统发现你喜欢看由汤姆·汉克斯和梅格·瑞恩主演的《电子情书》和《西雅图不眠夜》,那么它就有能会向你推荐另一部由他们主演的电影,比如《魔岛仙踪》。

当然,这些都是极其简单的例子。

数据为王

事实上,正是因为这些系统需要从如此之多的人那里获取如此之多的数据,而且其部署规模也是如此之大,因此哪怕只是一点小小的改进,都能为企业带来数千万甚至数亿美元的业务增长。

一项业务也许并不知道每个人的想法,但是根据大数定律,它可以得知一些统计学上的信息。比如它可以知道如果你向100万人给出了某项推荐,最终会有1%的人接受。(如此小的比例都可以带来巨大商业收入改善)

更好的推荐系统能够带来巨大的潜在收益,但同时也意味着巨大的挑战。

例如,那些成功的互联网公司,他们需要能够以更快的速度处理更多的查询需求,随着数据量的不断攀升,他们相应也需要在基础设施上投入大量的资金。

相比之下,那些非技术型的公司则只需要现成的工具,这样他们就不必雇佣整支数据科学家团队。

随着推荐系统逐渐被应用于从医疗健康到金融服务等各个行业当中,它们需要变得更加触手可及。

GPU加速

这正是GPU的价值所在。

NVIDIA GPU长期以来都被广泛用于加速神经网络训练,进而促进了现代AI的繁荣发展。这都是归功于GPU强大的并行处理能力可以高效完成各类数据密集型任务。

现在,随着数据规模的不断扩大,GPU也正在得到更广泛的应用。借助于RAPIDS — 数据科学和分析流程加速软件库,数据科学家们能够更快速的完成更多的分析工作。

NVIDIA刚刚宣布的Merlin 推荐应用框架,也进一步降低了使用GPU来加速推荐系统的门槛。Merlin为用户提供了一个全链路的方案,用于为推荐系统提供GPU加速的数据提取、模型训练和模型部署。

这些系统将能够充分利用基于NVIDIA Ampere架构的全新NVIDIA A100 GPU,帮助企业构建更快速、更经济的推荐系统。

我们的建议?如果你想尝试推荐系统,现在就是最好的时机!

想开始使用推荐系统吗了解更多关于NVIDIA Merlin的信息,NVIDIA的深度推荐系统应用框架。