Azure Machine Learning как развитие технологий интеллектуального анализа данных

Последнее обновление: 09.12.2015

Мы долго ждали развития технологии интеллектуального анализа данных (SSAS Data Mining) и наконец то дождались! 18 февраля 2015 года на конференции «Strata + Hadoop World» было объявлено о доступности официальной версии технологии Azure ML (Machine Learning). В контексте объявленной там же доступности технологии Storm на базе HDInsight это говорит о продолжении активного инвестирования компанией Майкрософт в технологии извлечения знаний из «больших данных».

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

В дополнение к стандартным алгоритмам, можно использовать Machine Learning Marketplace для поиска программных интерфейсов (API) и готовых сервисов, таких как движок рекомендаций, обнаружение аномалий и прогнозирование, с целью повышения скорости внедрения.

Преимущества Azure ML:

  1. Уменьшение сложности использования: доступность через веб-браузер, наличие среды совместной работы Azure workspace; решение строится в виде графа компонентов; используются лучшие алгоритмы, возможности расширения и поддержки R OSS.
  2. Ускоренное построение экспериментов для создания наилучших моделей: возможности поиска и повторного использования моделей; возможность быстро и одновременно использовать различные алгоритмы машинного обучения и стратегии моделирования.

Как начать работать с Azure ML?

Чтобы быстро начать использовать Azure ML вы можете использовать большое количество готовых примеров экспериментов, подготовленных в Майкрософт. samples Можно также использовать примеры из галереи экспериментов, которая пополняется не только силами Майкрософт, но и участниками сообщества. Примеры экспериментов из галереи также можно публиковать через Twitter и LinkedIn. gallery2 gallery

Процесс работы с Azure ML

Работа с Azure ML состоит из следующих шагов. logic При доступе к данным в качестве источников данных могут использоваться текстовые файлы (CSV, TSV и с другими разделителями), файлы HDFS, таблицы Hive из Hadoop, таблицы SQL Azure, объекты и таблицы в Azure, потоки данных OData и JSON, веб-страницы

Для изучения данных можно использовать набор модулей для извлечения примеров данных (случайные, Top-N, диапазоны, расслоения), модули статистического анализа данных (распределение, корреляция, тестирование гипотез), а также очень полезна возможность визуализации наборов данных.

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

При разработке модели используются алгоритмы классификации (Boosted Decision Trees, Random Forests, Logistic Regression, SVM, Averaged Perceptron, Neural networks), регрессии (Linear Regression, Boosted Decision Trees, Neural networks), рекомендаций (SVD, Non-negative matrix factorization) и кластеризации (K-means). Новый алгоритм «Learning with Counts», позволяет извлекать знания из терабайт информации путем решения задач классификации и регрессии с использованием нейронных сетей и деревьев принятия решений (boosted decision trees). Алгоритмы машинного обучения в Azure ML автоматически масштабируются в HDInsight для Azure в зависимости от обрабатываемых объемов данных. В частности, можно использовать очень мощный статистический скриптовый пакет R, который использует инфраструктуру Hadoop (HDInsight), и язык программирования Python.

Для экспериментирования и оценки работы алгоритмов можно применять несколько методов разделения набора данных (случайное, диапазонное, расслоением), поддерживается «K-fold» кросс-валидация, операционные метрики (Confusion matrix, Precision/Recall, True/False positives/negatives и т.д.) и глобальные метрики (ROC, AUC, Lift chart, RMSE, r-squared и т.д.) experiment Исследователи данных могут публиковать готовые в веб-сервисе Azure ML для последующего потребления пользователями организаций. Преимущества использования веб-сервисе Azure ML:

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

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

Демонстрация

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

Надстройка Azure ML для Excel

Надстройка доступна из меню Excel «Insert — My Add-int — See all…», позволяет подключить опубликованный в виде веб-сервиса эксперимент и делать предсказания на базе наборов данных в Excel.

excel-addin

Заключение

