Files
mindfulness/设计说明文档/个性化推荐算法架构.md
2026-01-29 23:31:12 +08:00

8.6 KiB
Raw Permalink Blame History

情绪句子个性化推荐系统0 → 1

本文档用于 个人 + AI 协作 场景,作为产品、内容、推荐决策的统一对齐说明。

核心目标: 在任何一个时刻,为用户选出「最可能被接住的一句话」。


一、句子标签体系Sentence Tagging System

1. 设计原则

  • 标签不是为了分类句子,而是为了 让推荐系统理解用户的情绪需求

  • 所有标签必须:

    • 可被用户行为验证(会被喜欢 / 讨厌)
    • 可直接影响推荐决策
    • 数量克制、定义稳定

2. 主情绪标签Emotion Tags6 个)

主情绪标签 = 一句话 解决的核心情绪需求

每一句话只能有 1 个主情绪标签

  1. 安抚Calm

    • 用于情绪过载、焦虑、疲惫
    • 目标:先稳定情绪
  2. 被理解Understood

    • 用于孤独、自我怀疑
    • 目标:建立共感
  3. 接纳Acceptance

    • 用于自责、内疚、不够好感
    • 目标:缓解自我攻击
  4. 鼓励Encourage

    • 用于低落但尚可前行
    • 目标:提供继续的力量(非口号)
  5. 行动启动Activation

    • 用于卡住、拖延
    • 目标:启动,而非成功
  6. 希望感Hope

    • 用于低谷、无出口感
    • 目标:保留可能性

3. 语气标签Tone Tags4 个)

语气标签 = “这句话是怎么说的”

用户对语气的“讨厌”比“喜欢”更重要

  • 温柔Gentle:安全、低压、共感
  • 中性Neutral:陈述型、兜底使用
  • 直接Direct:清晰、有方向
  • 诗性Poetic可选:隐喻、画面感

4. 场景标签Scene Tags5 个,可空)

场景标签是 加分项,不是必填项

  • 早晨Morning
  • 工作 / 学习中Focus
  • 情绪低谷时Low
  • 睡前Night
  • 随时Anytime默认

5. 标签纪律(强规则)

  1. 每句话只能有 1 个主情绪标签
  2. 90% 句子可以没有场景标签
  3. 行动启动 ≠ 鼓励
  4. 安抚 ≠ 接纳
  5. 不确定时,优先选择「被理解」

二、用户画像体系User Profile Indicators

1. 设计原则

  • 用户画像不是“这个人是谁”
  • 而是 “这个人最近更容易接住什么样的话”
  • 所有指标默认 可变、会衰减、以近期为主

2. 用户画像的最小结构4 大类)

① 主情绪偏好(核心)

  • 对 6 个主情绪标签的近期偏好强度
  • 决定「今天主要推哪一类句子」

② 语气接受度

  • 用户对不同说话方式的耐受程度
  • 主要用于 过滤用户讨厌的语气

③ 场景有效性(轻量)

  • 哪些时间 / 状态更容易被接受
  • 仅作为推荐修正项

④ 情绪稳定度(隐性指标)

  • 根据近期反馈判断:稳定 / 波动 / 不稳定

  • 决定:

    • 探索比例
    • 是否使用保守推荐
    • Push / Widget 是否降强度

3. 不纳入的画像指标(刻意避免)

  • 人格类型MBTI 等)
  • 情绪诊断标签(焦虑 / 抑郁)
  • 长期性格、身份属性

原因:

  • 医疗与伦理风险高
  • 对「选一句话」帮助极低

三、个性化推荐架构Personalized Recommendation Framework0 → 1 详细版)

本章节完整说明: 个性化推荐系统在 0 → 1 阶段的设计方式、核心算法思想,以及整体运行流程。

设计目标不是“最聪明”,而是: 可解释、可控制、一个人 + AI 可以长期维护。


3.1 个性化推荐系统的大框架流程

一次完整的推荐决策,按照固定顺序经过以下 6 个阶段:

  1. 用户画像读取Profile Reading
  2. 候选生成Candidate Generation / Recall
  3. 排序判断Ranking
  4. 安全与多样性重排Safety & Diversity Re-ranking
  5. 出句到触点Serving
  6. 行为反馈 → 画像更新Online Learning

推荐系统的本质是: 在信息不完全的情况下,持续做出“不容易出错”的选择。


3.2 0 → 1 阶段采用的核心算法思想(先给名字)

