5 инструментов Data Mining: сравнительный анализ

В сегодняшнем материале мы представим сравнительный обзор пяти самых популярных инструментов для анализа данных – Python, R, Weka, Knime, RapidMiner.

Краткие описания

Python

Python – в русскоязычной среде попросту «питон» – согласно общему определению представляет собой высокоуровневый язык программирования общего назначения, который ориентирован на повышение производительности и читаемости кода. За годы существования «питон» обзавелся множеством специализированных библиотек. Нас интересуют шесть из них:

  • Pandas – отвечает за обработку данных;
  • Numphy – работает с матрицами;
  • Statsmodels – содержит основные статистические функции и модели;
  • Sklearnи Pybrain – специализируются на алгоритмах машинного обучения;
  • Наконец, Matplotlibотвечает за визуализацию.

Кроме хорошо документированных библиотек, «питон» отличается гибкостью и понятным синтаксисом – благодаря последнему, он приятен в работе. Немаловажно и то, что у Python — огромное сообщество преданных «фанатов», настоящих специалистов своего дела. Так что язык не перестает развиваться.

R

Про R мы подробно говорили в одном из материалов, посвященных инструментам Data Mining. Если вкратце, то появившийся в 1993 году язык R на сегодняшний день является стандартом в области анализа данных.

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

Weka

По сути, Weka – это целая коллекция инструментов и алгоритмов для анализа данных и прогнозирования. Среди плюсов инструмента:

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

RapidMiner, Knime

Широко известные инструменты Knime и RapidMiner похожи и по форме, и по содержанию (хотя первый, в отличие от второго, существует на полностью бесплатной основе) – поэтому мы решили объединить их в одну подкатегорию. Оба инструмента поддерживают множество стандартных задач – касающихся преобразования данных, статистики, машинного обучения и визуализации. Весь процесс анализа данных представляется в виде интерактивного графа – последовательности операторов, при этом пользователю доступны операторы Weka и R.

Сравнительные характеристики

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

  1. Обработка данных

Оброботка данных Python R Weka Knime / RapidMiner
Практические навыки **** ** * *
Возможно ли делать сложные преобразования *** *** * *
Простые преобразование (нормализация, и т.д.) **** **** **** ****
Сумма 11 9 6 6
  1. Визуализация

Визулизация Python R Weka Knime / RapidMiner
Гибкость **** **** ** **
Эстетика ** **** ** **
Сумма 6 8 4 4
  1. Машинное обучение

Машинное обучение Python R Weka Knime / RapidMiner
Количество методов **** **** **** ***
Настройка параметров **** **** ** **
Сумма 8 8 6 5
  1. Представление результатов работы

Представление результатов работы Python R Weka Knime / RapidMiner
Гибкость **** **** * **
2 * Трата времени на настройку хорошего вывода (больше * — меньше времени) * ** **** ***
Сумма 6 8 9 8
  1. Скорость получения предварительных результатов

Скорость получения предварительных результатов Python R Weka Knime / RapidMiner
Затрата времени на написание кода * * **** ****
Быстрый вывод результатов ** *** **** ****
Сумма 3 4 8 8
  1. Наглядность процесса анализа данных

Наглядность процесса анализа данных Python R Weka Knime / RapidMiner
Наглядность * * ** ****
Cумма 1 1 2 4

Итоги

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

Обработка данных Python
Визуализация R, Python
Машинное обучение все, но Python и R предоставляют больше свободы
Представление результатов работы Weka
Быстрое получение предварительных результатов Weka, Knime, RM
Реализация собственных алгоритмов Python, R
Наглядность процесса анализа данных Knime, RM

По результатам анализа очевидно, что Python (1), R (2), Weka (3) «объективно» лучше, чем Knime, Rapid Miner (4, 5):

  1. (1), (2) обладают несравненно большей гибкостью на всех этапах АД;
  2. с помощью (3) можно быстрее осуществлять АД;
  3. (3) предоставляет результаты работы намного детальнее и удобнее;
  4. (4, 5) как, впрочем, и (3) не предоставляют достаточной свободы действий;
  5. кроме низкого порога вхождения и красивой картинки представление процесса АД в виде графа в (4, 5) объективных преимуществ не имеет.

Сравнивая двух «проигравших», можно сделать вывод, что Knime (4) лучше, чем Rapid Miner (5):

  • (4), в отличие от (5), предоставляется на полностью бесплатной основе;
  • при этом возможности (4) и (5) представляются одинаковыми.

Впрочем, ситуация насчет работы с БД и большими данными остается неясной: возможно, в этих случаях Knime и Rapid Miner использовать предпочтительнее.

Резюме

Мы убедились, что не зря Python и R так популярны: сравнительный анализ наглядно показал, что эти инструменты можно считать обязательными. А вот с Weka и Knime все оказалось не так просто: истинные преимущества и недостатки, а также возможности работы можно до конца понять только после продолжительной работы с каждым инструментом.

Добавить комментарий

Ваш e-mail не будет опубликован.

закрыть

Поделиться

Отправить на почту
закрыть

Вход

закрыть

Регистрация

+ =