Azure ML гибко встраивается в решения на базе платформы данных Майкрософт в «облачном» или гибридном варианте размещения. В качестве источников данных могут использоваться «облачные» HDInsight, SQL Server (виртуальные машины или база данных), Document DB, Blob-файлы и таблицы, данные из которых можно готовить в нужный формат с помощью Data Factory. Локальные ресурсы (текстовые файлы, таблицы Excel и т.д.) можно хранить в пространстве хранения (Storage Space). Эксперименты машинного обучения готовятся в Azure ML Workspace и публикуются в течение минут в Azure Portal. Далее с использованием портальных решений, таких как Office 365 и Power BI, и приложений результаты анализа можно отображать на различных устройствах.

architecture

Примеры внедрений Azure ML (18 февраля 2015 года): Pier 1, Carnegie Mellon, eSmart Systems, Mendeley и ThyssenKrupp.

Информационные ресурсы по Azure ML:

  1. Документация по Azure ML
  2. Microsoft Azure. Машинное обучение
  3. Machine Learning Blog
  4. Голосование на новые функции Azure ML (страница команды разработки Azure ML, где можно повлиять на приоритеты новых разрабатываемых функций)

Книги

  1. Microsoft Azure Essentials: Azure Machine Learning
  2. Data Science in the Cloud with Azure ML and R

Дополнительные материалы по Azure ML:

  1. Создание простого эксперимента в Azure Machine Learning Studio
  2. Анализ оттока клиентов с помощью машинного обучения Microsoft Azure
  3. New Azure services help more people realize the possibilities of big data
  4. Announcing the General Availability of Azure Machine Learning
  5. Azure Machine Learning Frequently Asked Questions (FAQ)
  6. Microsoft Azure Machine Learning Algorithm Cheat Sheet
  7. Блог Сергея Мастицкого. R: Анализ и визуализация данных 
  8. MSDN: статья Дмитрия Петухова Azure Machine Learning для Data Scientist
  9. MSDN: статья Алексея Романова Анализ тональности текста с помощью Azure Machine Learning
  10. Неизвестный автор: Обработка русских текстов в Azure ML на языках Python и R
  11. 100 лучших видео (вебкастов) про Azure ML
  12. Execute Python machine learning scripts in Azure Machine Learning Studio

Дополнительные компоненты Azure ML:

  1. Azure Machine Learning Excel Add-In

Интеллектуальный анализ ценности акций

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

Предсказательный анализ данных по здравоохранению

Начинаю публиковать сценарии, которые не удалось показать в полном объеме на «Дне платформы Microsoft».

В этой демонстрации показано использование движка интеллектуального анализа данных SQL Server (SSAS Data Mining) и надстройку интеллектуального анализа для Excel с целью анализа некоторых данных статистического сборника Росстата по здравоохранению. Анализируется влияние различных факторов на низкий и высокий уровень смертности в регионах (субъектах РФ).

В настоящее время ведутся работы по расширению представленной модели данных. Буду благодарен за любые идеи по ее расширению.

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

Русские курсы по базам данных и интеллектуальному анализу данных (Data Mining)

Современные технологии построения баз данных на примере MS SQL 2008
Интеллектуальный анализ данных средствами MS SQL Server 2008

Новая виртуальная машина для демонстрации Microsoft BI (All-Up BI Demo Image X)

Несколько дней назад на сайте http://mssalesdemos.com появился архив с виртуальной машиной для демонстрации Microsoft BI.

Виртуальная машина содержит 3 сценария аналитической платформы Microsoft (SQL Server 2008R2, SharePoint 2010 и Office 2010).

  1. Пример для телекоммуникационной компании, который содержит сценарии по уменьшению оттока клиентов из организации, управлению прибылью и прибыльностью клиентов.
  2. Демонстрация самостоятельного анализа данных с использованием PowerPivot для Excel и SharePoint.
  3. Демонстрация SQL Server Analysis Services, показывающая простоту создания и публикации аналитических кубов для многомерного и интеллектуального анализа данных.

