What Even Is a Recommendation System? (Hint: It’s the Reason Your Feed Is So Addictive)
你有没有过这种经历:本来只想刷5分钟TikTok放松一下,结果一抬头发现40分钟过去了,你刷了20个猫meme、3个原神4.0攻略、2个K-pop翻跳,甚至还有1个“如何用A4纸做手工钱包”的视频——而你明明上周才搜过一次手工DIY?或者你打开Spotify,发现这周的Discover Weekly里10首歌里有8首你都忍不住点了收藏,甚至怀疑是不是Spotify偷偷装了监控软件在你手机里?如果你刷B站的时候刚看完“2024年四月新番导视”,首页立刻弹出你最期待的《迷宫饭》先行预告,甚至还有UP主做的“《迷宫饭》原作漫画剧情解析”,你还没点进去看它就已经推到你脸上了,那你肯定也和我一样,无数次在心里嘀咕过:这算法是不是偷看我手机了?
如果你有过这些经历,恭喜你,你已经和推荐系统打过无数次交道了,而且你已经被它“拿捏”得死死的。别慌,今天我们就来把推荐系统这件“神秘事”彻底扒明白,保证你看完之后再也不会觉得它是啥黑魔法,甚至会觉得“哦,就这啊,我也会做”。
首先,到底啥是推荐系统?
简单到离谱:推荐系统就是一个“超级记性好的工具人”,它的工作只有一个:记住你喜欢啥,然后给你推更多你喜欢的。 你每天用的所有内容APP里,你刷到的每一条视频、每一首歌、每一部剧,甚至电商APP里你看到的每一个商品,几乎都是它给你挑好的。
我们可以把推荐系统类比成你那个混了三四年的死党:你俩天天待在一起,你喜欢吃辣、喜欢猫、喜欢玩原神、追NewJeans,这些喜好他都门儿清,哪天你俩一起出去吃饭,他不用问就直接给你点你爱吃的辣子鸡,逛商店的时候随手给你递一个你上次说过想要的猫周边,你会觉得“哇他好懂我”,但其实他只是记性好而已,不是什么读心术。推荐系统就是这个死党,只不过它记的东西更多、更快,而且它手里有几亿个内容可以给你挑。
你肯定见过推荐系统的各种“马甲”:TikTok的For You Page(为你推荐页)、Spotify的Discover Weekly(每周新发现)、Netflix的“猜你喜欢”“更多类似内容”、B站的首页推荐、淘宝的“你可能还喜欢”、甚至你刷朋友圈的时候偶尔跳出来的广告,全是推荐系统的杰作。甚至有数据说,Netflix上80%的用户观看内容都是推荐系统推的,Spotify的Discover Weekly功能上线后,付费用户直接涨了10%——你喜欢的歌单、刷到停不下来的视频,一半以上的功劳都是它的。
打破第一个误区:算法不是黑魔法,就是个记性好的工具人
很多人对推荐系统的印象还停留在“硅谷工程师写的读心术代码”“大数据杀熟”“算法比我妈还懂我”,甚至觉得它是某种神秘的高科技产物,普通人根本搞不懂。放屁(哦对,这里可以口语化一点,符合青少年的语境),它就是个工具,和你用来记单词的APP、用来算数的计算器没本质区别,只是它的工作内容是“记你的喜好,给你推内容”。
我们来看个最简单的例子:你昨天刷了5个猫meme视频,每一个都看完了,还给其中3个点了赞,甚至关注了发那个翻跟头猫视频的UP主。推荐系统就会把这些行为全部记下来,给你打上一堆标签:“喜欢猫meme”“喜欢萌宠内容”“关注萌宠UP主”,然后去平台的内容池里找所有带“猫”“萌宠”“meme”标签的视频,再给你打分排序,把最可能让你喜欢的排在前面,推到你首页。就这么简单,没有读心,没有魔法,就是“记行为→打标签→匹配内容→排序推送”这套流程,循环往复。
你可能会问:那我上次搜了一次“怎么瘦腿”,接下来三个月全平台给我推减肥药、防脱洗发水,这也太离谱了吧?这也能叫“懂我”?当然不是,这时候要么是算法记错了,要么是平台故意给你推的,我们后面会详细讲为啥会出现这种离谱推荐,但先记住:算法不会读心,它只会根据你给它的“信号”来判断你的喜好,你给它的信号错了,它就会给你推错的东西。
推荐系统的三大核心任务,5分钟就能懂
不管多复杂的推荐系统,核心逻辑都逃不开这三个任务,我们用你刷TikTok的例子来讲,保证你看一遍就忘不掉:
任务1:记住你的所有喜好,比你自己的记性还好
这是推荐系统的基础工作,它会把你所有和平台交互的行为全部记下来,小到你看了一个视频看了多久、划走的时候快还是慢,大到你的搜索关键词、点赞收藏、关注列表、甚至你评论里提到的内容,它都记。我们可以把这些行为分成三类,权重从高到低: 1. 强信号(权重最高):你点赞、收藏、关注、看完一个视频、把一首歌加到歌单、买了某个商品,这些行为说明你真的很喜欢,算法会给你打“超级喜欢”的标签,权重加到最高。 2. 中信号(权重中等):你在某个视频下面评论、搜了某个关键词、把一个视频分享给朋友、在某个页面停留超过10秒,这些说明你至少有点兴趣,算法会给你打“可能喜欢”的标签。 3. 弱信号(权重最低):你划走一个视频的速度、你跳过某个广告、你点了“不感兴趣”“减少此类内容”,这些说明你不喜欢,算法会给你对应的标签打负分,下次少推。
举个例子:你看一个15秒的猫meme,看了10秒就划走了,算法就会记“这个用户对这个猫meme兴趣不大,给猫meme标签减1分”;如果你看完了还点赞了,算法就会记“这个用户喜欢这个猫meme,给猫meme标签加10分,给这个用户打上‘喜欢猫meme’的标签”;如果你点关注了发这个视频的UP主,那算法直接给你这个UP主的内容打满分,只要他更视频,第一时间推给你。
这里有个很有意思的小细节:算法甚至能根据你划走视频的速度判断你的喜好。比如你刷到一条美食视频,0.5秒就划走了,算法就知道你肯定不喜欢美食内容;如果你刷到一条猫meme,看了8秒才划走,算法就知道你可能对这类内容有点兴趣,下次多推点试试。是不是比你妈观察你还仔细?
任务2:从几亿个内容里,先筛掉你肯定不会喜欢的
现在的平台内容池有多大?TikTok的短视频存量超过100亿条,每天新增500万条;B站的视频存量超过10亿条,每天新增10万条;Spotify的歌曲存量超过1亿首。算法不可能把这100亿条视频全给你推一遍,那得刷到下辈子去,所以它的第二步就是先“筛掉你肯定不喜欢的”。
怎么筛?就用你之前的标签。比如你从来没看过美妆视频,哪怕美妆视频再火,算法也会先把所有美妆视频给你筛掉,不用浪费时间给你推;如果你从来没看过霸总剧,算法也会先把所有霸总剧筛掉,省得你烦。筛完之后,剩下的内容大概只有几千到几万条,都是你可能感兴趣的,再进入下一步打分排序。
任务3:给剩下的内容打分,排好序推给你
筛完之后剩下的几千条内容,算法会给每一个都打一个分数,分数越高的,排得越靠前,你首页看到的就是排在前10-20条的内容。打分的维度通常有这几个,我们用人话讲,不用记专业术语: 1. 匹配度(占60%权重):这个内容和你的喜好匹配度高不高?比如你上周点赞了5个科幻电影解说,这个新的科幻解说和你点赞过的内容匹配度越高,分越高。 2. 受欢迎程度(占20%权重):这个内容火不火?点赞多不多、评论多不多、转发多不多?火的内容分更高,因为大概率质量不错,大家都喜欢。 3. 新鲜度(占10%权重):这个内容是不是新发的?越新的内容分越高,因为大家都喜欢看新鲜的,没人愿意看三年前的老视频。 4. 亲密度(占10%权重):这个内容是不是你关注的UP主/歌手发的?如果是你关注的,分直接加满,排在最前面。
把这四个维度的分加起来,排好序,前20条就是你刷到的首页内容。你看,是不是比你期中考试算总分还简单?
我们可以用一张流程图把这三个任务串起来,你一看就懂: ```mermaid graph LR A[收集你的所有行为数据] --> B[从平台内容池筛选你可能感兴趣的内容] B --> C[给每个候选内容打分排序] C --> D[把排序后的内容推到你首页] D --> A[你点击/点赞/划走/评论,数据回到收集环节,循环往复] ``` 这张图不管是印在纸书里,还是在电子版里看,都能一眼明白推荐系统的工作流程,甚至你可以拿这张图去跟你同学科普,保证他们觉得你懂得很。
推荐系统的两种主要类型:要么按你的口味推,要么按跟你一样口味的人喜欢啥推
你可能会问:算法怎么知道啥内容和我的喜好匹配?啥内容算火?这里就涉及推荐系统的两大核心类型,我们用人话讲,绝对不整听不懂的术语:
类型1:基于内容的推荐——你喜欢吃辣,就一直给你推辣锅
这种推荐逻辑最简单:你上次点了辣子鸡,它就给你推更多辣子鸡、毛血旺、麻辣香锅,反正就是跟你上次喜欢的差不多的东西。比如你喜欢看猫meme,它就给你推更多猫meme;你喜欢听NewJeans的歌,它就给你推更多K-pop清新风的歌;你喜欢看科幻电影,它就给你推更多科幻电影、科幻解说、科幻周边。
这种推荐的好处是“稳”,肯定不会给你推太离谱的东西,坏处是容易让你陷入“信息茧房”:你天天看猫meme,它就天天给你推猫meme,你永远刷不到别的类型的内容,慢慢就会觉得“全世界都是猫meme”,视野越来越窄。
类型2:协同过滤推荐——你朋友爱吃的店,大概率你也爱吃
这种推荐逻辑是“找跟你口味一样的人,看他们喜欢啥,就给你推啥”。比如算法发现,有10000个用户和你一样:喜欢看《间谍过家家》、喜欢玩原神、喜欢听K-pop、喜欢看萌宠视频,最近这10000个人都点赞了一个新的国产动画《中国奇谭》,算法就会猜:“你和这10000个人口味差不多,你应该也喜欢这个动画,给你推上去。”
这种推荐的好处是能帮你找到你之前没发现的、但肯定会喜欢的内容,比如你从来没听过一个冷门的 indie 乐队,但跟你口味相似的1000个人都喜欢,算法就会给你推,帮你挖到宝。坏处是如果跟你口味相似的人喜欢的都是霸总剧,那它也会给你推霸总剧,哪怕你根本不喜欢。
现在的推荐系统基本都是这两种类型结合着用,比如TikTok的For You Page,70%的内容是基于你的喜好推的,30%的内容是探索性的,就是试探你喜欢啥新类型,要是你喜欢,下次就多推,要是不喜欢,就少推,平衡“稳”和“惊喜”。
我们可以再用一张Mermaid图把这两种类型讲清楚: ```mermaid graph TD A[推荐系统] --> B[基于内容的推荐] A --> C[协同过滤推荐] B --> B1[逻辑:你喜欢A,就给你推更多类似A的内容<br>例子:你喜欢猫meme,推更多猫meme] C --> C1[逻辑:跟你口味相似的人喜欢B,就给你推B<br>例子:跟你一样喜欢猫meme的人都喜欢这个新的猫视频,给你推] ```
为什么推荐系统总是给你推离谱的东西?三大原因给你讲明白
你肯定遇到过这种情况:你搜了一次“怎么扎高马尾”,接下来三个月全平台给你推“秃头怎么办”“防脱洗发水推荐”;你看了几个修仙小说,接下来给你推“穿越成霸总的小娇妻”;你朋友拿你手机搜了一次“怎么跟crush表白”,接下来你的首页全推“表白失败是啥体验”“恋爱技巧”。你百思不得其解:我啥时候喜欢这些了?其实不是算法疯了,是这三个原因在作祟:
原因1:算法记错了你的信号,或者你给了它错误的信号
算法不会读心,它只会根据你给它的“信号”判断你的喜好。比如你手滑点了一个“霸总剧”的视频,哪怕你看了3秒就划走了,算法也会记下来“这个用户可能喜欢霸总剧”,接下来给你推10个霸总剧,你每一个都划走了,算法就会陷入死循环:“哦,他可能只是不喜欢这几个霸总,给他换更火的霸总”,继续推,直到你点了“不感兴趣”它才会停下来。
还有可能是你忘了自己给过啥信号:比如你上个月搜过一次“露营装备”,你早就忘了,但算法记得清清楚楚,接下来三个月给你推露营
装备、露营地的预订链接、甚至露营穿搭,哪怕你