ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

电商App算法黑盒分析:以Shopee为例拆解推荐与搜索排序

电商App算法黑盒分析:以Shopee为例拆解推荐与搜索排序 最早让我想把 Shopee App 当算法样本认真拆一拆是因为一次很普通的搜索经历。我在首页眼睁睁盯着同一个商品反复出现而那个商品其实是我两周前偶然点过、根本没打算买的。那一刻我突然意识到一个看似简单的电商 App 背后其实藏着一整套极其复杂的算法流水线而且它比你想的更勤快地记录着你的行为习惯。这篇作为《Shopee App 算法分析》的第一篇我先把定位说清楚我们不讨论 Shopee 内部源码长什么样那是谁都拿不到的东西我们讨论的是从一个普通用户视角出发结合基础的工具链和对照实验把“黑盒”尽可能地还原成“灰盒”。这套思路不局限于 Shopee几乎所有主流电商 App 都适用。1. 拆解之前先搞清楚 Shopee 的算法到底长在哪1.1 不是“一个算法”而是十几条算法线并行很多人一提“算法”脑子里先蹦出来的是数据结构和算法竞赛那套东西比如堆排序、KMP、二分查找。这些确实是最底层的砖瓦但电商 App 里真正跑的业务算法绝大多数已经不是这种单点算法而是一条一条的算法流水线推荐流水线、搜索流水线、广告投放流水线、风控流水线、定价与优惠策略流水线。Shopee 作为一个覆盖多个市场的跨境电商 App它的算法复杂度比普通本地电商还要高一截。它同时要处理多语言、多币种、跨国物流、汇率波动、不同市场的用户偏好差异。所以在拆解时不能只盯着“首页推荐了啥”而是要先把它的算法能力按业务场景切块。我习惯切成几个观察口信息流推荐首页 Feed、类目推荐、买了又买、看了又看。搜索排序关键词匹配、联想词、排序切换、筛选逻辑。价格与促销价格展示、优惠券发放、闪购位、加购推荐。交易与履约运费预估、到货时间承诺、售后评分。每一块背后都有独立的算法团队和模型体系但它们又会互相影响。比如你在搜索里点了一个高客单价商品首页 Feed 立刻会变你领了一张大额优惠券但没用接下来几天平台会持续用类似面额的券试探你。这种联动关系恰恰是黑盒分析最有意思的地方。1.2 黑盒分析为什么可行有人会问没有内部接口也没有模型权重怎么做算法分析我的答案很简单算法的结果最终会表现为“用户能感知到的行为”。这些行为包括排序变化、推荐内容变化、价格变化、文案变化。只要你能系统性地记录这些变化并且在可控条件下改变输入你就能反推出算法的大致逻辑。这有点像一个对照实验。你把 App 当成一个黑盒输入是你的点击行为、浏览时长、搜索关键词、购买记录输出是你看到的商品列表、排序、价格和优惠券。控制住其他变量只改变一个输入观察输出怎么变就能推断出这个输入在算法里的权重和角色。我不反对有人用抓包、Hook 一类的手段去看 App 的请求参数。但这一类操作有两个前提第一只能在自己设备上、为了个人学习研究做别碰别人的数据和平台未公开的接口第二别指望能直接看到模型参数你能看到的充其量是请求报文和埋点字段这些信息已经足够帮你建立很高的“算法像素”了。1.3 我常用的分析工具与基本流程工欲善其事必先利其器。我第一篇文章用的工具组合比较简单后面会逐步深入抓包工具Charles 或 mitmproxy用于查看 App 请求了哪些接口、传了什么参数、返回了什么数据。真机需要装证书Android 7.0 以上还要处理用户证书信任问题这个在后面的实操章节细说。多台测试设备最好是 Android 和 iOS 各一台因为两个端的请求策略和版本更新节奏不一样有时候能对比出有趣的差异。干净的测试账号新注册一个账号不关注任何店铺、不点赞、不搜索作为“冷启动对照组”。数据处理Python 加 pandas、matplotlib用来整理抓包结果和生成排序变化图。录屏与日志手机自带录屏配合时间戳记录每一步操作对应的界面变化。完整流程一般是这样先清理数据建立基线再做单变量对照实验然后抓包看接口层证据最后离线整理形成可复现的分析结论。这套流程我跑了很多遍在 Shopee 和其他几款电商 App 上都有效。2. 从信息流推荐观察算法逻辑2.1 冷启动阶段推什么试探优先我第一个百试百灵的实验就是注册新账号然后完全不操作每天固定时间打开 App刷首页 Feed截图记录。新账号冷启动阶段平台不清楚你的兴趣标签这时候推荐策略会呈现几个明显特征第一类目覆盖非常广。今天给你推母婴明天给你推数码配件后天给你推家居收纳。它不是在“猜你喜欢”而是在“试探你的反应”。这种策略在算法上本质是探索Exploration目的不是立刻转化而是快速收集你的兴趣信号。第二大量使用热门商品兜底。当模型对用户没有把握的时候最安全的策略是把全局点击率高、转化率好的商品拿出来。我看到的结果就是新账号前几屏基本都是类目热销榜里的东西而且重复度不低。第三推荐位里穿插大量“猜你喜欢”的标准化文案。这个现象背后其实是推荐理由生成模块在起作用它会把销量、评价数、优惠力度等信息模板化拼接。你看到的“已售10万”和“限时特惠”不是运营手填的而是算法根据商品特征动态生成的。冷启动阶段的观察价值在于你可以通过“什么都不做”和“刻意做”两组账号的对比快速识别出哪些是热度兜底、哪些是个性化推送。2.2 点击、停留、加购怎样影响后续推荐冷启动测完之后我最常做的实验是“行为干预实验”。操作方式是这样准备两个新账号A 账号只看不点B 账号有节奏地点击某一类商品比如宠物用品。每次点击后停留 20 到 30 秒加购一两个商品然后退出。持续三到五天每天打开三到四次每次刷 5 到 10 分钟。实验结果非常稳定B 账号的首页 Feed 会在 24 到 48 小时内明显向宠物用品倾斜而且越到后面推荐集中的细分类目越精准。一开始只是泛宠物类后面慢慢变成猫粮、猫砂、猫玩具这几个子类目。这说明 Shopee 的推荐系统对“行为序列”的建模粒度非常细它不仅在记录“你对宠物用品感兴趣”还在记录“你对宠物的哪个细分方向感兴趣”。这里有一个特别值得注意的信号权重大小。我做过的多组实验显示加购的权重明显高于点击和停留下单的权重又高于加购。这符合电商推荐的基本逻辑只有真正发生交易意图的行为才是最强烈的正反馈。你只看不买系统会认为你可能只是随便逛逛推送力度不会那么激进。不过也要提醒一句算法不是只有正向反馈。反复点击但从不加购、反复加购但从不购买的账号经过一段时间后会触发“疲劳抑制”机制。系统会降低这类商品的推荐频率转而推一些关联品类。你可以把这种机制理解为算法在说既然你对这个品类“只逛不买”那我换点别的试试。2.3 重复推荐与“探索-利用”的平衡很多用户抱怨电商 App“老推同一个东西”其实这正是算法里的“利用”Exploitation权重过高造成的。模型判断你大概率会买于是反复推送这件事不管你已经看腻了。我统计过 Shopee 首页 Feed 的前 100 个商品位在不做任何操作的情况下同一款商品的重复出现率大概在 8% 到 15% 之间。如果我对某个商品点了加购但没付款这个商品被重复推荐的概率会显著上升而且它会从“新鲜感”角度不断给你新的促销刺激比如降价提醒、优惠券到账提醒。这说明 Shopee 的推荐系统里有一个比较重的“转化意图追踪”模块。它会把你未完成的订单当作高意向线索通过重复曝光和利益点刺激来拉回流。这种策略在业务上很好理解一个已经加购的用户转化成本远比冷启动新用户低。但这个策略有一层隐性代价过度重复会导致用户体验下降。所以现在的推荐系统通常会引入多样性约束同一商品在同一屏里不重复出现、连续两屏里不超过几次等等。你如果仔细盯屏幕能偶尔看到这个约束的“边界”某一次刷新后同一商品相隔三个位置出现两次说明多样性约束在实时算力下没有做到位。多臂老虎机这个经典的强化学习问题在这里就是个很好的解释框架。平台每个推荐位都是一台老虎机推热门商品是“利用”推冷门小众商品是“探索”。具体探索比例怎么定在不同流量位上是动态调整的。首页第一屏的探索比例很低基本全是高确定性商品到了“为你推荐”的第五屏之后探索内容会多一些因为用户看到这里已经比较有耐心可以接受一些“意外惊喜”。3. 搜索排序背后的算法痕迹3.1 搜索补全与意图识别搜索是比推荐更“显性”的算法场景因为用户直接输入了明确的意图表达。Shopee 的搜索框输入过程中会实时弹出联想词这个联想词功能背后是 query 补全和意图预测两部分。我在做搜索实验时发现输入“短袖”和输入“短袖 男 纯棉”联想词和搜索结果差异非常大。前者是泛意图搜索系统会尽量展示覆盖不同价格带、不同风格的短袖后者是明确意图系统会把纯棉材质、男性尺码、相关风格商品集中前置。这些联想词不是简单的字符串前缀匹配。如果只是前缀匹配输入“短袖”应该弹出“短袖女”“短袖男”“短袖t恤”这类词。但实际弹出的联想词里经常会出现“短袖 工作服 夏”这类看起来不像纯前缀的词说明背后使用了基于搜索日志的统计共现模型和学习用户搜索会话的序列模型。多语言场景在这里也很值得观察。Shopee 在不同市场支持的语言不一样搜索词是英文、当地语言还是中英混合会影响匹配结果。我在测试账号上试过用英文关键词搜结果返回的商品和用中文关键词搜索返回的商品相差很大不只是语言的翻译差异连排序逻辑都变了。这说明搜索系统在 query 理解层就做了语言识别不同语言的召回通道权重并不一样。3.2 “综合排序”的权重博弈关键词、类目、销量进入搜索结果页后默认排序一般叫“综合排序”或“最相关”这个排序的结果是一个多目标融合的产物。你可以把它想象成一个打分公式里面至少混合了文本相关性、类目匹配度、商品销量、评价分数、店铺评分、价格带偏移等多个因子。我做过这么一组对照实验搜索同一个关键词分别用“综合排序”“销量排序”“价格从低到高”“评价最优”四种模式记录前 50 个商品。以“蓝牙耳机”为例我整理过一份很典型的数据对比排序模式前10名平均价格前10名平均销量前10名平均评价数出现品牌重复度综合排序45 元左右高高低各品牌混排销量排序35 元左右极高极高高头部品牌霸屏价格升序8 元左右低低无规律杂牌为主评价最优60 元左右中高极高中高综合排序的平均价格落在 45 元不高不低说明排序系统刻意把不同价格带的商品混合在一起避免被单一价格带垄断。更微妙的是前 10 名里价格最低的那个商品销量并不高评价也少但它就是能排到前面。这说明综合排序的文本相关性和类目匹配权重在某些情况下能盖过销量和评价的权重。这种“相关性优先、热度其次”的策略和很多从业者的直觉不太一样。它背后有一个原因如果纯按销量排那么搜索结果页会被爆款垄断用户很难找到长尾商品和差异化款式短期转化率可能高了但长期用户粘性会下降。所以平台愿意牺牲一部分即时转化换取搜索生态多样性。3.3 不同排序模式揭示的“隐藏权重”四种排序模式放在一起对比还有一个隐藏信息销量排序下前 10 名的价格普遍偏低而评价最优排序下前 10 名的价格明显偏高。这说明“销量”和“评价”这两个因子和商品价格之间存在一定相关性但又不完全等同。低价商品天然更容易走量所以销量排序里低价商品多。高价商品要想卖得好通常需要有更强的品牌背书和评价积累所以评价最优排序里高价商品多。而综合排序把两者的平均值拉回中间恰好说明它引入了一个隐性的“边际收益”调节项当商品销量已经极高时新增销量的排序边际收益递减平台会把曝光机会让给销量没那么高但相关性更强的商品。有一个小技巧如果你想快速了解某个关键词下的一个平台流量分配倾向不要只看默认综合排序而是把销量排序和价格排序的结果拉出来数一数重合商品的数量。重合商品越少说明综合排序的“个性化”“多样性”权重越高重合商品越多说明综合排序越依赖单一热度因子。3.4 个性化搜索同一个词不同的结果搜索结果是否个性化用一个很简单的方法就能测出来拿两个冷启动时间不同、历史行为差异极大的账号搜索同一个关键词滚动到同一位置截图对比。我测过几十组关键词结论是对于大词、泛词比如“手机壳”“连衣裙”两个账号的结果差异很大个性化权重明显对于长尾词、高明确度词比如“iPhone 15 Pro Max 透明防摔壳”两个账号的结果几乎一致个性化权重很低。这个现象背后的逻辑不难理解。长尾词的搜索意图已经非常明确用户点进来的购买倾向极高这时候平台的策略是优先保证相关性和商品质量个性化反而会让结果发散伤害转化。而泛词意图模糊用户自己都没想清楚要什么这时候个性化就有很大的发挥空间平台通过历史行为推断你的偏好用“千人千面”来提升点击率。我在分析笔记里把这种现象记作“意图强度梯度”意图越强算法越保守意图越弱算法越激进。你拿这个框架去看所有电商 App 的搜索基本都是成立的。4. 价格、促销和券策略里的算法联动4.1 先有价格力还是先有流量分配价格是电商平台上最敏感的信号之一。Shopee 的商品详情页里经常会出现“限时特惠”“已减XX%”“平台补贴”等标签这些标签不是运营随机贴的背后有价格力模型在支撑。价格力的核心逻辑是平台需要知道一个商品在当前市场上的价格竞争力如何。如果价格显著低于同品类均价平台会倾向给它更多流量如果价格高于均价除非评价和销量极强否则流量会受限。我做过一个实验用同一款商品的关键词去搜然后在价格排序里找到该商品再切回综合排序看它的排名变化。结果发现当商品价格低于价格排序榜单中位数时综合排序里它会比高价位同行有明显优势。但有一个例外如果该商品的销量和评价数在类目里处于金字塔顶端即使价格偏高综合排序里也能排得靠前。这说明价格力模型不是一个独立排序因子而是作为调节项嵌入到整体的商品质量分里。低价可以补质量分的不足但无法完全取代质量分。反过来高质量分也能在一定程度上承受价格劣势。这就像考试里的加权平均每个因子都有自己的权重上限。4.2 个性化优惠券真的“一人一价”吗我做过一组不同账号领取优惠券的实验两个账号同时打开同一件商品的详情页A 账号是新号B 账号是曾经加购过但未付款的账号。结果是 B 账号弹出了大额优惠券A 账号只有小额或无券。这种情况在多个商品上都复现过。这种差异化优惠策略在业内叫“流失召回定价”或者“优惠券个性化发放”。它的目标不是让所有用户都拿到最大优惠而是识别出“离下单只差一步”的用户用最小成本促成转化。对于新用户平台更倾向于用无门槛小额券建立初次体验对于多次加购不买的用户平台愿意掏出更大面额的券来推一把。但这里要分清一个概念个性化优惠券不等于“杀熟”。从我的观察来看Shopee 上不同账号看到的券差异更多是基于行为阶段的不同而不是基于消费能力的高低。新用户有时候能拿到的券反而比老用户更划算因为平台需要拉新。这个策略在几乎所有电商平台上都存在属于增长算法的标准动作。4.3 详情页、购物车里的算法联动商品详情页不是孤立页面。它上面的推荐位比如“看了又看”“买了又买”“搭配购”实际上是推荐算法在交易场景下的延伸。它的目标不再是探索兴趣而是直接提升客单价和连带率。我发现一个明显的规律在详情页的“搭配购”区域算法非常喜欢推低客单价、高消耗频率的商品比如手机膜、数据线、收纳袋。因为这些商品的决策成本低用户顺手就加购了。而“买了又买”区域则更倾向推同品类但不同款式的商品比如你看中一件白 T 恤它就给你推黑 T 恤和印花 T 恤试图覆盖你的多件购买需求。购物车页面也有算法痕迹。当购物车里商品总价达到某个阈值时页面会提示“再买 X 元可免运费”这个提示背后就是运费策略和客单价目标在做联合优化。它利用的是损失厌恶心理用户已经决定买了就差临门一脚用运费门槛来拉动客单价转化率通常很可观。5. 技术侧主流电商推荐算法是如何映射到这个 App 上的5.1 召回、精排、重排的标准流水线如果你去翻任何一篇讲工业级推荐系统的文章都会看到“召回、粗排、精排、重排”这个四层架构。Shopee 的推荐和搜索系统大概率也是这套架构只是具体模块深度和实时性不同。召回阶段的任务是从千万级商品里快速捞出一批候选集。这个阶段不会用太复杂的模型更多是依靠商品标签、倒排索引、协同过滤、热门兜底。我在抓包里看到的很多请求参数里都会有类似“推荐场景 ID”“商品池 ID”的字段这些就是召回通道ID的痕迹。精排阶段用的大多是深度排序模型输入是用户特征、商品特征、上下文特征输出是点击率、转化率等预估分数。这一层是算法最核心的部分但也是完全黑盒的。我们没有办法直接看到分数只能通过最终排序结果去反推特征权重。重排阶段则负责处理精排结果的“可展示性”。它要做去重、多样性打散、插入广告位、置顶运营位、保证同一个品类不连续出现太多。你在首页刷到的“隔几个商品插一条广告”基本都是这一层干的事。5.2 特征工程与用户行为序列在任何推荐模型里特征工程都是上限的决定因素。Shopee 这种跨境平台特征工程会比纯本地平台更复杂它需要把用户所在地区的文化偏好、品类季节差异南北半球相反、币种汇率波动都做成特征。用户行为序列是特征工程里最值钱的部分。点击序列、加购序列、下单序列、搜索序列这些序列的长度、时间间隔、品类迁移方向都是模型预测下一次行为的核心输入。我在冷启动实验里观察到的“快速收敛到细分品类”就是行为序列模型在起作用的直接证据。现在的主流做法是用类似 Transformer 的结构对行为序列做编码把用户最近 500 次点击、最近 50 次下单压缩成一个向量。然后把这个向量和商品向量做相似度计算输出一个匹配分。5.3 多目标优化点击、转化、GMV 的取舍业务算法很少只优化一个目标。如果只优化点击率推荐结果会偏向标题党、低客单价、猎奇商品如果只优化转化率推荐结果会变得过于保守如果只优化 GMV又会过度推高价品。所以工业界的通行做法是多目标融合通常会先分别预估点击率、转化率、GMV贡献度再加权求和。实测下来我对 Shopee 首页 Feed 的价格分布做了统计发现它的推荐内容价格带很宽但不会整体偏向极低价或极高价。这说明它的多目标权重里有一个“价格带平衡项”避免推荐结果过度集中。还有一层是“长期价值”目标。纯看短期转化最容易的办法是疯狂推低价走量商品但这样用户会形成“这个平台上只买便宜货”的认知长期客单价就上不去。所以现在推荐系统会引入长短期价值建模给新品和潜力品一定的探索流量。5.4 深度学习之外也有经典算法的位置提到算法卷深度学习的人喜欢讲各种大模型但真正落到工程实现上很多模块依然是经典算法的天下。排序阶段的中间结果需要大量 TopK 运算堆排序和快速选择在工具库里无处不在。搜索 query 纠错用到了编辑距离和 BK 树商品标题匹配里 KMP 这类字符串匹配算法也是基础依赖。更典型的是资源分配和匹配问题比如广告位分配、库存分配、优惠券预算控制这些场景里匈牙利算法、粒子群算法这些优化方法都还有实际用武之地。我写这些是想说不要把算法分析神化成“只有深度学习工程师才能碰”的领域。真正影响用户体验的往往是一个复杂系统里多类算法配合的结果。理解经典算法能帮你在外围观察时建立更准确的直觉。6. 实操怎样自己设计一个“黑盒验证”实验6.1 第一步建立无干预基线网上很多算法分析文章最大的问题是“样本脏”。一上来就讲我刷到了什么、没刷到什么完全没有对照。其实算法分析最忌讳的就是把“系统随机波动”当成“算法证据”。我自己的标准流程是先准备两台设备或者两个账号其中一个完全不操作。这个“无干预基线账号”每天固定时间打开 App固定刷 10 分钟首页不做任何点击不搜索不收藏不购买。连续记录 7 天。基线数据能告诉你在没有用户行为干预的情况下平台自身的流量分布是什么样子的。比如你会看到某些商品出现在 Feed 里的概率天然很高因为它们本身就是平台主推的热门商品。等后面做干预实验时你就有基准线可以对比不会把热门商品的自然露出误判成个性化推荐。6.2 第二步构造单变量对照单变量原则是科学实验的基石。一次只改变一个变量其他全部保持一致。比如我想测试“点击行为对推荐的影响”那就只点击指定类目商品不做搜索、不加购、不收藏。想测试“加购行为的影响”那就只加购指定商品不点击其他内容不加购其他内容。想测试“搜索的影响”那就只用搜索功能不浏览 Feed。每个实验组的操作频率、时间段、持续天数也要固定。我一般建议持续 5 到 7 天每天操作 3 次每次间隔至少 4 小时模拟真人使用节奏。如果时间太短或者频率忽高忽低你观察到的排序变化很难排除随机性。6.3 第三步抓包看接口层证据到这里工具就派上用场了。把手机代理指向 Charles 或 mitmproxy开启 HTTPS 抓包后刷新首页和搜索结果页你会看到一串接口请求。我截取到的典型请求结构长这样请求 URL 里有场景标识和分页参数请求体里带着一堆埋点字段包括设备 ID、用户 ID、行为事件、上下文信息。响应体里通常直接返回商品列表每个商品带一个列表位置编号和推荐理由。最有用的是响应体里的列表位置编号。你可以把这个编号当成算法的“最终输出”。结合你的行为干预就能看到位置编号的变化趋势。比如干预前某类商品平均出现在第 20 位干预后平均出现在第 8 位那就能确认行为对排序有显著影响。注意抓包只用于分析自己设备的流量并且要确保你有权访问这些数据。不要尝试破解他人设备、抓取未经授权的接口也不要大规模爬取平台数据。合规是前提。6.4 第四步离线整理与可视化抓包数据一般很乱我通常先用 Python 脚本把请求 URL 里的关键字段和响应里商品 ID、位置编号提取出来存成 CSV再做统计。下面是一个简化版的示例脚本逻辑import pandas as pd import json # 解析抓包导出的 JSON 文件 with open(shopee_feed.json, r, encodingutf-8) as f: raw_data json.load(f) rows [] for req in raw_data: # 提取请求时间、场景和返回商品列表 timestamp req.get(timestamp) scene req.get(scene, feed) item_list req.get(items, []) for idx, item in enumerate(item_list): rows.append({ timestamp: timestamp, scene: scene, item_id: item.get(item_id), position: idx 1, }) df pd.DataFrame(rows) # 按商品 ID 和场景统计平均位置 summary ( df.groupby([scene, item_id])[position] .mean() .reset_index() .sort_values([scene, position]) ) print(summary.head(20))这段代码做的事情很简单把每个抓包请求里的商品列表展平成“商品出现在第几位”然后按场景分组、求平均位置。有了这个表你就能画出某类商品在干预前后的平均排名曲线判断算法是否真的“听懂了”你的行为。更进阶一点可以把商品再按价格带、品类、店铺维度聚合观察不同维度下的排序变化去反推算法更看重哪个特征。不过这一步属于后面几篇的内容第一篇先把基础设施搭好就行。6.5 常见问题速查实操过程中最容易踩的坑我列成了一张表问题常见原因解决办法App 内页面加载失败代理工具证书未被系统信任重新安装并信任证书Android 7.0 以上需要把证书安装到系统证书目录或在 App 内开启网络调试抓包数据里没有 HTTPS 明文App 启用了证书固定Pinning尝试使用支持 SSL Pinning 绕过的抓包方案但务必注意合规边界两个账号结果差异巨大设备特征、账号注册时间、地理位置不一致尽量使用同型号设备、同时段注册的新账号关闭定位权限或统一定位到同一城市干预后推荐没有变化干预时间太短或行为信号权重不够延长干预周期或在原有行为基础上增加“加购”和“搜索”动作Feed 里商品重复率过高刷新频率太快触发系统限流降低操作频率控制在真人使用节奏范围内数据量太少结论不稳定抓包样本不足每天至少记录 3 轮完整会话连续 5 天以上再下结论这里面“抓包失败”是遇到次数最多的问题。很多时候不是你配置错了而是 App 在特定版本里启用了更严格的安全策略。遇到这种情况先别急着上“高级手段”换个思路比如通过两端对比一部手机抓包一部手机录屏也能完成大部分分析目标。还有一个常被忽视的坑在不同时间段打开 AppFeed 结果差异很大。晚上 8 点到 10 点是电商流量高峰算法为了承接高并发请求会退化成更简单的推荐策略个性化程度下降。所以你要做对比实验的话尽量固定同一个时间段否则数据波动会让你得出错误结论。说实话第一次认真做 Shopee 的算法分析时我心里也没底。一个上线多年的成熟 App背后藏着多少层团队迭代过的逻辑谁都说不清。但拆到后面我发现只要你愿意从行为观察和对照实验出发哪怕没有内部资料也能还原出非常清晰的算法拼图。第一篇我先帮你把分析框架和工作台搭起来后面再逐个深入推荐方向我打算单独写一篇“多目标排序现象观察”搜索方向可以单独拆“联想词与纠错背后的 NLP 痕迹”价格券方向也值得一篇“优惠券个性化发放的边界测试”。如果你想自己先跑一轮实验强烈建议从冷启动对照组开始那是最快建立体感的方法。
返回列表