Для скачивания архива необходимо зайти на сайт с использованием Live ID и перейти на закладку Downloads.

См.также:

Пользовательские инструменты анализа данных в Microsoft BI 2010

Статья устарела. Более новая версия статьи: Инструменты анализа и визуализации данных в Microsoft BI

В связи с выходом Microsoft SQL Server 2008 R2, Office 2010 и SharePoint 2010 считаю необходимым еще раз перечислить пользовательские инструменты анализа данных в версии Microsoft BI 2010.

В решении Microsoft BI пользователи могут использовать для анализа данных в хранилище и аналитических кубах следующие инструменты (рис. 1):

  • SQL Server 2008 R2 Reporting Services для отображения регламентированной отчетности (программисты могут создавать отчеты в Visual Studio, а офисные пользователи – в ReportBuilder 3.0);
  • Office Visio2010 для создания произвольных схем и привязки к этим схемам данных из хранилища, аналитических кубов и произвольных источников;
  • Microsoft Excel 2010 для создания офисными пользователями произвольных отчетов в электронных таблицах;
  • Data Mining Add-insдля Office 2007 для обнаружения закономерностей в больших объемах данных организации и создания на основании этих закономерностей новых знаний (интеллектуальный анализ данных);
  • SQL Server PowerPivotдля Excel для самостоятельного подключения новых источников данных и создания новых расчетных показателей офисными пользователями;
  • SharePoint 2010 для вывода на портал отчетов из инструментов Microsoft BI;
  • SharePoint 2010 PerformancePoint Servicesдля отображения данных на интерактивных диаграммах и с помощью дерева декомпозиции, а также для отображения систем ключевых показателей эффективности (разработка таких отчетов производится в SharePoint Dashboards Designer).

Инструменты анализа данных в Microsoft BI

Рис. 1. Инструменты Microsoft BI 2010 для анализа данных

Чтобы легче было запомнить отличие этих инструментов, я воспользуюсь аналогией, впервые представленной Aj Mee (рис. 2) и попробую расширить эту аналогию на новые инструменты анализа, появившиеся в 2010 году. Об этой аналогии мне рассказал Олег Лейзеров, за что ему отдельное спасибо!

Рис. 2. Пользовательские инструменты анализа данных Microsoft BI 2008 (аналогия Aj Mee)

Рис. 2. Пользовательские инструменты анализа данных Microsoft BI 2008 (аналогия Aj Mee)Итак, в развитии аналогия выглядит следующим образом (рис. 3).

Рис. 1. Пользовательские инструменты анализа данных Microsoft BI 2010
Рис. 3. Пользовательские инструменты анализа данных Microsoft BI 2010 (на слайде использованы изображения с сайта www.modelsupermarket.com)

Во-первых, Aj Mee сравнивает работу с SQL Server Reporting Services с поездкой в автобусе, так как:

  • вы выбираете маршрут автобуса (определенный отчет);
  • автобус ходит по заданному маршруту (отчет заранее создан);
  • вы выбираете, на какой остановке выйти (параметры отчета).

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

Все эти отчеты могут быть размещены на сайте ReportingServices или портале SharePoint 2010 (в автобусе по заданному маршруту могут ехать множество людей).

Рис. 3. SQL Server 2008 R2 Reporting Services
Рис. 4. SQL Server 2008 R2 Reporting Services

К этой же аналогии я отнесу Microsoft Office Visio 2010 с возможностью отображения на произвольной схеме визуализации данных из базы. При этом, как и в Reporting Services возможна детализация данных по щелчку мыши (drill-down) и размещение схем на портале SharePoint 2010 с помощью Visio Services (Рис. 5).

Рис. 4. SharePoint 2010 Visio Services
Рис. 5. SharePoint 2010 Visio Services

