ELKI - ELKI

Среда для разработки приложений KDD, поддерживаемая индексными структурами
Скриншот программы ELKI 0.4, визуализирующей кластерный анализ ОПТИКА.
Скриншот визуализации ELKI 0.4 ОПТИКА кластерный анализ.
Разработчики)Технический университет Дортмунда; первоначально Мюнхенский университет Людвига-Максимилиана
Стабильный выпуск
0.7.5 / 15 февраля 2019; 21 месяц назад (2019-02-15)
Репозиторий Отредактируйте это в Викиданных
Написано вЯва
Операционная системаМайкрософт Виндоус, Linux, Mac OS
ПлатформаПлатформа Java
ТипСбор данных
ЛицензияAGPL (начиная с версии 0.4.0)
Интернет сайтelki-project.github.io

ELKI (за Среда для DeveLoping KDD-приложений, поддерживаемая Index-Structures) это сбор данных (KDD, открытие знаний в базах данных) программная среда разработан для использования в исследованиях и обучении. Первоначально это было в исследовательском подразделении систем баз данных профессора Ханс-Петер Кригель на Мюнхенский университет Людвига-Максимилиана, Германия, и теперь продолжил Технический университет Дортмунда, Германия. Он направлен на разработку и оценку передовых алгоритмов интеллектуального анализа данных и их взаимодействия с структуры индекса базы данных.

Описание

Фреймворк ELKI написан на Ява и построен на модульной архитектуре. Большинство включенных в настоящее время алгоритмов принадлежат кластеризация, обнаружение выбросов[1] и индексы базы данных. В объектно-ориентированная архитектура позволяет комбинировать произвольные алгоритмы, типы данных, функции расстояния, индексы и меры оценки. Ява своевременный компилятор оптимизирует все комбинации в одинаковой степени, делая результаты сравнительного анализа более сопоставимыми, если они используют большие части кода. При разработке новых алгоритмов или структур индексов существующие компоненты можно легко повторно использовать, а безопасность типа Java обнаруживает множество ошибок программирования во время компиляции.

ELKI использовался в наука о данных например в кластер кашалот коды[2] фонема кластеризация[3] для обнаружения аномалий в космический полет операции,[4] за прокат велосипедов перераспределение[5] и прогнозирование трафика.[6]

Цели

Проект университета разработан для использования в обучение и исследования. Исходный код написан с учетом расширяемости и возможности повторного использования, но также оптимизирован для производительности. Экспериментальный оценка алгоритмов зависит от многих факторов окружающей среды, и детали реализации могут иметь большое влияние на время выполнения.[7] ELKI стремится предоставить общую кодовую базу с сопоставимыми реализациями многих алгоритмов.

Как исследовательский проект, в настоящее время он не предлагает интеграции с бизнес-аналитика приложения или интерфейс к общим системы управления базами данных через SQL. В авторское лево (AGPL ) лицензия также может быть препятствием для интеграции в коммерческие продукты; тем не менее, его можно использовать для оценки алгоритмов перед разработкой собственной реализации коммерческого продукта. Кроме того, применение алгоритмов требует знания об их использовании, параметрах и изучения оригинальной литературы. Аудитория студенты, исследователи, специалисты по данным, и программисты.

Архитектура

ELKI построен на основе база данных -вдохновленное ядро, использующее вертикальное расположение данных, в котором данные хранятся в группах столбцов (аналогично семейства колонн в Базы данных NoSQL ). Это ядро ​​базы данных обеспечивает поиск ближайшего соседа, поиск по диапазону / радиусу и функции запроса расстояния с ускорение индекса для широкого круга меры несходства. Алгоритмы, основанные на таких запросах (например, алгоритм k-ближайшего соседа, фактор локального выброса и DBSCAN ) могут быть легко реализованы и выигрывают от ускорения индекса. Ядро базы данных также обеспечивает быстрые и эффективные с точки зрения памяти коллекции для коллекций объектов и ассоциативных структур, таких как списки ближайших соседей.

ELKI широко использует интерфейсы Java, так что его можно легко расширить во многих местах. Например, пользовательские типы данных, функции расстояния, структуры индексов, алгоритмы, синтаксические анализаторы ввода и модули вывода могут быть добавлены и объединены без изменения существующего кода. Это включает возможность определения пользовательской функции расстояния и использования существующих индексов для ускорения.

ELKI использует сервисный загрузчик архитектура, позволяющая публиковать расширения как отдельные файлы jar.

