你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

在何处以及如何使用个性化体验创建服务

重要

从 2023 年 9 月 20 日开始,将无法创建新的个性化体验创建服务资源。 个性化体验创建服务将于 2026 年 10 月 1 日停用。

在应用程序需要选择要显示的正确操作(内容)的任何场合下,都可以应用个性化体验创建服务,以改善体验,实现更好的业务成果,或提高工作效率。

个性化体验创建服务使用强化学习来选择要向用户显示的操作(内容)。 所做的选择根据发送到服务的数据数量、质量和分布而有很大的不同。

个性化体验创建服务的用例

  • 意向澄清和消除歧义:当用户的意向不明时,通过为每个用户提供个性化的选项,帮助他们获得更好的体验。
  • 菜单和选项的默认建议:让机器人首先以个性化方式建议最可能的项,而不是显示没有人情味的菜单或备选项列表。
  • 机器人特征和音调:对于可以改变音调、话语冗长性和书写方式的机器人,请考虑改变这些特征。
  • 通知和警报内容:决定要在警报中使用哪些文本,以提高用户的参与度。
  • 通知和警报时间:以个性化方式学习何时要将通知发送给用户,以提高其参与度。

使用个性化体验创建服务所需要达到的预期

在满足或可以实现以下准则的情况下可以应用个性化体验创建服务。

准则 说明
业务目标 为应用程序制定了业务目标或可用性目标。
内容 在应用程序中做出有关要向用户显示哪些数据的上下文决策可以改善该目标。
内容数量 每次调用要排名的操作数目少于 50 个。
聚合数据 可以并且应该从集体用户行为和总体奖励评分中学习最佳选择。
信息隔离使用 个性化机器学习的使用遵循负责使用准则和选择的选项。
最佳单一选项 上下文决策可以表达为基于一组有限的选项对最佳选择(操作)进行排名。
评分的结果 排名选项对应用程序的适用程度的确定方式包括衡量用户行为的某些方面,并以 奖励评分 的形式来表达此衡量结果。
相关计时 奖励评分不会引入过多的混淆或外部因素。 试验持续时间足够短,以便在奖励评分仍然相关的情况下可对其进行计算。
充足的上下文功能 可将排名上下文表达为至少包含 5 个特征的列表,你认为这些特征有助于做出正确的选择,并且它们不包括特定于用户的身份信息。
充足的操作功能 你已获得有关每个内容选项的信息,即操作 - 至少包含 5 个功能的列表,你认为这些特征有助于个性化体验创建服务做出正确的选择。
每日数据 如果问题随时变化(例如新闻或时装的偏向),有足够的事件建立在最佳个性化的基础之上。 个性化体验创建服务可适应现实世界的不断变化,但如果未提供足够的事件和数据用于发现和解决新的模式,则结果不会是最佳的。 应选择发生频率够高的用例。 考虑查找每日至少发生 500 次的用例。
历史数据 应用程序可将数据保留足够长的时间,以累积至少 100,000 次交互的历史记录。 这样允许个性化体验创建服务收集足够的数据来执行脱机评估和策略优化。

个性化行为不能被所有用户发现的情况下,不要使用个性化体验创建服务 。 例如,使用个性化体验创建服务从包含 20 个可能菜单项的列表中推荐最合适的披萨是有用的做法,但是,在幼儿园需要帮助时,确定要呼叫用户联系人列表中的哪个联系人(例如“奶奶”)对于用户群而言并不是一个适合个性化的用例。

如何在 Web 应用程序中使用个性化体验创建服务

将一个学习循环添加到 Web 应用程序,包括:

  • 确定要个性化的体验、现有的操作和特征、要使用的上下文特征,以及要设置的奖励。
  • 在应用程序中添加对个性化 SDK 的引用。
  • 准备好个性化时,调用排名 API。
  • 存储 eventId。 稍后要使用奖励 API 发送奖励。
  1. 确保用户已看到你的个性化页面后,针对事件调用“激活”。
  2. 等待用户选择已排名的内容。
  3. 调用奖励 API 来指定排名 API 的输出准确性。

