Поделиться через


Проектирование функций и обслуживание

На этой странице рассматриваются возможности проектирования функций и обслуживания рабочих областей, которые включены для каталога Unity. Если параметры вашего рабочего пространства не активированы для Unity Catalog, см. Хранилище функций рабочего пространства (устаревшая версия).

Зачем использовать Databricks в качестве хранилища функций?

С помощью платформы Databricks Data Intelligence весь рабочий процесс обучения модели выполняется на одной платформе:

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

Кроме того, платформа предоставляет следующие возможности:

  • Обнаружение функций. Вы можете просматривать и искать функции в пользовательском интерфейсе Databricks.
  • Управление. Таблицы признаков, функции и модели управляются каталогом Unity. При обучении модели он наследует разрешения от данных, на которые он был обучен.
  • Происхождение данных. При создании таблицы функций в Azure Databricks источники данных, используемые для создания таблицы компонентов, сохраняются и доступны. Для каждой функции в таблице компонентов можно также получить доступ к моделям, записным книжкам, заданиям и конечным точкам, которые используют эту функцию.
  • Доступ между рабочими областями. Функции, модели и таблицы признаков автоматически доступны в любой рабочей области, имеющей доступ к каталогу.

Требования

  • Рабочая область должна быть активирована для каталога Unity.
  • Для разработки функций в каталоге Unity требуется Databricks Runtime 13.3 LTS или более поздней версии.

Если ваша рабочая область не соответствует этим требованиям, см. о том, как использовать устаревшее хранилище компонентов рабочей области.

Как работает проектирование функций в Databricks?

Типичный рабочий процесс машинного обучения с помощью инженерии функций в Databricks следует этому пути:

  1. Напишите код для преобразования необработанных данных в признаки и создания объекта DataFrame Spark, содержащего нужные признаки.
  2. Создание таблицы Delta в каталоге Unity. Любая таблица Delta с первичным ключом автоматически является таблицей компонентов.
  3. Обучите модель и ведите её журнальный учёт, используя таблицу признаков. При этом модель сохраняет спецификации признаков, используемых для обучения. Если модель используется для вывода, она автоматически присоединяет функции из соответствующих таблиц компонентов.
  4. Зарегистрируйте модель в реестре моделей.

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

Рабочий процесс Хранилища признаков для вариантов использования с пакетным машинным обучением.

Для вариантов использования в режиме реального времени опубликуйте функции в интерактивной таблице. Сторонние интернет-магазины также поддерживаются. См . сторонние интернет-магазины.

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

Поток Хранилища признаков для обслуживаемых моделей машинного обучения.

Начало использования инженерии функций — примеры записных книжек

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

Базовая инженерия компонентов в примерах записной книжки каталога Unity

Получите записную книжку

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

Пример записной книжки "Проектирование компонентов в каталоге Unity"

Получите записную книжку

Поддерживаемые типы данных

Проектирование компонентов в каталоге Unity и устаревшее хранилище компонентов рабочей области поддерживают следующие типы данных PySpark:

  • IntegerType
  • FloatType
  • BooleanType
  • StringType
  • DoubleType
  • LongType
  • TimestampType
  • DateType
  • ShortType
  • ArrayType
  • BinaryType [1]
  • DecimalType [1]
  • MapType [1]
  • StructType [2]

[1] BinaryType, DecimalTypeи MapType поддерживаются во всех версиях конструктора компонентов в каталоге Unity и в магазине компонентов рабочей области версии 0.3.5 или более поздней версии. [2] StructType поддерживается в конструкторе компонентов версии 0.6.0 или более поздней версии.

Перечисленные выше типы данных поддерживают типы функций, которые распространены в приложениях машинного обучения. Например:

  • Вы можете хранить сжатые векторы, тензоры и внедрения как ArrayType.
  • Вы можете хранить разреженные векторы, тензоры и внедрения как MapType.
  • Вы можете хранить текст как StringType.

При публикации в онлайн-хранилищах признаки ArrayType и MapType сохраняются в формате JSON.

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

Пример сложных типов данных

Дополнительные сведения

Для получения дополнительных сведений о рекомендациях скачайте комплексное руководство по хранилищам компонентов.