ELKI использует оптимизированные коллекции для повышения производительности, а не стандартный Java API.[8] Для петель например написаны аналогично Итераторы C ++:

  за (DBIDIter iter = идентификаторы.iter(); iter.действительный(); iter.продвигать()) {    связь.получать(iter);     // Например, получаем указанный объект    idcollection.Добавить(iter); // Например, добавляем ссылку на коллекцию DBID  }

В отличие от типичных итераторов Java (которые могут выполнять итерацию только по объектам), это экономит память, поскольку итератор может внутренне использовать примитивные значения для хранения данных. Сокращенный вывоз мусора улучшает время выполнения. Оптимизированные библиотеки коллекций, такие как GNU Trove3, Колобок, и fastutil используйте аналогичные оптимизации. ELKI включает в себя структуры данных, такие как коллекции объектов и кучи (например, для поиск ближайшего соседа ) с использованием таких оптимизаций.

Визуализация

Модуль визуализации использует SVG для масштабируемого вывода графики и Апач Батик для рендеринга пользовательского интерфейса, а также экспорта без потерь в PostScript и PDF для легкого включения в научные публикации в Латекс.Экспортированные файлы можно редактировать с помощью редакторов SVG, таких как Inkscape. С каскадные таблицы стилей Графический дизайн можно легко изменить. К сожалению, Batik довольно медленный и требует большого объема памяти, поэтому визуализации не очень масштабируемы для больших наборов данных (для больших наборов данных по умолчанию визуализируется только подвыборка данных).

Награды

Версия 0.4, представленная на "Симпозиуме по пространственным и временным базам данных" 2011 г., включала различные методы обнаружения пространственных выбросов,[9] выиграл премию конференции «Лучший демонстрационный документ».

Включенные алгоритмы

Выберите включенные алгоритмы:[10]

История версий

Версия 0.1 (июль 2008 г.) содержала несколько алгоритмов из кластерный анализ и обнаружение аномалии, а также некоторые индексные структуры такой как R * -дерево. В первом выпуске основное внимание уделялось кластеризация подпространств и корреляционная кластеризация алгоритмы.[11]

Версия 0.2 (июль 2009 г.) добавлены функции для анализ временных рядов, в частности функции расстояния для временных рядов.[12]

Версия 0.3 (март 2010 г.) расширила выбор обнаружение аномалии алгоритмы и модули визуализации.[13]

В версии 0.4 (сентябрь 2011 г.) добавлены алгоритмы интеллектуального анализа геоданных и поддержка многореляционных баз данных и структур индексов.[9]

Версия 0.5 (апрель 2012 г.) ориентирована на оценку кластерный анализ результаты, добавление новых визуализаций и некоторых новых алгоритмов.[14]

Версия 0.6 (июнь 2013 г.) представляет новую 3D-адаптацию параллельные координаты для визуализации данных, помимо обычных добавлений алгоритмов и индексных структур.[15]

Версия 0.7 (август 2015 г.) добавляет поддержку неопределенных типов данных и алгоритмы анализа неопределенных данных.[16]

Версия 0.7.5 (февраль 2019 г.) добавляет дополнительные алгоритмы кластеризации, алгоритмы обнаружения аномалий, меры оценки и структуры индексации.[17]

Похожие приложения

  • Scikit-Learn: библиотека машинного обучения на Python
  • Weka: Аналогичный проект Университета Вайкато с упором на классификация алгоритмы
  • RapidMiner: Коммерческое приложение (ограниченная версия доступна как открытый исходный код)
  • KNIME: Платформа с открытым исходным кодом, которая объединяет различные компоненты для машинного обучения и сбор данных

Смотрите также

Рекомендации

  1. ^ Ханс-Петер Кригель, Пер Крегер, Артур Зимек (2009). «Методы обнаружения выбросов (учебное пособие)» (PDF). 13-я Тихоокеанско-азиатская конференция по открытию знаний и интеллектуальному анализу данных (PAKDD 2009). Бангкок, Тайланд. Получено 2010-03-26.CS1 maint: несколько имен: список авторов (связь)
  2. ^ Геро, Шейн; Уайтхед, Хэл; Ренделл, Люк (2016). «Индивидуальные, единичные и голосовые сигналы идентичности на уровне клана в кодах кашалотов». Королевское общество открытой науки. 3 (1): 150372. Bibcode:2016RSOS .... 350372G. Дои:10.1098 / rsos.150372. ISSN  2054-5703. ЧВК  4736920. PMID  26909165.
  3. ^ Штальберг, Феликс; Шлиппе, Тим; Фогель, Стефан; Шульц, Таня (2013). «Извлечение произношения из последовательностей фонем посредством межъязыкового совмещения слов с фонемами». Статистическая обработка речи и языка. Конспект лекций по информатике. 7978. С. 260–272. Дои:10.1007/978-3-642-39593-2_23. ISBN  978-3-642-39592-5. ISSN  0302-9743.
  4. ^ Верзола, Ивано; Донати, Алессандро; Мартинес, Хосе; Шуберт, Матиас; Сомоди, Ласло (2016). "Проект Сибилла: система обнаружения новинок для операций человека в космос". Космос Операции Конференция 2016. Дои:10.2514/6.2016-2405. ISBN  978-1-62410-426-8.
  5. ^ Adham, Manal T .; Бентли, Питер Дж. (2016). «Оценка методов кластеризации в рамках алгоритма искусственной экосистемы и их применения для перераспределения велосипедов в Лондоне». Биосистемы. 146: 43–59. Дои:10.1016 / j.biosystems.2016.04.008. ISSN  0303-2647. PMID  27178785.
  6. ^ Мудро, Майкл; Херсон, Али; Сарвестани, Сахра Седиг (2015). «Расширяемая структура моделирования для оценки алгоритмов централизованного прогнозирования трафика». 2015 Международная конференция по подключенным автомобилям и выставке (ICCVE). С. 391–396. Дои:10.1109 / ICCVE.2015.86. ISBN  978-1-5090-0264-1.
  7. ^ Кригель, Ханс-Петер; Шуберт, Эрих; Зимек, Артур (2016). «(Черное) искусство оценки времени выполнения: сравниваем ли мы алгоритмы или реализации?». Знания и информационные системы. 52 (2): 341–378. Дои:10.1007 / s10115-016-1004-2. ISSN  0219-1377.
  8. ^ "DBID". Домашняя страница ELKI. Получено 13 декабря 2016.
  9. ^ а б Эльке Ахтерт, Ахмед Хеттаб, Ханс-Петер Кригель, Эрих Шуберт, Артур Зимек (2011). Обнаружение пространственных выбросов: данные, алгоритмы, визуализации. 12-й Международный симпозиум по пространственным и временным базам данных (SSTD 2011). Миннеаполис, Миннесота: Спрингер. Дои:10.1007/978-3-642-22922-0_41.CS1 maint: несколько имен: список авторов (связь)
  10. ^ выдержка из «Алгоритмы интеллектуального анализа данных в ELKI». Получено 17 октября 2019.
  11. ^ Эльке Ахтерт, Ханс-Петер Кригель, Артур Зимек (2008). ELKI: программная система для оценки алгоритмов кластеризации подпространств (PDF). Материалы 20-й международной конференции по управлению научными и статистическими базами данных (SSDBM 08). Гонконг, Китай: Springer. Дои:10.1007/978-3-540-69497-7_41.CS1 maint: несколько имен: список авторов (связь)
  12. ^ Эльке Ахтерт, Томас Бернекер, Ханс-Петер Кригель, Эрих Шуберт, Артур Зимек (2009). ELKI in time: ELKI 0.2 для оценки эффективности измерений расстояния для временных рядов (PDF). Материалы 11-го Международного симпозиума по достижениям в области пространственных и временных баз данных (SSTD 2010). Ольборг, Денемарк: Springer. Дои:10.1007/978-3-642-02982-0_35.CS1 maint: несколько имен: список авторов (связь)
  13. ^ Эльке Ахтерт, Ханс-Петер Кригель, Лиза Райхерт, Эрих Шуберт, Ремигиус Войдановски, Артур Зимек (2010). Визуальная оценка моделей обнаружения выбросов. 15-я Международная конференция по системам баз данных для передовых приложений (DASFAA 2010). Цукуба, Япония: Springer. Дои:10.1007/978-3-642-12098-5_34.CS1 maint: несколько имен: список авторов (связь)
  14. ^ Эльке Ахтерт, Саша Гольдхофер, Ханс-Петер Кригель, Эрих Шуберт, Артур Зимек (2012). Оценка показателей кластеризации и визуальная поддержка. 28-я Международная конференция по инженерии данных (ICDE). Вашингтон, округ Колумбия. Дои:10.1109 / ICDE.2012.128.CS1 maint: несколько имен: список авторов (связь)
  15. ^ Эльке Ахтерт, Ханс-Петер Кригель, Эрих Шуберт, Артур Зимек (2013). Интерактивный интеллектуальный анализ данных с трехмерными параллельными деревьями координат. Труды Международной конференции ACM по управлению данными (SIGMOD ). Нью-Йорк, штат Нью-Йорк. Дои:10.1145/2463676.2463696.CS1 maint: несколько имен: список авторов (связь)
  16. ^ Эрих Шуберт; Александр Коос; Тобиас Эмрих; Андреас Цюфле; Клаус Артур Шмид; Артур Зимек (2015). «Платформа для кластеризации неопределенных данных» (PDF). Труды эндаумента VLDB. 8 (12): 1976–1987. Дои:10.14778/2824032.2824115.
  17. ^ Шуберт, Эрих; Зимек, Артур (10.02.2019). «ELKI: большая библиотека с открытым исходным кодом для анализа данных - ELKI Release 0.7.5» Heidelberg"". arXiv:1902.03616 [cs.LG ].

внешняя ссылка