1. 前言
我从 2020 年 5 月开始聚焦小红书,服务一些品牌商家经营小红书,也有拿到一些比较不错的结果。
聚焦小红书,难免会需要去研究一下小红书的流量机制,所以这是我看过许多内容,以及自己实践后,总结的对于小红书流量机制的解析。
不一定对,只是我的一些理解,希望于各位圈友而言,有所价值。
2. 小红书笔记的流量来源
小红书对于笔记流量来源有 2 种略有不同的划分,
1 种是小红书创作中心对于笔记流量来源的划分,
- 首页推荐;
- 搜索;
- 关注页面;
- 个人主页;
- 搜索;
- 其他来源。
另 1 种是小红书蒲公英对于笔记流量来源的划分,
- 发现页;
- 搜索页;
- 关注页;
- 博主个人页;
- 附近页;
- 其他。
这 2 种划分实际上差不多,但是小红书近期有一些调整,所以上述的划分并没有及时更新,因此小红书现在的笔记流量来源有这些,
- 发现页;
- 关注页;
- 视频流;
- 搜索页;
- 个人主页;
- 小红书群聊;
- 群聊广场;
- 其他。
而小红书的笔记流量来源主要取决于推荐与搜索。
3. 小红书推荐流量机制解析
3.1. 小红书推荐系统的链路
小红书推荐系统的链路分为召回、粗排、精排、重排,
用户刷新小红书后,推荐系统会同时调用几十条召回通道,每条召回通道从数据库里快速取回几十到几百篇笔记,一共取回几千篇笔记,这些召回通道实际上就是不同的算法/规则在作用,从数据库里进行去重、过滤、筛选;
然后用规模比较小的机器学习模型,给几千篇笔记逐一打分,按照分数做排序和截断,保留分数最高的几百篇笔记,即粗排与截断;
之后用大规模的深度神经网络给几百篇笔记逐一打分,即精排;
粗排与精排的原理基本相同,实际上就是用不同深度的机器学习模型及神经网络等,预估用户对于笔记的兴趣,根据预估的兴趣分数进行排序;
几百篇笔记带着精排分数进入重排,重排会考虑内容多样性问题,根据精排分数和多样性分数做随机抽样,得到几十篇笔记,再把相似的笔记打散,避免把过于相似的内容排在相邻的位置上,最后插入广告和运营内容,以及根据生态要求调整排序呈现给用户。
3.2. 召回通道
推荐系统在推荐分发过程里所调用的召回通道实际上就是不同的算法/规则在作用,从数据库里进行去重、过滤、筛选,所以阐述一下几条比较重要/常用的召回通道。
3.2.1. 基于物品的协同过滤
在小红书推荐系统里,物品即内容,所以基于物品的协同过滤即基于内容的协同过滤。
基于内容的协同过滤的基本思想是根据内容的相似度做推荐,因为用户对这篇内容感兴趣,而这篇内容与另一篇内容相似,所以用户也很可能会对另一篇内容感兴趣。
举个 🌰,
我喜欢看《笑傲江湖》,《笑傲江湖》与《鹿鼎记》相似,但是我没有看过《鹿鼎记》,这个时候推荐系统就会给我推荐《鹿鼎记》,而推荐的理由就是《笑傲江湖》与《鹿鼎记》相似。
至于推荐系统是如何判断《笑傲江湖》与《鹿鼎记》相似的,其实很简单,
比如通过知识图谱,这 2 本书籍的作者相同,所以这 2 本书籍相似;
比如基于所有用户的行为分析,给《笑傲江湖》好评的用户,也给《鹿鼎记》好评,所以这 2 本书籍相似,通过用户的行为挖掘出内容之间的相似性,再利用内容之间的相似性做推荐;
比如基于内容受众的重合度,喜欢看《笑傲江湖》的用户跟喜欢看《鹿鼎记》的用户重合度比较高,所以这 2 本书籍相似……
因为基于内容的协同过滤会基于内容受众重合度进行推荐,但是又希望 2 篇内容重合的受众是广泛且多样,而不是集中在一个小圈子里的,所以基于内容的协同过滤会给用户设置权重,解决小圈子之类的问题。
3.2.2. 基于用户的协同过滤
基于用户的协同过滤的基本思想是根据用户的相似度做推荐,因为我跟某位用户的兴趣爱好之类相似,所以我感兴趣的内容很可能这位用户也会感兴趣。
举个 🌰,
我跟某位用户的兴趣爱好之类相似,我对某篇内容感兴趣,但是这位用户没有看过,这个时候推荐系统就会给这位用户推荐我感兴趣的这篇内容,而推荐的理由就是我跟这位用户的兴趣爱好之类相似。
至于推荐系统是如何判断我跟这位用户兴趣爱好之类相似的,其实很简单,
比如通过查看我跟这位用户过往感兴趣内容的重合度,判断我跟这位用户的兴趣爱好之类是否相似;
比如通过查看我跟这位用户的关注列表的重合度,判断我跟这用户的兴趣爱好之类是否相似……
但是在这个判断过程存在一个问题,即不同用户对于同一热门内容/作者感兴趣的概率极大,这样就容易导致错误判断用户的相似度,
举个 🌰,
《笑傲江湖》是热门内容、周杰伦是热门作者,我喜欢 TA 们,我的长辈也喜欢 TA 们,但是我跟我的长辈兴趣并不相似。
所以为了更好地计算用户相似度,基于用户的协同过滤会降低热门内容/作者等的权重,避免产生误判。
3.2.3. 地理位置召回
根据用户所在的地理位置做召回;
召回纯粹只看地理位置,不考虑用户兴趣,基于地理位置、时间顺序、优质内容做推荐。
3.2.4. 同城召回
与“地理位置召回”同理,唯一不同的是同城召回是根据用户所在的城市和曾经生活过的城市做召回推荐。
3.2.5. 作者召回
作者召回是根据用户感兴趣的作者做推荐,因为我对某位作者感兴趣,所以这位作者的其他内容我很可能也会感兴趣。
举个 🌰,
我在小红书上关注了某位作者,但是这位作者最近新发布的内容我没有看过,这个时候推荐系统就会给我推荐这位作者最近新发布的内容。
至于推荐系统是如何判断我对这位作者感兴趣的,其实很简单,
比如通过查看我是否有关注这位作者,判断我对这位作者是否感兴趣;
比如通过查看我是否对这位作者所发布的内容感兴趣, 判断我对这位作者是否感兴趣……
因为用户感兴趣的作者可能比较多,所以作者召回会优先级根据用户最近感兴趣的作者做推荐,而用户之前感兴趣,但是最近没有交互过的作者则不会被推荐。
3.2.6. 相似作者召回
相似作者召回所根据用户感兴趣作者的相似度做推荐,因为这位作者感兴趣,而这位作者与另一位作者相似,所以另一位作者发布的内容很可能用户也会感兴趣。
举个 🌰,
这位作者跟另一位作者相似,用户对这位作者感兴趣,但是另一位作者发布的内容用户没有看过,这个时候推荐系统就会给用户推荐另一位作者发布的内容,而推荐的理由就是这位作者跟另一位作者相似。
至于推荐系统是如何判断这位作者跟另一位作者相似的,其实很简单,
比如通过查看这位作者跟另一位作者的粉丝重合度,判断这位作者跟另一位作者是否相似……
3.2.7. 缓存召回
缓存召回是复用之前 N 次推荐系统精排的结果,即按照精排的分数做排序,排到前 50,但是没有曝光给用户的内容缓存起来,作为一条召回通道多尝试几次。
但是缓存大小是固定的,所以会设置有退场机制,
比如超出缓存大小的时候,会移除最先进入缓存的内容;
比如每篇内容最多被召回 N 次,达到 N 次就退场……
3.3. 预估分数的维度
粗排与精排的原理基本相同,实际上就是用不同深度的机器学习模型及神经网络等,预估用户对于笔记的兴趣,根据预估的兴趣分数进行排序,而排序的主要依据是
机器学习模型及神经网络等对于内容点击率、点赞率、收藏率、转发率之类的指标做预估,做完预估后,把这些分数按照不同权重比例进行融合,比如行业里经常提及的 CES,CES = 点赞数 * 1 + 收藏数 * 1 + 评论数 * 4 + 转发数 * 4 + 关注数 * 8……最后按照融合的分数给内容做排序和截断,保留分数最高的内容,淘汰分数低的内容。
上述的 CES 是 2017 年提及至今的,所以哪怕是真的,也已经是过去式啦。
因为真实的内容预估及融合分数算法是不可知的黑盒,所以就只能通过知晓预估分数的一些维度,把控好变量来提高预估及融合分数啦。
3.3.1. 用户画像
- 性别;
- 年龄;
- 用户注册时间;
- 活跃度;
- 新/老用户;
- 高/低活跃用户;
- 感兴趣的类目、关键词、品牌;
- ……
3.3.2. 内容画像
- 内容 ID;
- 内容发布时间;
- 内容年龄(内容发布时长);
- 定位;
- 标题;
- 类目;
- 关键词;
- 品牌;
- 笔记字数;
- 图片数;
- 视频清晰度;
- 标签数;
- 内容信息量;
- 图片美学;
- ……
内容信息量与图片美学等内容质量维度是小红书算法打的分数,在内容发布的时候,小红书就用模型给内容打分,把内容信息量、图片美学等内容质量维度的各项分数计入内容画像。
3.3.3. 用户统计特征
- 用户最近 30 天 / 7 天 / 1 天 / 1 小时等时间段的点击率、点赞率、收藏率、转发率等;
- ……
3.3.4. 内容统计特征
- 内容最近 30 天 / 7 天 / 1 天 / 1 小时等时间段的曝光数、点击数、收藏数等;
- ……
3.3.5. 作者统计特征
- 发布的笔记数;
- 粉丝数;
- 消费指标;
- 曝光数;
- 点击数;
- 点赞数;
- 收藏数;
- ……
这些特征反映了作者的受欢迎程度,以及 TA 的作品的平均品质,所以假设一位作者的品质普遍很高,那 TA 新发布的作品大概率也会很高。
3.3.6. 场景特征
- 用户当前的定位;
- 用户当前定位的城市;
- 当前的时刻;
- 设备信息;
- ……
3.4. 新笔记的推荐全链路
3.4.1. 机器/人工审核
笔记发布后,小红书会对笔记内容进行机器/人工审核;
一般是机器先审,假设机器判定为疑似违规或者不可判定的情况下,会交由人工进行审核;
审核主要是围绕小红书的相关规则规范,以及一些隐性规则等进行审核。
假设笔记涉嫌违规,小红书会根据违规程度进行不同程度的惩罚,轻则限流,重则完全屏蔽;
轻度限流:减少流量推荐;
重度限流:没有推荐与搜索流量,仅有私域性质流量,即仅推荐分发给粉丝,在小红书群聊、个人主页等私域性质界面均可查看;
完全屏蔽:没有任何流量,笔记不可查看,即除自己以外所有账号/方式均没办法查看。
3.4.2. 打标签与打分
笔记在审核的同时,小红书会对笔记进行打标签与打分,实际上就是用机器学习模型及神经网络等,识别笔记内容进行内容质量打分,以及预估用户对于笔记的兴趣分数,因为是新笔记,所以小红书仅能从这些维度去预估分数,
- 内容画像
- 内容 ID;
- 内容发布时间;
- 定位;
- 标题;
- 类目;
- 关键词;
- 品牌;
- 笔记字数;
- 图片数;
- 视频清晰度;
- 标签数;
- 内容信息量;
- 图片美学;
- ……
- 作者统计特征
- 发布的笔记数;
- 粉丝数;
- 消费指标;
- 曝光数;
- 点击数;
- 点赞数;
- 收藏数;
- ……
3.4.3. 实时推荐
新笔记的推荐链路跟上述“小红书推荐系统的链路”基本一致,但因为是新笔记,
所以笔记缺少信息,需要精准推荐;
所以小红书会把流量向新笔记倾斜,让新笔记获得更多的曝光机会,进而激励作者的发布积极性;
因此,小红书会在推荐新笔记的时候,会针对新笔记做推荐全链路优化,包括召回和排序,让新笔记有足够的机会走完链路被曝光,且会尽量让新笔记的推荐做得准,不引起用户反感。
3.4.3.1. 召回
小红书会在推荐新笔记的时候,给新笔记增加单独的召回通道,比如
- 类目召回;
- 关键词召回;
根据类目/关键词,按照发布时间倒排,最新发布的笔记排在最前面做推荐。
- 聚类召回;
基于笔记的图文内容做推荐,假设用户对一篇笔记感兴趣,大概率会对内容相似的笔记感兴趣。
- ……
3.4.3.2. 排序
小红书会在推荐新笔记的时候,给新笔记在排序阶段提权,根据新笔记的内容质量、作者质量,给新笔记单独定一个曝光保量目标,达到曝光保量目标之后,就会停止扶持,让新笔记自然分发,跟老笔记公平竞争。
4. 小红书搜索引擎的链路
小红书搜索引擎的链路主要是 3 个关键环节,查询词处理、召回、排序,
用户在小红书搜索框输入想搜索的内容后,搜索引擎会对用户输入的查询词(想搜索的内容)进行处理,主要是分词与理解;
在处理的同时,搜索引擎会调用一些召回通道,从数据库里快速取回几十到几百篇笔记,一共取回几千篇笔记,这些召回通道实际上就是不同的算法/规则在作用,从数据库里进行去重、过滤、筛选;
取回后,搜索引擎会根据对于查询词的理解、相关性、内容质量、时效性、个性化等进行排序,再把相似的笔记打散,避免把过于相似的内容排在相邻的位置上,最后插入广告和运营内容,以及根据生态要求调整排序呈现给用户。
4.1. 查询词处理
用户在小红书搜索框里输入想搜索的内容后,搜索引擎就会对用户所输入的查询词(即用户在小红书搜索框输入想搜索的内容)进行处理,
- 分词;
- 拼写纠错;
- 同义词改写;
- 针对所分解的词进行打分,形成不同权重的关键词;
- 核心词:核心意图,去掉之后意思完全改变,没办法搜索到用户想要的结果;
- 重要词:核心意图的重要组成部分,去掉之后意思有所改变,但是依然可搜索到用户想要的结果;
- 辅助词:修饰意图,去掉后意思变化比较小,对于搜索结果影响不大,但是有利于个性化推荐;
- 类目识别;
- 意图识别;
- ……
4.2. 召回
跟推荐系统的召回类似,搜索引擎会根据对于查询词的理解调用召回通道,从数据库里快速取回几千篇笔记,所以阐述一下搜索引擎召回通道的一些关键性原则。
搜索引擎的召回通道会基于对查询词的理解及用户的个性化做推荐,
即把对于查询词的理解与数据库的笔记做匹配,笔记匹配上的关键词越多越好,匹配上核心词加分多,匹配上辅助词加分少;
所以一个关键词在一篇笔记里出现 3 次比在一篇笔记里出现 1 次好;
所以匹配上核心词比匹配上辅助词好;
即把用户特征等与数据库的笔记做匹配,笔记所预估的用户兴趣度越高越好。
4.3. 排序
跟推荐系统的排序类似,搜索引擎会用机器学习模型及神经网络等,预估内容跟对查询词理解及用户兴趣等的融合分数,根据分数做截断与排序,再插入广告和运营内容,以及根据生态要求调整排序呈现给用户,所以阐述一下搜索引擎打分排序的一些关键性维度。
4.3.1. 相关性
根据对于查询词的理解,预估内容跟对于查询词的理解的相关性分数。
4.3.2. 内容质量
- 作者 EAT;
- 专业性:作者是否有专业资质;
- 权威性:作者在领域内的影响力;
- 可信赖性:名声好坏,是否有广告,包括软广;
- 笔记意图;
- 有益:分享有用的攻略、知识、信息;
- 有害:传播虚假信息、散播仇恨;
- 没有特别的意图;
- 内容质量分;
- 标杆;
- 推荐;
- 普通;
- 不推荐;
- 内容价值分;
- 点击数、交互率等业务指标是否达到 Top 10%;
4.3.3. 时效性
- 发布时间;
- 基于对查询词的理解,判断是否有时效性诉求;
- 内容发布时间比较久远,是否还有价值;
4.3.4. 个性化
类似于推荐系统的个性化推荐,但是没有推荐系统的个性化推荐强,预估维度、方式等跟推荐系统类似。
通过这些维度,
- 查询词特征;
- 笔记特征;
- 用户特征;
- 统计特征;
- 相关性特征;
预估用户对于笔记的兴趣度,
- 点击率;
- 收藏率;
- 转发率;
- 完读/播率。
5. 其他
5.1. 补充概述
5.1.1. 小红书的推荐与搜索各自独立,但又藕断丝连;
各自独立:推荐与搜索互不干扰,所以小红书笔记的收录与否并不影响推荐;
藕断丝连:笔记在获得搜索流量后,一定程度上会影响笔记推荐流量。
5.1.2. 小红书笔记流量激增大概率会触发小红书二次审核,而二次审核大概率会是机器+人工一起审核;
所以有些笔记在流量激增后被突然限流、掉收录等,或许是因为二次审核,以及系统对于笔记的实时预估变化的缘故。
5.2. 延伸阅读
假设对于推荐、搜索机制比较感兴趣,想深入学习的话,可看看这些内容。
5.2.1. 小红书官方所阐述的、与流量机制相关的内容
- 社区发文规范&审核逻辑大科普!
链接 🔗 http://xhslink.com/m5iZMo
- 推荐逻辑大解读,怎样的视频更容易被推荐?
链接 🔗 http://xhslink.com/wxpZMo
- 误区解读☄️什么才是真的限流?
5.2.2. 推荐系统公开课
基于小红书的场景讲解工业界真实的推荐系统
链接 🔗 https://space.bilibili.com/1369507485/channel/collectiondetail?sid=615109
作者:王树森
小红书搜推算法工程师、基础模型团队负责人
5.2.3. 书籍推荐
- 《智能搜索和推荐系统》;
- 《推荐系统实践》;
- 《SEO 实战密码》。
5.2.4. 公众号推荐
- 小红书技术 REDtech
6. 写在最后
真实的系统/算法是黑盒,但是我们需要理解系统/算法的基本原理/底层逻辑。