Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Пример измерения и раскраски модульности на безмасштабной сети .

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

Мотивация [ править ]

Многие важные с научной точки зрения проблемы могут быть представлены и эмпирически изучены с использованием сетей. Например, биологические и социальные модели, Всемирная паутина, метаболические сети, пищевые сети, нейронные сети и патологические сети - это проблемы реального мира, которые можно математически представить и топологически изучить, чтобы выявить некоторые неожиданные структурные особенности. [1]Большинство этих сетей обладают определенной структурой сообщества, которая имеет существенное значение для понимания динамики сети. Например, тесно связанное социальное сообщество подразумевает более высокую скорость передачи информации или слухов между ними, чем слабо связанное сообщество. Таким образом, если сеть представлена ​​рядом отдельных узлов, соединенных связями, которые обозначают определенную степень взаимодействия между узлами, сообщества определяются как группы плотно связанных узлов, которые лишь редко связаны с остальной частью сети. Следовательно, может быть необходимо идентифицировать сообщества в сетях, поскольку сообщества могут иметь совершенно разные свойства, такие как степень узла, коэффициент кластеризации, промежуточность, центральность. [2]и т. д., от средней сети. Модульность - одна из таких мер, которая при максимальном увеличении приводит к появлению сообществ в данной сети.

Определение [ править ]

Модульность - это доля ребер, попадающих в указанные группы, за вычетом ожидаемой доли, если ребра были распределены случайным образом. Значение модульности для невзвешенных и неориентированных графиков лежит в диапазоне . [3] Положительно, если количество ребер в группах превышает количество, ожидаемое на основе случайности. Для данного разделения вершин сети на несколько модулей модульность отражает концентрацию ребер внутри модулей по сравнению со случайным распределением связей между всеми узлами независимо от модулей.

Существуют разные методы расчета модульности. [1] В наиболее распространенной версии концепции рандомизация ребер выполняется так, чтобы сохранить степень каждой вершины. Рассмотрим граф с узлами и связями ( ребрами ), такой, что граф можно разделить на два сообщества с помощью переменной принадлежности . Если узел принадлежит сообществу 1 , или если принадлежит сообществу 2 ,. Пусть матрица смежности для сети представлена ​​как , где означает, что нет края (нет взаимодействия) между узлами и и означает, что между ними есть грань. Также для простоты мы рассматриваем неориентированную сеть. Итак . (Важно отметить, что между двумя узлами может существовать несколько ребер, но здесь мы оцениваем простейший случай).

Модульность затем определяется как доля ребер, которые попадают в группу 1 или 2, за вычетом ожидаемого количества ребер в группах 1 и 2 для случайного графа с тем же распределением степеней узлов, что и данная сеть.

Ожидаемое количество ребер должно быть вычислено с использованием концепции модели конфигурации . [4] Модель конфигурации - это рандомизированная реализация конкретной сети. Учитывая сеть с узлами, где каждый узел имеет степень узла , модель конфигурации разрезает каждое ребро на две половины, а затем каждое половинное ребро, называемое заглушкой , случайным образом переплетается с любым другим заглушкой в ​​сети (кроме себя), даже разрешение петель (которые возникают, когда заглушка перенаправляется на другую заглушку из того же узла) и множественные ребра между теми же двумя узлами. Таким образом, даже несмотря на то, что распределение степеней узлов графа остается неизменным, модель конфигурации приводит к полностью случайной сети.

Ожидаемое количество ребер между узлами [ править ]

Теперь рассмотрим два узла v и w со степенями узлов и соответственно из случайно перепрограммированной сети, как описано выше. Мы вычисляем ожидаемое количество полных ребер между этими узлами.

Пусть общее количество заглушек в сети будет :

Давайте рассмотрим каждую из заглушек узла v и создадим для них связанные индикаторные переменные , при этом, если i-ая заглушка будет подключаться к одной из заглушек узла w в этом конкретном случайном графе. Если нет, тогда . Поскольку i-й шлейф узла v может подключаться к любому из оставшихся шлейфов с равной вероятностью, и поскольку существуют шлейфы, к которым он может подключаться, связанный с узлом w , очевидно

