Показаны сообщения с ярлыком социальная селекция. Показать все сообщения
Показаны сообщения с ярлыком социальная селекция. Показать все сообщения

четверг, 21 января 2016 г.

Что такое гомофилия

В этом посте поговорим про гомофилию – одну из важнейших и самых известных сетевых особенностей. Самое простое определение гомофилии – это склонность людей со схожими характеристиками общаться друг с другом.
Сложно понять, откуда все-таки пошло распространение этой идеи. Есть мнение, что первыми были Лазарсфельд и Мертон (1954), которые впервые в современном социологическом смысле употребили термин «гомофилия». В то же время, МакПерсон с коллегами в своей классической работе «Рыбак рыбака видит издалека: гомофилия в социальных сетях» (2001) пишут, что эта идея встречается еще у Платона и Аристотеля. В истоках копаться всегда тяжело, поэтому не будем останавливаться на этом в подробностях, а лучше опишем, в каких случаях наблюдается гомофилия и что сейчас интересного в этой теме.

          На чем строится гомофилия
Существует известный набор факторов, схожесть по которым ведет к формированию связей. Это:
  • раса и этничность
  • пол
  • возраст
  • религия
  • образование, работа и социальный класс
Гомофилия по этим признакам изучена в большом количестве работ, и в них мы можем быть уверены.
В то же время, гомофилия не формируется сама по себе. Как правило, существуют институциональные или географические факторы, которые способствуют созданию гомофильных связей. К примеру, люди, которые проживают на небольшом расстоянии друг от друга, работают в одной организации или каждое утро сталкиваются в кафе за покупкой кофе, скорее всего, со временем познакомятся и сформируют социальные связи.

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

Сеть дружбы американских школьников на основе данных из работы Дж. Муди (2011). Цвет узлов обозначает расу школьников. Источник рисунка.

       Эта визуализация основана на данных из работы Джеймса Муди "Раса, школьная интеграция и дружеская сегрегация в Америке" (2011), в которой он изучал, как формируются дружеские связи среди американских школьников. Мы видим, что сеть принимает форму кольца, где есть связующие узлы, однако все равно видно, что учащиеся одной расы склонны дружить друг с другом.

          Структурная гомофилия
Помимо гомофилии по атрибутам узлов в сети (например, пол или возраст узла), также известна гомофилия по сетевому положению узлов (например, популярность узла). Ньюман с коллегами предлагают понятие «ассортативности» сети (например, в этой и этой работах), которая показывает, насколько узлы со схожими показателями популярности/активности/центральности склонны формировать связи друг с другом. В многочисленных работах было показано, что узлы со схожим положением в сети будут с большей вероятностью связаны друг с другом. Например, известно, что популярные люди дружат с такими же популярными.

Слишком похожи?
Одно из любопытных направлений исследований гомофилии сегодня — это ее многогранность и изменчивость. Традиционно гомофилия изучается по схожести на основании одного признака. К примеру, исходя из исследований организаций мы знаем, что люди одного пола склонны формировать связи дружбы или помощи на работе. В то же время, мало работ, в которых изучается совместное влияние схожести по нескольким характеристикам на формирование связей. Может быть, люди одновременно одного пола и этнической группы с большей вероятностью будут дружить, чем если бы они были только одного пола?
Этим вопросом задались исследователи Пер Блок и Томас Грунд, статья которых была опубликована в 2014 году в журнале Network Science. Они проанализировали динамические данные о дружеских связях школьников из 11 европейских и американских баз данных и обнаружили необычную особенность. Школьники с одной общей характеристикой склонны формировать и продолжать дружеские связи. Школьники с двумя и более общими характеристиками не склонны формировать и развивать связи во временем. Вероятно, быть очень похожими — это плохо для дружбы? Люди, у которых  много схожих характеристик, не могут обогатить друг друга, поэтому им становится неинтересно общаться. В результате, для образования дружбы должны быть какие-то схожие характеристики, но их не должно быть слишком много, так как с полным "близнецом" общаться неинтересно. Исследователи именно так и объясняют свои результаты, в то же время обращая внимание на то, что многомерная гомофилия требует дальнейшего изучения и на других выборках.

среда, 13 января 2016 г.

Как развиваются социальные сети: пример в RSiena

