乡思不堪悲橘柚,旅游谁肯重王孙。——谭用之《秋宿湘江遇雨》
执行摘要
对“最佳提醒时机”的研究结论非常一致:不存在对所有用户、所有任务都通用的固定时点或固定频率。更可靠的方法,是把提醒视为一个时变、个体化、带副作用的决策问题:每次提醒都应综合评估用户当下的可接受性(receptivity)、任务的脆弱性/紧迫性(vulnerability)、提醒带来的近端收益(如打开 App、开始任务)与远端代价(如疲劳、忽略、关闭通知、长期脱敏)。JITAI 研究已经把这一问题形式化为“决策点—干预选项—tailoring variables—决策规则”的框架;其方法学核心是:在真实世界的动态上下文中,只在有意义且用户可能接得住的时刻出手。citeturn33search0turn33search3turn9view5
现有实证证据表明,提醒通常能显著提升短时响应,但不保证长期留存或长期坚持。例如,Drink Less 的微随机试验显示,发送通知会把“未来 1 小时内打开 App”的概率提升到未发送时的 3.5 倍,但三组之间的长期 disengagement 时间没有显著差异;JOOL 的微随机试验显示,发送定制推送使用户未来 24 小时内参与自我监测的概率平均提高 3.9%,并且在周末中午附近效果更强;而糖尿病预防项目的后续研究则表明,提示对自我监测和运动的促进主要集中在提示后 3 天内,且前半年更明显、后半年减弱。这说明,算法不应只追“点开率”,而应优化“净效益”:既看即时行为启动,也看长期完成、习惯形成与疲劳成本。citeturn32view0turn13view2turn30view0
疲劳与习惯化不是边缘问题,而是提醒系统的中心约束。通知到达时机不当会明显增加心理负担:经典中断研究发现,把中断放在预测的“较佳时刻”,相较最差时刻可将烦扰感下降 56%,相较随机时刻也下降 43%;移动场景研究发现,通知造成的主观干扰受任务类型、任务复杂度、完成阶段、发送者关系、提示呈现方式等共同影响,复杂任务中的干扰更高;更近年的实验还发现,一次手机通知会带来大约 7 秒 的认知减速,而且这种代价与通知量和查看频率的关系,比与总屏幕时长的关系更强。citeturn15view6turn15view7turn16view0turn16view3turn13view14
因此,本报告的核心建议是:你的产品不应从“固定提醒时间表”起步,而应从一个ITAI-like 的双目标策略起步:一方面估计“此刻提醒能否促成任务启动/完成”,另一方面估计“此刻提醒是否会造成额外负担或加速脱敏”。工程实现上,最稳妥的路线不是一上来就全量强化学习,而是采用规则约束 + 概率模型 + 个性化在线学习 + MRT 因果评估的分阶段架构:先用可解释的硬约束与保守冷却做安全边界,再在边界内用上下文模型选时机,最后用微随机试验和 contextual bandit / Thompson sampling 持续更新个体化参数。citeturn11search1turn36search1turn36search10turn12search0turn12search13
研究目标与产品场景假设
本报告默认的产品场景为:移动 App,服务对象拥有日常任务与长期目标,提醒渠道包括推送通知、应用内提示、邮件,目标是决定“何时提醒、通过什么渠道提醒、提醒强度多大、多久内不要再次提醒”。在这个场景下,提醒不是单一动作,而是一个动作集合:不提醒 / 轻提醒 / 强提醒 / 应用内被动提示 / 邮件摘要 / 社会支持提醒。不同动作具有不同的注意力成本、打断成本与延后收益。
从产品目标上看,最值得优化的不是单一指标,而是一个分层目标体系:
- 近端目标:在未来 5 分钟、1 小时、24 小时内打开 App、点击任务、开始任务、完成第一步。
- 中程目标:任务在截止前完成、重复性任务完成率提升、连续执行(日/周 streak)提高。
- 远端目标:长期留存、主观负担降低、通知权限保留、自动化/习惯形成增强。
因此,“何时提醒”本质上是一个受约束的序列决策问题:只有在满足睡眠时段、会议冲突、地理限制、冷却期、用户偏好、隐私授权等约束后,系统才应在候选窗口中进行比较,并选择期望净收益最高的动作。
JITAI 与 ITAI 的理论基础和算法综述
核心框架
JITAI 的规范表达不是“智能推送”,而是一个持续进行的小决策系统。基础文献把它组织为四个核心构件:决策点(decision points)、干预选项(intervention options)、tailoring variables 和决策规则(decision rules);更完整地说,JITAI 还要求研发者先明确近端与远端结果,再把规则绑定到动态情境中。2015 年的 pragmatic framework 强调,应先把时间变化的行为模型说清楚,再实现规则;2026 年综述进一步指出,JITAI 研究的下一个重点之一,是把“此刻是否需要帮助”与“此刻是否接得住帮助”区分开来。citeturn33search0turn33search3turn9view5
对你的产品而言,这意味着提醒系统至少要回答四个问题:
- 现在是不是决策点:例如每小时整点、计划任务前后、检测到活动切换、检测到任务拖延时。
- 有哪些可行动作:不提醒、推送、应用内提示、邮件摘要、延迟到下一候选窗口。
- 用哪些变量做判断:时间、地点、活动、日程、任务紧急性、历史响应、疲劳、情绪、习惯强度等。
- 什么规则映射到什么动作:硬规则、概率阈值、contextual bandit、RL、因果 uplift 等。
上下文感知与状态推断
JITAI/ITAI 的第一层能力是感知上下文,第二层能力是推断状态。移动通知与 EMA 文献反复证明,真正影响接受度的不是“现在几点”这么简单,而是用户在做什么、做得多投入、这个提醒和其任务有什么关系、此刻的打断成本有多高。Mehrotra 等的 in-situ 研究使用了 10,372 条真实通知和 474 份问卷,发现通知的响应时间与主观干扰会受到呈现方式、告警类型、发送者—接收者关系、任务类型、任务完成阶段、任务复杂度共同影响;他们还发现,任务复杂度与主观干扰之间存在显著正相关,且主观干扰越大,通知越容易被 dismiss。citeturn16view0turn16view3turn16view4turn16view5
另一个方向的研究表明,内容和上下文应联合建模。大规模真实世界研究收集了约 70,000 条通知,发现把通知内容类别 + 用户当前活动一起纳入分类器,比只靠上下文或用户手工规则更能预测中断接受度;而在 EMA 研究中,活动、音频、谈话、位置等传感数据也可用于预测用户是否会快速回答提示。进一步的自然环境实地研究中,部署式机器学习模型相较随机发送可把“用户 receptive”的概率提升到最高约 40%,且自适应模型会随着研究进行而更有效。citeturn15view3turn15view4turn34search5turn34academia18
这类证据直接支持你的输入特征设计:不仅要看时间特征,更要看动态任务状态特征和用户负荷特征。如果系统已经知道用户正在开会、处于高复杂度工作流、刚刚忽略了两个提醒、或者正在从一个活动切换到另一个活动,那么“现在发不发”应和“日程上本来约定的时间”同等重要,甚至更重要。citeturn16view0turn15view6turn17search19
决策规则、个性化与在线优化
在算法层面,JITAI 的实践已经覆盖从规则系统到上下文 bandit再到强化学习的一条连续谱。最简单的系统使用“如果—那么”规则,例如“如果距截止 < 24 小时且当前无会议冲突且最近 6 小时无同类提醒,则发轻提醒”;更进一步的系统会学习一个响应概率或完成概率;再进一步,则用 contextual bandit / RL 直接学习“在当前状态下哪个动作值得做”。HeartSteps 的个性化算法是此路线的代表:它把 JITAI 视为策略学习问题,根据用户当前上下文持续改进 treatment policy,并在 HeartSteps V2 中每天 5 次决定是否发上下文定制的活动建议。citeturn11search1turn35search6
与传统 RL 相比,面向移动健康/提醒的 bandit 更常见,因为它更适合优化即时近端结果。NeurIPS 的 action-centered contextual bandit 论文指出,在 mHealth 中,关键难点之一是基线奖励(例如本来就会完成任务)会强烈波动,因此需要把“提醒带来的增量”与“用户原本就会做”的部分区分开;后续的 IntelligentPooling 把 Thompson sampling + 贝叶斯混合效应结合起来,实现了在用户之间有原则地共享信息、在用户内部做个体化学习。最近的可解释策略学习工作则表明,基于 HeartSteps V2/V3 的离线批策略学习可以构造可解释的策略树,兼顾效果与审计性。citeturn36search16turn36search1turn36search10turn35search0
因果推断与微随机试验
“看起来在某些时段发出通知会提高打开率”,并不等于“这些时段真的导致了更高打开率”。JITAI 领域的核心方法学进展之一,是引入 micro-randomized trial,MRT 来估计每个决策点上某个提醒动作的因果 excursion effect。Qian 等总结了 MRT 的实验设计与数据分析方法,并给出了加权居中最小二乘(WCLS)估计量,用于在反复随机化的环境中得到一致的因果效应估计。此类方法尤其适合回答:“提醒是否有效”“在哪些上下文下更有效”“是否会因星期、时段、最近 engagement 状态不同而异”。citeturn12search0turn12search13turn10search11
更重要的是,JITAI 近年开始从“只看短期”转向“兼顾长期”。2025 年关于 HeartSteps 的方法学工作提出了用于评估长期效应的工具,并在应用中发现:研究早期发送的 prompts 对长期习惯形成的作用,可能强于研究后期发送的 prompts。这对你的产品非常关键,因为“提醒什么时候发”不仅影响当次点击,还可能影响用户以后是否能自己在那个情境里想起要做这件事。citeturn12search9
现阶段证据的总体判断
系统综述给出的总体判断是:JITAI 的概念框架已经成熟,但高外部效度、长期结局和大样本因果验证仍在补课。针对身体活动的系统综述纳入了 14 个独特 JITAI,发现用户普遍觉得可接受,但总体效果证据仍然混合,且大多数研究样本较小、时长较短、没有充分 power 去检测行为改变;最常见的技术组件是目标设定、提示/线索、行为反馈与行动计划。这意味着,如果你要构建面向真实生产环境的提醒系统,最可靠的路线不是照搬论文中的固定消息机制,而是把 JITAI 当作一个持续优化管线:上线前先有保守规则,上线后用 MRT 和在线学习不断校准。citeturn9view6turn9view5
通知疲劳与习惯化的机制、量化指标和缓解策略
机制
就提醒系统而言,疲劳至少有三条机制链路。
第一条是中断成本。如果提醒到达时用户正处在高负荷任务中,认知切换本身就会造成损失。经典研究表明,若能把打断放在任务执行中的更佳时刻,烦扰感可比最差时刻降低 56%,比随机时刻降低 43%;这说明“何时提醒”本身就是效果变量,而不仅是交互设计变量。citeturn15view6turn15view7
第二条是过度暴露与脱敏。在临床 alert fatigue 研究里,研究者提出两种主要解释:一是总体工作负荷和识别真伪 alert 的认知成本导致过载,二是重复暴露导致去敏感化/习惯化。Ancker 等的研究发现,临床人员收到的 alert 越多、特别是重复 alert 越多,越不容易接受 alert;Baysari 等则进一步指出,随着长期过载,override 本身会变成一种习惯性动作。虽然医疗告警与消费级任务提醒并非同一场景,但它们共享同一种人因原理:高频、低相关、重复性强的打断,会把“认真处理提醒”训练成“快速忽略提醒”。citeturn21search0turn21search6turn18search1turn13view8
第三条是相关性衰减与负担累积。近年来的手机研究显示,通知并非因为“存在”而疲劳,而是因为它们在一个已经拥挤的通知生态里争抢注意力。2018 年的大规模观察研究记录了 794,525 条通知,发现用户中位数每天接收 56 条通知;同时,非消息类通知的转化率明显偏低,电子邮件约 15.47%、社交通知约 26.55%、非社交 app 通知约 16.19%。这提示你:一个任务管理/监督类产品天然处于非消息类通知的低优势区间,若没有足够强的时机与相关性建模,很容易变成“低点击、高干扰”的背景噪音。citeturn24view0
量化指标与经验阈值
下表汇总了与你产品最相关、且较容易转译成工程参数的量化证据。需要强调的是,这些不是“普适最优阈值”,而是可用于冷启动的经验边界与量化先验。
| 证据主题 | 量化结果 | 对产品的可转译含义 |
|---|---|---|
| 任务边界优于随机打断 | 最佳打断点相较最差时刻烦扰感下降 56%,相较随机下降 43% | 优先把提醒压到任务切换、活动切换、日程空档,而不是只按钟表时间发。 citeturn15view6turn15view7 |
| 活动切换窗口更适合提醒 | 在从 walking → stationary 的 breakpoint 上,通知响应时间最佳情况下改善 70% | 活动边界是比“整点提醒”更有价值的候选窗口。 citeturn17search19 |
| 上下文定制推送有近端增益 | JOOL 研究中,发送定制消息使未来 24 小时 engagement 提高 3.9%;周末 12:30 附近增益最高,约 8.8%–11.8% | 时段效应与星期效应显著,周末/午间常是值得测试的重要窗口。 citeturn13view2 |
| 每日消息提示有显著即时增益 | Drink Less 中,通知使未来 1 小时打开 App 的概率提升到 3.5 倍;但长期 disengagement 无显著差异 | 应把“短期打开”与“长期留存”分开优化。 citeturn32view0 |
| 负担越高,响应率越低 | 每周双向短信中,低反思/低响应负担消息的中位响应率 90%;中等反思/低负担 75%;高反思/高负担 23%;高反思/低负担仅 10% | 对提醒文案而言,认知负担往往比输入负担更致命;不要在高频提醒里要求深思。 citeturn20view0turn20view3turn20view4 |
| 用户总体通知生态已很拥挤 | 用户中位数每天收到 56 条通知;且大量通知被快速移除或长时间悬置 | 你的产品必须假定自己在“拥挤通知市场”中竞争,频控要比消息美化更重要。 citeturn24view0 |
| 通知会带来可测认知代价 | 单次社交通知可造成约 7 秒 的认知处理减速,且代价更受通知量与查看频率影响,而非总屏幕时长 | 频率预算应以“近期曝光数”和“近期查看行为”而不是屏幕时长来计算。 citeturn13view14 |
| 主观干扰与任务复杂度相关 | 任务复杂度与主观干扰的 Kendall τ 约 0.477,且用户工作时最容易觉得被打扰 | “复杂任务中少打断”应当是硬约束或高惩罚项。 citeturn16view3turn15view2 |
下面的示意图概括了文献支持的总体趋势:提醒频率升高时,疲劳通常单调上升,而净效益往往在中等频率附近出现平台或转折,此后开始下降。图形是工程示意,不是通用真实曲线。其依据来自对中断时机、反思负担、重复暴露和近端/远端结局差异的多项研究。citeturn15view6turn20view3turn21search0turn32view0turn30view0
xychart-beta
title "提醒频率增加时的疲劳上升示意"
x-axis ["极低","低","中","高","极高"]
y-axis "相对疲劳" 0 --> 100
line [5, 15, 35, 65, 90]建议采用的疲劳与习惯化指标
对你的算法,建议至少追踪以下五类疲劳指标:
- 行为指标:打开率、响应率、开始任务率、dismiss 率、snooze 率、关闭通知率。
- 时延指标:通知后查看延迟、动作延迟、恢复到任务的时间。
- 剂量指标:过去 24 小时曝光数、过去 7 天曝光数、同类提醒重复数、最近一次曝光距今间隔。
- 主观指标:单题 burden 评分、NASA-TLX 子量表、提醒是否“有帮助/烦/不合时宜”。
- 习惯化指标:第 n 次同类提醒的边际响应斜率、同上下文中的响应衰减、关闭/忽略后的再激活难度。
一个简单但实用的工程做法,是维护一个个体化 fatigue score:对近期曝光数、连续忽略数、同类任务重复数、夜间触达、重负荷上下文触达进行加权,并给予正向事件(如及时完成、主动设置提醒、主动打开 App)一定恢复分。这样,系统看到的就不是“还能不能发”,而是“此刻再发的疲劳成本有多高”。
行为改变技术对提醒效果的调节作用
JITAI 文献与更广泛的数字干预文献都表明:提醒本身通常不是有效性的根源,提醒只是把某种行为改变技术在当下激活的触发器。针对 mHealth app engagement 的系统综述纳入了 28 项研究,反复出现并与 engagement 相关的六类 BCT 是:目标设定、行为自我监控、行为反馈、提示/线索、奖励、社会支持。这意味着,“何时提醒”不应独立于“提醒里提醒什么”。citeturn38view0turn38view2
目标设定、自我监控与反馈
目标设定、自我监控和反馈通常形成一个最稳的三联结构。系统综述指出,这是最常与 engagement 关联的一组 BCT;针对身体活动 JITAI 的综述也发现,目标设定、提示/线索、反馈和行动计划是最常见的组合。糖尿病预防项目的 mHealth prompt 研究则进一步说明:当提醒的功能是把用户拉回到自我监控与行为执行链条里时,它的效应更可见——提示后 3 天内的自我监控和自报运动都显著增加。citeturn38view0turn9view6turn30view0
对你的产品来说,这意味着:如果提醒只是“别忘了去做”,且没有和清晰目标、可视化进展、完成反馈连接起来,那么它很容易沦为低价值打断。相反,若提醒明确告诉用户“为什么现在提醒”“你离今日目标还差哪一步”“现在点一下就能完成最小动作”,其效果通常会更稳。
提示/线索的短期有效与长期衰减
多项研究显示,prompts/cues 对近端 engagement常有效,但其长期净益并不自动成立。Drink Less 的每日通知显著提高 1 小时内打开率,却没有改善总体 disengagement;JOOL 的定制消息能提高 24 小时 engagement,但其效应不一定随周数显著变化;而 MacPherson 的研究则显示,提示主要在前半年有效,后半年衰减。综合来看,提示更像“及时点火器”,而不是“长期发动机”。citeturn32view0turn13view2turn30view0
因此,在算法设计里,应把提示的价值分拆为两部分:一部分是当次启动价值,另一部分是长期行为结构价值。如果同一种提示在过去 30 天反复带来打开,但不带来完成、留存或习惯增长,那么它不应继续被高频使用。
奖励与社会支持
奖励与社会支持在文献中也反复出现,但它们的作用更依赖实现方式。系统综述显示,奖励和社会支持与 engagement 相关;但在部分体力活动研究中,用户对竞争和社会比较的态度并不稳定,有时甚至明确不喜欢。换言之,鼓励、认可、完成反馈通常比公开排名更稳健。citeturn38view0turn38view2
对产品设计的含义是:
- 奖励应优先使用即时、低摩擦、非侵入式的肯定反馈,例如 streak、完成徽章、进度可视化、延迟满足型积分。
- 社会支持应设计为可选项,优先是“提醒同伴/监督者知道你需要支持”或“完成后汇报”,而不是默认公开比较。
- 当任务具备明显责任链时,社会支持提醒可以作为单独动作,而不是把其混在普通推送里。
习惯形成如何进入提醒优化
习惯形成的关键测量不应只看“做了多少次”,还应看“这件事是不是越来越自动发生”。习惯研究中使用最广的量表之一是 SRBAI(Self-Report Behavioural Automaticity Index),它把 habit strength 近似为 automaticity;而近期移动健康方法学工作则开始直接用 MRT 数据评估 prompts 对长期习惯的因果作用。对生产级系统而言,建议把时间规律性、上下文稳定性、无需提醒时的自发完成率与主观 automaticity 共同作为 habit 指标。citeturn39search0turn12search9
ITAI-like 最佳提醒时机算法框架
设计原则
本报告建议采用一个名为 ITAI-like 的框架。它不是纯学术 JITAI 的照搬,而是面向生产产品的改造版本。其原则有五条:
- 提醒是稀缺动作,不是默认动作。
- 先判断可发,再判断值不值得发。
- 优化净效益,而不是点开率。
- 把短期奖励与长期副作用一起建模。
- 优先可解释与可控,再逐步引入在线学习。
具体上,可把每个候选动作 (a) 的价值写成一个可实现的净效益函数:
[
U(a \mid x_t)=
w_1 P(\text{打开/开始}\mid a,x_t)
+w_2 P(\text{24h完成}\mid a,x_t)
+w_3 \Delta \text{Habit}_{7d}
-w_4 P(\text{Burden}\mid a,x_t)
-w_5 \text{ContextCost}
-w_6 \text{PrivacyCost}
]
其中 (x_t) 是当前状态;只有当满足硬约束且 (\max_a U(a \mid x_t) > \tau_u) 时才提醒。这个形式直接吸收了 JITAI 的“决策点—选项—规则”框架、Drink Less/JOOL 的近端因果效应结果,以及 fatigue 文献的副作用视角。citeturn33search3turn32view0turn13view2turn21search0
输入特征
建议把输入特征分为八组:
| 特征组 | 具体变量 | 说明 |
|---|---|---|
| 时间 | 本地时间、星期、假日、离截止时间、创建提醒后的时长、任务所属时间窗 | Graus 的提醒日志研究表明,提醒创建时间和任务文本对预测提醒触发时间有强解释力,加入文本后可把误差降低约 33%。citeturn15view5 |
| 上下文 | 地点、活动类型、活动切换、屏幕状态、是否驾车、是否在会议中、是否佩戴耳机 | 上下文与内容联合建模能比简单策略更好;断点和活动切换尤其重要。 citeturn15view4turn17search19 |
| 任务属性 | 紧急性、重要性、预计耗时、是否可拆分、是否 recurring、依赖关系 | “有价值的提醒即使 disruptive 也仍会被点击”,说明 urgency/importance 必须进入模型。 citeturn16view4 |
| 用户状态 | 最近 24h 忙碌度、近 7 天疲劳值、最近情绪/压力、睡眠不足标记 | 强负荷与高复杂任务中,提醒更容易造成干扰。 citeturn16view3turn15view2 |
| 历史行为 | 最近响应率、最近开始率、最近完成率、dismiss/snooze 模式、渠道偏好 | 通知量、查看行为与脆弱性/打断成本强相关。 citeturn13view14turn24view0 |
| 习惯强度 | 固定时间自发完成率、上下文稳定性、无提醒完成率、SRBAI/automaticity | 习惯形成应与频率分离看待。 citeturn39search0turn12search9 |
| 日程冲突 | 日历事件、深度工作窗口、通勤、家庭时段 | 任务边界与空档通常优于随机时点。 citeturn15view6turn17search19 |
| 生理/可穿戴 | 活动量、心率变异、久坐时长、睡眠、压力 proxy | 仅在高价值场景与明确授权下启用。JITAI 研究已广泛使用真实世界传感数据进行状态估计。 citeturn9view5turn34search5 |
模型路线与推荐架构
下面给出三类候选路线以及本报告的推荐组合。
| 候选算法 | 核心思路 | 优点 | 缺点 | 实现复杂度 | 数据需求 | 在线学习 |
|---|---|---|---|---|---|---|
| 规则基 + 概率模型 | 先用硬规则过滤,再用逻辑回归/GBDT 估计打开率、完成率、负担率 | 可解释、上线快、适合冷启动、便于审计 | 个性化上限有限,容易被固定特征“锁死” | 低到中 | 中等 | 有限 |
| 个性化 RL / Contextual Bandit | 在候选动作间用 Thompson sampling / contextual bandit 学“何时、发什么、走什么渠道” | 适合高频决策,能持续个体化优化,直接处理探索—利用 | 需要 careful safety constraints,离线评估难,解释性较弱 | 中到高 | 高 | 强 |
| 贝叶斯/因果模型 | 用层级贝叶斯、uplift、causal forest、WCLS/MRT 估计增量效应与异质性 | 更能区分“相关”与“增量”,适合做策略校准和审计 | 工程管线较复杂,实时性实现成本高 | 中到高 | 高 | 中等 |
从现实产品角度,最佳方案通常不是三选一,而是三者分层组合:
- 上线初期:规则基 + 概率模型。
- 验证阶段:MRT / 因果建模估计增量效应与 moderators。
- 成熟阶段:在硬约束之内,用 bandit/RL 做在线微调。
这种混合路线与 HeartSteps 的在线策略学习、MRT/WCLS 的因果评估以及可解释策略学习的方向高度一致。citeturn11search1turn12search0turn12search13turn35search0turn36search10
决策阈值、探索—利用与冷却策略
建议把阈值分为三层:
- 硬阈值
例如:夜间安静时段、不在驾驶场景、不在显式专注模式中、同类任务冷却期未到则不发。 - 行动阈值
只有当expected net utility > user-specific threshold才发;阈值应随近期疲劳和忽略次数上升。 - 升级阈值
只有在高紧急+高重要+低冲突时,把“轻提醒”升级为“强提醒/跨渠道提醒”。
探索—利用推荐使用安全约束的 Thompson sampling:把探索限制在“不会触发高负担”的候选窗口里,并给每个用户设置daily budget 与 weekly budget。如果用户近期已多次忽略或主动关闭提醒,则自动把探索率降到接近 0。对冷启动用户,可使用层级先验:从总体用户学到的时间模式、任务类别模式和渠道成本模式启动,再快速往个体偏好收敛。Graus 的提醒日志研究说明,提醒创建时间和任务文本本身就能提供不错的冷启动信号。citeturn36search1turn36search10turn15view5
推荐流程图
flowchart TD
A[进入候选决策点] --> B{满足硬约束?}
B -- 否 --> Z[不提醒]
B -- 是 --> C[提取状态 x_t\n时间/上下文/任务/历史/疲劳/习惯]
C --> D[估计 Receptivity\nP(打开/开始)]
C --> E[估计 Burden\nP(烦扰/忽略/关闭)]
C --> F[估计 Completion Lift\nP(24h完成)]
C --> G[估计 Habit Lift\nΔ7d自动化]
D --> H[计算各动作净效益 U(a|x_t)]
E --> H
F --> H
G --> H
H --> I{预算与冷却允许?}
I -- 否 --> Z
I -- 是 --> J[探索-利用选择动作]
J --> K[发送/不发送/换渠道]
K --> L[记录近端结果与主观负担]
L --> M[在线更新用户参数]图中的核心思想是:先做安全过滤,再做收益—成本比较,最后才做动作选择。这比“只预测打开率”更接近研究证据所支持的方向。citeturn33search3turn32view0turn21search0turn15view6
伪代码
def choose_reminder_action(state, user_model, policy):
# 1) hard constraints
if state.in_sleep_window or state.driving or state.focus_mode:
return "no_reminder"
if state.same_task_cooldown_active or state.daily_budget_exhausted:
return "no_reminder"
# 2) predict key quantities
receptivity = user_model.predict_open_prob(state)
completion = user_model.predict_completion_prob(state)
burden = user_model.predict_burden_prob(state)
habit_lift = user_model.predict_habit_delta(state)
actions = ["no_reminder", "in_app_hint", "push_light", "push_strong", "email_digest"]
best_action = "no_reminder"
best_utility = -1e9
for a in actions:
u = (
policy.w_open[a] * receptivity[a]
+ policy.w_complete[a] * completion[a]
+ policy.w_habit[a] * habit_lift[a]
- policy.w_burden[a] * burden[a]
- policy.context_conflict_penalty(state, a)
- policy.privacy_cost(state, a)
)
if u > best_utility:
best_utility = u
best_action = a
# 3) user-specific action threshold
if best_utility < user_model.action_threshold(state):
return "no_reminder"
# 4) safe exploration
if policy.allow_exploration(state, burden[best_action]):
best_action = policy.thompson_sample(actions, state, user_model)
return best_action衡量指标、试验设计与样本量估算建议
建议的指标体系
你的实验指标应至少分为四层:
| 指标层 | 主指标 | 备注 |
|---|---|---|
| 近端反应 | 5 分钟/1 小时打开率、点击率、开始任务率、snooze 率 | 适合 MRT 与 bandit |
| 行为结果 | 24 小时完成率、截止前完成率、连续执行率、延期率 | 反映真正任务价值 |
| 长期结果 | 4 周留存、任务类别坚持率、通知权限保留率、退出率 | 防止“短期点开、长期流失” |
| 负担与习惯 | burden 评分、dismiss 率、关闭提醒率、SRBAI/自发完成率、疲劳曲线斜率 | 把副作用与习惯形成显式纳入 |
Drink Less 的结果已经清楚提醒我们:若只测 1 小时打开率,可能会把一个“短期有效、长期无益”的策略误判为好策略。MacPherson 关于 prompt 衰减的结果也说明,至少要把分析窗口拉到月度层面。citeturn32view0turn30view0
试验设计建议
阶段一:经典 A/B 测试
先比较三种安全策略:
A:固定时段提醒;
B:规则基个性化提醒;
C:规则基 + 概率评分 + 个性化冷却。
这一阶段主要看完成率、主观负担、通知权限留存,不要只看点击率。
阶段二:多臂 / MRT
在候选窗口内,把动作随机化为:不提醒 / push_light / push_strong / in_app_hint / email,并记录 availability。MRT 能回答“是否发”“什么时候发”“哪种渠道更好”“对谁更好”。这正是 JITAI 文献推荐用来优化开发中组件的设计。citeturn10search11turn12search13
阶段三:受约束在线学习
在证实存在稳定增量效应后,再上线 contextual bandit。bandit 不应替代实验,而应建立在实验提供的安全边界和先验之上。
统计检验方法
- 近端二元结果(打开、开始、完成):优先用混合效应 logistic 回归或 GEE;MRT 下使用 WCLS / marginal excursion effect 方法。
- 时间到事件(何时完成、何时 disengage):用 Cox 模型或 restricted mean survival time。
- 长期重复测量(负担、habit strength):用线性/广义线性混合模型。
- 异质性分析:把 weekday/weekend、时段、任务类型、最近疲劳状态、最近 engagement 状态作为交互项。
- 长期因果效应:如果要专门估计“提醒是否促进习惯形成”,建议用新近提出的 distal causal excursion 分析。citeturn12search0turn12search13turn12search9
样本量估算
对经典 A/B,如果主指标是“24 小时任务完成率”的二元结局,可用标准两比例检验公式做首轮估算:
[
n_{\text{每组}} \approx
\frac{\left(z_{1-\alpha/2}+z_{1-\beta}\right)^2
\left[p_1(1-p_1)+p_2(1-p_2)\right]}
{(p_2-p_1)^2}
]
例如,若基线完成率 (p_1=18\%),你希望检测到 (p_2=20.5\%)(提升 2.5 个百分点),取 (\alpha=0.05)、power (=80\%),则粗略需要约 3900 人/组。若每位用户会经历多个决策点,还应乘以设计效应 (1+(m-1)\rho) 来对组内相关做膨胀;例如平均每人 10 个有效决策点、ICC 约 0.1,则样本需求会膨胀到约 7400 人/组量级。这个数量级不是最终答案,但足够做产品层级资源规划。
对 MRT,不建议沿用简单 A/B 公式。应使用已发表的 MRT 样本量计算方法,输入至少包括:每日决策点数、可用性(availability)、随机化概率、预期近端效应大小、研究时长、时间趋势与主要 moderator;当处理是多类别而非二元时,应使用更新后的 categorical-treatment 公式。citeturn37search3turn37search18turn37search13turn37search2turn37search4
产品落地建议、可复现实验方案与局限
产品落地建议
从工程和用户体验两端综合,本报告建议采用以下落地策略。
提醒频率策略
文献没有给出可普遍套用的“每日最优提醒次数”。因此,最稳妥的办法是使用保守先验 + 在线校准。作为冷启动参数,而非科学定论,我建议:
- 强提醒
push_strong:默认 每日不超过 1 次 - 总推送:默认 每日不超过 2 次
- 同类任务最小间隔:默认 ≥4 小时
- 连续忽略 2 次后:该任务 24 小时内不再推送,改走应用内或摘要
- 邮件:默认做摘要型,而非实时型;除非任务紧急,不做日内重复
这样的先验是为了确保系统一开始站在“少打扰”一侧,再通过 MRT 去上调或下调个体阈值。其依据来自:高负担消息响应率显著下滑、非消息类通知转化率偏低、重复 alert 会降低接受度,以及近端增益不等于长期净益。citeturn20view3turn24view0turn21search0turn32view0
个性化冷却与渠道分层
不建议把“冷却期”做成固定全局常数,而应个体化。对高响应、低负担用户,可以缩短;对最近负担高、忽略多、处于高复杂度场景的用户,应加长。渠道上建议采用梯度升级:
- 应用内被动提示
- 轻推送
- 强推送
- 邮件摘要
- 可选社会支持提醒
这样做的本质,是把“提醒”从一个二元变量改成不同成本的动作空间。
奖励与社会支持集成
提醒后最推荐的落地组合,是:
“微目标 + 一步可做 + 完成反馈”,而不是单纯“别忘了”。如果任务适合监督,可加入可选 accountability:例如“你是否希望在今晚 8 点前仍未完成时,向监督伙伴发送一个简短状态消息?”这比默认公开排名更稳妥,也更符合文献中对社会比较效果不稳定的观察。citeturn38view0turn38view2
UI/UX 文案设计
提醒文案应尽量降低反思负担。Goldilocks 研究显示,高反思负担即使降低了响应输入负担,响应率依然会明显下降。因此文案要满足四条:
- 一眼能看懂
- 告诉用户“为什么是现在”
- 给出最小下一步
- 提供一键 snooze / 改时 / 完成入口
一个更好的提醒示例是:
“你通常会在午饭后处理报销,现在日程空闲 20 分钟。只差提交最后一步,点此 30 秒完成。”
而不是:
“记得处理你之前提过的重要财务事务。”
隐私与数据最小化
就工程实现而言,建议坚持:
- 能在端上算的,尽量端上算
- 位置、情绪、压力、生理数据采用分层同意
- 默认收集最少必要字段,只留特征摘要而非原始传感流
- 给用户提供“为什么收到这条提醒”的解释与关闭入口
- 对情绪/压力/生理推断提供单独的开关与删除能力
这不仅是合规与信任要求,也能减少“感知被监控”的负担,从而间接提升提醒接受度。
可复现实验与仿真方案
建议采用一个三步可复现实验方案。
离线日志回放
收集并结构化以下事件:decision_time, context, task_features, channel, action, availability, open_1h, start_24h, complete_24h, burden_label, next_disable, no_reminder_counterfactual_proxy。
先训练三个模型:
一是响应模型;
二是完成模型;
三是负担模型。
使用历史随机化或准随机化日志时,可做IPS/DR 风格的离线策略评估。
用户仿真
构造八类用户原型,例如:
高自律低负担型、低自律高易烦型、周末高响应型、工作日午间响应型、临近截止驱动型、习惯已形成型、拖延但可拉回型、隐私敏感型。
在仿真中引入两个潜变量:fatigue_t 与 habit_t,并让它们随曝光、忽略、完成、自发执行而更新。比较三类策略:固定频率、规则+概率、bandit/RL。
在线 MRT
先做 6–8 周系统级 MRT:在被硬约束筛出来的候选窗口中,随机化动作。主结果看近端启动,次结果看完成率与 burden,长期看留存与 habit proxy。完成因果验证后,再将 bandit 政策限制在已证明有效的动作子空间中在线运行。citeturn12search13turn12search0turn37search3
开放问题与局限
这类研究仍有四个真实局限。
第一,证据最强的领域主要来自健康行为、EMA 和临床告警,而不是“通用任务管理/监督”产品本身。因此,外部效度需要你自己的 MRT 来补。citeturn9view6turn13view8
第二,文献支持很多“方向性规律”,但很少给出可移植的通用最优阈值。例如,研究能证明高负担、重复暴露、错误时机有害,却很难告诉你“每天 exactly 2 次最好”。这也是为什么产品应使用保守先验 + 在线学习。citeturn30view0turn32view0turn20view3
第三,近端 engagement 往往比远端行为更容易优化,因而系统可能陷入“会点开,但没完成”的局部最优。为避免这一点,目标函数必须显式纳入完成、留存、烂尾率和 fatigue。citeturn32view0turn30view0
第四,情绪、压力和生理状态虽然可能提高预测力,但也会显著提高隐私成本与采集偏差风险。它们应被视为可选增强信号,而不是第一版系统的必需品。
一句话结论:对你的 AI 任务与监督产品,最佳提醒时机的“最佳计算方法”不是固定提醒表,也不是单纯预测打开率,而是一个把可接受性、任务价值、长期习惯、疲劳惩罚和隐私成本同时放进来的 ITAI-like 个体化序列决策系统;最稳健的落地路线是硬规则守边界,概率模型做冷启动,MRT 做因果校准,bandit/RL 做在线微调。
