WEKA

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

(Различия между версиями)
Перейти к: навигация, поиск
(дополнение)
м
Строка 34: Строка 34:
== Интеграция ==
== Интеграция ==
-
''Weka'' предоставляет прямой доступ к боблиотеке реализованных в ней алгоритмов.
+
''Weka'' предоставляет прямой доступ к библиотеке реализованных в ней алгоритмов.
Это позволяет легко использовать уже реализованные алгоритмы из других систем, реализованных на Java.
Это позволяет легко использовать уже реализованные алгоритмы из других систем, реализованных на Java.
Например, эти алгоритмы можно вызывать из [[MATLAB]].
Например, эти алгоритмы можно вызывать из [[MATLAB]].

Версия 21:32, 19 июня 2008

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.
Личные инструменты