Материал из РУВИКИ — свободной энциклопедии

Weka

Weka
Логотип программы Weka
Скриншот программы Weka
Окно Weka 3.5.5
Тип машинное обучение
Разработчики Университет Вайкато (Новая Зеландия)
Написана на Java
Операционная система мультиплатформенный
Аппаратная платформа Java Virtual Machine
Последняя версия 3.6.15 (книга), 3.8.3 (стабильная), 3.9 (разработка) (31 октября 2011)
Тестовая версия
Репозиторий git.cms.waikato.ac.nz/we…
Лицензия GPL
Сайт cs.waikato.ac.nz/~ml/wek…
Логотип РУВИКИ.Медиа Медиафайлы на РУВИКИ.Медиа

Weka (Waikato Environment for Knowledge Analysis, в переводе «окружение для анализа знаний Университета Вайкато») — это программная платформа для машинного обучения и интеллектуального анализа данных, написанная на Java и разработанная в Университете Вайкато. Weka распространяется как свободное программное обеспечение под лицензией GNU GPL.

Краткая история

[править | править код]
  • В 1993 году Университет Вайкато (Новая Зеландия) начал разработку оригинальной версии Weka на Tcl/Tk и C.
  • В 1997 году было принято решение переписать код на Java, включив реализации моделирующих алгоритмов[2].
  • В 2005 году Weka получила награду «Data Mining and Knowledge Discovery Service» от SIGKDD (Special Interest Group on Knowledge Discovery and Data Mining)[3].[4]
  • В 2006 году компания Pentaho приобрела эксклюзивную лицензию на использование Weka для бизнес-аналитики, в результате чего был создан компонент data mining и прогнозной аналитики пакета ПО Pentaho Business Intelligence.

Пакет Weka[5] содержит набор инструментов визуализации и алгоритмов для анализа данных и прогнозного моделирования с графическим пользовательским интерфейсом для облегчения доступа к функциям. Оригинальная версия Weka была frontend-программой на Tcl/Tk для моделирования алгоритмов, реализованных на других языках программирования, плюс утилиты для предварительной обработки данных, разработанные на C для проведения экспериментов по машинному обучению. Исходно предназначалась для анализа данных из сельскохозяйственной области[6],[7] однако современная Java-версия (WEKA 3), созданная с 1997 года, применяется в самых разных областях, особенно в образовании и научных исследованиях.

Особенности Weka[править | править код]

Основные особенности Weka:

  • Свободно распространяется под лицензией GNU GPL.
  • Является кросс-платформенным решением, полностью реализованным на Java, что позволяет запускать её практически на любой платформе.
  • Включает широкий спектр методов предварительной обработки данных и моделирования.
  • Оснащена графическим пользовательским интерфейсом, что делает Weka удобной для начинающих пользователей.

Weka поддерживает множество стандартных задач интеллектуального анализа данных, таких как предварительная обработка данных, кластеризация, классификация, регрессия, визуализация и отбор признаков. Все методы Weka предполагают, что данные представлены в виде плоского файла (flat file) или отношения, где каждая запись описывается фиксированным набором атрибутов (обычно числовых или номинальных, однако поддерживаются также и другие типы). Weka также предоставляет доступ к базам данных через соединение JDBC (Java Database Connectivity) и способна обрабатывать результаты SQL-запросов. Прямое выполнение многореляционного анализа данных (multi-relational data mining) не поддерживается, однако существуют утилиты для преобразования набора связанных таблиц в одну таблицу, подходящую для анализа в Weka[8].

Алгоритмы, входящие в Weka, не охватывают задачи по моделированию последовательностей.

Пользовательский интерфейс

[править | править код]
Weka GUI Chooser.png

При запуске приложения появляется диалог выбора интерфейса Weka, предлагающий четыре варианта интерфейса для доступа к функциям программы: Simple CLI, Explorer, Experimenter и Knowledge Flow.

Simple CLI[править | править код]

Simple CLI — простая командная строка. Это консоль, позволяющая работать со всеми возможностями Weka через командную строку.

Explorer[править | править код]

Интерфейс Explorer содержит несколько панелей, предоставляющих доступ к основным компонентам платформы:

  • Панель Preprocess предназначена для импорта данных из базы данных, CSV-файла и их предварительной обработки с помощью фильтров. Фильтры позволяют преобразовывать данные (например, переводить числовые значения в дискретные), а также удалять записи или атрибуты по заданным критериям.
  • Панель Classify предоставляет средства для применения алгоритмов классификации и регрессии к подготовленным множествам данных. Здесь также можно оценить точность итоговой прогнозной модели, в том числе с использованием ROC-кривых, а также визуализировать модель (например, дерево решений).
  • Панель Selected attributes служит для выбора наиболее значимых признаков (атрибутов) в датасете.
  • Панель Visualize отображает матрицу точечных диаграмм, где каждую точку можно выделить и проанализировать с помощью разных инструментов.

Experimenter[править | править код]

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

Knowledge Flow[править | править код]

Knowledge Flow реализует те же функции, что и Explorer, но дополнительно поддерживает принцип «drag and drop» («перетащи и отпусти») и обучение на потоке.

Связанные приложения

[править | править код]

Примечания

[править | править код]
  1. https://www.cs.waikato.ac.nz/~ml/weka/CHANGELOG-3-9-3
  2. Ian H. Witten. 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 192—196 (1999). Дата обращения: 26 июня 2007. Архивировано 25 сентября 2000 года.
  3. Gregory Piatetsky-Shapiro. KDnuggets news on SIGKDD Service Award 2005 (англ.) (28 июня 2005). Дата обращения: 25 июня 2007. Архивировано 19 марта 2006 года.
  4. Overview of SIGKDD Service Award winners (англ.) (2005). Дата обращения: 25 июня 2007. Архивировано 1 июля 2007 года.
  5. Ian H. Witten. Data Mining: Practical machine learning tools and techniques, 2nd Edition (англ.). Morgan Kaufmann, San Francisco (2005). Дата обращения: 25 июня 2007. Архивировано 27 ноября 2020 года.
  6. G. Holmes. Weka: A machine learning workbench (англ.). Proc Second Australia and New Zealand Conference on Intelligent Information Systems, Brisbane, Australia (1994). Дата обращения: 25 июня 2007. Архивировано 25 сентября 2000 года.
  7. S.R. Garner. Applying a machine learning workbench: Experience with agricultural databases (англ.). Proc Machine Learning in Practice Workshop, Machine Learning Conference, Tahoe City, CA, USA 14—21 (1995). Дата обращения: 25 июня 2007. Архивировано 11 июня 2001 года.
  8. P. Reutemann. Proper: A Toolbox for Learning from Relational Data with Propositional and Multi-Instance Learners (англ.). 17th Australian Joint Conference on Artificial Intelligence (AI2004). Springer-Verlag (2004). Дата обращения: 25 июня 2007. Архивировано 22 мая 2010 года.

Общие[править | править код]

Примеры использования[править | править код]

Расширенные версии[править | править код]