7 数据监视入门

数据监视可评估数据随时间的演变情况。它可以帮助您深入了解数据中的趋势和多变量依赖关系。它还会为您提供有关数据漂移的早期警告。

随着时间的推移,当数据与原始基线数据不同时,会发生数据漂移。数据漂移可能由于各种原因而发生,例如不断变化的业务环境、不断变化的用户行为和兴趣、第三方来源的数据修改、数据质量问题或上游数据处理管道的问题。

准确解释模型并确保模型能够解决业务问题的关键在于了解数据如何随时间演变。数据监控是对成功模型监控的补充,因为了解数据变化对于理解模型功效的变化至关重要。快速、可靠地检测数据统计属性变化的能力可确保您的机器学习模型能够满足业务目标。

您可以使用 Oracle Machine Learning 用户界面的数据监视功能监视数据。要监视数据,请单击 Oracle Machine Learning UI 主页上的“云”菜单,单击监视,然后单击数据以打开“数据监视器”页。在 "Data Monitors"(数据监视器)页面上,可以执行以下任务:

图 7-1 数据监视器页面

数据监视器页面
  • 创建:创建数据监视器。

    注意:

    支持的数据监视类型为 NUMERIC 和 CATEGORICAL。
  • 编辑:选择数据监视器并单击编辑以编辑数据监视器。
  • 复制:选择数据监视器并单击复制以创建监视器的副本。
  • 删除:选择数据监视器并单击删除以删除数据监视器。
  • 历史记录:选择数据监视器并单击历史记录以查看运行时详细信息。单击 Back to Monitors(返回监视器)返回到 "Data Monitoring"(数据监视)页面。
  • 启动:启动数据监视器。
  • 停止:停止正在运行的数据监视器。
  • 更多:单击更多可获得以下附加选项:

    图 7-2 数据监视器下的更多选项

    数据监视器下的更多选项
    • 启用:选择数据监视器并单击启用以启用禁用的监视器。默认情况下,启用数据监视器。状态显示为 SCHEDULED
    • 禁用:选择数据监视器并单击禁用以禁用数据监视器。状态显示为 DISABLED
    • 显示托管监视器:单击此选项可在 Oracle Machine Learning UI 中查看由 OML 服务 REST API 和模型监视器创建和管理的数据监视器。由这两个组件管理的数据监视器具有系统生成的名称,并根据其名称由特定图标指示。
      • 单击受管数据监视器名称的链接图标可查看关联模型监视器的详细信息。关联的模型监视器详细信息显示在幻灯片中的单独窗格中。幻灯片窗格显示模型监视器名称以及用于查看模型监视器结果和设置的链接。单击链接图标还会在“数据监视器”页面的下方窗格中显示数据偏移详细信息。单击左上角的 X 关闭窗格。

        图 7-3 显示关联模型监视器结果和设置的“数据监视器”页

        显示关联模型监视结果和设置的数据监视器页

        在此示例中,滑入窗格显示模型监视器功耗的详细信息。在幻灯片窗格中:

        • 单击模型监视器结果可查看模型监视器计算的结果 - 设置、模型、模型偏差、度量和预测统计信息。单击监视器可返回到数据监视器页。请参见 View Model Monitor Results
        • 单击模型监视器设置可在编辑模型监视器页上查看和编辑模型监视器监视的设置、详细信息和模型。单击取消可返回到数据监视器页。单击保存可保存任何更改。
      • 单击数据监视器名称上的复选框以查看下方窗格上的数据偏差值。

        图 7-4 选择托管数据监视器

        选择托管数据监视器
      • 单击数据监视器名称可查看数据监视器的详细信息 - 设置、数据漂移值和监视的功能。

        图 7-5 数据监视器单击

        数据监视器单击

“数据监视器”页显示有关所选监视器的信息:监视器名称、基线数据、新数据、上次开始日期、上次状态、下次运行数据、状态和调度。如果数据监视器已成功运行,则该页面还会显示数据偏差。要查看数据偏移,请执行以下操作:

