WEKA

Материал из MachineLearning.

Перейти к: навигация, поиск

Weka — библиотека алгоритмов машинного обучения для решения задач интеллектуального анализа данных (data mining). Система позволяет непосредственно применять алгоритмы к выборкам данных, а также вызывать алгоритмы из программ на языке Java.

Weka расшифровывается как Waikato Environment for Knowledge Analysis — среда для анализа знаний, разработанная в университете Вайкато (Новая Зеландия).

Содержание

О проекте Weka

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

Пользователями Weka являются исследователи в области машинного обучения и прикладных наук. Она также широко используется в учебных целях.

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

Реализация

Weka — это открытый программный продукт, развиваемый мировым научным сообществом, свободно распространяемый под лицензией GNU GPL.

Программное обеспечение написано целиком на Java. Предполагается, что исходные данные представлены в виде матрицы признаковых описаний объектов. Weka предоставляет доступ к SQL-базам через Java Database Connectivity (JDBC) и в качестве исходных данных может принимать результат SQL-запроса. Возможность обработки множества связанных таблиц не поддерживается, но существуют утилиты для преобразования таких данных в одну таблицу, которую можно загрузить в Weka.

Функциональные возможности

Weka имеет пользовательский интерфейс Explorer, но та же функциональность доступна через компонентный интерфейс Knowledge Flow и из командной строки. Имеется отдельное приложение Experimenter для сравнения предсказательной способности алгоритмов машинного обучения на заданном наборе задач.

Explorer имеет несколько панелей.

  • Панель предобработки Preprocess panel позволяет импортировать данные из базы, CSV файла и т. д., и применять к ним алгоритмы фильтрации, например, переводить количественные признаки в дискретные, удалять объекты и признаки по заданному критерию.
  • Панель классификации Classify panel позволяет применять алгоритмы классификации и регрессии (в Weka они не различаются и называются classifiers) к выборке данных, оценивать предсказательную способность алгоритмов, визуализировать ошибочные предсказания, ROC-кривые, и сам алгоритм, если это возможно (в частности, решающие деревья).
  • Панель поиска ассоциативных правил Associate panel решает задачу выявления всех значимых взаимосвязей между признаками.
  • Панель кластеризации Cluster panel даёт доступ к алгоритму k-средних, EM-алгоритму для смеси гауссианов и другим.
  • Панель отбора признаков Select attributes panel даёт доступ к методам отбора признаков.
  • Панель визуализации Visualize строит матрицу графиков разброса (scatter plot matrix), позволяет выбирать и увеличивать графики, и т. д..

Интеграция

Weka предоставляет прямой доступ к библиотеке реализованных в ней алгоритмов. Это позволяет легко использовать уже реализованные алгоритмы из других систем, реализованных на Java. Например, эти алгоритмы можно вызывать из MATLAB. В частности, интерфейс доступа к алгоритмам Weka из MATLAB реализован в некоторых алгоритмических пакетах машинного обучения таких, как Spider и MATLABArsenal.

Для использования Weka из систем, реализованных на других платформах, возможен вызов алгоритмов через интерфейс командной строки.

История

  • 1993: в университете Вайкато (Новая Зеландия) стартовал проект первой версии Weka, представлявший собой смесь кода на нескольких языках. TCL/TK использовался для программирования пользовательского интерфейса, C для алгоритмов, Make-файлы для описания сценариев вычислительных экспериментов. Система использовалясь, главным образом, для анализа данных в области сельского хозяйства.
  • 1997: принято решение заново переписать Weka на Java, включая реализацию алгоритмов, и сделать систему более универсальной.
  • 2005: проект получил премию SIGKDD Data Mining and Knowledge Discovery Service.
  • 2007-06-25: рейтинг 241 на Sourceforge.net, 907318 загрузок (см. All-time ranking).

Ссылки

См. также

Литература

  1. Ian H. Witten, Eibe Frank, Len Trigg, Mark Hall, Geoffrey Holmes, and Sally Jo Cunningham Weka: Practical Machine Learning Tools and Techniques with Java Implementations // Proceedings of the ICONIP/ANZIIS/ANNES'99 Workshop on Emerging Knowledge Engineering and Connectionist-Based Information Systems. — 1999. — С. 192-196.
Личные инструменты