如何在聊天机器人中使用个性化体验创建服务

本示例演示如何使用个性化做出默认建议,而不是每次向用户发送一系列的菜单或选项。

  • 获取本示例的代码
  • 设置机器人解决方案。 确保发布 LUIS 应用程序。
  • 管理机器人的排名和奖励 API 调用。
    • 添加用于管理 LUIS 意向处理的代码。 如果返回了 None 作为首要意向,或者首要意向评分低于业务逻辑阈值,请将意向列表发送到个性化体验创建服务以便为意向排名。
    • 以可选择的链接形式向用户显示意向列表,其中的第一个意向是排名 API 响应中排名最靠前的意向。
    • 捕获用户的选择并在奖励 API 调用中发送此信息。
  • 每当需要消除歧义时,都发出个性化体验创建服务排名 API 调用,而不要缓存每个用户的结果。 某个人的意向消除歧义结果可能会在一段时间后有变化,允许排名 API 探索差异可以加速总体学习过程。
  • 选择许多用户共有的交互,以获得足够的可个性化数据。 例如,在只有少量用户访问的聊天图中,使用引导性的问题可能比稍微深入的澄清更合适。
  • 使用排名 API 调用来实现“第一条建议适当”聊天,问用户“你想要 X 吗?”或“你是指 X 吗?”而用户只需进行确认;不要向用户提供要求他们必须从菜单中进行选择的选项。 例如,用户说:“我想买一杯咖啡”,机器人说:“你想要双倍特浓咖啡吗?”。 这样,奖励信号也很明确,因为它与一条建议直接相关。

如何在推荐解决方案中使用个性化体验创建服务

许多公司使用推荐引擎、市场营销活动工具、受众细分和聚类、协作筛选和其他方法来向客户推荐大型目录中的产品。

Microsoft Recommenders GitHub 存储库提供了用于构建推荐系统的示例和最佳做法,它们是作为 Jupyter 笔记本提供的。 其中提供了有关为许多常见方案(包括 xDeepFM、SAR、ALS、RBM、DKN)准备数据、生成模型、评估、优化和操作化推荐引擎的可行示例。

个性化体验创建服务可以使用推荐引擎(如果存在)。

  • 推荐引擎采用大量的项(例如 500,000 个),并从数百或数千个选项中推荐某个子集(例如前 20 个)。
  • 个性化体验创建服务采用少量的操作(但这些操作包含有关自身的大量信息),并根据给定的丰富上下文为操作排名;而大多数推荐引擎只使用有关用户、产品及其交互的少量属性。
  • 个性化体验创建服务旨在自主探索用户在所有时间的偏向,这可以产生更好的结果,其中的内容会快速变化,例如新闻、直播活动、实时社区内容、每日更新的内容或季节性内容。

一种常见用途是采用推荐引擎的输出(例如,特定客户的前 20 个产品)并将其用作个性化体验创建服务的输入操作。

将内容保护措施添加到应用程序

如果应用程序允许向用户显示差别很大的内容,而其中的某些内容对于某些用户而言不安全或者不妥,则你应该提前确保采用适当的保护措施,以防用户看到不可接受的内容。 实施安全措施的最佳模式是:* 获取要排名的操作列表。 * 筛选出对受众不可行的操作。 * 仅为可行的操作排名。 * 向用户显示排名最高的操作。

在某些体系结构中,可能很难按上述顺序实施保护措施。 在这种情况下,可以在排名后通过一种替代的方法来实施保护措施,但这需要经过预配,以便未受保护的措施不会用于训练个性化体验创建服务模型。

  • 在停用学习的情况下获取要排名的操作列表。
  • 为操作排名。
  • 检查排名最高的操作是否可行。
    • 如果排名最高的操作可行,则激活此排名的学习,然后向用户显示。
    • 如果排名最高的操作不可行,请不要激活此排名的学习,并通过自己的逻辑或替代的方法决定要向用户显示哪些内容。 即使使用排名第二的选项,也不要激活此排名的学习。

后续步骤

道德和负责使用