Следующая аналогия Aj Mee посвящена работе с Excel и Excel Services, которая похожа на вождение автомобиля, так как:

  • вы сами должны уметь водить автомобиль (строить отчет с помощью PivotTable);
  • вы можете выбрать альтернативные дороги (переходы между измерениями куба, настройки фильтров), чтобы попасть в точку назначения (получить требуемый отчет);
  • вы также можете посадить в автомобиль друзей (опубликовать отчет на SharePoint с помощью Excel Services — рис. 6).

Рис. 5. SharePoint 2010 Excel Services
Рис. 6. SharePoint 2010 Excel Services

Последняя аналогия Aj Mee – работа с PerformancePoint Server (сейчас – SharePoint 2010 PerformancePoint Services). Работу с этим компонентом он сравнивает с ездой на вездеходе в том смысле, что не обязательно пользоваться дорогами (путями детализации данных, определенными в иерархиях SSAS), можно свернуть на другую дорогу не только в точке пересечения с ней, но и можно доехать до нее по бездорожью. В данном случае имеется в виду возможность детализации данных (drill-through), когда мы выбираем определенное значение и детализируем его по определенному уровню или атрибуту произвольного измерения.

Рис. 6. SharePoint 2010 PerformancePoint Services
Рис. 7. SharePoint 2010 PerformancePoint Services

Наиболее интересным нововведением SharePoint Service в SharePoint 2010, в котором также используется механизм детализации сумм по измерениям (drill through в терминологии Microsoft), является интерактивный компонент «Дерево приятия решений» (Decision Tree), реализованный с помощью технологии Silverlight (рис. 8).

Рис. 7. SharePoint 2010 PerformancePoint Services Decomposition Tree
Рис. 8. SharePoint 2010 PerformancePoint Services Decomposition Tree

Итак, что же добавилось нового в Microsoft BI 2010?

Во-первых, это PowerPivot для Excel и, соответственно, PowerPivot для SharePoint. Этот компонент, продолжая приведенные аналогии, я бы сравнил с автомобилем Фантомаса. Если вы помните фильм, этот автомобиль мог превратиться в самолет и доставить пассажира в точку назначения по воздуху. То есть не нужно использовать дороги (построение дороги можно сравнить с проектом внедрения традиционного BI-решения с использованием хранилищ данных). Можно оперативно переправиться в нужную точку (оперативно добавить в анализ данных из произвольных источников и получить требуемый отчет).

Рис. 8. PowerPivot для Excel
Рис. 9. PowerPivot для Excel

Аналогично, можно перевезти на этом автомобиле пассажиров (разместить отчет PowerPivot на SharePoint — рис. 10).

Рис. 9. PowerPivot для SharePoint
Рис. 10. PowerPivot для SharePoint

Также не стоит забывать о таком инструменте как Надстройки интеллектуального анализа данных для Excel (Data Mining Add-ins for Excel). И в нашей аналогии это будет машина времени из первой части фильма «Назад в будущее», так как она позволяет переместиться в будущее (обнаруживать закономерности в имеющихся данных и предсказывать будущее на основании этих закономерностей).

Рис. 10. Надстройки интеллектуального анализа данных для Excel (Data Mining Add-ins for Excel)
Рис. 11. Надстройки интеллектуального анализа данных для Excel (Data Mining Add-ins for Excel)

Демонстрация. Обзор пользовательских инструментов анализа данных

Замечание об авторских правах. В записи блога использованы изображения моделей автомобилей с сайта www.modelsupermarket.com.

Дополнительные ссылки:

Скрипт русификации AdventureWorksDW и русифицированный пример данных для Data Mining Add-ins for Office 2007

Долгожданный скрипт русификации базы AdventureWorksDW можно скачать по адресу http://RussianAW.codeplex.com.Описание русифицированных колонок и значений есть в документации на сайте проекта. Скрипт будет дополняться – пока это только альфа-версия.

Соответственно, русифицированный пример таблицы Excel для Data Mining Add-ins for Office 2007 можно скачать по адресу http://RussianDMAddins.codeplex.com.

Комментарии и дополнения приветствуются.