这种情况在体育消费里非常普遍。消费预测要回答的不是“这个人喜欢什么商品”,而是“这个人接下来一段时间里,最可能为什么事情付钱”。前者靠历史记录就能回答一大半,后者必须把赛事、时间和价格一起放进来。

User → Event → Intent → Product → Purchase

刚买完一件球衣,同类需求往往已经被满足

协同过滤类的推荐逻辑有一个默认假设:买过A的人更可能买与A相似的东西。对于零食、日用品这类高频消耗品,这个假设大体成立。但球衣不是消耗品。大部分球迷一个赛季买一件主场球衣就够了,少数收藏型球迷会买齐主客场,极少数会追着每一款纪念版买。

所以,“上个月买了球衣”这条记录,更合理的解读是:这位用户对球队有足够的认同,愿意为它花钱;而球衣这个具体需求,大概率在短期内已经完成。他的购买力和情感投入是真实的,只是会流向下一个品类。继续推荐球衣,等于在一个已经关上的门前反复敲。

这并不意味着应该彻底停止推荐同类商品。如果他买的是主场球衣,而球队下个月要发布一款限量纪念版,他属于收藏型用户的概率又较高,那么纪念版仍然值得出现。关键在于区分“同一需求的重复”和“新的需求恰好落在同一品类”。

购买周期:有的商品一年买一次,有的一场比赛买一次

判断下一次推荐什么,第一步是给商品标注合理的购买周期。以下为示例分类,不同俱乐部应根据自身数据调整:

商品类型 典型购买周期 触发因素
主客场球衣一个赛季一次左右新赛季发布、球员转会
单场门票 按比赛计 对手强弱、比赛时间、天气
比赛日餐饮 每次到场 到场时间、同行人数
围巾、应援物 不规则,常在重要比赛前 德比、关键场次
会员 一年一次续费 赛季开始、到场次数累积

有了周期标注,推荐模型就能计算“距离上次购买同类商品过去了多久,相对于正常周期处于什么位置”。一件球衣买了四周,处于周期的很早期;一张门票是三周前买的,而下一场主场比赛在十天后,门票需求则可能正处于上升阶段。

球队、球员和赛事,决定了下一次消费的方向

同样是买了一件球衣,印着谁的名字,含义完全不同。买了主队通用款的用户,认同的是球队;买了某位球员号码的用户,认同里有很大一部分来自这名球员。如果这名球员在转会窗口离队,这位用户对后续球衣、周边甚至门票的兴趣都可能下降,也可能跟着球员转向另一支队伍。

赛事则是消费意图最直接的触发器。一场德比、一场争冠关键战、一场有明星球员回归的比赛,会让原本不打算到场的用户开始看票,让已经买票的用户开始看围巾和应援物,让到场的用户在比赛日点餐饮套餐。预测系统如果只看用户历史而不看赛程,就会错过这些由外部事件推动的需求高峰。

在AI球迷画像中,这类信息通常被拆成几层:主队认同强度、球员偏好、到场倾向、内容互动深度。消费预测模型在此基础上叠加赛程,才能判断某一场比赛对某一类用户意味着什么。

时间窗口和价格:同一个意图,出现在不同时刻结果完全不同

假设系统判断这位用户对客场出行有兴趣,接下来还要回答两个问题:什么时候推,推什么价位。

时间上,客场套票通常在比赛前两到三周开始有人咨询,比赛前一周是决策高峰,太早推送用户还没有安排行程,太晚则可能已经售罄或已经自行订好交通。价格上,一个刚花了三百多元买球衣的用户,在一个月内再接受一笔上千元的消费,难度明显高于接受一两百元的消费。如果历史数据显示他过去的单笔消费多集中在两三百元区间,那么高价包厢套餐不适合作为首选,普通看台加出行的组合可能更合适。

价格判断还要注意区分“价格敏感”和“暂时预算紧张”。一位平时愿意买好座位的用户,在月底连续两次放弃高价选项,不一定意味着他变得敏感了,可能只是这个月的预算已经用在了别的地方。模型需要足够长的观察窗口来区分这两种情况。

把User、Event、Product、Time、Price放进同一个判断

