跳到内容

Multi-Armed Bandit

Multi-Armed Bandit 元素会向用户发送推送通知,就像 Push 元素一样。但您不是提供单个预设,而是提供多个内容变体。优化会根据实时数据持续运行,无需手动重启测试或保持固定的流量分配。Pushwoosh 会将更多流量导向打开率最高的变体。

在应触发 Multi-Armed Bandit 元素的事件或条件之后添加该元素,然后配置该元素。

在触发器后,将 Multi-Armed Bandit 元素添加到 Journey 画布

添加内容变体

Anchor link to
  1. 双击 Multi-Armed Bandit 元素以打开其设置。
  2. 在 内容变体 中,选择至少两个不同的推送预设。
  3. 点击 添加变体 以包含更多预设。没有上限。

如果您的账户已启用 内容审批,此选择器不会显示版本状态或禁用未批准的预设,但每个变体仍需获得 批准。任何未获批准的变体都会阻止 Journey 的启动或恢复。

Multi-Armed Bandit 内容变体部分,其中包含两个选定的推送预设和“添加变体”按钮

选择成功指标

Anchor link to

在 奖励 部分,选择何种情况计为变体的成功:

  • 推送已打开: 当用户打开该推送时,变体赢得一次发送。
  • 事件已发生: 选择一个自定义事件作为成功信号,而非打开。此选项即将推出。

设置 奖励窗口 以定义 Pushwoosh 在发送后等待多少小时再检查推送是否被打开。默认为 2 小时。

Multi-Armed Bandit 奖励部分,其中“推送已打开”被选中,“事件已发生”被禁用,以及奖励窗口字段

个性化变体并添加优惠券

Anchor link to

使用动态内容进行个性化

Anchor link to

开启 使用事件属性个性化消息,用事件中的值(而非设备标签)填充变体预设中的占位符。Multi-Armed Bandit 会将所有选定变体中使用的占位符收集到一个列表中,因此您只需映射一次每个占位符,无论最终发送哪个预设。

了解有关 Journey 中个性化的更多信息。

覆盖 Liquid 占位符

Anchor link to

开启 覆盖 Liquid 占位符 并选择一个事件,将其属性输入到变体预设中名称匹配的 Liquid 标签中。如果同时启用动态内容和 Liquid 个性化,Liquid 优先。

使用优惠券

Anchor link to

开启 使用优惠券,将来自优惠券池的唯一代码附加到发送的任何变体上。请提前创建带有 {{voucher}} 占位符的变体预设,然后选择要从中提取代码的 优惠券池。您还可以选择使用 分配标签 将已发送的代码保存到用户标签中。

了解有关优惠券的更多信息。

设置消息类型

Anchor link to

选择 营销消息 或 交易消息:

  • 营销消息:用于营销活动和促销。所有规则和限制均适用。遵守:频率上限和静默期。排除:控制组 用户。
  • 交易消息:用于操作或服务消息。规则和限制不适用。绕过:频率上限。发送至:控制组 用户。
Multi-Armed Bandit 元素消息类型选择,包含营销消息和交易消息选项

了解消息类型如何影响发送。

配置消息发送设置

Anchor link to

设置频率上限

Anchor link to

使用 频率上限 来限制用户接收推送消息的频率,防止过度发送消息并减少用户流失。在 Multi-Armed Bandit 元素设置中,选择以下选项之一:

  • 使用全局频率上限设置

    应用您在 全局频率上限设置 中配置的项目范围限制。

    例如,如果全局限制设置为 9 天内 3 条消息,则超过此限制的额外消息将被跳过。

  • 忽略全局频率上限

    即使用户已超过渠道的消息限制,他们仍会收到此消息。请谨慎使用此选项,以避免过度发送消息。

  • 使用自定义频率上限

    为此消息设置自定义消息限制。如果用户超过此自定义上限,消息将被跳过,用户将进入下一步。

    为此自定义限制选择一种计数模式:滚动窗口或日历日。

设置发送速率限制

Anchor link to

发送速率 设置控制消息发送给受众的速度。调整发送速率有助于您管理发送速度、防止后端过载并提高整体送达率。

选择以下选项之一:

  • 使用全局发送速率设置 应用您项目消息发送设置中配置的发送速率限制。如果未设置限制,所有消息将立即发送。当您希望发送速度遵循项目的默认规则时,请使用此选项。了解有关全局发送速率限制的更多信息

使用全局发送速率设置

  • 无发送速率限制发送消息 尽快发送消息,忽略任何全局发送速率限制。请谨慎使用,以避免后端过载或造成发送高峰。

无发送速率限制发送消息

  • 使用自定义发送速率 仅为此消息覆盖全局发送速率。允许您指定每分钟发送的消息数量,从而完全控制发送速度。消息将按照您在消息元素中定义的自定义速率发送。

使用自定义发送速率

完成 Multi-Armed Bandit 元素的配置后,点击 保存。

Multi-Armed Bandit 如何选择变体

Anchor link to

Multi-Armed Bandit 不会像 A/B/n 拆分 那样在变体之间均匀交替或运行固定的 50/50 拆分。相反,它会持续观察哪个变体的打开频率更高,并逐渐将该变体发送给更大比例的用户。它仍然会足够频繁地发送其他变体,以不断从真实数据中学习。