Зачем изучать динамику социальных сетей?
В последние годы тема эволюции сети стала одной из основополагающих в сетевом анализе. Основное достоинство динамических исследований в том, что они позволяют понять структуру причинно-следственных связей в сети. Приведем простой пример: двое друзей-подростков любят фаст фуд. В сетевом анализе склонность людей со схожими характеристиками или поведением образовывать между собой связи называется гомофилией. Можно сказать, что между этими подростками наблюдается гомофилия: они оба любят эту еду.
Однако статическая перспектива не позволяет ответить на вопрос о том, каким образом гомофилия формируется. Рассмотрим, как могло так случиться, что наши любители фаст фуда подружились:
1) Каждый из них любил гамбургеры, затем они познакомились и подружились на основе общей любви к этой еде,
2) Оба подростка изначально дружили, и один из них все время ходил в Макдональдс и ел гамбургеры, а его друг постепенно перенял эту привычку.
        В первом случае речь идет о социальной селекции – выборе друга на основании схожих интересов. Во втором случае – о социальном влиянии – изменении поведения под влиянием поведения друга. Ответить на вопрос о том, что стало первопричиной гомофилии (то есть какой из вариантов развития событий был более реалистичным), можно, рассмотрев динамику социальной сети.

Иллюстрация социального влияния и социальной селекции

       Изучение динамики соцсетей позволяет не только разделять селекцию и влияние, но и выявлять ключевые структурные механизмы формирования сетей (например, правда ли, что в этой сети люди формируют связи с друзьями друг друга?), изучать взаимосвязь структурных и не структурных характеристик (правда ли, что популярные пользователи онлайн сетей — это знаменитости, или, наоборот, знаменитости становятся популярными в любой онлайн сети?).
Для изучения эволюции социальной сети все чаще используют стохастическое акторно-ориентированное моделирование (САОМ). Этот метод реализован в пакете RSiena. Предпосылки САОМ достаточно просты – каждый человек понимает свою позицию в социальной системе и меняет свои социальные связи (и поведение) для того, чтобы улучшить эту позицию с течением времени. Например, для улучшения своей позиции в рабочем коллективе сотрудник может пытаться создать хорошие отношения с руководством и коллегами.
Подробнее о методе можно прочитать в обзорной статье (а еще здесь и здесь). По этой ссылке можно ознакомиться с эмпирическими исследованиями, выполненными с использованием САОМ. О том, как работать с пакетом RSiena, подробно написано в мануале.
Если Вы планируете использовать САОМ в своих исследованиях, то стоит подписаться на рассылку пользователей RSiena. Там Вы не только сможете узнать много полезного о САОМ, но и всегда будете в курсе новинок – главный разработчик RSiena Том Снайдерс регулярно сообщает новости о развитии модели и новшествах пакета, размещает информацию о конференциях, воркшопах и вакансиях в сфере социальных сетей.

Немного магии
Разобраться в САОМ лучше всего на примере. Рассмотрим, каким образом происходила эволюция социальной сети помощи по выполнению домашних заданий в Хогвартсе. Для тех, кто не понимает о чем речь, Хогвартс — это магическая школа, в которой учился Гарри Поттер и его друзья из книги Джоан Роулинг. Джоэль Боссаэрт и Надин Маэдерт в своей работе собрали информацию о помощи при подготовке домашних заданий из первых 6 книг о Гарри Поттере. Так как в седьмой книге главные герои не стали посещать школу, информации об обучении в ней почти не было.

Источник изображения
 Рассмотрим на примере, как была собрана информация о сетях помощи:
"Гарри, Рон и Гермиона сидели у окна — Гермиона проверяла их домашние задания по заклинаниям. Она никогда не давала им списывать, — «Как же вы тогда чему-нибудь научитесь?» — но зато согласилась проверять их домашние работы, и таким образом они все равно узнавали от нее правильные ответы" (Джоан Роулинг, Гарри Поттер и философский камень, гл. 11)