欧宝体育AI在处理球迷消费预测时,不依赖一个模型一步给出答案,而是把几类能力分开,再把结果合并:

  • User:分群与画像模块判断用户处于生命周期的哪个阶段——新用户、活跃球迷、首次购票、首次商品购买、会员、高价值用户、沉默或重新激活。
  • Event:赛程与事件数据标注未来几周的比赛重要程度、对手、主客场、比赛时间,以及球员伤停和转会等信息。
  • Product:商品库带有品类、购买周期、库存和适用场景标签。
  • Time:预测模型估算用户在某个时间窗口内产生某类购买的概率,而不是只给一个长期偏好分数。
  • Price:根据用户历史单笔金额、折扣响应和近期消费节奏估算合适的价格区间。

预测模型输出的是“未来14天内购买门票的概率”“未来30天内升级会员的概率”这类带时间的结论,推荐模型再根据概率、库存和运营目标决定展示顺序。生成模型负责把推荐转化成不同渠道的文案,最后由运营人员审核高价值用户和敏感场景的推送。这样分工的好处是,每个环节出错都能被单独定位,而不是面对一个无法解释的黑盒结果。

更完整的方法和产品形态可以在球迷消费预测页面查看。

回到那位买了球衣的用户:下一步应该推荐什么

把上面几个维度放在一起,这位用户的判断可能是这样的:他是活跃球迷,已经完成首次商品购买,但还没有成为会员;球衣需求在本赛季已满足;过去三个月到场两次,都是周末主场;最近在内容区阅读了多篇客场比赛前瞻;下一场客场比赛在二十天后,对手是同城球队;他的单笔消费多在两三百元。

基于这些信息,更合理的推荐顺序是:

  1. 客场比赛的出行加普通看台套票,在比赛前两周左右推送;
  2. 如果他购买了套票,比赛前三天推送与这场比赛相关的围巾或应援物;
  3. 本赛季到场次数累积到一定程度后,介绍会员的优先购票和客场票预留权益,而不是直接给出会员折扣券;
  4. 球衣类商品只在出现限量纪念款时出现,并放在较靠后的位置。

在俱乐部商城或欧宝体育电商这类商品推荐场景里,这种排序的思路是:先满足由赛事推动的即时需求,再用这次消费去铺垫更长期的会员关系。

模型最可能在哪里判断错

这套判断看起来合理,但有几个地方经常出错:

  • 礼物购买:那件球衣可能是买给孩子或朋友的。如果系统把它当作购买者本人的偏好,就会高估他对这名球员或这个尺码的兴趣。订单里的尺码、收货地址与常用地址是否一致,可以作为辅助判断。
  • 换队或降温:球员离队、球队成绩下滑,都可能让用户的认同发生变化。历史数据越长,模型越容易对这种变化反应迟钝。
  • 临时促销干扰:如果那件球衣是在大幅折扣期买的,它反映的更多是价格驱动,而不是对球衣的强烈需求。
  • 少数收藏型用户:对他们来说,持续推荐球衣反而是对的。一刀切地压低重复品类推荐,会损失这部分用户。
  • 赛程数据不准:比赛改期、场地变更如果没有及时同步,推荐的时间窗口就会整体错位。

这些问题提醒我们,模型输出应该被视为一种有置信度的判断,而不是结论。对置信度低的用户,更稳妥的做法是给出多样化的推荐,而不是押注单一品类。更多典型错误可以参考球迷消费预测最容易犯的错误。

怎么验证推荐是否真的更准

判断新的推荐逻辑是否有效,不能只看上线后的点击率有没有上升。更可靠的验证方式包括:

  • 留出组:随机留出一部分用户继续使用原来的“买过什么推什么”逻辑,另一部分使用结合赛事和周期的新逻辑,比较两组在30天内的购买转化、客单价和退订率。
  • 按品类拆分:分别看门票、周边、餐饮和会员的转化变化。如果只是把球衣的购买挪到了门票,总收入不变,那么需要重新审视目标。
  • 分阶段投放:先在一两个赛事节点上试行,观察比赛前、比赛日、比赛后的数据,再扩大范围。
  • 人工复核:定期抽取推荐结果差异最大的用户,由运营人员逐个判断推荐是否合理,从中发现礼物购买、换队等模型难以识别的情况。
  • 时间切分评估:离线评估时严格用过去的数据预测未来,避免用已经知道结果的信息来训练模型,否则离线指标会显得虚高。

消费预测做得好不好,最终体现在用户是否觉得推荐“刚好是我现在需要的”。一个上个月买了球衣的球迷,下个月更需要的可能是一张客场票、一条围巾,或者一个让他提前拿到好座位的会员资格。欧宝体育大模型在这里要做的,是读懂他接下来会遇到哪些比赛、处在哪个时间点、能接受什么价格,而不是一遍遍重复他已经做过的选择。