Разработка программы кластеризации сложноструктурированных данных на базе платформы weka

Вид материалаДокументы
Подобный материал:
А.А. РАСКИН

Научные руководители – П.И. РУДАКОВ, к.т.н., доцент

Национальный исследовательский ядерный университет «МИФИ»


РАЗРАБОТКА ПРОГРАММЫ КЛАСТЕРИЗАЦИИ
СЛОЖНОСТРУКТУРИРОВАННЫХ ДАННЫХ
НА БАЗЕ ПЛАТФОРМЫ WEKA



Рассматривается архитектура платформы WEKA, изменения, необходимые для кластеризации сложноструктурированных данных и основные проблемы, связанные с этими изменениями.


В настоящее время особенно актуальной является задача автоматического анализа информации, в том числе данных со сложной структурой, существенно затрудняющей анализ. Примером таких данных является цепочка событий или объектов (например, история посещения пользователем интернет-сайта). Большинство аналитических средств работают с простыми реляционными схемами. Некоторые пакеты анализа данных предоставляют возможность проводить обработку данных более сложной структуры, но не обеспечивают при этом должной гибкости настройки алгоритмов[1]. Это приводит к возникновению задачи самостоятельной реализации необходимых алгоритмов. Одной из наиболее популярных платформ для реализации алгоритмов в области Data Mining является платформа WEKA[2].

Мы постараемся изложить основные сложности, возникающие при использовании платформы WEKA в качестве базы для разработки собственного модуля загрузки исходных данных и модуля кластеризации данных. В результате изменений в коде программа должна будет загружать, обрабатывать и проводить кластеризацию данных со сложной структурой. В качестве алгоритма кластеризации будет использоваться алгоритм k-средних, а в качестве меры близости – расстояние Левенштейна. При этом должна существовать возможность изменения меры близости независимо от алгоритма кластеризации и добавления атрибутов к исходным данным (без принципиального изменения их структуры).

На рис.1 приведены частичные структурные схемы классов платформы WEKA, связанных с процессом загрузки данных и кластеризации. При сравнении двух диаграмм видно, что реализация программы кластеризации для данных со сложной структурой влечет за собой существенные изменения платформы и модификацию существующих классов.

Рис. 1. Структурная схема платформы (исходная - слева, измененая - справа)


Таким образом, внесение существенных изменений (например, изменение исходной структуры данных) в платформу WEKA требует значительных временных затрат и делает программу несовместимой с другим ПО, разработанным на той же платформе. Это вызвано большим количеством классов напрямую использующих свойства классов, отвечающих за хранение исходных данных (Instance, Instances), что приводит к необходимости их модификации при изменении структуры данных.

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


Список литературы

  1. MacLennan J. Data Mining with Microsoft SQL Server 2008 / MacLennan J., Cravat B., Tang Z. – Wiley, 2008.
  2. Bouckaert R. WEKA – Experience with a Java Open-Source Project. / Bouckaert R. // Journal of Machine Learning Research – 2011 – p.2533-2541.