Общее количество полных ребер между v и w равно , поэтому ожидаемое значение этого количества равно

Затем во многих текстах делаются следующие приближения для случайных сетей с большим количеством ребер. Когда m велико, они отбрасывают вычитание 1 в знаменателе выше и просто используют приближенное выражение для ожидаемого количества ребер между двумя узлами. Кроме того, в большой случайной сети количество петель и множественных ребер исчезающе мало. [5] Игнорирование петель и множественных ребер позволяет предположить, что между любыми двумя узлами существует не более одного ребра. В этом случае, становится двоичной индикаторной переменной, поэтому ее ожидаемое значение также является вероятностью того, что оно равно 1, что означает, что можно приблизительно оценить вероятность наличия ребра между узлами v и w как .

Модульность [ править ]

Следовательно, разница между фактическим количеством ребер между узлом и и ожидаемым количеством ребер между ними составляет

Суммирование по всем парам узлов дает уравнение модульности . [1]

Важно отметить, что уравнение. 3 годится только для разделения на два сообщества. Иерархическое разделение (т. Е. Разделение на два сообщества, затем два подсообщества, дополнительно разделенных на два меньших подсообщества только для максимизации Q ) является возможным подходом к идентификации нескольких сообществ в сети. Кроме того, (3) можно обобщить для разделения сети на c- сообщества. [6]

где e ij - доля ребер с одной конечной вершиной в сообществе i, а другая - в сообществе j :

и я есть доля концов ребер, которые прикреплены к вершинам в сообществе I :

Пример обнаружения нескольких сообществ [ править ]

Мы рассматриваем неориентированную сеть с 10 узлами и 12 ребрами и следующей матрицей смежности.

Рис. 1. Пример сети, соответствующей матрице смежности с 10 узлами, 12 ребрами.
Рис. 2. Сетевые разделы, увеличивающие Q. Максимальное значение Q = 0,4896.

Сообщества на графике представлены кластерами узлов красного, зеленого и синего цветов на рис. 1. Оптимальные разделы сообщества изображены на рис. 2.

Формулировка матрицы [ править ]

Альтернативная формулировка модульности, особенно полезная в алгоритмах спектральной оптимизации, следующая. [1] Определим S vr равным 1, если вершина v принадлежит группе r, и нулю в противном случае. потом

и поэтому

где S - (неквадратная) матрица, имеющая элементы S vr, а B - так называемая матрица модульности, которая имеет элементы

Сумма всех строк и столбцов матрицы модульности равна нулю, что означает, что модульность неразделенной сети также всегда равна нулю.

Для сетей, разделенных всего на два сообщества, можно в качестве альтернативы определить s v = ± 1, чтобы указать сообщество, к которому принадлежит узел v , что затем приводит к

где s - вектор-столбец с элементами s v . [1]

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

Предел разрешения [ править ]

Модульность сравнивает количество ребер внутри кластера с ожидаемым количеством ребер, которое можно было бы найти в кластере, если бы сеть была случайной сетью с тем же количеством узлов и где каждый узел сохраняет свою степень, но в противном случае ребра присоединяются случайным образом. Эта случайная нулевая модель неявно предполагает, что каждый узел может быть присоединен к любому другому узлу сети. Однако это предположение неразумно, если сеть очень большая, поскольку горизонт узла включает небольшую часть сети, игнорируя большую ее часть. Более того, это означает, что ожидаемое количество ребер между двумя группами узлов уменьшается, если размер сети увеличивается. Итак, если сеть достаточно велика, ожидаемое количество ребер между двумя группами узлов в нулевой модели модульности может быть меньше единицы. Если это произойдет,единственное ребро между двумя кластерами будет интерпретироваться модульностью как признак сильной корреляции между двумя кластерами, а оптимизация модульности приведет к слиянию двух кластеров, независимо от характеристик кластеров. Таким образом, даже слабо взаимосвязанные полные графы, которые имеют максимально возможную плотность внутренних ребер и представляют наилучшие идентифицируемые сообщества, были бы объединены путем оптимизации модульности, если бы сеть была достаточно большой.и представляли бы лучшие идентифицируемые сообщества, были бы объединены путем оптимизации модульности, если бы сеть была достаточно большой.и представляли бы лучшие идентифицируемые сообщества, были бы объединены путем оптимизации модульности, если бы сеть была достаточно большой.[8] По этой причине оптимизация модульности в больших сетях не решит проблемы небольших сообществ, даже если они четко определены. Это смещение неизбежно для таких методов, как оптимизация модульности, которые полагаются на глобальную нулевую модель. [9]

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

