Blockmodeling_rus - Daria-Maltseva/pajek GitHub Wiki
Прямой подход: Блокмоделинг на основе структурной и регулярной эквивалентности
Синие линии делят матрицу смежности на прямоугольники, и эти прямоугольники называются блоками. Мы можем описать структуру сети (внутри и между позициями), анализируя блоки матрицы смежности.
- Блок содержит ячейки матрицы смежности, принадлежащие пересечению одного или двух классов.
- Блокмодель назначает вершины сети классам и определяет разрешенный тип (типы) отношений внутри и между классами.
- Блокмодель — это эффективное средство для характеристики общей структуры сети и положения отдельных вершин.
- Разбиение (partition) присваивает вершинам классы эквивалентности и делит матрицу смежности сети на блоки.
- Матрица изображения — это упрощенная матрица смежности, которая создается путем сжатия каждого класса вершин до одной новой вершины (вход в матрицу) и помечает тип блока каждой ячейки в новой матрице, которая может быть полной (com) или пустой (null) в случае структурной эквивалентности.
В целом, блокмоделинг состоит из трех этапов.
- Мы указываем количество классов в сети, например, два класса или позиции, если мы предполагаем простую структуру ядро-периферия.
- Мы выбираем типы блоков, которые разрешены для появления и, опционально, места в матрице изображения, где они могут появляться.
- Компьютер разбивает вершины на заданное количество классов по заданным моделью условиям и при необходимости выбирает матрицу конечного изображения для модели. Блокмодель готова.
! Мы должны иметь некоторые знания или ожидания относительно сети, чтобы выбрать подходящее количество классов и указать типы отношений между классами, которые имеют смысл.
Блокмоделинг на основе структурной эквивалентности
Критерий структурной эквивалентности: эквивалентные вершины имеют одинаковые строки и столбцы -> Матрицы смежности сетей, содержащих классы структурной эквивалентности, обладают весьма примечательной особенностью, а именно, их блоки либо полные (complete), либо пустые (null), если не учитывать клетки по диагонали. => Структурная эквивалентность: содержит только полные и нулевые блоки
Применение
В случае структурной эквивалентности мы допускаем появление только полных и пустых блоков и ожидаем, что вдоль диагонали будет один полный блок (ядро) и один пустой блок (периферия).
- Укажите количество классов
- Укажите типы блоков или отношений внутри и между классами, которые разрешены
- Компьютер завершает блочную модель, ища разбиение вершин на классы, которые лучше всего соответствуют гипотетической матрице изображения. Если возможны несколько матриц изображений, он выбирает наиболее подходящую. Оценка ошибки показывает, насколько хорошо выбранная матрица изображения соответствует сети.
1. Подготовка сети
Выберите файл world_trade.paj
Network `Imports_Manufactures` - Info
Partition `World_system_1980` - Info
Сократите сеть до кластеров 1-4 (как мы делали ранее):
Operations> Network + Partition> Extract> SubNetwork Induced by Union of Selected Clusters [classes 1–4]
2. Начало блокмоделирования
Проверим:
Network> Create Partition> Blockmodeling∗> Restricted Options [должно быть выбрано]
Network> Create Partition> Blockmodeling∗> Short Report [должно быть выбрано]
Два метода блокмоделирования:
- поиск наиболее подходящего разделения с нуля (случайный запуск / Random Start)
- оптимизация - попытка улучшить существующее разделение на группы (оптимизация разделения / Optimize Partition)
Оптимизация
Выберите активное разделение на группы (оно указывает на количество классов эквивалентности, которое вы ищете)
4. World system_reduced (52)
==============================================================================
Cluster Freq Freq% CumFreq CumFreq% Representative
----------------------------------------------------------------
1 11 21.1538 11 21.1538 Belgium /Lux.
2 17 32.6923 28 53.8462 Argentina
3 15 28.8462 43 82.6923 Chile
4 9 17.3077 52 100.0000 El Salvador
----------------------------------------------------------------
Sum 52 100.0000
Переходим к блокмоделингу:
Network> Create Partition> Blockmodeling∗ - Optimize Partition - Structural Equivalence - RUN – Standard
Отчет:
------------------------------------------------------------------------------
Blockmodeling using network: 2. Extracting N1 according to C1 [1-4] (52)
------------------------------------------------------------------------------
Model2 description: Structural Equivalence
------------------------------------------------------------------------------
Image matrix definition:
1 2 3 4
-----------------------------------------------------------------------
1: [ - com] [ - com] [ - com] [ - com]
2: [ - com] [ - com] [ - com] [ - com]
3: [ - com] [ - com] [ - com] [ - com]
4: [ - com] [ - com] [ - com] [ - com]
Image matrix penalties:
1 2 3 4
-----------------------------------------------------------------------
1: 1 1 1 1
2: 1 1 1 1
3: 1 1 1 1
4: 1 1 1 1
Initial Image Matrix:
1 2 3 4
1 com com com com
2 - - - -
3 - - - -
4 - - - -
Initial Error Matrix:
1 2 3 4
1 20 37 43 45
2 36 45 51 25
3 6 13 17 14
4 0 0 1 13
Initial error = 366.000
Final Image Matrix:
1 2 3 4
1 com com com com
2 - - - -
3 - - - -
4 - - - -
Final Error Matrix:
1 2 3 4
1 7 28 32 39
2 36 50 55 28
3 6 13 17 14
4 0 0 1 13
Final error = 339.000
! По умолчанию Pajek не учитывает вес связей, поэтому модель не обращает внимания на числовое значение импорта.
Теперь нам нужно сравнить полученные разделения - исходное и сделанное по модели:
- Выберите начальное разделение на группы (Initial partition)
- Выберите новое разделение на группы (New partition)
Partitions> Info> Cramer’s V, Rajski, Adjusted Rand Index
==============================================================================
Cramer's V, Rajski, Adjusted Rand Index
==============================================================================
Rows: World system_reduced (52)
Columns: Optimized BlockModel [Structural Equivalence] (52)
Crosstabs
| 1 2 3 4| Total
---------------------------------------------------------------
1| 10 1 0 0| 11
2| 0 17 0 0| 17
3| 0 0 15 0| 15
4| 0 0 0 9| 9
---------------------------------------------------------------
Total| 10 18 15 9| 52
Warning: 14 cells (87.50%) have expected frequencies less than 5!
The minimum expected cell frequency is 1.56!
---------------------------------------------------------------------
Chi-Square: 148.64646465
Cramer's V: 0.97614648
--------------------------------
Rajski(C1 <-> C2): 0.90236578
Rajski(C1 -> C2): 0.95213980
Rajski(C1 <- C2): 0.94524024
--------------------------------
Adjusted Rand Index: 0.94613406
--------------------------------
Случайный запуск / Random start
Второй метод ищет наиболее подходящее разделение без учета начального разделения, предоставленного пользователем программы.
Network> Create Partition> Blockmodeling∗ - Random start - Structural Equivalence - 4 clusters - RUN – Standard
Результат: улучшение!
Blockmodeling using network: 2. Extracting N1 according to C1 [1-4] (52)
------------------------------------------------------------------------------
Model2 description: Structural Equivalence
------------------------------------------------------------------------------
Image matrix definition:
1 2 3 4
-----------------------------------------------------------------------
1: [ - com] [ - com] [ - com] [ - com]
2: [ - com] [ - com] [ - com] [ - com]
3: [ - com] [ - com] [ - com] [ - com]
4: [ - com] [ - com] [ - com] [ - com]
Image matrix penalties:
1 2 3 4
-----------------------------------------------------------------------
1: 1 1 1 1
2: 1 1 1 1
3: 1 1 1 1
4: 1 1 1 1
Final Image Matrix:
1 2 3 4
1 com com com com
2 com com - com
3 - - - -
4 - - - -
Final Error Matrix:
1 2 3 4
1 0 2 11 6
2 8 6 25 39
3 9 3 51 30
4 10 12 28 41
Final error = 281.000
Процедура создает матрицу изображений, где страны класса 2 экспортируют различные производства металлов во все остальные страны, за исключением стран класса 3, тогда как страны класса 1 экспортируют во все остальные страны. Страны классов 3 и 4 только импортируют, а не экспортируют различные изделия из металла.
Блокмоделинг на основе регулярной эквивалентности
Структурная эквивалентность требует, чтобы у эквивалентных акторов были одинаковые соседи. В некоторых приложениях анализа социальных сетей этот критерий является слишком строгим, поскольку он не группирует акторов, которые выполняют одну и ту же роль в разных местах, например, преподавателей разных университетов, у которых есть разные студенты, поэтому у них есть связи с похожими людьми, но не с теми же людьми.
Вершины, которые являются регулярно эквивалентными, не обязательно должны быть соединены с одними и теми же вершинами, но они должны быть связаны с вершинами одного и того же класса.
- Регулярный (regular) блок содержит не менее одной связи в каждой строке и в каждом столбце.
- Структурная эквивалентность — это особый вид регулярной эквивалентности; регулярная эквивалентность является более общей, чем структурная эквивалентность.
Вместо использования определенного типа эквивалентности для определения разрешенных типов блоков мы можем использовать любую комбинацию разрешенных типов блоков для характеристики сети, указав тип(ы), разрешенные для каждого отдельного блока. Этот метод называется обобщенным блокмоделингом.
Применение
- Структурная эквивалентность: каждый блок должен быть либо полным (com), либо пустым (null).
- Регулярная эквивалентность: каждый блок должен быть либо полным, либо пустым, либо регулряным.
Пользователь не может контролировать расположение полных, пустых и обычных блоков в матрице изображения.
- Обобщенный блокмоделинг: возможность задания (и фиксации) типа эквивалентности каждого блока в матрице изображения.
Подготовка файлов:
Файл student_government.paj
Network - Info
Partition - Info
1. student_government.clu (11)
==============================================================================
Cluster Freq Freq% CumFreq CumFreq% Representative
----------------------------------------------------------------
1 3 27.2727 3 27.2727 advisor1
2 7 63.6364 10 90.9091 minister1
3 1 9.0909 11 100.0000 pminister
----------------------------------------------------------------
Sum 11 100.0000
Основываясь на формальной информации о сети, мы можем создать матрицу изображений и подсчитать количество ошибок в каждом блоке (матрица ошибок), где класс 1 содержит премьер-министра, класс 2 содержит министров, а советники сгруппированы в класс 3. Это решение с формальными ролями как классами эквивалентности. Итоговая ошибка = 8.

