在AI推荐系统中,'不感兴趣'按钮的设计有哪些最佳实践?
解读
面试官想验证三件事:
- 你是否把“不感兴趣”当成模型负样本闭环的一部分,而非简单 UI 组件;
- 能否在中国合规框架(《个人信息保护法》《算法推荐管理规定》)下,兼顾负反馈收集效率与用户“被监听”焦虑;
- 是否能把负反馈转化为可量化的模型指标(如曝光过滤率、负样本占比、后续 CTR 提升),并沉淀到数据飞轮。
一句话:不是画按钮,而是设计“负反馈数据产品”。
知识点
- 负样本分层:
- 硬负例(Hard Negative):用户明确点“不感兴趣”,需立即降权且进入训练集;
- 软负例(Soft Negative):完播<15%、快速滑过等隐式信号,用于补充。
- 负反馈四要素:粒度、时效、衰减、撤销。
- 国内合规要求:
- 算法备案需披露“用户关闭兴趣标签”路径;
- 负反馈数据属“敏感个人信息”,加密存储+单独授权;
- 必须提供“一键关闭个性化推荐”入口,且关闭后 24h 内生效。
- 模型侧技巧:
- 实时流:Kafka 队列 200ms 内写入,Flink 特征修正,避免重复曝光;
- 样本权重:硬负例权重=3×软负例,防止模型被稀疏信号带偏;
- 冷启动:新 Item 采用“探索-利用”ε-greedy,负反馈>3 次即进入局部黑名单。
- 产品侧指标:
- 负反馈率 = 负反馈 PV / 曝光 PV(健康区间 1.5%–3%);
- 负反馈后 7 日 CTR 提升 ≥ 8%;
- 用户再次投诉率 ≤ 0.1%。
答案
“不感兴趣”按钮不是孤立控件,而是“负反馈数据产品”的核心采集器,最佳实践分四层:
-
入口层:
- 采用“三级触点”策略:长按卡片→浮层→二次确认,减少误触;
- 文案用“减少类似内容”替代“不感兴趣”,降低对抗情绪;
- 提供“标签级”与“作者级”双选项,满足《算法推荐管理规定》第 17 条“细化关闭粒度”要求。
-
数据层:
- 实时流:点击后 200 ms 内写入 Kafka,特征服务平台立即将该 <user_id, item_id, reason> 标记为 hard_negative,并同步到线上粗排黑名单,10 min 内停止重复曝光;
- 离线仓:每日离线任务将负样本与正样本按 1:3 混合,使用权重校正(weight=3)训练 DSSM 召回模型,防止样本不均衡;
- 合规存储:负反馈数据属敏感个人信息,采用 AES-256 加密、国密 SM4 算法落盘,保存期限不超过 90 天,到期自动擦除。
-
模型层:
- 多目标 Loss:在 CTR 任务基础上增加“负反馈预测”辅助头,权重 λ=0.15,使模型提前感知潜在负向信号;
- 探索策略:新内容若累计负反馈≥3 次且曝光≥50 次,自动进入局部黑名单,停止探索;
- 衰减机制:负反馈权重按指数衰减 e^(−t/7) 降级,7 日后权重降至 0.2,避免永久封杀导致兴趣漂移无法挽回。
-
体验层:
- 撤销能力:负反馈后 3 s 内出现 Toast“已减少类似内容”,提供“撤销”按钮,点击率控制在 0.8% 以内,既给出口又防止滥用;
- 反馈闭环:负反馈后 24 h 内推送“是否改善”微调研,回收率≥12%,用于校验模型效果;
- 一键关闭:在“设置-隐私-个性化推荐”提供总开关,关闭后 24 h 内生效,且后台停止写入任何兴趣标签,满足《个保法》第 24 条。
上线后核心指标:负反馈率稳定在 2.1%,负反馈后 7 日 CTR 提升 9.4%,用户投诉量下降 38%,算法备案审核一次通过。
拓展思考
- 多模态负反馈:短视频场景可结合“静音、划走速度、评论区关键词(如‘别推了’)”做多模态融合,提高负例识别准确率。
- 群体负反馈:同一内容在高活用户群中负反馈率突增,可触发“群体降权”策略,提前止损热点反噬。
- 负反馈商业化边界:广告主内容被点“不感兴趣”是否同步到广告引擎?需单独 AB 实验,避免品牌方投诉“限流”。
- 可解释性升级:计划上线“为什么不推”模块,用自然语言生成“因你标记了×次‘不感兴趣’,系统已降低此类内容权重”,提升用户信任度,同时为算法透明备案提供素材。