С сетевой точки зрения этот фрагмент можно интерпретировать следующим образом: 1) Гермиона помогает Гарри; 2) Гермиона помогает Рону. Все данные по помощи в «Гарри Поттере» размещены в открытом доступе по ссылке.
В этом посте мы хотим понять, как изменяются сети помощи от второй к четвертой книге. Мы не рассматриваем другие книги, так как это потребовало бы использования процедур по восполнению пропущенных данных (composition change). Со всеми процедурами можно ознакомиться в мануале.
Итак, проводим анализ эволюции социальной сети. Для этого необходимо загрузить пакет RSiena (версия 1.1-289) отсюда. Более ранние версии использовать не рекомендуется. Potter_01
In [ ]:
# Для работы нам понадобится пакет RSiena
library(RSiena)
library(parallel)
In [ ]:
# Скачаем данные с сайта: http://www.stats.ox.ac.uk/~snijders/siena/
# Сами данные на вкладке Data Sets,
# Cкачаем архив в нашу рабочую директорию и распакуем

# Загружаем данные из 2 и 4 книги
book2 <- as.matrix(read.table("hpbook2.txt"))
book4 <- as.matrix(read.table("hpbook4.txt"))
In [ ]:
# Посмотрим на заголовки наших данных
head(book2)
# Они у нас представлены в формате матрицы, где 1 - есть связь, 0 -нет связи
Out[ ]:
V1V2V3V4V5V6V7V8V9V10V55V56V57V58V59V60V61V62V63V64
00000000000000000000
01100000000100000000
01100000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
In [ ]:
# Прикрепляем атрибуты участников сети
# Это год обучения, пол и факультет
hp.attributes <- as.matrix(read.table("hpattributes.txt", header=TRUE))
head(hp.attributes)
Out[ ]:
idschoolyeargenderhouse
11989 1 4
21989 2 1
31989 2 1
41991 1 3
51991 1 4
61989 1 4
In [ ]:
# Соединяем все социальные сети в один объект
# Каждая сеть состоит из 64 узлов и их всего две
support <- sienaDependent(array(c(book2,book4),  dim=c(64, 64, 2)))

# Даем названия интересующим нас атрибутам акторов
schoolyear <- coCovar(hp.attributes[,2])
gender     <- coCovar(hp.attributes[,3])
house      <- coCovar(hp.attributes[,4])
In [ ]:
# Формируем модель, которую назовем Хогвартс
# Она состоит из двух сетей помощи и наших атрибутов
Hogwarts  <- sienaDataCreate(support, schoolyear, gender, house)
Hogwarts
Hogwarts_effects <- getEffects(Hogwarts)
In [ ]:
# Спецификация модели: добавляем эффекты
# Добавляем два эффекта для транзитивности («друг моего друга – мой друг»)
Hogwarts_effects <- includeEffects(Hogwarts_effects, transTies)
In [ ]:
# Добавляем эффект популярности и активности
# (с течением времени популярные акторы становятся еще популярнее,
# а активные - еще активнее)
# Также добавляем эффект социальной селекции по полу
# (ученики склонны завязывать связи с учениками их пол)
Hogwarts_effects <- includeEffects(Hogwarts_effects,
                                   egoX,
                                   altX,
                                   simX,
                                   interaction1="gender")
In [ ]:
# Добавляем социальную селекцию по курсу
# (ученики одного года обучения склонны помогать друг другу)
Hogwarts_effects <- includeEffects(Hogwarts_effects,
                                   simX,
                                   interaction1="schoolyear")
In [ ]:
# Добавляем социальную селекцию по факультету
# (ученики одного факультета склонны помогать друг другу)
Hogwarts_effects <- includeEffects(Hogwarts_effects,
                                   sameX,
                                   interaction1="house")
In [ ]:
# Алгоритм оценки
Algorithm <- sienaAlgorithmCreate(projname="Hogwarts", cond=FALSE)
In [ ]:
# Результаты!
Results <- siena07(Algorithm, data=Hogwarts, effects=Hogwarts_effects,
                   useCluster=TRUE, initC=TRUE, nbrNodes=4, batch=TRUE)
Results
Out[ ]:
Estimates, standard errors and convergence t-ratios

                                       Estimate   Standard   Convergence 
                                                    Error      t-ratio   
  1. rate basic rate parameter support 27.9679  ( 6.9952   )   -0.0356   
  2. eval outdegree (density)          -6.9758  ( 0.8677   )   -0.0010   
  3. eval reciprocity                   3.0151  ( 0.7645   )    0.0032   
  4. eval transitive ties               3.9098  ( 0.7999   )    0.0112   
  5. eval schoolyear similarity        -0.2482  ( 0.9284   )    0.0251   
  6. eval gender alter                 -1.8397  ( 2.4986   )    0.0773   
  7. eval gender ego                   -2.3509  ( 2.5949   )    0.0127   
  8. eval gender similarity            -1.8568  ( 2.4702   )   -0.0557   
  9. eval same house                    0.4713  ( 0.8268   )    0.0109   

