初识推荐系统:你刷到的内容为啥刚好戳中你?
有没有过这种经历?周末宅家刷抖音,本来只想看5分钟解解闷,一抬头发现半小时过去了,而你刷到的10条视频里有8条都是你爱看的美食/手工/动漫内容,每一条都刚好戳中你的兴趣点;打开QQ音乐,系统推的「每日推荐」30首歌里你能循环20首,连你最近刚迷上的小众歌手都给你挖出来了;打开淘宝,「猜你喜欢」里居然出现了你上周跟同桌念叨了一句的动漫周边,你忍不住点进去加了购物车,然后突然反应过来:这手机是不是偷听我说话了?
你猜得没错,也不是完全错——它确实在“听”你,只不过不是用麦克风偷听你聊天,而是通过你所有的上网行为“读”你的喜好:你刷到美食视频多看了2秒,你给手工视频点了赞,你搜过「露营装备怎么选」,你给科幻电影打了五星好评,这些你根本没当回事的小动作,都被推荐系统悄悄记了下来,拼凑出一个专属于你的“喜好画像”,然后精准地把你想看的内容递到你手里。这个看不见的“金牌导购”,就是现在火遍全球的推荐系统。
你可以把整个互联网想象成一个超级大书店,里面有几十亿本“书”:短视频是动态的连环画,音乐是带旋律的有声书,商品是能摸到实物的小册子,新闻是讲实时事的简报。如果你没有导购,自己在这个书店里找喜欢的内容,就像让你蒙着眼睛在几十层楼高的书海里捞一根特定的针,捞到天荒地老也未必能找到。而推荐系统,就是这个书店里最懂你的金牌导购:你不用开口说自己喜欢什么,他观察你平时翻过什么书、在哪类书架前停得最久、上次买了什么书还给了五星好评,就能精准地把你想看的内容递到你手里。它的核心作用只有一个:帮你从海量内容里快速找到你喜欢的东西,不用自己大海捞针。
你可能觉得“找喜欢的内容很难吗?我自己搜不就行了?”那你先算一笔账:现在抖音每天上传的短视频超过1000万条,B站每天更新的视频超过10万条,QQ音乐的歌库里躺着超过1亿首歌,淘宝的商品总数超过10亿件。就算你每秒
就算你每秒能刷10条视频,你一年能看的视频不到3000万条,只是当天上传量的千分之三——剩下的999.7%的内容,你一辈子都刷不到。要是全靠你自己搜关键词找内容,你搜个“手工DIY”,出来几百万条结果,你点开前10条,有3条是卖劣质手工材料的广告,2条是去年的过时教程,剩下5条里只有1条刚好符合你“新手零基础预算50块以内”的需求,剩下的要么太复杂你学不会,要么材料贵到你买不起,找半天也找不到一个能跟着做的教程,半小时就这么浪费了,还不如躺平让系统给你推。
这就是推荐系统出现的核心原因:互联网的内容多到已经超过了任何人能手动筛选的极限,我们需要一个看不见的“金牌导购”,帮我们从海量内容里精准捞出来我们想要的东西。这个导购比你之前去书店遇到的导购还神,你不用开口说“我要什么”,你只要正常刷内容、点个赞、多停留两秒,它就能摸透你的喜好,把你想要的东西直接递到你手里。
推荐系统其实一点都不新鲜,你早就见过它了
很多人觉得推荐系统是近些年才有的新技术,其实它的雏形早就出现在你的生活里了。你小时候去书店,门口摆着的“畅销书展台”,就是最原始的人工推荐:书店老板根据这段时间哪本书卖得最好,把它摆在最显眼的地方,所有进书店的人都能看到,这是最早的“一对多”推荐,所有人都看一样的内容。后来书店老板发现,来买科幻小说的顾客很多也会买《三体》,就会在科幻书架旁边摆一本《三体》,旁边放个牌子写着“科幻迷必读”,这就是最早的“个性化推荐”雏形:根据你的喜好,给你推你可能感兴趣的内容。
互联网时代的推荐系统,其实就是把这个“书店导购”的逻辑搬到了线上,而且规模放大了几亿倍。最早的互联网推荐完全是人工做的:90年代雅虎刚做搜索引擎的时候,互联网上的网站还不到100万个,雅虎雇了几百个编辑,把所有网站分好类,做成目录导航,你找网站只能按分类找,比如找体育网站就点“体育”分类,找娱乐网站就点“娱乐”分类,所有用户看到的都是一样的目录,这就是最原始的“门户网站推荐时代”,完全靠人工编辑挑内容,优点是内容质量有保证,缺点是效率太低,编辑根本挑不过来,而且所有人都看一样的内容,根本满足不了不同人的个性化需求。
等到了2000年左右,互联网内容爆炸了,全世界的网站已经有几千万个,编辑根本看不过来,这时候就出现了第一个自动化的推荐逻辑:按“热度”排序。哪个网页点的人多、哪个新闻被转载的次数多,就把哪个放到前面,比如Google News刚上线的时候,就是用的这个逻辑,把所有新闻按点击量、转载量排序,你打开首页看到的就是当天最火的新闻,比编辑挑的要快得多,也更能代表大部分人的喜好,但问题还是“千人一面”:所有人都看到一样的新闻,你喜欢看体育,他喜欢看娱乐,看到的首页内容完全一样,还是满足不了个性化需求。
真正的个性化推荐是在Web 2.0时代才兴起的:2003年博客兴起,2004年Facebook上线,2006年Twitter上线,互联网从“平台生产内容”变成了“用户自己生产内容”,每天新增的内容有几百万条,每个人的喜好都不一样,有人喜欢看科技博客,有人喜欢看明星八卦,有人喜欢看美食教程,再靠人工或者统一的热度排序根本满足不了需求。这时候亚马逊最早把“协同过滤”的逻辑用到了商品推荐里:你买了《哈利波特与魔法石》,系统发现“买了《哈利波特与魔法石》的人,90%都买了《指环王》”,就会给你推《指环王》,这个逻辑特别简单,就是“和你口味差不多的人喜欢的东西,你也可能喜欢”,这就是最早的个性化推荐算法,虽然简单,但效果比之前的热度排序准太多了。
> 📌 推荐系统发展小时间轴 > - 1992年:雅虎推出人工编辑的互联网目录导航,所有推荐内容都由编辑手动挑选,是“千人一面”的时代 > - 2003年:亚马逊上线“购买此商品的人也买了”功能,最早把“相似人群喜好”用到商品推荐中,是个性化推荐的雏形 > - 2006年:Netflix举办百万美元推荐算法大赛,全球顶尖的算法高手竞争优化推荐准确率,把个性化推荐的热度推到顶峰 > - 2016年:抖音、快手等短视频平台上线,基于实时用户行为的短视频推荐成为主流,推荐系统从“辅助功能”变成了平台的“核心引擎” > - 2022年之后:推荐系统开始加入“价值观引导”模块,除了推你喜欢的内容,还会主动推送科普、公益、正能量内容,避免用户陷入信息茧房
等到了2010年移动互联网普及之后,推荐系统才真正变成了你离不开的“隐形导购”。智能手机让你随时随地都能刷内容,短视频、直播、社交平台的内容产量呈指数级增长:现在抖音每天上传的短视频超过1000万条,B站每天更新的视频超过10万条,QQ音乐的歌库里躺着超过1亿首歌,淘宝的商品总数超过10亿件。你不可能把所有时间都用来找内容,这时候推荐系统就变成了核心:你打开抖音,不需要搜任何关键词,直接刷,系统就会把你喜欢的内容一条一条递到你手里;你打开QQ音乐,不需要自己找歌单,系统给你推的「每日推荐」30首歌里你能循环20首;你打开淘宝,不需要搜“露营装备”,首页的「猜你喜欢」里已经出现了你上周跟同桌念叨了一句的户外折叠椅。
::: info 冷知识小贴士 你刷到的每一条推荐内容,背后平均有几十个工程师在优化算法,他们每天的工作就是让推荐更准、更少出错、更能帮你找到喜欢的内容。推荐系统不是魔法,是无数人一点点优化出来的“数字导购”。 :::
推荐系统的核心逻辑,其实就是三个步骤
你可能会好奇:推荐系统到底怎么知道我喜欢什么?是不是真的能“读心”?当然不是,它不会读心术,它的逻辑特别简单,就像那个懂你的书店导购,只需要三步就能把你想看的内容递到你手里。
第一步:记下你的喜好,画一张专属于你的“喜好画像”
导购为什么懂你?因为他观察你观察得够细:你上次来买了什么书,你在哪个书架前停了5分钟,你翻了几页《三体》又放回去了,你跟朋友说想找“适合初中生看的科幻小说”,这些细节他都记在脑子里,拼凑出一张专属于你的“喜好卡片”:你喜欢科幻,喜欢硬核科普,预算50块以内,讨厌狗血爱情剧,最近想找适合初中生看的书。
推荐系统做的也是这件事:它会记下你所有的上网行为,比如你刷到美食视频多看了2秒,你给手工视频点了赞,你搜过“露营装备怎么选”,你给科幻电影打了五星好评,你甚至只是刷到一条猫的视频没点赞也没划走,多停留了1秒,它都会记下来,然后给你打上一堆标签:比如「喜欢美食」「喜欢手工」「近期对露营感兴趣」「喜欢科幻」「对猫的内容感兴趣」。这张“喜好画像”不是固定的,是动态更新的:你上周喜欢看猫的视频,这周突然迷上了钓鱼,你的画像里就会加上「近期对钓鱼感兴趣」的标签,接下来系统就会给你推更多钓鱼的内容。
::: tip 举个栗子 你上周体育课要考引体向上,搜了一次“引体向上怎么练”,接下来一周你刷B站的时候,就会多出来很多健身UP主的教学视频,这就是系统给你打上了「近期对健身感兴趣」的标签,更新了你的喜好画像,以为你突然爱上健身了。等你考完试,再也没搜过健身相关的内容,刷到健身视频也立刻划走,过几天系统就会把这个标签去掉,不会再给你推健身视频了。 :::
第二步:给所有内容打标签,让每一条内容都有自己的“身份卡”
导购手里的书都是分好类的:科幻类的摆科幻书架,美食类的摆美食书架,少儿类的摆少儿书架,这样他知道你喜欢科幻,就直接去科幻书架给你找书。推荐系统做的也是这件事:它会给所有内容打标签,给每条短视频打标签,给每首歌打标签,给每个商品打标签,让每一条内容都有自己的“身份卡”。
比如一条关于“做戚风蛋糕”的短视频,系统会给它打上「美食」「烘焙」「新手教程」「甜点」「零基础」的标签;一首周杰伦的《晴天》,会被打上「流行」「周杰伦」「华语」「怀旧」「恋爱」的标签;一个露营折叠椅的商品,会被打上「户外」「露营」「折叠椅」「便携」「性价比高」的标签。这些标签有的是内容发布者自己填的,有的是系统通过分析内容自动打上去的,比如系统识别出视频里的人在揉面团做蛋糕,就会自动给它打上「烘焙」的标签,不用发布者自己填。
第三步:把“你的喜好”和“内容的标签”匹配起来,把最合适的推给你
这一步就是推荐算法的核心工作了:导购知道你喜欢科幻、喜欢预算50块以内的书,就去科幻书架里找符合你预算的书,挑出来最火的几本给你。推荐系统做的也是这件事:它会把你喜好画像里的标签,和内容池里的内容标签做匹配,匹配度越高,就越优先推给你。
匹配的逻辑不止一种,最常用的有三种: 1. 标签匹配:你喜欢「美食」「烘焙」,就给你推标签里有「美食」「烘焙」的内容,这个逻辑最简单,也最常用; 2. 相似人群匹配:和你一样喜欢美食、烘焙的人,80%都喜欢「家居好物」,就给你推家居好物的内容,这个就是之前说的“和你口味差不多的人喜欢的东西,你也可能喜欢”; 3. 实时反馈匹配:你刚才刷到烘焙视频点了个赞,系统立刻就知道你最近对烘焙更感兴趣了,接下来就多给你推几个烘焙视频,匹配的权重会更高。
整个推荐系统的流程就是一个不断循环的过程:你看了内容、点了赞、划走了、搜了关键词,这些行为都会回到系统里,更新你的喜好画像,然后系统再重新匹配内容,推给你新的内容,你又有新的行为,再更新画像,再匹配内容,循环往复,它对你的了解就会越来越深,推的内容也会越来越准。
```mermaid graph LR A[用户行为数据] --> B[生成用户喜好画像] C[内容池] --> D[给内容打标签] B & D --> E[匹配规则计算匹配度] E --> F[把最匹配的内容推给你] F --> G[你看了/点赞/划走/搜关键词] G --> A ``` ::: info 小提示 上面的流程图就是推荐系统最核心的工作流程,你可以把它理解成一个“永不停歇的循环”:你每刷一条内容,都在给系统提供新的数据,帮它更懂你。 :::
你肯定关心的问题:推荐系统是不是只会给我推我喜欢的内容,让我变成“信息茧房”?
很多人觉得推荐系统是“信息茧房”的罪魁祸首:天天给我推猫的视频,我永远看不到别的 content,视野越来越窄。这个说法对了一半,推荐系统确实会优先推你喜欢的内容,但它不会只推你喜欢的内容,它也有“探索”的功能。
那个懂你的书店导购,不会只给你推你之前买过的科幻小说,偶尔也会给你递一本最近很火的科普书,说“很多喜欢科幻的读者也喜欢这本,你可以试试”。推荐系统也是一样:它不会100%都推你标签里的内容,一般会留10%-20%的“探索配额”,给你推一些你没看过但是可能感兴趣的内容,比如你天天看搞笑视频,系统偶尔会给你推一个“为什么猫从高处跳下来总是四脚着地”的科普视频,如果你点进去看了,还点赞了,系统就会知道你喜欢“搞笑+科普”的内容,接下来就会给你推更多类似的内容,你的兴趣范围就会变宽,不会一直困在搞笑视频里。
而且“信息茧房”的锅,不能全甩给推荐系统,你自己也有责任:你知道自己喜欢看猫的视频,每次刷到猫的视频就停下来看,刷到别的类型的内容就立刻划走,你自己也在主动筛选内容,加固这个“茧房”。推荐系统只是帮你更快找到喜欢的内容,真正决定你看到什么的,除了算法,还有你自己的选择。
::: tip 怎么避免陷入信息茧房? 你完全可以主动掌控推荐系统,不用被动接受: 1. 如果你不想一直看某类内容,就点内容旁边的“不感兴趣”按钮,系统会立刻减少给你推这类内容; 2. 如果你想拓展兴趣,就主动去搜你感兴趣的新类型内容,看几个点个赞,系统很快就会给你推更多类似的内容; 3. 不要只会刷推荐页,偶尔也去搜你想了解的内容,主动探索新的兴趣,比被动接受推荐更能拓展视野。 :::
推荐系统不止能让你刷得更爽,还能做很多有用的事
很多人觉得推荐系统就是用来“投你所好”让你沉迷的,其实它的用处远不止这些,现在已经被用到了生活的方方面面: -
推荐系统不止能让你刷得更爽,还能做很多有用的事,它早就不是只存在于娱乐APP里的“消遣工具”了,已经渗透到你生活的方方面面,甚至能帮你解决很多实际问题。
先说说你最熟悉的学习场景:很多初中生都有过在B站搜题的经历,比如你上周学一元一次方程,搜“一元一次方程怎么解”,系统不仅给你推了基础概念的讲解视频,还推了几个UP主做的“一元一次方程应用题趣味解题”系列,甚至还有专门针对初中期中期末的真题讲解。如果你之前搜过“物理竞赛怎么准备”,系统还会给你推往届竞赛获奖选手的经验分享、知识点拓展视频,甚至还有免费的竞赛入门课程——这些都是推荐系统帮你筛出来的,要是你自己搜,出来的结果里一半是广告,一半是过时的内容,找半小时都未必能找到合适的。现在很多学习APP的「个性化推题」功能也是基于推荐系统:你做完一套数学卷子,系统根据你做错的题型,给你推同类型的练习题,不用你自己整理错题本,效率能高好几倍。
再说说生活场景:你爸妈用的购物APP、招聘APP、租房APP,背后全是推荐系统。你妈妈在买菜APP里搜过“低糖早餐”,系统接下来就会给她推适合糖尿病人的低糖食谱、无糖燕麦、低脂牛奶,甚至还会提醒她“你上周买的牛奶快喝完了,要不要再买一箱?”;你爸爸在招聘APP里填了“软件工程师”的简历,系统就会给他推符合他工作年限、薪资要求的岗位,不用他自己每天刷几百条招聘信息。就连你平时用的导航APP,推荐系统也在帮你:你每周五下午都走同一条路回家,系统发现这条路周五下午特别堵,就会提前给你推更快的路线,甚至告诉你“你常去的那家奶茶店今天搞活动,要不要绕过去买一杯?”——这些看起来“懂你”的小功能,背后都是推荐系统在起作用。
还有很多人不知道的公益场景:2021年河南暴雨的时候,抖音的推荐系统在几小时内就把当地的求助信息、救援队的实时定位、物资捐赠通道精准推给了附近的用户;还有寻亲平台用推荐系统,把失踪儿童的寻亲信息推给和失踪儿童同村、同镇的用户,很多走失多年的孩子就是通过这种方式找到了家人。疫情期间,各地的政务平台也用推荐系统,把附近的核酸检测点、疫苗接种点的实时人流量推给用户,避免大家排几个小时队白跑。
::: info 推荐系统还能做什么? 除了上面提到的场景,推荐系统现在已经用在了这些地方:
- 政务平台:给你推你需要的社保、医保、入学政策,不用你自己在几百页的文件里找;
- 医疗平台:根据你的病史、体检报告,给你推适合你的健康科普、复查提醒;
- 环保平台:给你推你所在城市的垃圾分类指南、旧衣回收通道;
- 甚至你玩的游戏,里面的皮肤、道具推荐,好友推荐,也是推荐系统在起作用。
:::
不过话说回来,推荐系统也不是“完美天使”,它确实有很多让人头疼的毛病,这些毛病你可能早就遇到过,只是没往推荐系统身上想。
最典型的两个问题,一个是“信息茧房”,一个是“大数据杀熟”。
先说你最熟悉的“信息茧房”:你有没有过这种经历?上周你体育课要考引体向上,搜了一次“引体向上怎么练”,接下来一周你刷B站、刷抖音,全是健身UP主的教学视频,你考完试之后根本不想看健身内容,划了半天才刷到你喜欢的动漫视频;还有你上周看了一部甜宠剧,觉得特别好看,点了个赞,接下来系统就给你推了十几部甜宠剧,你明明想看点科幻片,刷了半天全是谈恋爱,气得你直接把APP关了。这就是信息茧房:系统给你推的都是你喜欢的内容,你越看什么就越给你推什么,你的视野就越窄,最后就像被关在一个茧里,看不到别的内容。
很多人觉得信息茧房全是推荐系统的锅,其实不全对。你自己也有责任:你刷到甜宠剧觉得好看,点了赞,系统当然以为你喜欢看,就会多给你推;你刷到科幻片觉得没意思,立刻划走,系统当然以为你不喜欢,就少给你推。你自己在主动给系统“喂”你喜欢的内容的信号,系统只是按照你的信号给你推内容而已。当然,现在平台也在优化这个问题:比如抖音现在如果你连续刷了10个同类型的内容,系统会自动给你推一个不同类型的内容,避免你一直陷在同一个类型里;你还可以主动点内容旁边的“不感兴趣”“减少此类内容”按钮,系统就会立刻调整,减少给你推这类内容。
::: tip 怎么主动打破信息茧房? 其实很简单,只要你不被动接受推荐,主动探索就行: 1. 不想一直看某类内容,就主动点「不感兴趣」,比划走有用10倍; 2. 想拓展兴趣,就主动去搜你想了解的新内容,比如你天天看搞笑视频,就主动搜“科普搞笑视频”,看几个点个赞,系统很快就会给你推更多类似的内容; 3. 不要只刷推荐页,偶尔去翻翻平台的分类板块,比如B站的“知识区”“科技区”,抖音的“同城”“热点”板块,主动找新内容看,比被动接受推荐更能拓展视野。 :::
另一个更让人头疼的问题是“大数据杀熟”:你有没有过这种经历?和爸妈一起订酒店,同一个房间、同一个时间,你的手机显示800块,你爸妈的手机显示1000块;和朋友一起买视频会员,新用户首月只要9块,你续费的时候要25块;甚至你常点的那家外卖,你点得越多,配送费越贵,满减越少。这就是大数据杀熟:系统通过你的消费数据,知道你对某样东西的需求很高,不会因为贵就放弃购买,就故意给你定更高的价格。
当然,大数据杀熟不是推荐系统的本意,是部分商家滥用用户画像数据,把推荐系统变成了“杀熟工具”。现在国家已经出台了相关规定,明确禁止大数据杀熟,违者最高可罚5%的年营业额,去年就有某旅行APP因为对老用户定更高的酒店价格,被罚了40多万。你如果遇到大数