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

→ Если вы работаете над проектом, в котором используются функции машинного обучения в вашем приложении, или вам просто интересно узнать о службе машинного обучения Azure, то это для вас.

→ Будучи JS-специалистом, пытаюсь интегрировать различные области ИТ в приложения.

Зачем использовать эту услугу?

→ Автоматически создавайте модели машинного обучения со скоростью и масштабом.

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

→ Если вы разработчик и хотите без проблем использовать машинное обучение в приложениях, сервис Automated ML для вас.

Почему эта услуга востребована?

→ Если вы работаете над проектом, в котором много отсканированных документов.

→ Ручное использование данных более 1000 документов может привести к ошибкам или потребовать много времени и усилий.

→ Использование автоматизированного машинного обучения Azure — ИТ-специалисты, не обладающие знаниями в области машинного обучения, могут сделать это быстро.

Кто пользуется этим сервисом?

Демонстрация Azure — автоматизированное машинное обучение:

→ Прежде чем начать, мы хотим, чтобы вы знали две вещи:

а. Автоматизированное машинное обучение. Здесь мы можем создавать собственные модели с минимальными знаниями в области машинного обучения.

б. Azure ML Designer — обеспечивает разработку без кода и позволяет перетаскивать графы для создания конвейера машинного обучения для использования автоматизированного машинного обучения.

→ Теперь перейдем к машинному обучению Azure. Откройте портал Azure.

→ Если у вас нет облачной подписки Azure, рекомендуем вам следовать приведенным ниже снимкам экрана, подписаться на бесплатную подписку Azure или посмотреть видео.

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

→ Теперь внутри портала ML первое, что мы делаем, — это создаем рабочую область (скажем, ml-happylearnings786).

→ Хорошей практикой является создание конкретной среды (скажем, производство: ml-happylearnings786, разработка: dev-ml-happylearnings786 и т. д.).

ПРИМЕЧАНИЕ:

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

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

→ Нажмите «Создать новую» и введите имя группы ресурсов (скажем, machine-learning-rg). Нажмите кнопку ОК.

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

→ Нажмите Обзор + Создать, а затем несколько кнопок, как показано ниже:

→ Нажмите «Создать», как только проверка будет пройдена.

→ Щелкните Перейти к ресурсу после завершения развертывания.

→ Теперь мы внутри ML Workspace.

Автоматизированное машинное обучение — набор данных и вычисления:

→ Мы выполнили нашу первую задачу — Создание ML Workspace

→ Теперь есть несколько частей этого рабочего пространства — нам нужно знать:

а. Compute — для его обработки нам нужно создать один Compute

б. Набор данных — данные, которые мы будем передавать в ML

→ Не волнуйтесь, скоро мы увидим в режиме реального времени.

→ Они будут использоваться все вместе

→ Если вы находитесь на домашней странице Azure, выполните поиск Машинное обучение

→ Здесь мы увидим наш недавно созданный ML. Нажмите на нее.

→ Нажмите «Запустить студию».

→ Мы можем пропустить тур. Нажмите кнопку «Отмена».

→ Теперь на лендинге ML studio будут:

ШАГ 1. Создание вычислений

→ Теперь первый шаг — создать Compute, прежде чем использовать что-либо, связанное со студией ML.

→ Существует четыре различных типа вычислений:

а. Вычислительные экземпляры

б. Кластеры Kubernetes

в. Подключенные вычисления

б. Вычислительные кластеры: мы будем использовать вычислительные кластеры, поскольку мы можем использовать несколько экземпляров. Нажмите кнопку + Создать.

→ Во всплывающем окне дайте имя всплывающему экрану (скажем, ml-compute). Мы можем изменить настройки по умолчанию и нажать «Далее».

→ Мы просто делаем время простоя на 900 секунд раньше — в основном это означает, что вычисление отключится после 900 секунд простоя. Нажмите кнопку «Создать»

→ Мы успешно выполнили вторую часть: Created Compute

ШАГ 2: Создайте набор данных/данные

→ Второй шаг — создать набор данных.

→ Чтобы использовать ML, нам нужны данные. Нажмите «Данные» в левом проводнике.

→ Нажмите кнопку + Создать, как показано на экране выше.

→ Введите имя данных (скажем, ml_data)

→ Теперь есть разные способы передачи данных в ML — импорт локального файла, из учетной записи хранения или примеры наборов данных Azure Open.

→ Данные — это нечто, т. е. очень конфиденциальное и личное для бизнеса. Если у вас будет возможность использовать ML в разработке приложений, они предоставят нам данные одним из указанных выше способов.

→ На данный момент у Azure есть несколько готовых наборов данных для учащихся, т. е. Open AI Sample Data.