图 7-6 数据监视器页面上的数据偏移预览

数据监视器页面上的数据偏差预览

选择已成功运行的数据监视器,如屏幕截图中所示。在下方窗格上,将显示所选监视器的数据偏移。X 轴描绘分析周期,Y 轴描绘数据漂移值。水平虚线是阈值,该线表示分析期间的每个时间点的偏差值。将鼠标悬停在行上可查看偏移值。有关此示例的更多信息,请参阅查看数据监视器结果

相关主题

7.1 创建数据监视器

通过数据监视,您可以检测数据随时间变化以及对机器学习模型性能的潜在负面影响。在“数据监视器”页面上,可以创建、运行和跟踪数据监视器和结果。

创建数据监视器:
  1. 在 Oracle Machine Learning UI 左侧导航菜单上,展开监视,然后单击数据以打开“数据监视”页。
  2. 在“数据监视”页上,单击创建以打开“新建数据监视器”页。
  3. 在“新建数据监视器”页上,输入以下详细信息:

    图 7-7 新数据监视器

    新建数据监视器
    1. 监视器名称:输入数据监视器的名称。
    2. 备注:输入备注。此字段为可选字段。
    3. 基线数据:这是包含要监视的基线数据的表或视图。单击“搜索”图标可打开选择表对话框。在此处,选择方案,然后选择表。

      注意:

      支持的数据监视数据类型是 NUMBER, BINARY_DOUBLE, FLOAT, BINARY_FLOAT, VARCHAR2, CHAR, NCHAR,NVARCHAR2,长度为 <=4000
    4. 新数据:这是包含要与基线数据进行比较的新数据的表或视图。单击“搜索”图标可打开选择表对话框。依次选择方案和表。

      注意:

      支持的数据监视数据类型是 NUMBER, BINARY_DOUBLE, FLOAT, BINARY_FLOAT, VARCHAR2, CHAR, NCHAR,NVARCHAR2,长度为 <=4000
    5. 交叉表:从下拉列表中选择属性。基线和新数据中的此属性用作数据双变量分析的基础或目标。

      注意:

      监督问题中的目标列可以作为此字段中的锚列传递。对于无监督的问题,它可以是任何感兴趣的列。但是,它将特定于应用程序。
    6. 案例 ID:此为可选字段。输入基线和新数据的案例标识符,以提高结果的可重复性。
    7. 时间列:这是在“新建数据”表或视图中存储时间信息的列的名称。从下拉列表中选择时间列。

      注意:

      如果时间列为空,则将整个新数据视为一个期间。
    8. 分析时段:这是对新数据执行数据监视的时间长度。选择用于数据监视的分析期间。选项包括 DayWeekMonthYear
    9. 开始日期:这是数据监视器调度的开始日期。如果不提供开始日期,则当前日期将用作开始日期。
    10. 重复:此值定义对定义的频率重复数据监视器运行的次数。输入一个介于 1 和 99 之间的数字。例如,如果在此处的重复字段中输入 2,在频率字段中输入 Minutes,则数据监视器将每 2 分钟运行一次。
    11. 频率:此值确定对新数据执行数据监视器运行的频率。选择用于数据监视的频率。选项包括“分钟、小时、天、周、月。例如,如果在频率字段中选择 Minutes,在重复字段中选择 2,在开始日期字段中选择 5/30/23,则根据计划,数据监视器将从每 2 分钟 5/30/23 运行。
  4. 单击重新计算:选择此选项可重新计算已计算时间期的分析。默认情况下,重新计算处于禁用状态。
    • 启用后,将对“开始日期”字段中指定的时间段和结束时间执行数据偏差分析。分析将覆盖指定时段的现有结果。这意味着将使用当前数据以外的新数据来计算该时间段的分析。根据所选频率,新的分析结果可能与现有结果重叠。
    • 禁用后,结果表中存在的时间期的数据将按原样保留。仅考虑最近时间段的新数据进行分析,结果将添加到结果表中。
  5. 单击其他设置可展开此部分并为数据监视器提供高级设置:

    图 7-8 数据监视附加设置

    “数据监视附加设置”部分
    1. 偏差阈值:偏差捕获基线数据与新数据期间之间性能的相对变化。根据您的特定机器学习问题,设置数据漂移检测的阈值。默认值为 0.7.

      注意:

      您可以根据您的用例调整阈值。增加值将生成更少的预警,而减少值将生成更多预警。
      • 超过此阈值的偏差表示数据发生了重大变化。超过阈值表示可能需要重建和重新部署模型。
      • 低于此阈值的偏差表示数据更改不足,因此需要进一步调查或采取行动。
    2. 数据库服务级别:这是 Autonomous Database 服务级别 - LowMediumHigh。默认值为 Low。与 Low 相比,服务级别 Medium 为数据监视器运行提供了更多资源。与 Medium. 相比,服务级别 High 为数据监视器运行提供了更多资源
    3. 分析筛选器:如果需要特定时间段的数据监视分析,请启用此选项。将滑块移到右侧以启用它,然后在开始日期结束日期字段中分别选择一个日期。默认情况下,此字段被禁用。
      • 起始日期:这是新数据中监控的起始日期或时间戳。它假定表中存在时间列。如果您使用“分析筛选器”选项,则此字段为必填字段。
      • 终止日期:这是新数据中监控的终止日期或时间戳。它假定表中存在时间列。如果您使用“分析筛选器”选项,则此字段为必填字段。
    4. 最大运行数:这是数据监视器根据此调度可以运行的最大次数。默认值为 3.
  6. “功能”网格显示要监视的功能列表。在此处,您可以选择或取消选择要在监视中包括或排除的功能。默认情况下,选择所有功能。如果所选数据是表并且 Autonomous Database 自动收集了 RDBMS 统计信息,则提供功能统计信息。Oracle Machine Learning Services 计算首次运行时表和视图的统计信息,第一次运行后,计算将显示在此处。后续运行会更新统计信息。

    图 7-9 数据监视器中的特征网格

    数据监视器中的功能网格

    注意:

    无法选择案例 ID交叉表列。
  7. 单击保存。这将完成创建数据监视器的任务。

    注意:

    现在必须转到“数据监视”页,选择数据监视器并单击开始以开始数据监视。
    成功运行数据监视器后,在数据监视页上选择监视器以查看数据漂移和数据监视器的其他详细信息。有关详细信息,请参阅数据监视入门

