Posted on 14. November 2019

Обновления ML.NET Model Builder

ML.NET – это кросс платформенный фреймворк машинного обучения для .NET разработчиков, а Model Builder – это инструмент UI в Visual Studio, который использует Automated Machine Learning (AutoML), который позволяет легко обучать и использовать собственные модели ML.NET. С ML.NET и Model Builder вы можете создавать собственные модели машинного обучения для таких сценариев, как анализ настроений, прогнозирование цен и даже больше без каких-либо знаний  машинного обучения!

 

ML.NET Model Builder

В этом релизе – Model Builder, представлены и две новые интересные функции:

1.       Сценарий классификации изображений – позволяющий обучить Модель, вашим картинкам

2.       “Try your model” – делайте прогнозы на выборке входных данных прямо в интерфейсе

Сценарий классификации изображений

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

 

 

 

Например, у вас есть набор данных, картинки собак и кошек, и вы хотите использовать эти изображения в модели ML.NET, которая классифицирует новые изображения как «dog» или «cat».

Ваш набор данных должен содержать родительскую папку с помеченными подпапками для каждой категории (например, папку с именем Animals, которая содержит две подпапки: одна с именем Dog, которая содержит обучающие изображения собак, и одна с именем Cat, которая содержит тренировочные изображения кошек


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

“Try your model»

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

 

Для примера классификации изображений «собака – кошка» можно ввести изображение и просмотреть результаты на шаге «Evaluate» в Model Builder::

Если у вас есть текстовый сценарий, например, прогнозирование цены на такси, вы также можете ввести пример данных в разделе “Try your model”

Оставьте свой отзыв

Если вы столкнулись с какими-либо проблемами, или считаете, что чего-то не хватает или вам действительно нравиться что-то в ML.NET Model Builder, сообщите нам об этом, создав тему в нашем GitHub repo.

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

 

Начни работу с Model Builder

Вы можете скачать ML.NET Model Builder в VS Marketplace (или в меню расширений Visual Studio).

Узнайте больше в Документах ML.NET или начните работу с этим руководством.

Источник



Posted on 2. September 2017

Cognitive Toolkit Model Evaluation для UWP

Microsoft Cognitive Toolkit (CNTK) 2.1 добавила поддержку оценки образцов для UWP приложений. Это означает, что Вы можете оценивать продуктивность Ваших Windows приложений, опубликованных в Windows Store! В этом блоге Вы узнаете, как можно внедрить AI продуктивность в Ваши приложения.

Цикл целенаправленного интеллекта

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

Microsoft ссылается на устройства с нетривиальной вычислительной продуктивностью, которые находятся ближе к источнику данных (таких как устройства «интеллектуальной грани»). Устройства интеллектуальной грани могут сильно отличаться в зависимости от сценария, как показано на рисунке ниже.

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

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

Пример классификации изображений

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

Код для всей системы доступен в CNTK Github реестре.

В настоящее время поддерживаются только C++ CNTK UWP. Однако образец демонстрирует, как решение UWP на основе C# может выполнять оценку модели, ссылаясь на WinRT библиотеку, которая обертывает UWP-совместимые CNTK компоненты, доступные на NuGet.

packages.config определяет NuGet пакеты, используемые библиотекой, и указывает на UWP-совместимый пакет:

 



  

 

Этот NuGet пакет предоставляет UWP-совместимые CNTK компоненты, включая математическую библиотеку OpenBLAS, для оценки модели на основе ЦП. ImageRecognizerLib предоставляет методы Create и RecognizeObjectAsync, используемые для загрузки предварительно обученной модели CNTK и классифицирует указанный вход изображения как множество байтов.

Остальная часть решения представляет собой несколько простых элементов XAML интерфейса для принятия ввода от пользователя. Вот краткое изображение приложения в действии:


Теперь Вы знаете, как использовать недавно добавленную поддержку UWP в CNTK для обеспечения следующего уровня "интеллекта" для Windows приложений. Команда Microsoft ждет новых результатов и потрясающих приложений, разработанных с помощью этой технологии!