关于其行为,有几点需要了解:

  • 需要一些时间和数量才能出现明确的领先者。早期,变体的发送比例接近均匀。
  • Pushwoosh 会避免连续两次向同一用户发送相同的变体,这样人们就不会重复收到完全相同的消息。
  • 选择基于 Journey 中所有用户的每个变体的整体表现,而非单个用户的偏好。

即使在确认某个变体为获胜者后,Multi-Armed Bandit 仍会继续运行。与 A/B/n 拆分 不同,它不会锁定获胜者并将所有流量都导向它。获胜的变体继续获得最大份额的发送量,而其他变体仍会收到较小份额,以便 Pushwoosh 可以继续学习。如果表现随时间变化,Multi-Armed Bandit 会进行调整,并将流量转移到新的领先者。

示例场景:恢复废弃购物车

Anchor link to

当用户将商品添加到购物车但未完成结账时,使用 Multi-Armed Bandit。下面的示例在一个 购物车废弃 事件上启动一个 Journey,并测试三个推送变体以召回用户。

  1. 准备推送预设。 在构建 Journey 之前,在您的账户中创建三个推送预设。了解有关创建推送预设的更多信息。

对于这个废弃购物车场景,您可以创建如下预设:

  • 购物车提醒: “您的购物车中有待处理的商品”
  • 购物车紧急提醒: “您的购物车将在 1 小时后过期”
  • 购物车折扣: “立即结账可享 9 折优惠”
  1. 创建 Journey。 在 营销活动 → Customer Journey Builder 中,点击 创建营销活动 并选择 从头构建 Journey。将一个 基于触发器的入口 元素添加到画布上。

  2. 设置触发器。 创建或启用一个 购物车废弃 事件,当用户在几小时内未完成结账时触发。在 基于触发器的入口 元素中,选择此事件作为 Journey 触发器。了解有关事件的更多信息。

  3. 添加 Multi-Armed Bandit 元素。 将 Multi-Armed Bandit 元素放置在触发器之后,然后打开其设置。

  4. 添加内容变体。 在 内容变体 中,选择您在步骤 1 中创建的三个预设。

  5. 选择成功指标。 在 奖励 中,选择 推送已打开。将 奖励窗口 设置为 2 小时。这个窗口足够长,可以捕捉到那些不会立即查看手机的用户的打开行为,但又足够短,可以快速学习。

  6. 完成设置并启动。 配置消息类型和发送设置,点击 保存,然后激活 Journey。

Multi-Armed Bandit 的行为可能大致如下。实际的流量分配和时间取决于发送量以及用户对每个变体的响应。

首先,由于数据不足,Pushwoosh 会将所有三个变体发送得接近均匀。随着打开数据的增加,它开始将更多流量转向打开率更高的变体。例如,如果“立即结账可享 9 折优惠”持续优于其他两个,它可能会收到约 60% 的发送量,而其他两个则瓜分剩余部分。

Pushwoosh 也会继续发送表现较差的变体。这可以保持学习的持续性,并遵循一个规则:刚刚收到某个变体的用户在下次到达此步骤时不会再次收到相同的变体。

查看结果

Anchor link to

在您保存元素并启动 Journey 后,打开 Multi-Armed Bandit 元素的统计面板,查看您的变体表现如何。

Multi-Armed Bandit 统计面板,包含结论横幅以及每个变体的发送、打开和流量指标

顶部的横幅显示实验的当前状态:

  • 数据不足: Multi-Armed Bandit 尚未收集到足够多的发送数据以得出有意义的结论。
  • 仍在学习中: 有数据,但尚无任何变体是明确的、具有统计显著性的领先者。
  • 显著领先者: 已确认一个变体表现优于其他变体。它被标记为 获胜者 徽章。

对于每个变体,您将看到:

  • 已发送: 此变体被发送的次数。
  • 已打开: 已打开的发送所占的份额。
  • 流量: 当前流向此变体的新发送所占的份额。

Multi-Armed Bandit 与 A/B/n 拆分对比

Anchor link to

Multi-Armed Bandit 和 A/B/n 拆分 都可以优化您的消息传递,但它们的工作方式不同。使用下表来决定哪一个更适合您的用例。

Multi-Armed BanditA/B/n 拆分
机制根据实时打开数据,持续将流量转向表现最佳的变体将用户拆分到您预先定义的固定百分比分支中。分支可以包含完全不同的下游流程
变体至少需要两个推送预设。变体数量没有上限每个测试最多四个分支
流量分配开始时接近均匀,然后随着数据的进入自动调整您设置的固定百分比,在选出获胜者之前保持不变
持续时间持续运行,没有明确的结束时间运行直到达到统计显著性或您手动停止
获胜者从不锁定:获胜的变体获得更多流量,但其他变体仍会收到一些选出获胜者后锁定:失败的分支停用,所有新用户都路由到获胜者
最适用于单个消息步骤的持续内容优化(目前仅限推送预设)当您想要一次性的、锁定的决策时,测试结构上不同的流程或序列