AWS всегда стремилась к «доверить машинное обучение каждому разработчику». AWS запустила Amazon Sagemaker в 2017 году, который помогает разработчикам создавать модели машинного обучения без каких-либо предварительных знаний. На re: Invent 2019 AWS представила новую огромную функцию для SageMaker под названием «SageMaker Studio». Это IDE для всех ваших потребностей в машинном обучении.

Введение в SageMaker Studio:

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

Автопилот SageMaker

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

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

Постановка проблемы:

У нас есть набор данных заголовков и описаний новостей, которые подразделяются на 4 категории: 1-мир, 2-спорт, 3-бизнес, 4-наука / технологии. . Это будет проблема многоклассовой классификации, и мы постараемся решить ее с помощью SageMaker Autopilot. (Я буду использовать подмножество (20% от полного набора данных), чтобы сократить время обучения)

Внимание ⚠: Автопилот не входит в уровень бесплатного пользования, поэтому вам придется его опробовать.

Шаги по сборке с использованием автопилота

  1. Загрузить данные в корзину S3
  2. Создайте эксперимент в SageMaker Studio
  • Предварительная обработка данных
  • Создать модель
  • Развернуть модель

3. Протестируйте развернутую модель.

Загрузить данные в S3

Это очень простой шаг. Мы создадим новую корзину в S3 и сделаем 2 папки «входными» и «выходными». Затем мы загрузим данные обучения во входную папку.

Создайте эксперимент в SageMaker Studio

Если вы еще не создали свою SageMaker Studio, вы можете перейти здесь и создать ее. После создания студии нажмите открыть студию.

Слева выберите список экспериментов SageMaker и выберите создать эксперимент.

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

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

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

После этого просто нажмите «Создать эксперимент».

Теперь мы видим, что этот конвейер создан. Подождите, пока он завершится. После завершения этапа анализа данных вы увидите две новые опции в правом верхнем углу: «Открыть записную книжку для создания кандидатов» и «Открыть записную книжку для исследования данных».

Записная книжка для создания кандидатов: она будет состоять из записной книжки, в которой будет сгенерирован код для преобразования данных, конвейеры учебных заданий SageMaker, автоматическая настройка гиперпараметров, а также код для развертывания лучшей модели. (Откройте этот файл, это действительно интересно)

Записная книжка для исследования данных: открыв ее, вы увидите, что в ней есть все подробности о нашем наборе данных. Он также понял, что наш набор данных предназначен для многоклассовой классификации и имеет 4 класса - 1, 2, 3, 4.

Как только конвейер будет завершен, вы увидите подробную информацию о выполненных заданиях и их точность, указанную как «Цель».

Когда вы увидите этот экран, выберите наиболее эффективное задание и нажмите «Развернуть модель». Введите имя конечной точки и выберите подходящий тип экземпляра в зависимости от ожидаемого использования. Вы можете выбрать сохранение данных запроса и ответа в конечной точке. После этого нажмите кнопку «Развернуть модель».

Слева щелкните список конечных точек SageMaker, как показано на изображении ниже. Сначала вы увидите статус «создание». Подождите, пока он не превратится в InService. Когда это InService, это означает, что ваша модель развернута и готова к тестированию. Вы можете развернуть несколько моделей на нескольких конечных точках, как показано ниже.

Тестовая развернутая модель:

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

import boto3,sys
endpoint_name = ""
SageMaker_client = boto3.Session().client('runtime.sagemaker')
response = SageMaker_client.invoke_endpoint(EndpointName=endpoint_name, ContentType='text/csv', Body="Flintoff, Collingwood lead England to win, Andrew Flintoff hit a typically brutal 99 and took the final wicket Friday as England cruised to a comfortable series-clinching victory over India in the second one-day cricket international at the Oval.")
print(response['Body'])

И вы должны получить результат 2 для вышеуказанного вызова, поскольку новости связаны со спортом.

Что мы узнали?

  • Построение модели машинного обучения на основе табличных данных без предварительного знания с помощью SageMaker Autopilot.
  • Развертывание моделей в хорошо масштабируемой среде.

Если вам понравился этот пост, пожалуйста 👏👏 за него слева, подпишитесь на меня, если вы хотите прочитать больше таких постов!

Twitter: https://twitter.com/IVaibhavMalpani
LinkedIn: https://www.linkedin.com/in/ivaibhavmalpani/

Twitter: https://twitter.com/IVaibhavMalpani
LinkedIn: https://www.linkedin.com/in/ivaibhavmalpani/