Существует два основных подхода, которые пытаются решить предел разрешения в контексте модульности: добавление сопротивления r к каждому узлу в виде петли , которое увеличивается ( r> 0 ) или уменьшается ( r <0 ). отвращение узлов к формированию сообществ; [10] или добавление параметра γ> 0 перед термином нулевого регистра в определении модульности, который контролирует относительную важность между внутренними связями сообществ и нулевой моделью. [7]Оптимизируя модульность для значений этих параметров в соответствующих диапазонах, можно восстановить весь мезоуровень сети, от макромасштаба, в котором все узлы принадлежат к одному сообществу, до микромасштаба, в котором каждый узел формирует свое собственное сообщество, отсюда и название методов с множественным разрешением . Однако было показано, что эти методы имеют ограничения, когда сообщества очень разнородны по размеру. [11]

Перколяция модульных сетей [ править ]

Теория перколяции на модульных сетях изучалась несколькими авторами. [12] [13]

Распространение эпидемии в модульных сетях [ править ]

Распространение эпидемии недавно изучалось в модульных сетях (сетях с сообществами). [14] Поскольку распространение болезни в одной стране может стать пандемией с потенциальными гуманитарными и экономическими последствиями во всем мире, важно разработать модели для оценки вероятности всемирной пандемии. Самый свежий пример - коронавирус, который возник в Китае (конец 2019 года) и распространился по всему миру. В этой статье [14] предлагается модель распространения болезни в структурно-модульной сложной сети (имеющей сообщества) и изучается, как количество узловых мостов, соединяющих сообщества, влияет на распространение болезни и критерий объявления пандемии.

Программные инструменты [ править ]

Есть несколько доступных программных инструментов, которые могут вычислять кластеризацию в графах с хорошей модульностью.

Оригинальная реализация многоуровневого метода Лувена. [15]

Алгоритм Лейдена, который дополнительно избегает несвязанных сообществ. [16]

Алгоритм Венской графической кластеризации (VieClus), параллельный меметический алгоритм. [17]


См. Также [ править ]

  • Комплексная сеть
  • Структура сообщества
  • Нулевая модель
  • Теория перколяции