7.2 查看数据监视器结果

“数据监视器结果”页显示成功运行的数据监视器上的信息,以及每个受监视功能的数据偏移详细信息。

在“数据监视器”页上,单击已成功运行的数据监视器。在此示例中,选择了数据监视器功耗。数据监视器的结果显示在“数据监视器结果”页上,其中包含以下部分:
  • 设置 -“设置”部分显示数据监视器设置。单击设置上的箭头可展开此部分。您可以通过单击页面右上角的编辑来编辑数据监视器设置。在此屏幕截图中,将显示数据监视器功耗的设置。

    图 7-10“数据监视器结果”页面上的“设置”部分

    “数据监视器结果”页面上的“设置”部分
  • 偏移 -“偏移”部分显示每个受监视功能的数据偏移的详细信息。在此示例中,选择了数据监视器功耗数据监视器。X 轴描绘分析周期,Y 轴描绘数据漂移值。水平虚线是阈值,该线表示分析期间的每个时间点的偏差值。将鼠标悬停在行上可查看偏移值。

    图 7-11“数据监视器结果”页面上的“数据偏移”部分

    “数据监视器结果”页面上的“数据偏差”部分
  • 功能 -“功能”部分显示受监视的功能以及计算的统计信息。

    图 7-12“数据监视器结果”页面上的“功能”部分

    “数据监视器结果”页面中的“功能”部分

    重要性列中的值指示功能在指定时段内对数据偏移的影响。

    对于数字数据,将计算以下统计信息:
    • 平均
    • 标准差
    • 范围(最小值、最大值)
    • NULL 数量
    对于分类数据,将计算以下统计信息:
    • 唯一值的数量
    • NULL 数量

    对于每个受监视的功能,将鼠标悬停在上方可查看以下其他详细信息,如此处的屏幕截图所示。

    • 第一:这是分析期间计算统计信息的第一个值。
    • 最后:这是分析期间计算统计的最后一个值。
    • 最大值:这是分析时段的计算统计信息的最高值。
    • 最小值:这是分析期间计算统计的最小值。
  • 单击功能部分中的任何受监视功能可查看“度量”、“统计信息”、“分布”和“使用交叉表列的分布”,如此处的屏幕截图所示。在此屏幕截图中,为功能 GLOBAL_REACTIVE_POWER 显示了人口稳定性指数。

    图 7-13 人口稳定指数

    人口稳定指数
    计算包括:
    • 度量:计算以下度量:
      • 人口稳定指数 (PSI):这是衡量一个人口随着时间的推移或在单个数字中的两个不同人口样本之间转移的程度。这两个分布被绑定到存储桶中,PSI 会比较每个存储桶中项的百分比。PSI 计算方法为

        PSI = sum((Actual_% - Expected_%) x ln (Actual_% / Expected_%))

        PSI 值的解释是:
        • PSI < 0.1 表示没有显著的人口变化
        • 0.1 <= PSI < 0.2 表示人口变化适度
        • PSI >= 0.2 表示人口大幅变化
      • Jenson Shannon Distance(JSD):这是两个概率分布之间的相似性的度量。JSD 是 Jensen-Shannon Divergence 的平方根,与 Kullbach-Leibler Divergence(KLD) 有关。JSD 的计算方法为:

        SD(P || Q)= sqrt(0.5 x KLD(P || M) + 0.5 x KLD(Q || M))

        其中,P 和 Q 是 2 个分布,M = 0.5 x (P + Q), KLD(P || M) = sum(Pi x ln(Pi / Mi)), and KLD(Q || M) = sum(Qi x ln(Qi / Mi))

        JSD 的值范围介于 0 和 1 之间。

      • 交叉表填充稳定性指数:这是两个变量的 PSI。
      • 交叉表 Jenson Shannon Distance:这是两个变量的 JSD。
    • 统计信息:最多可以查看 3 个选定期间的统计信息。使用这些统计计算量化数据偏差。

      图 7-14 统计

      Statistics
      对于数字数据,将计算以下统计信息:
      • 平均
      • 标准差
      • 范围(最小值、最大值)
      • NULL 数量
      对于分类数据,将计算以下统计信息:
      • 唯一值的数量
      • NULL 数量
    • 分配:具有图例的功能分配图表显示选定期间和基线(可选)的功能库位。

      图 7-15 交叉表列的分布图和分布

      使用交叉表列的分布
    • 使用交叉表列的分布:热图指示所选交叉表和特征列的分布密度。红色表示最高密度。

      注意:

      在数据漂移监视中,nulls 被单独跟踪为 number_of_missing_values

7.3 查看历史记录

“历史记录”页显示数据监视器的运行时详细信息。

选择数据监视器并单击历史记录以查看运行时详细信息。历史记录页显示以下有关数据监视器运行时的信息:

图 7-16“数据监视器历史记录”页面

数据监视器历史记录页面
  • 实际开始日期:这是数据监视器实际启动的日期。
  • 请求的开始日期:这是在创建数据监视器时在 Start Date 字段中输入的日期。
  • 状态:状态为 SUCCEEDEDFAILED
  • 详细信息:如果数据监视器失败,则此处将列出详细信息。
  • 持续时间:这是运行数据监视器所用的时间。

单击 Back to Monitors(返回监视器)返回到 "Data Monitoring"(数据监视)页面。