Что собой представляет построитель моделей?

Завершено

Машинное обучение — это методика, которая использует математику и статистику для обнаружения закономерностей в данных без явного программирования. Model Builder — это графическое расширение Visual Studio для обучения и развертывания пользовательских моделей машинного обучения с помощью ML.NET.

Screenshot that shows the Model Builder Visual Studio extension for M L dot NET.

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

Graph that shows a linear regression model for house price.

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

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

ML.NET — это платформа машинного обучения с открытым кодом для .NET. Вы можете использовать имеющиеся навыки работы с .NET и привычные инструменты, например Visual Studio, для обучения моделей машинного обучения.

Какие типы проблем можно решить с помощью Model Builder?

Model Builder можно использовать для решения множества распространенных задач машинного обучения, таких как:

  • Категоризация данных — упорядочение новостных статей по темам.
  • Прогнозирование числового значения — расчет цены дома.
  • Группирование элементов со схожими характеристиками — сегментация клиентов.
  • Рекомендации — рекомендуемые фильмы.
  • Классификация изображений — пометка изображения на основе его содержимого.
  • Обнаружение объектов на изображении — обнаружение пешеходов и велосипедистов на перекрестке.

Как создавать модели с помощью Model Builder?

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

Обучение

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

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

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

Процесс обучения модели включает следующие этапы:

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

Потребление

После обучения модели машинного обучения можно использовать ее для создания прогнозов. Использование модели — это процесс использования обученной модели машинного обучения для создания прогнозов на основе новых и ранее неизвестных данных. С помощью Model Builder вы можете использовать модели машинного обучения в новых и существующих проектах .NET.

Модели машинного обучения на основе ML.NET сериализуются и сохраняются в файл. Затем файл модели можно загрузить в любое приложение .NET и использовать для создания прогнозов с помощью API ML.NET. Ниже приведены некоторые из этих типов приложений:

  • Веб-API ASP.NET Core
  • Функции Azure
  • Blazor
  • Windows Presentation Foundation (WPF) или Windows Forms (WinForms).
  • Консоль
  • Библиотека классов

В следующем уроке вы узнаете о процессе обучения модели машинного обучения в Model Builder.