Ляшов М.В., к. техн. н. старший преподаватель кафедра «Информационные системы и радиотехника»
Михнова Е.Г. магистрант 1 курса факультет «Механико-радиотехнический»
Институт сферы обслуживания и предпринимательства (филиал) Донской государственный технический университет
Россия, г. Шахты КРИТЕРИИ КАЧЕСТВА РЕЗУЛЬТАТА РАЗБИЕНИЯ НА
СООБЩЕСТВА
Для того чтобы понимать, как оценить качество результата нужно прежде всего разобраться со структурой сообществ в графе, согласно которому каждая вершина графа входит в одно и только одно сообщество. Некоторые исследователи также рассматривают случай перекрывающихся сообществ, что часто встречается в реальных данных.
Стоит отметить, что сообщества полностью покрывают граф. Тогда можно говорить о поиске сообществ в графе как о задаче поиска разбиения множества вершин на подмножества, которое минимизирует некоторый функционал.
Есть другой взгляд на исходную проблему как на задачу кластеризации. Действительно, если ввести некоторую меру расстояния на вершинах графа с учетом структурной информации, можно решать задачу кластеризации. Такой подход также позволяет учитывать дополнительную информацию.
После того как отработал алгоритм выделения сообществ, необходимо оценить качество получившегося результата. Существуют две принципиально разные ситуации. В первой не известно истинное разбиение на сообщества. Такая ситуация встречается чаще всего, особенно для графов большого размера и реальных данных. В таком случае для оценки качества используется значение функционала модулярности [1]. Во второй истинное разбиение известно. Такое возможно в случае модельных данных или для графа знакомств друзей пользователя социальной сети (так называемого эго-графа), где он самостоятельно разделил всех друзей на сообщества. В таком случае мы можем ввести метрику на разбиениях вершин и посчитать расстояние между истинным и полученным разбиениями. Для таких целей используется аналог редакторского расстояния для разбиений (splitjoin distance) [2] или нормализованная взаимная информация [1] — информационный критерий для сравнения двух разбиений.
Самой популярной и общепризнанной мерой качества для данной задачи является значение модулярности (modularity). Функционал был предложен Ньюманом и Гирваном в ходе разработки алгоритма кластеризации вершин графа [3]. Модулярность — это скалярная величина из отрезка [- 1, 1], которая количественно описывает неформальное определение структуры сообществ, данное выше:
М 4
где А — Матрица смежности графа, Аг] — (г,]) элемент матрицы,
— степень г вершины графа, Сг — метка вершины (номер сообщества, к которому относится вершина),
т — общее количество ребер в графе.
8(Сг, С]) — дельта-функция: равна единице, если Сг = С], иначе нулю. Задача поиска выделения сообществ в графе сводится к поиску таких Сг, которые максимизируют значение модулярности.
Формула имеет множество обобщений, например, для взвешенных графов, под А у понимается вес ребра, соединяющего вершины г и], а т = 12 Р ау.
Достоинства модулярности. Модулярность достаточно просто интерпретируется. Ее значение равно разности между долей ребер внутри сообщества и ожидаемой доли связей, если бы ребра были размещены случайно.
Модулярность возможно эффективно пересчитывать при небольших изменениях в кластерах. Например, если добавить изолированную вершину в кластер С, то изменение функционала для взвешенного графа можно посчитать как
где Е/и — сумма весов ребер внутри сообщества С, ЪШ — сумма весов всех ребер инцидентных вершинам из С, Ш — сумма весов ребер инцидентных вершине г,
Ш,т — сумма весов ребер соединяющих вершину Ш и вершину из С, т — сумма весов всех ребер [4].
Недостатки. Функционал не является непрерывным, и задача его оптимизации — дискретная. Для поиска глобального оптимума используют приближенные схемы. Некоторые из них действительно оптимизируют значение функционала, другие же по значению модулярности выбирают наилучшее решение из найденных, то есть без гарантий локальной оптимальности решения.
У данного функционала существует проблема разрешающей способности (грубо говоря, функционал не видит маленькие сообщества). Эта
проблема решается путем использования модифицированного функционала, который сохраняет все достоинства и добавляет параметр масштаба [5].
Редакторское расстояние для разбиений (split-join distance) равняется минимальному количеству следующих операций, необходимое для преобразования одного разбиения в другое.
1. Добавить вершину в существующее сообщество.
2. Удалить вершину из существующего сообщества.
3. Создать новое сообщество с 1 вершиной.
4. Удалить сообщество с 1 вершиной.
Такое расстояние похоже на традиционное редакторское и имеет эффективные способы вычисления [2]. Его интерпретация ясна: чем больше сообщества не похожи друг на друга, тем больше преобразований необходимо произвести с одним из них для получения второго. Например, алгоритм выделения сообществ отнес в другое сообщество всего пару вершин. Тогда необходимо 4 операции, для того чтобы поправить это.
В последнее время популярным способом сравнения разных разбиений является подход, основанный на теории информации. Логично предположить, что если одно разбиение похоже на другое, то необходимо малое количество информации, чтобы восстановить одно из разбиений по другому. Это количество можно интерпретировать как меру непохожести разбиений.
Анализ социальных сетей в настоящее время получил большую популярность в изучении. Это говорит о том, что возможно существующие критерии (модулярность; редакторское расстояние для разбиений; нормализованная взаимная информация) будут совершенствоваться, а их недостатки со временем исправят.
Использованные источники:
1 David Easley and Jon Kleinb erg. Networks, crowds, and markets: Reasoning about a highly connected world. Cambridge University Press, 2010.
2 Alan Mislove, Massimiliano Marcon, Krishna P Gummadi, Peter Druschel, and Bobby Bhattacharjee. Measurement and analysis of online social networks. In Proceedings of the 7th ACM SIGCOMM conference on Internet measurement, pages 29-42. ACM, 2007.
3 Stijn Dongen. Performance criteria for graph clustering and markov cluster experiments. 2000. Интернет-ресурс URL: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.26.9783&rep=rep1&typ e=pdf. Дата обращения: 22.02.2016
4 Michelle Girvan and Mark EJ Newman. Community structure in social and biological networks. Proceedings of the National Academy of Sciences, 99(12):7821-7826, 2002.
5 Vincent D Blondel, Jean-Loup Guillaume, Renaud Lambiotte, and Etienne Lefebvre.Fast unfolding of communities in large networks. Journal of Statistical Mechanics:Theory and Experiment, 2008(10):P10008, 2008. Интернет-ресурс URL: http://www.arxiv.org/abs/0803.0476. Дата обращения: 22.02.2016