还原模型快照 API编辑

还原到特定快照。

请求编辑

POST _ml/anomaly_detectors/<job_id>/model_snapshots/<snapshot_id>/_revert

先决条件编辑

  • 在还原到保存的快照之前,您必须关闭作业。
  • 需要 manage_ml 集群权限。此权限包含在 machine_learning_admin 内置角色中。

描述编辑

机器学习功能对异常输入做出快速反应,学习数据中的新行为。高度异常的输入会增加模型的方差,同时系统会学习这是否是行为的新阶跃变化或一次性事件。如果已知此异常输入是一次性事件,则可能需要将模型状态重置到此事件发生之前的某个时间点。例如,您可能考虑在黑色星期五或关键系统故障后还原到保存的快照。

还原到快照不会更改异常检测作业的 data_counts 值,这些值不会还原到早期状态。

路径参数编辑

<job_id>
(必需,字符串) 异常检测作业的标识符。
<snapshot_id>

(必需,字符串) 模型快照的标识符。

您可以指定 empty 作为 <snapshot_id>。还原到 empty 快照意味着异常检测作业在启动时从头开始学习新模型。

查询参数编辑

delete_intervening_results

(可选,布尔值) 如果为 true,则删除最新结果与还原快照时间之间的结果。它还会重置模型以接受此时间段的记录。默认值为 false。

如果您选择在还原快照时不删除中间结果,则作业将不会接受早于当前时间的输入数据。如果您想重新发送数据,则删除中间结果。

请求正文编辑

您也可以在请求正文中指定 delete_intervening_results 查询参数。

示例编辑

response = client.ml.revert_model_snapshot(
  job_id: 'low_request_rate',
  snapshot_id: 1_637_092_688,
  body: {
    delete_intervening_results: true
  }
)
puts response
POST _ml/anomaly_detectors/low_request_rate/model_snapshots/1637092688/_revert
{
  "delete_intervening_results": true
}

操作完成后,您将收到以下结果

{
  "model" : {
    "job_id" : "low_request_rate",
    "min_version" : "7.11.0",
    "timestamp" : 1637092688000,
    "description" : "State persisted due to job close at 2021-11-16T19:58:08+0000",
    "snapshot_id" : "1637092688",
    "snapshot_doc_count" : 1,
    "model_size_stats" : {
      "job_id" : "low_request_rate",
      "result_type" : "model_size_stats",
      "model_bytes" : 45200,
      "peak_model_bytes" : 101552,
      "model_bytes_exceeded" : 0,
      "model_bytes_memory_limit" : 11534336,
      "total_by_field_count" : 3,
      "total_over_field_count" : 0,
      "total_partition_field_count" : 2,
      "bucket_allocation_failures_count" : 0,
      "memory_status" : "ok",
      "assignment_memory_basis" : "current_model_bytes",
      "categorized_doc_count" : 0,
      "total_category_count" : 0,
      "frequent_category_count" : 0,
      "rare_category_count" : 0,
      "dead_category_count" : 0,
      "failed_category_count" : 0,
      "categorization_status" : "ok",
      "log_time" : 1637092688530,
      "timestamp" : 1641495600000
    },
    "latest_record_time_stamp" : 1641502169000,
    "latest_result_time_stamp" : 1641495600000,
    "retain" : false
  }
}

有关这些属性的描述,请参阅 获取模型快照 API