Spec-Zone.ru › Elasticsearch 7
›Elasticsearch Guide [7.17] ›REST API ›API для обнаружения аномалий с помощью машинного обучения

API получения общих результатов по группам

Возвращает общие результаты по группам, которые обобщают результаты по группам нескольких задач обнаружения аномалий.

Запрос

GET _ml/anomaly_detectors/<job_id>/results/overall_buckets

GET _ml/anomaly_detectors/<job_id>,<job_id>/results/overall_buckets

GET _ml/anomaly_detectors/_all/results/overall_buckets

Предварительные условия

Требуется привилегия кластера monitor_ml. Эта привилегия включена в встроенную роль machine_learning_user.

Описание

По умолчанию, общий интервал группы равен наибольшему интервалу группы указанных задач обнаружения аномалий. Чтобы переопределить это поведение, используйте необязательный параметр bucket_span. Чтобы узнать больше о концепции групп, см. Группы.

Значение overall_score вычисляется путем объединения оценок всех групп в пределах общего интервала группы. Сначала вычисляется максимальная оценка anomaly_score по каждой задаче обнаружения аномалий в общем интервале. Затем среднее значение этих оценок берется для получения оценки overall_score. Это означает, что вы можете настроить значение overall_score, чтобы оно было более или менее чувствительным к количеству задач, обнаруживших аномалию в одно и то же время. Например, если вы установите top_n в значение 1, оценка overall_score будет равна максимальной оценке группы в общем интервале. В противном случае, если вы установите top_n в число задач, оценка overall_score будет высокой только тогда, когда все задачи обнаружат аномалии в этой группе. Если вы установите параметр bucket_span (в значении, большем его значения по умолчанию), overall_score будет максимальным значением overall_score из общих групп, имеющих интервал, равный наибольшему интервалу групп.

Параметры пути

<job_id>

(Обязательно, строка) Идентификатор задачи обнаружения аномалий. Это может быть идентификатор задачи, имя группы, список задач или групп через запятую или выражение с подстановкой.

Вы можете обобщить результаты по группам для всех задач обнаружения аномалий, используя _all или указав * в качестве идентификатора задачи.

Параметры запроса

allow_no_jobs
(Необязательно, логическое значение) [7.10] Устарело в 7.10. Используйте allow_no_match вместо этого.
allow_no_match

(Необязательно, логическое значение) Указывает, что делать, когда запрос:

  • Содержит выражения с подстановкой, и нет совпадающих задач.
  • Содержит строку _all или нет идентификаторов, и нет совпадений.
  • Содержит выражения с подстановкой, и есть только частичные совпадения.

Значение по умолчанию — true, которое возвращает пустой массив jobs при отсутствии совпадений и подмножество результатов при частичных совпадениях. Если этот параметр равен false, запрос возвращает код состояния 404 при отсутствии совпадений или только частичных совпадениях.

bucket_span
(Необязательно, строка) Интервал общих групп. Должен быть больше или равен наибольшему интервалу группы указанных задач обнаружения аномалий, что является значением по умолчанию.
end
(Необязательно, строка) Возвращает общие группы с отметками времени, предшествующими этому времени. По умолчанию — -1, что означает, что он не установлен и результаты не ограничены конкретными отметками времени.
exclude_interim
(Необязательно, логическое значение) Если true, выходной результат не включает промежуточные общие группы. Общие группы являются промежуточными, если какой-либо из результатов по группам задач в интервале общего интервала является промежуточным. По умолчанию — false, что означает включение промежуточных результатов.
overall_score
(Необязательно, двойное значение) Возвращает общие группы с общими оценками, больше или равными этому значению. По умолчанию — 0.0.
start
(Необязательно, строка) Возвращает общие группы с отметками времени после этого времени. По умолчанию — -1, что означает, что он не установлен и результаты не ограничены конкретными отметками времени.
top_n
(Необязательно, целое число) Количество лучших оценок групп задач обнаружения аномалий, которые будут использоваться в вычислении overall_score. По умолчанию — 1.

Тело запроса

Вы также можете указать параметры запроса (такие как allow_no_match и bucket_span) в теле запроса.

Тело ответа

API возвращает массив объектов общей группы, которые имеют следующие свойства:

bucket_span
(число) Длина группы в секундах. Соответствует задаче с наибольшим значением bucket_span.
is_interim
(логическое значение) Если true, это промежуточный результат. Другими словами, результаты вычисляются на основе частичных входных данных.
jobs
(массив) Массив объектов, содержащих max_anomaly_score по job_id.
overall_score
(число) Среднее значение top_n максимальной оценки группы anomaly_score по каждой задаче.
result_type
(строка) Внутреннее. Всегда устанавливается в overall_bucket.
timestamp
(дата) Начальное время группы, для которой были вычислены эти результаты.

Примеры

GET _ml/anomaly_detectors/job-*/results/overall_buckets
{
  "overall_score": 80,
  "start": "1403532000000"
}

В этом примере API возвращает один результат, который соответствует указанным ограничениям по оценке и времени. overall_score — это максимальная оценка задачи, так как top_n по умолчанию равно 1, если не указано иное:

{
  "count": 1,
  "overall_buckets": [
    {
      "timestamp" : 1403532000000,
      "bucket_span" : 3600,
      "overall_score" : 80.0,
      "jobs" : [
        {
          "job_id" : "job-1",
          "max_anomaly_score" : 30.0
        },
        {
          "job_id" : "job-2",
          "max_anomaly_score" : 10.0
        },
        {
          "job_id" : "job-3",
          "max_anomaly_score" : 80.0
        }
      ],
      "is_interim" : false,
      "result_type" : "overall_bucket"
    }
  ]
}

Следующий пример похож, но на этот раз top_n установлено в 2:

GET _ml/anomaly_detectors/job-*/results/overall_buckets
{
  "top_n": 2,
  "overall_score": 50.0,
  "start": "1403532000000"
}

Обратите внимание, как overall_score теперь является средним значением двух лучших оценок задач:

{
  "count": 1,
  "overall_buckets": [
    {
      "timestamp" : 1403532000000,
      "bucket_span" : 3600,
      "overall_score" : 55.0,
      "jobs" : [
        {
          "job_id" : "job-1",
          "max_anomaly_score" : 30.0
        },
        {
          "job_id" : "job-2",
          "max_anomaly_score" : 10.0
        },
        {
          "job_id" : "job-3",
          "max_anomaly_score" : 80.0
        }
      ],
      "is_interim" : false,
      "result_type" : "overall_bucket"
    }
  ]
}

© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/ml-get-overall-buckets.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API