Модель машинного обучения в Microsoft Fabric

Модель машинного обучения — это файл, обученный распознавать определенные типы шаблонов. Вы обучаете модель по набору данных и предоставляете его алгоритму, который используется для рассудка и изучения этого набора данных. После обучения модели его можно использовать для анализа данных, которые он никогда не видел раньше, и делать прогнозы об этом данных.

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

Создание модели машинного обучения

В MLflow модели машинного обучения включают стандартный формат упаковки. Этот формат позволяет использовать эти модели в различных подчиненных инструментах, включая пакетное выводение в Apache Spark. Формат определяет соглашение о сохранении модели в разных "вкусах", которые могут понять различные подчиненные инструменты.

Вы можете напрямую создать модель машинного обучения из пользовательского интерфейса Fabric. API MLflow также может напрямую создать модель.

Чтобы создать модель машинного обучения из пользовательского интерфейса, можно:

  1. Создайте новую рабочую область для обработки и анализа данных или выберите существующую рабочую область для обработки и анализа данных.

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

    Screenshot showing the New drop-down menu.

  3. После создания модели можно приступить к добавлению версий модели для отслеживания метрик и параметров. Регистрация или сохранение экспериментов выполняется в существующей модели.

Вы также можете создать эксперимент машинного обучения непосредственно из интерфейса разработки с mlflow.register_model() ПОМОЩЬЮ API. Если зарегистрированная модель машинного обучения с заданным именем не существует, API создает ее автоматически.

import mlflow

model_uri = "runs:/{}/model-uri-name".format(run.info.run_id)
mv = mlflow.register_model(model_uri, "model-name")

print("Name: {}".format(mv.name))
print("Version: {}".format(mv.version))

Управление версиями в модели машинного обучения

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

Отслеживание моделей машинного обучения

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

Screenshot showing the details screen of a model.

Каждая версия модели содержит следующие сведения:

  • Время создания: дата и время создания модели.
  • Имя запуска: идентификатор выполнения эксперимента, используемый для создания конкретной версии модели.
  • Гиперпараметры: гиперпараметры сохраняются в виде пар "ключ-значение". Ключи и значения являются строками.
  • Метрики: выполнение метрик, сохраненных в виде пар "ключ-значение". Значение является числом.
  • Схема и подпись модели: описание входных и выходных данных модели.
  • Записанные файлы: файлы журнала в любом формате. Например, можно записывать изображения, среды, модели и файлы данных.

Сравнение и фильтрация моделей машинного обучения

Чтобы сравнить и оценить качество версий модели машинного обучения, можно сравнить параметры, метрики и метаданные между выбранными версиями.

Визуальное сравнение моделей машинного обучения

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

Screenshot showing a list of runs for comparison.

Чтобы сравнить запуски, можно:

  1. Выберите существующую модель машинного обучения, содержащую несколько версий.
  2. Выберите вкладку "Вид" и перейдите к представлению списка моделей. Вы также можете выбрать параметр просмотра списка моделей непосредственно в представлении сведений.
  3. Столбцы в таблице можно настроить. Разверните область "Настройка столбцов". Оттуда можно выбрать свойства, метрики и гиперпараметры, которые вы хотите просмотреть.
  4. Наконец, можно выбрать несколько версий, чтобы сравнить результаты в области сравнения метрик. На этой панели можно настроить диаграммы с изменениями заголовка диаграммы, типа визуализации, оси X, оси Y и т. д.

Сравнение моделей машинного обучения с помощью API MLflow

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

from pprint import pprint

client = MlflowClient()
for rm in client.list_registered_models():
    pprint(dict(rm), indent=4)

Применение моделей машинного обучения

После обучения модели в наборе данных можно применить эту модель к данным, которые он никогда не видел для создания прогнозов. Мы называем эту модель методом оценки или вывода. Дополнительные сведения о оценке модели Microsoft Fabric см. в следующем разделе.