Spec-Zone.ru › Elasticsearch 8
›Руководство по Elasticsearch [8.17] ›REST API ›API для анализа данных в рамках аналитических задач с использованием машинного обучения

API для получения статистики задач анализа данных в рамках аналитических задач с использованием машинного обучения

Справочник по новым API

Для получения самых актуальных данных об API обратитесь к API для анализа данных в рамках аналитических задач с использованием машинного обучения.

Получает информацию об использовании задач анализа данных в рамках аналитических задач с использованием машинного обучения.

Запрос

GET _ml/data_frame/analytics/<data_frame_analytics_id>/_stats

GET _ml/data_frame/analytics/<data_frame_analytics_id>,<data_frame_analytics_id>/_stats

GET _ml/data_frame/analytics/_stats

GET _ml/data_frame/analytics/_all/_stats

GET _ml/data_frame/analytics/*/_stats

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

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

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

<data_frame_analytics_id>
(Необязательно, строка) Идентификатор задачи анализа данных в рамках аналитических задач с использованием машинного обучения. Если этот параметр не указан, API возвращает информацию о первых ста задачах анализа данных в рамках аналитических задач с использованием машинного обучения.

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

allow_no_match

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

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

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

from
(Необязательно, целое число) Пропускает указанное количество задач анализа данных в рамках аналитических задач с использованием машинного обучения. Значение по умолчанию — 0.
size
(Необязательно, целое число) Указывает максимальное количество задач анализа данных в рамках аналитических задач с использованием машинного обучения для получения. Значение по умолчанию — 100.
verbose
(Необязательно, булево) Определяет, должна ли содержать ответ stats подробную информацию. Значение по умолчанию — false.

Тело ответа

data_frame_analytics

(массив) Массив объектов, содержащих информацию об использовании задач аналитики фреймов данных, отсортированных по значению id в порядке возрастания.

Свойства ресурсов использования задач аналитики фреймов данных
analysis_stats

(объект) Объект, содержащий информацию о задаче анализа.

Свойства analysis_stats
classification_stats

(объект) Объект, содержащий информацию о задаче классификационного анализа.

Свойства classification_stats
hyperparameters

(объект) Объект, содержащий параметры задачи классификационного анализа.

Свойства hyperparameters
alpha
(двойное) Дополнительный параметр конфигурации. Машинное обучение использует стратегию роста дерева, основанную на минимальном регуляризованном значении ошибки. Данный параметр влияет на расчет потерь, действуя как множитель глубины дерева. Более высокие значения alpha приводят к более мелким деревьям и более быстрому обучению. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Должно быть больше или равно нулю.
class_assignment_objective
(строка) Определяет целевую функцию для оптимизации при назначении меток классов: maximize_accuracy или maximize_minimum_recall. При максимизации точности метки классов выбираются так, чтобы максимизировать количество правильных предсказаний. При максимизации минимального охвата метки классов выбираются так, чтобы максимизировать минимальный охват для любого класса. По умолчанию maximize_minimum_recall.
downsample_factor
(двойное) Дополнительный параметр конфигурации. Регулирует долю данных, используемых для вычисления производных функции потерь для обучения дерева. Маленькое значение приводит к использованию небольшой доли данных. Если это значение меньше 1, то точность обычно улучшается. Однако слишком маленькое значение может привести к плохой сходимости ансамбля и потребовать больше деревьев. Дополнительную информацию о сжатии см. в этой статье вики. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Должно быть больше нуля и меньше или равно 1.
eta
(двойное) Дополнительный параметр конфигурации. Применяемое сжатие к весам. Более низкие значения приводят к более крупным лесам с лучшей обобщающей ошибкой. Однако более крупные леса вызывают более медленное обучение. Дополнительную информацию о сжатии см. в этой статье вики. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Должно быть значением от 0,001 до 1.
eta_growth_rate_per_tree
(двойное) Дополнительный параметр конфигурации. Указывает скорость, с которой eta увеличивается для каждого нового дерева, добавляемого в лес. Например, скорость 1,05 увеличивает eta на 5% для каждого дополнительного дерева. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Должно быть между 0,5 и 2.
feature_bag_fraction
(двойное) Дополнительный параметр конфигурации. Определяет долю признаков, которые будут использоваться при выборе случайной выборки для каждого кандидата на разделение. По умолчанию это значение вычисляется во время оптимизации гиперпараметров.
gamma
(двойное) Дополнительный параметр конфигурации. Параметр регуляризации, предотвращающий переобучение на наборе обучающих данных. Умножает линейную штрафную составляющую, связанную с размером отдельных деревьев в лесу. Высокое значение gamma заставляет обучение предпочитать маленькие деревья. Маленькое значение gamma приводит к более крупным отдельным деревьям и более медленному обучению. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Должно быть неотрицательным значением.
lambda
(двойное) Дополнительный параметр конфигурации. Параметр регуляризации, предотвращающий переобучение на наборе обучающих данных. Умножает член регуляризации L2, который применяется к весам листьев отдельных деревьев в лесу. Высокое значение lambda заставляет обучение отдавать предпочтение небольшим весам листьев. Это поведение делает функцию предсказания более гладкой, но может не позволить уловить значимые взаимосвязи между признаками и зависимой переменной. Маленькое значение lambda приводит к более крупным отдельным деревьям и более медленному обучению. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Должно быть неотрицательным значением.
max_attempts_to_add_tree
(целое число) Если алгоритм не может определить нетривиальное дерево (больше одного листа), этот параметр определяет, сколько таких последовательных неудач допускается. После превышения порога обучение леса прекращается.
max_optimization_rounds_per_hyperparameter
(целое число) Дополнительный параметр конфигурации. Множитель, ответственный за определение максимального числа шагов оптимизации гиперпараметров в процедуре байесовской оптимизации. Максимальное количество шагов определяется на основе числа неопределенных гиперпараметров, умноженного на максимальное количество раундов оптимизации на один гиперпараметр. По умолчанию это значение вычисляется во время оптимизации гиперпараметров.
max_trees
(целое число) Дополнительный параметр конфигурации. Определяет максимальное количество деревьев решений в лесу. Максимальное значение равно 2000. По умолчанию это значение вычисляется во время оптимизации гиперпараметров.
num_folds
(целое число) Максимальное количество фолдов для процедуры перекрестной проверки.
num_splits_per_feature
(целое число) Определяет максимальное количество разбиений для каждого признака, которые могут произойти в дереве решений при обучении дерева.
soft_tree_depth_limit
(двойное) Дополнительный параметр конфигурации. Машинное обучение использует стратегию роста дерева, основанную на минимальном регуляризованном значении ошибки. Это мягкое ограничение в сочетании с soft_tree_depth_tolerance штрафует деревья, которые превышают указанную глубину; регуляризованная ошибка быстро увеличивается за пределами этой глубины. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Должно быть больше или равно 0.
soft_tree_depth_tolerance
(двойное) Дополнительный параметр конфигурации. Этот параметр управляет тем, как быстро увеличивается регуляризованная ошибка, когда глубина дерева превышает soft_tree_depth_limit. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Должно быть больше или равно 0,01.
iteration
(целое число) Количество итераций анализа.
timestamp
(дата) Отметка времени, когда статистика была сообщена в миллисекундах с начала эпохи.
timing_stats

(объект) Объект, содержащий статистику времени о задаче аналитики фреймов данных.

Свойства timing_stats
elapsed_time
(целое число) Время выполнения анализа в миллисекундах.
iteration_time
(целое число) Время выполнения последней итерации анализа в миллисекундах.
validation_loss

(объект) Объект, содержащий информацию о валидационных потерях.

Свойства validation_loss
fold_values
Значения валидационных потерь для каждого добавленного дерева решений во время процедуры роста леса.
loss_type
(строка) Тип метрики потерь. Например, binomial_logistic.
outlier_detection_stats

(объект) Объект, содержащий информацию о задании обнаружения выбросов.

Свойства outlier_detection_stats
parameters

(объект) Список параметров задания, указанных пользователем или определенных алгоритмическими эвристиками.

Свойства parameters
compute_feature_influence
(логическое значение) Указывает, включено ли вычисление влияния признака. По умолчанию значение true.
feature_influence_threshold
(double) Минимальный балл выброса, необходимый документу для расчёта балла влияния признака. Диапазон значений: 0-1 (по умолчанию 0.1).
method
(строка) Метод, используемый для обнаружения выбросов. Доступные методы — lof, ldof, distance_kth_nn, distance_knn и ensemble. Значение по умолчанию — ensemble, что означает, что для обнаружения выбросов используется ансамбль различных методов, нормализуются и объединяются их индивидуальные баллы выбросов для получения общего балла выброса.
n_neighbors
(целое число) Определяет количество ближайших соседей, используемых каждым методом обнаружения выбросов для расчёта балла выброса. Если значение не задано, для разных членов ансамбля используются разные значения. Это поведение по умолчанию способствует повышению разнообразия в ансамбле; изменять его следует только в том случае, если вы уверены, что выбранное значение подходит для набора данных.
outlier_fraction
(число с плавающей точкой) Доля набора данных, предполагаемая как выбросовая до начала обнаружения выбросов. Например, 0,05 означает, что предполагается, что 5% значений являются реальными выбросами, а 95% — инлайнерами.
standardization_enabled
(логическое значение) Если true, перед вычислением баллов выбросов выполняется следующая операция над столбцами: (x_i - mean(x_i)) / sd(x_i). По умолчанию значение true. Дополнительную информацию об этом понятии см. в Википедии.
timestamp
(дата) Отметка времени, когда статистика была сообщена в миллисекундах с начала эпохи.
timing_stats

(объект) Объект, содержащий временную статистику о задании анализа фрейма данных.

Свойство timing_stats
elapsed_time
(целое число) Время выполнения анализа в миллисекундах.
regression_stats

(объект) Объект, содержащий информацию о задании регрессионного анализа.

Свойства regression_stats
hyperparameters

(объект) Объект, содержащий параметры задания регрессионного анализа.

Свойства hyperparameters
alpha
(double) Дополнительный параметр конфигурации. Машинное обучение использует руководство по потерей при построении деревьев, что означает, что деревья решений растут там, где регуляризованная потеря уменьшается наиболее быстро. Этот параметр влияет на расчеты потерь, выступая в качестве множителя глубины дерева. Более высокие значения alpha приводят к более коротким деревьям и более быстрому времени обучения. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Оно должно быть больше или равно нулю.
downsample_factor
(double) Дополнительный параметр конфигурации. Управляет долей данных, используемых для вычисления производных функции потерь для обучения деревьев. Малое значение приводит к использованию небольшой доли данных. Если это значение меньше 1, то обычно точность улучшается. Однако слишком малое значение может привести к плохой сходимости ансамбля, поэтому потребуется больше деревьев. Дополнительную информацию о сжатии см. в этой статье Википедии. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Оно должно быть больше нуля и меньше или равно 1.
eta
(double) Дополнительный параметр конфигурации. Сжатие, применяемое к весам. Более низкие значения приводят к более крупным лесам, у которых лучше обобщающая ошибка. Однако более крупные леса приводят к более медленному обучению. Дополнительную информацию о сжатии см. в этой статье Википедии. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Оно должно быть от 0.001 до 1.
eta_growth_rate_per_tree
(double) Дополнительный параметр конфигурации. Указывает скорость увеличения eta для каждого нового дерева, добавляемого в лес. Например, скорость 1.05 увеличивает eta на 5% для каждого дополнительного дерева. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Оно должно быть между 0.5 и 2.
feature_bag_fraction
(double) Дополнительный параметр конфигурации. Определяет долю признаков, которые будут использоваться при выборе случайной выборки для каждого кандидата на разделение. По умолчанию это значение вычисляется во время оптимизации гиперпараметров.
gamma
(double) Дополнительный параметр конфигурации. Параметр регуляризации для предотвращения переобучения на обучающей выборке. Умножает линейную штрафную санкцию, связанную с размером отдельных деревьев в лесу. Высокое значение gamma приводит к тому, что обучение предпочитает маленькие деревья. Малое значение gamma приводит к более крупным отдельным деревьям и более медленному обучению. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Оно должно быть неотрицательным.
lambda
(double) Дополнительный параметр конфигурации. Параметр регуляризации для предотвращения переобучения на обучающей выборке. Умножает член регуляризации L2, который применяется к весам листьев отдельных деревьев в лесу. Высокое значение lambda приводит к тому, что обучение отдает предпочтение небольшим весам листьев. Это поведение делает функцию прогнозирования более гладкой, но может привести к тому, что она не сможет уловить существенные взаимосвязи между признаками и зависимой переменной. Малое значение lambda приводит к более крупным отдельным деревьям и более медленному обучению. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Оно должно быть неотрицательным.
max_attempts_to_add_tree
(целое число) Если алгоритм не может определить нетривиальное дерево (более одного листа), этот параметр определяет, сколько таких последовательных ошибок допускается. После того, как число попыток превысит порог, обучение леса прекращается.
max_optimization_rounds_per_hyperparameter
(целое число) Дополнительный параметр конфигурации. Множитель, отвечающий за определение максимального количества шагов оптимизации гиперпараметров в процедуре байесовской оптимизации. Максимальное количество шагов определяется на основе количества неопределенных гиперпараметров и максимального количества раундов оптимизации на каждый гиперпараметр. По умолчанию это значение вычисляется во время оптимизации гиперпараметров.
max_trees
(целое число) Максимальное количество деревьев решений в лесу. Максимальное значение равно 2000. По умолчанию это значение вычисляется во время оптимизации гиперпараметров.
num_folds
(целое число) Максимальное количество слоев для процедуры перекрестной проверки.
num_splits_per_feature
(целое число) Определяет максимальное количество разделений для каждого признака, которые могут произойти в дереве решений при обучении дерева.
soft_tree_depth_limit
(double) Дополнительный параметр конфигурации. Машинное обучение использует руководство по потерей при построении деревьев, что означает, что деревья решений растут там, где регуляризованная потеря уменьшается наиболее быстро. Этот мягкий предел совместно с soft_tree_depth_tolerance накладывает штраф на деревья, превышающие указанную глубину; регуляризованная потеря быстро увеличивается за пределами этой глубины. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Оно должно быть больше или равно 0.
soft_tree_depth_tolerance
(double) Дополнительный параметр конфигурации. Этот параметр управляет скоростью увеличения регуляризованной потери, когда глубина дерева превышает soft_tree_depth_limit. По умолчанию это значение вычисляется во время оптимизации гиперпараметров. Оно должно быть больше или равно 0,01.
iteration
(целое число) Количество итераций анализа.
timestamp
(дата) Отметка времени, когда статистика была сообщена в миллисекундах с начала эпохи.
timing_stats

(объект) Объект, содержащий статистику времени о задании анализа фрейма данных.

Свойства timing_stats
elapsed_time
(целое число) Время выполнения анализа в миллисекундах.
iteration_time
(целое число) Время выполнения последней итерации анализа в миллисекундах.
validation_loss

(объект) Объект, содержащий информацию о валидационной потере.

Свойства validation_loss
fold_values
(массив строк) Значения валидационной потери для каждого добавленного дерева решений во время процедуры роста леса.
loss_type
(строка) Тип метрики потерь. Например, binomial_logistic.
assignment_explanation
(строка) Только для запуска заданий, содержит сообщения, относящиеся к выбору узла для запуска задания.
data_counts

(object) Объект, предоставляющий подсчеты количества пропущенных, используемых при обучении или доступных для тестирования документов.

Свойства data_counts
skipped_docs_count
(integer) Количество документов, пропущенных во время анализа, так как они содержали недопустимые значения. Например, обнаружение выбросов не поддерживает пропущенные поля, поэтому пропускает документы с пропущенными полями. Аналогично, все типы анализа пропускают документы, содержащие массивы с более чем одним элементом.
test_docs_count
(integer) Количество документов, не используемых для обучения модели и которые могут быть использованы для тестирования.
training_docs_count
(integer) Количество документов, используемых для обучения модели.
id
(string) Уникальный идентификатор задания анализа фрейма данных.
memory_usage

(Необязательный, object) Объект, описывающий использование памяти аналитикой. Он присутствует только после запуска задания и отчета об использовании памяти.

Свойства memory_usage
memory_reestimate_bytes
(long) Это значение присутствует, когда status является hard_limit, и это новая оценка необходимого объёма памяти для задания.
peak_usage_bytes
(long) Количество байтов, используемых в пиковой нагрузке по памяти.
status

(string) Статус использования памяти. Может принимать одно из следующих значений:

  • ok: использование оставалось ниже лимита.
  • hard_limit: использование превысило установленный лимит памяти.
timestamp
(date) Отметка времени, когда было вычислено использование памяти.
node

(object) Содержит свойства узла, на котором выполняется задание. Эта информация доступна только для выполняемых заданий.

Свойства node
attributes
(object) Список атрибутов узла, таких как параметры ml.machine_memory или ml.max_open_jobs.
ephemeral_id
(string) Временный идентификатор узла.
id
(string) Уникальный идентификатор узла.
name
(string) Имя узла.
transport_address
(string) Хост и порт, где принимаются транспортные HTTP-соединения.
progress

(array) Отчет о ходе выполнения задания анализа фрейма данных по фазам.

Свойства объектов фазы
phase

(string) Определяет фазу выполнения задания анализа фрейма данных. Возможные фазы:

  • reindexing,
  • loading_data,
  • computing_outliers (только для обнаружения выбросов),
  • feature_selection (только для регрессии и классификации),
  • coarse_parameter_search (только для регрессии и классификации),
  • fine_tuning_parameters (только для регрессии и классификации),
  • final_training (только для регрессии и классификации),
  • writing_results,
  • inference (только для регрессии и классификации).

    Дополнительную информацию о различных фазах см. в Как работает задание анализа фрейма данных.

progress_percent
(integer) Процент выполнения задания анализа фрейма данных.
state
(string) Статус задания анализа фрейма данных, который может быть одним из следующих значений: failed, started, starting,stopping, stopped.

Коды ответов

404 (Отсутствующие ресурсы)
Если allow_no_match является false, этот код указывает на то, что ресурсы, соответствующие запросу, отсутствуют или есть только частичные соответствия.

Примеры

Следующий API извлекает информацию об использовании для примера задания анализа фрейма данных для обнаружения выбросов:

resp = client.ml.get_data_frame_analytics_stats(
    id="weblog-outliers",
)
print(resp)
response = client.ml.get_data_frame_analytics_stats(
  id: 'weblog-outliers'
)
puts response
const response = await client.ml.getDataFrameAnalyticsStats({
  id: "weblog-outliers",
});
console.log(response);
GET _ml/data_frame/analytics/weblog-outliers/_stats
{
  "count" : 1,
  "data_frame_analytics" : [
    {
      "id" : "weblog-outliers",
      "state" : "stopped",
      "progress" : [
        {
          "phase" : "reindexing",
          "progress_percent" : 100
        },
        {
          "phase" : "loading_data",
          "progress_percent" : 100
        },
        {
          "phase" : "computing_outliers",
          "progress_percent" : 100
        },
        {
          "phase" : "writing_results",
          "progress_percent" : 100
        }
      ],
      "data_counts" : {
        "training_docs_count" : 1001,
        "test_docs_count" : 0,
        "skipped_docs_count" : 0
      },
      "memory_usage" : {
        "timestamp" : 1626264770206,
        "peak_usage_bytes" : 328011,
        "status" : "ok"
      },
      "analysis_stats" : {
        "outlier_detection_stats" : {
          "timestamp" : 1626264770206,
          "parameters" : {
            "n_neighbors" : 0,
            "method" : "ensemble",
            "compute_feature_influence" : true,
            "feature_influence_threshold" : 0.1,
            "outlier_fraction" : 0.05,
            "standardization_enabled" : true
          },
          "timing_stats" : {
            "elapsed_time" : 32
          }
        }
      }
    }
  ]
}

© 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/8.17/get-dfanalytics-stats.html

Spec-Zone.ru

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