stringtranslate.com

ЕЛКИ

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

Описание

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

ELKI — это бесплатный инструмент для анализа данных, в основном сосредоточенный на поиске закономерностей и необычных точек данных без необходимости в метках. Он написан на Java и нацелен на быстроту и способность обрабатывать большие наборы данных с помощью специальных структур. Он создан для исследователей и студентов, чтобы они могли легко добавлять свои собственные методы и сравнивать различные алгоритмы. [2]

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

Цели

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

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

Архитектура

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

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

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

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

 for ( DBIDIter iter = ids . iter (); iter . valid (); iter . advance ()) { relation . get ( iter ); // Например, получить указанный объект idcollection . add ( iter ); // Например, добавить ссылку на коллекцию DBID }            

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

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

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

Награды

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

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

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

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

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

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

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

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

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

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

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

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

Версия 0.8 (октябрь 2022 г.) добавляет автоматическое создание индекса, сборку мусора и поиск с инкрементным приоритетом, а также множество других алгоритмов, таких как BIRCH . [19]

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

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

Ссылки

  1. ^ Ханс-Петер Кригель , Пир Крёгер, Артур Зимек (2009). "Методы обнаружения выбросов (Учебное пособие)" (PDF) . 13-я Тихоокеанско-Азиатская конференция по обнаружению знаний и интеллектуальному анализу данных (PAKDD 2009) . Бангкок, Таиланд . Получено 26.03.2010 .{{cite journal}}: CS1 maint: несколько имен: список авторов ( ссылка )
  2. ^ "ELKI Data Mining Framework". elki-project.github.io . Получено 2024-05-30 .
  3. ^ Джеро, Шейн; Уайтхед, Хэл; Ренделл, Люк (2016). «Индивидуальные, групповые и вокальные сигналы идентичности на уровне клана в кодах кашалотов». Royal Society Open Science . 3 (1): 150372. Bibcode :2016RSOS....350372G. doi :10.1098/rsos.150372. ISSN  2054-5703. PMC 4736920 . PMID  26909165. 
  4. ^ Stahlberg, Felix; Schlippe, Tim; Vogel, Stephan; Schultz, Tanja (2013). «Извлечение произношения из последовательностей фонем с помощью кросс-лингвального выравнивания слов и фонем». Статистический язык и обработка речи . Конспект лекций по информатике. Том 7978. С. 260–272. doi :10.1007/978-3-642-39593-2_23. ISBN 978-3-642-39592-5. ISSN  0302-9743.
  5. ^ Верзола, Ивано; Донати, Алессандро; Мартинес, Хосе; Шуберт, Маттиас; Сомоди, Ласло (2016). «Проект Сивилла: Новейшая система обнаружения для пилотируемых космических полетов». Конференция Space Ops 2016. doi : 10.2514 /6.2016-2405. ISBN 978-1-62410-426-8.
  6. ^ Адхам, Манал Т.; Бентли, Питер Дж. (2016). «Оценка методов кластеризации в алгоритме искусственной экосистемы и их применение к перераспределению велосипедов в Лондоне». Biosystems . 146 : 43–59. doi : 10.1016/j.biosystems.2016.04.008. ISSN  0303-2647. PMID  27178785.
  7. ^ Wisely, Michael; Hurson, Ali; Sarvestani, Sahra Sedigh (2015). «Расширяемая структура моделирования для оценки централизованных алгоритмов прогнозирования дорожного движения». Международная конференция по подключенным транспортным средствам и выставка (ICCVE) 2015 г. стр. 391–396. doi :10.1109/ICCVE.2015.86. ISBN 978-1-5090-0264-1. S2CID  1297145.
  8. ^ Кригель, Ханс-Петер ; Шуберт, Эрих; Зимек, Артур (2016). «(Черное) искусство оценки времени выполнения: сравниваем ли мы алгоритмы или реализации?». Knowledge and Information Systems . 52 (2): 341–378. doi :10.1007/s10115-016-1004-2. ISSN  0219-1377. S2CID  40772241.
  9. ^ "DBIDs". Домашняя страница ELKI . Получено 13 декабря 2016 г.
  10. ^ аб Эльке Ахтерт, Ахмед Хеттаб, Ханс-Петер Кригель , Эрих Шуберт, Артур Зимек (2011). Обнаружение пространственных выбросов: данные, алгоритмы, визуализации . 12-й Международный симпозиум по пространственным и временным базам данных (SSTD 2011). Миннеаполис, Миннесота: Спрингер. дои : 10.1007/978-3-642-22922-0_41.{{cite conference}}: CS1 maint: несколько имен: список авторов ( ссылка )
  11. ^ отрывок из "Алгоритмы интеллектуального анализа данных в ELKI" . Получено 17 октября 2019 г.
  12. ^ Эльке Ахтерт, Ханс-Петер Кригель , Артур Зимек (2008). ELKI: Программная система для оценки алгоритмов кластеризации подпространств (PDF) . Труды 20-й международной конференции по управлению научными и статистическими базами данных (SSDBM 08). Гонконг, Китай: Springer. doi :10.1007/978-3-540-69497-7_41.{{cite conference}}: CS1 maint: несколько имен: список авторов ( ссылка )
  13. ^ Эльке Ахтерт, Томас Бернекер, Ханс-Петер Кригель , Эрих Шуберт, Артур Зимек (2009). ELKI во времени: ELKI 0.2 для оценки производительности мер расстояний для временных рядов (PDF) . Труды 11-го Международного симпозиума по достижениям в области пространственных и временных баз данных (SSTD 2010). Ольборг, Дания: Springer. doi :10.1007/978-3-642-02982-0_35.{{cite conference}}: CS1 maint: несколько имен: список авторов ( ссылка )
  14. ^ Элке Ахтерт, Ханс-Петер Кригель , Лиза Райхерт, Эрих Шуберт, Ремигиус Войдановски, Артур Зимек (2010). Визуальная оценка моделей обнаружения выбросов . 15-я международная конференция по системам баз данных для расширенных приложений (DASFAA 2010). Цукуба, Япония: Springer. doi :10.1007/978-3-642-12098-5_34.{{cite conference}}: CS1 maint: несколько имен: список авторов ( ссылка )
  15. ^ Эльке Ахтерт, Саша Голдхофер, Ханс-Петер Кригель , Эрих Шуберт, Артур Зимек (2012). Оценка метрик кластеризации и визуальная поддержка . 28-я Международная конференция по инжинирингу данных (ICDE). Вашингтон, округ Колумбия. doi :10.1109/ICDE.2012.128.{{cite conference}}: CS1 maint: несколько имен: список авторов ( ссылка )
  16. ^ Эльке Ахтерт, Ханс-Петер Кригель , Эрих Шуберт, Артур Зимек (2013). Интерактивный интеллектуальный анализ данных с использованием 3D-параллельных-координатных-деревьев . Труды Международной конференции ACM по управлению данными ( SIGMOD ). Нью-Йорк, штат Нью-Йорк. doi :10.1145/2463676.2463696.{{cite conference}}: CS1 maint: несколько имен: список авторов ( ссылка )
  17. ^ Эрих Шуберт; Александр Коос; Тобиас Эмрих; Андреас Цюфле; Клаус Артур Шмид; Артур Зимек (2015). «Структура кластеризации неопределенных данных» (PDF) . Труды VLDB Endowment . 8 (12): 1976–1987. doi :10.14778/2824032.2824115.
  18. ^ Шуберт, Эрих; Зимек, Артур (2019-02-10). "ELKI: Большая библиотека с открытым исходным кодом для анализа данных - ELKI Release 0.7.5 "Гейдельберг"" .arXiv : 1902.03616 [cs.LG].
  19. ^ Шуберт, Эрих (2022). Автоматическое индексирование для поиска по сходству в ELKI. Поиск по сходству и приложения. стр. 205–213. doi :10.1007/978-3-031-17849-8_16.

Внешние ссылки