在 0 → 1 阶段,不引入复杂模型,而采用 规则 + 轻策略算法组合

  1. Questionnaire Prior问卷先验:用于冷启动画像方向
  2. Tag-based Recall基于标签的候选召回:缩小搜索空间
  3. Adjacent-tag Exploration相邻情绪探索:避免情绪回音室
  4. Weighted Tag Matching加权标签匹配:核心排序逻辑
  5. Time-decayed Preference时间衰减偏好:画像始终代表“近期状态”
  6. Cooldown & Blacklist冷却与黑名单:避免重复与强厌恶
  7. MMR-style Diversity Re-ranking多样性重排:控制情绪与语气分布
  8. Safety Gating情绪安全闸门:用户不稳定时强制保守
  9. Epsilon-greedy Exploration探索 / 利用平衡)Feed 中允许试探
  10. Rule-based Online Update规则型在线学习:行为驱动画像更新

3.3 Step 1用户画像读取Profile Reading

涉及算法思想:

  • Questionnaire Prior
  • Time-decayed Preference

这一阶段做什么:

  • 读取用户当前的主情绪偏好排序
  • 判断是否存在近期被频繁讨厌的语气
  • 判断情绪稳定度(稳定 / 波动 / 不稳定)

输出一个“当下推荐策略”:

  • 主方向情绪12 个
  • 探索情绪1 个(相邻情绪)
  • 探索比例Feed 高Push / Widget 极低
  • 是否开启安全模式

3.4 Step 2候选生成Candidate Generation / Recall

涉及算法思想:

  • Tag-based Recall
  • Adjacent-tag Exploration

核心目标:

不要从整个句子库中选,而是先圈出“可能对的范围”。

候选生成逻辑:

  • 从主方向情绪中召回大部分句子
  • 从探索情绪中召回少量句子
  • 从新内容池中固定比例补充

这一阶段不做的事情:

  • 不做精细排序
  • 不处理语气偏好
  • 不考虑场景冲突

3.5 Step 3排序判断Ranking

涉及算法思想:

  • Weighted Tag Matching
  • Time-decayed Preference

排序时的四个核心判断维度:

  1. 主情绪匹配度

    • 是否符合用户近期最需要的情绪支持类型
  2. 语气可接受度

    • 是否属于用户近期反感的表达方式
  3. 场景是否冲突

    • 当前时间 / 状态下是否明显不合适
  4. 新鲜感与重复度

    • 是否近期已看过或高度相似

关键原则:

  • 主情绪是排序主权重
  • 语气更像“过滤器”而非加分器
  • 场景只在明显冲突时生效

3.6 Step 4安全与多样性重排Safety & Diversity Re-ranking

涉及算法思想:

  • Cooldown & Blacklist
  • MMR-style Diversity Re-ranking
  • Safety Gating

这一层的目标:

即使排序不准,也不能伤害用户体验。

三类必须存在的保护机制:

  1. 去重与冷却保护

    • 同一句短期不重复
    • 高相似句子不连续出现
  2. 多样性保护

    • 同一主情绪不连续轰炸
    • 同一语气不连续出现
  3. 情绪安全保护

    • 用户情绪不稳定时,强制回退到:

      • 安抚 / 接纳
      • 温柔 / 中性语气

3.7 Step 5出句到不同触点Serving

Feed可滑动

  • 允许探索与试错
  • 多样性优先
  • 行动启动 / 鼓励可出现

每日一句 / Push

  • 高确定性
  • 强去重
  • 安全优先

Widget被动看到

  • 不探索、不试错
  • 只选最低风险组合
  • 默认:安抚 / 接纳 + 温柔 / 中性

3.8 Step 6行为反馈 → 画像更新Online Learning

涉及算法思想:

  • Rule-based Online Update

0 → 1 阶段,仅关注三类行为信号:

  • 喜欢:当前“情绪 × 语气 × 场景”组合有效
  • 讨厌:该组合需要短期退让与冷却
  • 无反馈 / 快速滑走:信号弱,提高探索或降低强度

系统学习的不是“哪句话好”,而是: 什么时候,用什么方式,说什么样的话,更容易被接住。


3.9 0 → 1 阶段的成功判断标准

个性化推荐在 0 → 1 阶段 不需要做到

  • 非常精准
  • 非常智能
  • 深度理解用户心理

它只需要做到三点:

  1. 明显减少「被讨厌」的句子
  2. 每日一句不让用户反感
  3. 用户愿意继续看下一句

如果做到以上三点, 这就是一个 成功的 0 → 1 个性化推荐系统


本章节适用于 0 → 1 阶段,建议冻结 3 个月后再评估是否引入复杂模型。