Ссылки [ править ]

  1. ^ а б в г д Ньюман, MEJ (2006). «Модульность и структура сообщества в сетях» . Труды Национальной академии наук Соединенных Штатов Америки . 103 (23): 8577–8696. arXiv : физика / 0602124 . Bibcode : 2006PNAS..103.8577N . DOI : 10.1073 / pnas.0601602103 . PMC  1482622 . PMID  16723398 .
  2. ^ Ньюман, MEJ (2007). Пэлгрейв Макмиллан, Бейзингсток (ред.). «Математика сетей». Новая энциклопедия экономики Палгрейва (2-е изд.).
  3. ^ Брандес, U .; Деллинг, Д .; Gaertler, M .; Горке, Р .; Hoefer, M .; Николоски, З .; Вагнер, Д. (февраль 2008 г.). «О модульности кластеризации» . IEEE Transactions по разработке знаний и данных . 20 (2): 172–188. DOI : 10.1109 / TKDE.2007.190689 . S2CID 150684 . 
  4. ^ Ван дер HOFSTAD, Ремко (2013). «Глава 7» (PDF) . Случайные графы и сложные сети .
  5. ^ "NetworkScience" . Альберт-Ласло Барабаши . Проверено 20 марта 2020 .
  6. ^ Клаузет, Аарон и Ньюман, MEJ и Мур, Кристофер (2004). «Поиск структуры сообщества в очень больших сетях». Phys. Rev. E . 70 (6): 066111. arXiv : cond-mat / 0408187 . Bibcode : 2004PhRvE..70f6111C . DOI : 10.1103 / PhysRevE.70.066111 . PMID 15697438 . S2CID 8977721 .  CS1 maint: multiple names: authors list (link)
  7. ^ а б Йорг Райхард и Стефан Борнхольдт (2006). «Статистическая механика обнаружения сообществ». Physical Review E . 74 (1): 016110. arXiv : cond-mat / 0603718 . Bibcode : 2006PhRvE..74a6110R . DOI : 10.1103 / PhysRevE.74.016110 . PMID 16907154 . S2CID 792965 .  
  8. Санто Фортунато и Марк Бартелеми (2007). «Предел разрешения при обнаружении сообщества» . Труды Национальной академии наук Соединенных Штатов Америки . 104 (1): 36–41. arXiv : физика / 0607100 . Bibcode : 2007PNAS..104 ... 36F . DOI : 10.1073 / pnas.0605965104 . PMC 1765466 . PMID 17190818 .  
  9. ^ JM Kumpula; Я. Сарамяки; К. Каски и Дж. Кертес (2007). «Ограниченное разрешение при обнаружении сложных сетевых сообществ с использованием модели Поттса». Европейский физический журнал B . 56 (1): 41–45. arXiv : cond-mat / 0610370 . Bibcode : 2007EPJB ... 56 ... 41K . DOI : 10.1140 / epjb / e2007-00088-4 . S2CID 4411525 . 
  10. Алекс Аренас, Альберто Фернандес и Серхио Гомес (2008). «Анализ структуры сложных сетей на разных уровнях разрешения». Новый журнал физики . 10 (5): 053039. arXiv : Physics / 0703218 . Bibcode : 2008NJPh ... 10e3039A . DOI : 10.1088 / 1367-2630 / 10/5/053039 . S2CID 11544197 . 
  11. ^ Андреа Ланчинетти и Санто Фортунато (2011). «Пределы максимизации модульности в обнаружении сообществ». Physical Review E . 84 (6): 066122. arXiv : 1107.1155 . Bibcode : 2011PhRvE..84f6122L . DOI : 10.1103 / PhysRevE.84.066122 . PMID 22304170 . S2CID 16180375 .  
  12. ^ Шай, S; Kenett, DY; Kenett, YN; Фауст, М; Добсон, S; Хавлин, С. (2015). «Критический переломный момент, различающий два типа переходов в модульных сетевых структурах» . Phys. Rev. E . 92 (6): 062805. DOI : 10,1103 / PhysRevE.92.062805 . PMID 26764742 . 
  13. ^ Донг, Гаогао; Фань, Цзинфан; Шехтман, Луи М; Шай, Сарай; Ду, Жуйджин; Тиан, Лисинь; Чен, Сяосун; Стэнли, Х. Юджин; Хавлин, Шломо (2018). «Устойчивость сетей со структурой сообщества действует, как если бы они находились под внешним полем» . Труды Национальной академии наук . 115 (27): 6911–6915. arXiv : 1805.01032 . DOI : 10.1073 / pnas.1801588115 . PMC 6142202 . PMID 29925594 .  
  14. ^ а б Вальдес, Л.Д .; Браунштейн, Луизиана; Хэвлин, S (2020). «Распространение эпидемии в модульных сетях: страх объявить пандемию». Phys. Rev. E . 101 (3): 032309. arXiv : 1909.09695 . DOI : 10.1103 / PhysRevE.101.032309 . PMID 32289896 . S2CID 202719412 .  
  15. ^ Первая реализация алгоритма Лувена
  16. ^ Репозиторий алгоритмов Лейдена
  17. ^ Репозиторий кластеризации венского графа