В мае 2021 года Google анонсировала Vertex AI, унифицированную платформу машинного обучения, которая помогает быстро развертывать модели с помощью инструментов искусственного интеллекта Google. На первый взгляд, Vertex AI может быть ребрендингом существующей платформы искусственного интеллекта Google, и, похоже, он нацелен на конкурентов, таких как Amazon Sage Maker и Azure ML.

Однако это гораздо больше: оно гарантирует комплексное решение MLOps, в котором отчаянно нуждается бизнес.

Когда я узнал о Vertex AI, я не мог перестать думать о том, как мы можем использовать эту платформу, чтобы устранить барьеры для компаний, которые хотят интегрировать машинное обучение в свою деятельность. Но чтобы понять роль Vertex AI в машинном обучении, нам сначала нужно понять MLOps.

Что такое MLOps?

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

Приспособлений для подготовки моделей много; однако эта модель — это только начало. Ключи к успеху в ИИ:

· Сотрудничество: люди с разными специальностями могут эффективно работать вместе.

· Происхождение. Для любой модели мы можем отслеживать версию кода, версию данных и параметры, которые использовались при создании этой модели.

· Воспроизводимость: как экспериментальные, так и серийные модели можно легко воспроизвести по запросу.

· Непрерывность: мы можем создавать, тестировать и развертывать модели и связанную инфраструктуру автоматически и согласованно.

Что такое вершинный ИИ?

Цель Vertex AI — стать единой платформой для машинного обучения и искусственного интеллекта. Для тех, кто знаком с машинным обучением Azure, это ответ Google на Azure ML.

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

Как Vertex AI вписывается в рабочий процесс машинного обучения:

На рис. 1 видно, что Vertex AI объединяет все устройства, необходимые для выполнения рутинных задач в обычном рабочем процессе машинного обучения. Я кратко рассмотрю каждый шаг и подробно укажу, как Vertex AI помогает вам.

Вы можете использовать Vertex AI для управления следующими этапами рабочего процесса машинного обучения:

1. Поток обучения

· Загрузить набор данных

· Обучение модели машинной грамотности на ваших данных

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

2. Развертывание

· Загружать и хранить обученные модели в Vertex AI

· Добавьте в модель конечную точку, чтобы мы могли обслуживать прогнозы из модели.

· Выполнение запросов к нашим конечным точкам для прогнозирования

· Укажите разделение трафика в вашей конечной точке

· Управляйте своими моделями и конечными точками

Рабочий процесс Vertex AI

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

1) Прием и маркировка данных

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

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

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

2) Обучение

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

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

На рисунке 3 ниже вы можете видеть, что теперь все это интегрировано в Vertex AI, поэтому у вас есть два варианта:

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

· Второй вариант — это индивидуальное обучение, которое требует больше усилий; тем не менее, это дает вам больше контроля. Основополагающий, если вы делаете что-то помимо того, что могут сделать наставники AutoML.

· Третий вариант — AutoML Edge. Для целей, связанных со зрением (изображение и видео), вы также можете подготовить модель, используемую на мобильном телефоне или в локальной среде, недоступной в Интернете.

Конвейеры в Vertex AI — это конвейеры Kubeflow. Для новичков Kubeflow — это система искусственного интеллекта, способная справляться с внезапными скачками спроса на Kubernetes.

Интересно, что с Vertex AI вы получаете Kubeflow, не запуская свой фундамент, что было бы обременительно. Но опять же, большинство согласится, что у KubeFlow есть сомневающиеся.

3) Оценка

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

На рисунке 4 ниже показан пример результатов оценки обучения модели AutoML на наборе данных цветов, полученном ранее. Он показывает, какой тип цветка соответствует нашей модели.

Теперь мы можем добавить больше обучающих изображений цветов в наш набор данных и снова обучить его. Функция Объяснимый ИИ в Vertex AI может помочь лучше понять прогнозы модели и доверять им благодаря надежным и действенным объяснениям, интегрированным в Vertex Prediction, AutoML Tables и Notebooks.

4) Развертывание

На этом шаге, когда ваша модель обучена, вы можете, наконец, развернуть ее. Мы предоставляем модели машинного обучения для прогнозирования модели в конечной точке, где пользователь может использовать прогноз. Мы также можем сделать это в Vertex AI и, таким образом, также предложить варианты для тех моделей, которые не обучены Vertex AI.

Пользовательский интерфейс Vertex AI позволяет развернуть обученную модель на конечной точке несколькими щелчками мыши, как показано ниже на рисунке 5.

Как для AutoML, так и для пользовательских моделей вы можете сделать это, создав разделение трафика во время развертывания, и можете поэкспериментировать с разными моделями. Если вы хотите провести некоторое A/B-тестирование, это будет полезно и позволит точно настроить ресурсы, которые потребуются вашей модели, и воспользоваться преимуществами автоматического масштабирования, указав максимальное количество вычислительных узлов, до которых Vertex AI должен масштабироваться.

5) Мониторинг

Vertex AI Endpoint также предоставляет функции мониторинга прогнозов и запросов в секунду, задержки и процента ошибок прогнозов. Вам потребуются дополнительные усилия для решения проблем с дрейфом концепции/данных. Тем не менее, этого достаточно для обнаружения ошибок в запросах прогнозирования, задержек прогнозирования и достаточной пропускной способности с помощью Vertex AI.

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

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

6) Прогнозы

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

Загрузите свои данные в корзину Cloud Storage и выберите ее для прогнозирования; тип данных будет отличаться в зависимости от модели.

Когда вы развертываете ресурс модели в качестве развернутой модели на конечной точке, вы должны указать тип машины для обслуживания онлайн-прогнозов с использованием модели, обученной пользователем, или табличной модели AutoML. Vertex AI автоматически настраивает типы машин для различных моделей AutoML.

Заключение

Надеюсь, теперь вы поняли, что делает Vertex AI в контексте создания модели ML, от приема данных до их запуска в производство.

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

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

Опытные эксперты и архитекторы MLOps обладают набором навыков для внедрения сервисов Vertex AI, обладая исключительными знаниями и опытом.

Биография автора:

Хассан Шервани — руководитель отдела аналитики данных и науки о данных в Royal Cyber. Он имеет докторскую степень в области информационных технологий и анализа данных и приобрел десятилетний опыт работы в ИТ-индустрии, стартапах и научных кругах. Хассан также получает практический опыт машинного (глубокого) обучения для энергетики, розничной торговли, банковского дела, права, телекоммуникаций и автомобилестроения в рамках своих усилий по профессиональному развитию.