→ Выберите Тип как Табличный из раскрывающегося списка Тип.

→ Нажмите кнопку Далее.

→ Ниже приведены различные способы передачи данных в Azure ML. Выберите Из открытых наборов данных Azure и нажмите Далее.

→ Здесь команда Azure отлично поработала с готовыми примерами наборов данных. Давайте выберем образец диабетика.

→ Это образцы данных, которые можно выбрать. Пусть выбрали «Образец: диабет» и нажмите «Далее».

→ Просмотрите страницу и нажмите «Создать».

→ Нажмите вкладку «Исследовать», чтобы просмотреть данные

→ Мы также можем перейти в раздел профиля и посмотреть метрику.

Пример 1. Столбец "Возраст"
Итак, рассмотрим один показатель: у нас есть много данных в возрастном диапазоне от 25 до 60 лет.

Пример 2: столбец ИМТ

→ Поэтому мы должны проверить каждый столбец и убедиться, что у нас есть соответствующие данные. Мы также видим различную статистику — например: мин., макс., пропущенное количество и т. д.

У нас есть 11 столбцов, из которых:

10 — характеристики (вход)

1 — предсказание (выход)

Другой напр. сделать просто —

Если мы хотим купить машину:

а. Модель автомобиля, автомобильная компания, характеристики автозапчастей — характеристики

б. Цена — lметка

→ Наконец, наша третья часть готова — данные, т. е. набор данных/данные, вычисления, рабочая область машинного обучения

ШАГ 3: Создайте модель машинного обучения

→ Нажмите «Автоматическое машинное обучение» в левом проводнике.

→ Мы должны создать новое задание Automated ML. Нажмите кнопку ниже.

→ Мы уже создали набор данных ранее. Оно придет сюда. Выберите его. Нажмите "Далее.

ПРИМЕЧАНИЕ:

Эксперимент. Процесс создания модели в Azure ML называется экспериментом.

→ Мы должны ввести имя (скажем, автоматизированный мл-диабет), имя, данное на основе имени данных.

→ В следующем раскрывающемся списке мы должны выбрать целевой столбец (например, метки или вывод)

ПРИМЕЧАНИЕ. Один столбец будет выбран как метка, а все остальные по умолчанию выбраны как функции (т.е. входные данные).

Нажмите на столбец «Цель» — здесь появятся все столбцы из набора данных. Выберите Y в качестве метки (o/p)

→ Щелкните столбец «Цель» — здесь появятся все столбцы из набора данных. Выберите Y в качестве метки

Ссылка на набор данных по диабету:



→ Теперь на следующем шаге мы должны создать вычисление — т. е. кластерное вычисление (т. е. задача части 2, т. е. мл-вычисление)

→ Мы замечаем, что наш компьютер выбран правильно. Нажмите кнопку «Далее».

→ Теперь на этом шаге мы должны выбрать задачу и ввести:

Классификация: o/p — логическое значение

Регрессия: o/p — целые числа

→ Наш вывод — это данные из таблицы, т. е. числовые, поэтому выбираем регрессию и прокручиваем вниз

→ Теперь нам нужно выполнить две дополнительные настройки:

а. Посмотреть дополнительную конфигурацию:

→ Щелкните ссылку ниже на той же странице.

→ Azure запрашивает некоторые показатели (это для случая регрессии)

По умолчанию: нормализованная среднеквадратическая ошибка.

→ Мы будем использовать только значение по умолчанию, т.е. нормализованную среднеквадратичную ошибку

→ В конце концов, когда мы запустим конвейер ML, мы выберем регрессию в качестве модели

→ Выходные данные этой модели будут основаны на этих показателях.

→ Azure выбирает лучшие модели. Для нашего случая мы выберем первые четыре модели и заблокируем другие модели, проверив их

→ Причина: Обучение займет больше времени

→ В том же всплывающем окне есть одна конфигурация под названием Exit Criterion.

→ Критерий выхода: Даем время 0,5 часа на остановку прогона.

б. Просмотр настроек функции:

→ Тот, который мы выбираем в качестве целевого столбца, становится — Метка (наш случай Y)

→ Все другие функции по умолчанию, т.е.

→ Здесь мы можем настроить функции

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

→ Мы выберем только значение по умолчанию, давайте нажмем кнопку отмены (т. е. кроме Y, все функции, Y = метка = целевой столбец).

→ Нажмите Далее

→ Теперь выберите настройку по умолчанию, т. е. «Авто», и нажмите кнопку «Готово».

→ Теперь для запуска и завершения требуется некоторое время.

→ Окончательно завершено примерно за 37 минут.

Изучение автоматизированного обучения машинному обучению:

→ Нажмите «Автоматическое машинное обучение» в левом проводнике.

→ Нажмите на созданный экземпляр Run, т.е. sweet_feather_m12y032j

→ Мы видим, что выбрана лучшая модель — имя алгоритма VotingEnsemble.

→ Мы видим статус запуска здесь:

→ Теперь давайте посмотрим на ряд моделей, созданных в ходе этого процесса:

→ Эти модели создаются и оцениваются на основе определенной метрики

т. е. нормализованная среднеквадратичная метрика

Развернуть модель:

→ В нашем случае мы получили VitongEnsemble как лучшую модель из всех созданных моделей.

→ Выберите лучшую модель, предложенную Azure, и нажмите кнопку «Развернуть».

→ В интерфейсе 2023 теперь запрашиваются две опции:

а. Конечная точка в реальном времени — запрашивается почасовая оплата (введено недавно)

б. Веб-сервис — взимается стандартная плата

→ Мы выберем вариант веб-сервиса, так как он имеет стандартную цену.

→ Дайте имя, скажем, развертыванию модели. automate-ml-votingensemble

→ Теперь типом вычислений может быть AKS или экземпляр контейнера Azure. Нажмите Развернуть

→ Теперь развертывание модели запущено и находится в процессе, мы также получаем уведомления от Microsoft.

→ Мы также можем перейти к Endpoints слева и проверить

→ Развертывание модели — в процессе

→ Получаем уведомление об успешном развертывании

→ Мы даже можем тестировать документы, отправляя данные:

{
  "Inputs": {
    "data": [
      {
        "AGE": 48,
        "SEX": 1,
        "BMI": 21.6,
        "BP": 87,
        "S1": 183,
        "S2": 103.2,
        "S3": 70,
        "S4": 3,
        "S5": 3.8918,
        "S6": 69
      }
    ]
  },
  "GlobalParameters": 0.0
}

→ Это столбцы (то есть функции), которые мы предоставили в наборе данных.

→ Теперь мы можем использовать эту модель, передавая данные. Нажмите кнопку «Тест»

→ Теперь предположим, что мы потребляем это программно, у нас есть конечная точка REST для того же. В основном ML использует язык Python, C# или R.

Например. Скрипт Python

import urllib.request
import json
import os
import ssl

def allowSelfSignedHttps(allowed):
    # bypass the server certificate verification on client side
    if allowed and not os.environ.get('PYTHONHTTPSVERIFY', '') and getattr(ssl, '_create_unverified_context', None):
        ssl._create_default_https_context = ssl._create_unverified_context

allowSelfSignedHttps(True) # this line is needed if you use self-signed certificate in your scoring service.

# Request data goes here
# The example below assumes JSON formatting which may be updated
# depending on the format your endpoint expects.
# More information can be found here:
# https://docs.microsoft.com/azure/machine-learning/how-to-deploy-advanced-entry-script
data =  {
  "Inputs": {
    "data": [
      {
        "AGE": 0,
        "SEX": 0,
        "BMI": 0.0,
        "BP": 0.0,
        "S1": 0,
        "S2": 0.0,
        "S3": 0.0,
        "S4": 0.0,
        "S5": 0.0,
        "S6": 0
      }
    ]
  },
  "GlobalParameters": 0.0
}

body = str.encode(json.dumps(data))

url = 'http://739b7ece-b25c-4bc4-8ec6-25588f476693.koreacentral.azurecontainer.io/score'

headers = {'Content-Type':'application/json'}

req = urllib.request.Request(url, body, headers)

try:
    response = urllib.request.urlopen(req)

    result = response.read()
    print(result)
except urllib.error.HTTPError as error:
    print("The request failed with status code: " + str(error.code))

    # Print the headers - they include the requert ID and the timestamp, which are useful for debugging the failure
    print(error.info())
    print(error.read().decode("utf8", 'ignore'))

→ Azure также предоставляет R и C#. Эти три вкладки будут предоставлены.

→ Наш Azure Automate ML готов к использованию Дизайнером

Заключительные мысли:

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

В целом мы разобрались во всех областях сервиса Automate ML. Теперь в следующей статье мы реализуем его в разделе Azure Designer, чтобы создать конвейер машинного обучения.

Это важные и интересные функции Azure AI. После использования в разработке это становится захватывающим.

Спасибо, что дочитали до конца 🙌 . Если вам понравилась эта статья или вы узнали что-то новое, поддержите меня, нажав кнопку Поделиться ниже, чтобы охватить больше людей, и/или подпишитесь на Twitter и подпишитесь на Happy Learnings !! чтобы увидеть некоторые другие советы, статьи и вещи, о которых я узнаю и делюсь там.