Overall maximum convergence ratio: 0.1874. Total of 2160 iteration steps.


После получения результатов первым дело нужно оценить сходимость модели. В настоящий момент она определяется по двум параметрам:
1) общая t-статистика (Overall maximum convergence ratio) должна быть меньше 0.25;
2) t-статистики (convergence t-ratio) для каждой из переменных должны быть по абсолютному значению меньше 0.1.
         В нашем случае общая t-статистика 0.23, а максимальная t-статистика переменной 0.072, то есть модель сходится и можно приступить к интерпретации полученных результатов.
В отличие от большинства моделей (линейная модель, обобщенная линейная модель, ERG модели и т.д.), в RSiena нет указаний значимости переменных. P-значимость каждой из переменных вычисляется исходя из z-распределения – нужно разделить значение оценки (Estimate) на ошибку (SE). В случае, если отношение больше 2 (точнее 1.96, но на глаз удобнее делить на 2), то этот эффект оказывает значимое влияние на эволюцию социальной сети на уровне 5%.
Посмотрим, что получилось у нас:
  • Параметр "rate basic parameter supportпоказывает, насколько значимы изменения в нашей сети произошли за период наблюдений. Мы видим, что сеть сильно изменилась. 
  • Эффект "eval outdegree (density)" значим и отрицателен. Это говорит о том, что акторы не стремятся формировать связи. Если же связи формируются, то они склонны быть взаимными и транзитивными. 
  • Взаимность "eval reciprocityзначима и положительна. Мы можем с уверенностью сказать, что если Гарри помогает Рону, то и Рон с большой вероятностью будет помогать Гарри. 
  • Транзитивность "eval transitive tiesтоже значима и положительна. Это значит, что если Гермиона помогает Гарри, а Гарри помогает Рону, то в один прекрасный день Гермиона начнет помогать Рону. 
  • Эффект схожести по курсу обучения "eval school year similarityоказывается незначимым. То есть ребята с других курсов мало помогают друг другу в учебе. Эффекты, связанные с полом "eval gender alter", "eval gender ego" и "eval gender similarity", оказываются незначимымиТо есть поведение мальчиков и девочек в сети помощи не имеет значимых различий. Кроме того, мы не наблюдаем сегрегации по полу. Иными словами, и юноши, и девушки в одинаковой степени помогают друг другу, нет явных тенденций.
  •  Наконец, эффект факультета "eval same houseтакже оказывается незначимым. С одной стороны это удивительный результат, так как по логике книги учащиеся из одного факультета гораздо чаще общаются между собой и обычно вместе работают над заданиями. Однако в нашу выборку практически не входит конкретная информация о том, сколько кто и кому помогал на факультете Слизерина. Так что незначимая оценка эффекта может быть связана с тем, что мы полностью сконцентрированы на Гриффиндоре и в данных нет достаточной вариации.

Ограничения САОМ
Хотя САО модели и стали сегодня крайне популярны в сетевом анализе, не стоит забывать и об ограничениях данного метода. Во-первых, в рассматриваемой социальной сети должны происходить изменения, но они не должны быть очень существенными. Коэффициент Жаккара для двух сетей должен быть в интервале от 0,3 до 0,6. То есть с помощью RSiena нельзя моделировать ни формирование сети с нуля, ни очень незначительные изменения в сети. Во-вторых, размер социальной сети не должен превышать 2-3 сотен вершин. В большинстве эмпирических работ, сделанных в RSiena, размер соцсетей и вовсе не превышает даже ста вершин. В-третьих, социальные связи не должны быть единичными «событиями», это должны быть регулярные взаимоотношения. То есть, моделируя социальную сеть общения в Твиттере, в качестве единичного наблюдения нельзя брать один единственный ретвитт.
По этим причинам, в большинстве своем исследования с использованием САОМ проводятся на данных о дружбе и помощи учащихся, а также на данных о взаимодействиях сотрудников организаций. Ну или на данных о школах волшебников!