Дискуссионная сеть студенческого самоуправления является примером ранжированной структуры, которая подразумевает определенное расположение типов блоков. Предполагается, что в ранжированной структуре акторы "выбирают вверх". Если ранги упорядочены таким образом, что самый высокий ранг находится в первых строках (и столбцах), а самый низкий ранг занимает последние строки (и столбцы), мы не должны сталкиваться с выборами в блоках выше диагонали матрицы, потому что они указывали бы на связи от более высокого ранга (строки) к более низкому рангу (столбцу). Действительно, мы находим пустые (нулевые) блоки только выше диагонали в матрице изображения сети студенческого самоуправления, что является общим свойством ранжированной структуры.
Регулярная эквивалентность
Network> Create Partition> Blockmodeling∗> Random Start - Regular Equivalence [3 classes]
------------------------------------------------------------------------------
Blockmodeling using network: 3. student_government.net (11)
------------------------------------------------------------------------------
Model2 description: Regular Equivalence
------------------------------------------------------------------------------
Image matrix definition:
1 2 3
------------------------------------------------------
1: [ - com reg] [ - com reg] [ - com reg]
2: [ - com reg] [ - com reg] [ - com reg]
3: [ - com reg] [ - com reg] [ - com reg]
Image matrix penalties:
1 2 3
------------------------------------------------------
1: 1 1 1
2: 1 1 1
3: 1 1 1
Final Image Matrix (for the first obtained solution):
1 2 3
1 reg reg -
2 - reg -
3 com - -
Final Error Matrix (for the first obtained solution):
1 2 3
1 0 0 0
2 5 0 0
3 2 0 0
Final error = 7.000 (6 solutions)
Решения представлены в виде разделения на группы в главном окне Pajek. Находим 6 решений с 7 ошибками (при регулярной эквивалентности с 3 классами и 1000 повторениями). Недостаток в том, что выбор должен быть сделан из семи альтернативных решений.
Обобщенный блокмоделинг
Обобщенный блокмоделинг предлагает возможность указания (и фиксации) типа эквивалентности каждого блока в матрице изображения. Например, мы можем захотеть проверить, соответствует ли блокмодель, основанная на регулярной эквивалентности, дискуссионной сети студенческого самоуправления с тремя классами, в которых каждый класс консультирует более высокие классы (если таковые имеются), и все, кроме самого низкого класса, консультируют членов своего собственного класса. Мы можем установить такую модель.
Network> Create Partition> Blockmodeling∗> Random Start - User defined
Используем следующие условия:

