Проектирование функций и обслуживание
На этой странице рассматриваются возможности проектирования функций и обслуживания рабочих областей, которые включены для CatalogUnity. Если ваша рабочая область не включена для Unity Catalog, см. хранилище функций рабочей области (устаревшая версия).
Зачем использовать Databricks в качестве хранилища функций?
С помощью платформы Databricks Data Intelligence весь рабочий процесс обучения модели выполняется на одной платформе:
- Конвейеры данных, которые принимают необработанные данные, создают признаки tables, обучают модели и выполняют пакетное прогнозирование. При обучении и регистрации модели с помощью проектирования компонентов в Unity Catalogмодель упаковается с метаданными компонентов. При использовании модели для пакетной оценки или вывода через Интернет она автоматически извлекает признак values. Вызывающий не должен знать о них или включать логику для поиска или использования join функций для оценки новых данных.
- Модели и функции, обслуживающие конечные точки, доступные с одним щелчком мыши и предоставляющие миллисекунд задержки.
- Мониторинг данных и моделей.
Кроме того, платформа предоставляет следующие возможности:
- Обнаружение функций. Вы можете просматривать и искать функции в пользовательском интерфейсе Databricks.
- Управление. Функция tables, функции и модели управляются Unity Catalog. При обучении модели он наследует разрешения от данных, на которые он был обучен.
- Происхождение данных. При создании компонента table в Azure Databricks источники данных, используемые для создания функции table, сохраняются и доступны. Для каждой функции в функции tableможно также получить доступ к моделям, записным книжкам, заданиям и конечным точкам, которые используют функцию.
- Доступ между рабочими областями. Функция tables, а также функции и модели автоматически доступны в любом пространстве, имеющем доступ к catalog.
Требования
- Рабочая среда должна быть включена для Unity Catalog.
- Для проектирования компонентов в Unity Catalog требуется Databricks Runtime 13.3 LTS или более поздней версии.
Если ваша рабочая область не соответствует этим требованиям, см. о том, как использовать устаревшее хранилище компонентов рабочей области.
Как работает проектирование функций в Databricks?
Типичный рабочий процесс машинного обучения с помощью инженерии функций в Databricks следует этому пути:
- Напишите код для преобразования необработанных данных в признаки и создания объекта DataFrame Spark, содержащего нужные признаки.
- Создать Delta table в Unity Catalog. Любой table Delta с первичным ключом автоматически является функцией table.
- Обучение модели и ведение журнала ее результатов с использованием функции table. При этом модель сохраняет спецификации признаков, используемых для обучения. Если модель используется для вывода, она автоматически присоединяет функции из соответствующего компонента tables.
- Зарегистрируйте модель в реестре моделей.
Эту модель теперь можно использовать для создания прогнозов по новым данным. В вариантах использования с пакетной обработакой модель автоматически извлекает необходимые признаки из Хранилища признаков.
Для вариантов использования в режиме реального времени опубликуйте функции в онлайн-table. Сторонние интернет-магазины также поддерживаются. См . сторонние интернет-магазины.
Во время вывода модель считывает предварительно вычисляемые функции из интернет-магазина и присоединяет их к данным, предоставленным в клиентском запросе к конечной точке обслуживания модели.
Начало использования инженерии функций — примеры записных книжек
Чтобы начать с get, попробуйте использовать эти примеры блокнотов. Базовые шаги в записной книжке проводят вас через создание признака table, его применение для обучения модели и затем выполнение пакетного расчета с использованием автоматического поиска признаков. Он также содержит сведения о пользовательском интерфейсе проектирования функций и показывает, как его можно использовать для поиска функций и понимания того, как создаются и используются функции.
Базовая разработка компонентов в Unity Catalog пример записной книжки
Пример записной книжки для такси иллюстрирует процесс создания функций, их обновления и использования для обучения модели и пакетного вывода.
Пример записной книжки для разработки функций в Unity Catalog такси
Поддерживаемые типы данных
Проектирование функций в Unity Catalog и устаревшее хранилище компонентов рабочей области поддерживают следующие типы данных PySpark:
IntegerType
FloatType
BooleanType
StringType
DoubleType
LongType
TimestampType
DateType
ShortType
ArrayType
-
BinaryType
[1] -
DecimalType
[1] -
MapType
[1] -
StructType
[2]
[1] BinaryType
, DecimalType
и MapType
поддерживаются во всех версиях конструктора компонентов в Unity Catalog и в магазине компонентов рабочей области версии 0.3.5 или более поздней версии.
[2] StructType
поддерживается в конструкторе компонентов версии 0.6.0 или более поздней версии.
Перечисленные выше типы данных поддерживают типы функций, которые распространены в приложениях машинного обучения. Например:
- Вы можете хранить сжатые векторы, тензоры и внедрения как
ArrayType
. - Вы можете хранить разреженные векторы, тензоры и внедрения как
MapType
. - Вы можете хранить текст как
StringType
.
При публикации в онлайн-хранилищах признаки ArrayType
и MapType
сохраняются в формате JSON.
В пользовательском интерфейсе хранилища признаков отображаются метаданные для типов данных признаков:
Дополнительные сведения
Для получения дополнительных сведений о рекомендациях скачайте комплексное руководство по хранилищам компонентов.