Посмотрим на результаты:
------------------------------------------------------------------------------
Blockmodeling using network: 3. student_government.net (11)
------------------------------------------------------------------------------
Model2 description: User Defined
------------------------------------------------------------------------------
Image matrix definition:
1 2 3
------------------------------------------------------
1: [reg] [ - ] [ - ]
2: [reg] [reg] [ - ]
3: [reg] [reg] [ - ]
Image matrix penalties:
1 2 3
------------------------------------------------------
1: 1 1 1
2: 1 1 1
3: 1 1 1
Final Image Matrix (for the first obtained solution):
1 2 3
1 reg - -
2 reg reg -
3 reg reg -
Final Error Matrix (for the first obtained solution):
1 2 3
1 0 3 0
2 0 0 3
3 0 0 1
Final error = 7.000 (2 solutions)
- Можем сохранить как файл MDL (model) (чтобы использовать в следующий раз)
Рекомендуется следующая стратегия для эксплораторного блокмоделирования: (1) использовать результаты другого анализа и теоретических соображений для построения матрицы изображений; (2) сначала попробовать более строгие блокмодели и типы блоков (структурная эквивалентность более строга, чем обычная эквивалентность); (3) сначала попробовать меньшее количество классов. Выберите блокмодель с наименьшей оценкой ошибок, но если модель с немного более высокой оценкой ошибок дает решение, которое легко интерпретировать, вам следует отдать предпочтение последнему.
Блок-моделирование используется для проверки гипотез, а не для исследования.