Визуализация социальных сетей: мои первые шаги

Вчера по приглашению бывшей студентки вещал про социальные сети на Научно Исследовательском Семинаре родной кафедры НИУ ВШЭ. Т.к. создание слайдов de facto стало одной из моих основных должностных обязанностей, решил выступить по старинке, без отвлекающих картинок. Ибо на мой взгляд для объяснения о Social Network Analysis нет ничего вреднее, чем мельтешащие “волосяные шары”

Однако сейчас, проспавшись и образумев, решил что иная крайность также вредна, и стал собирать в одну пачку слайдов иллюстрации к той слабоструктурированной лавине материала, которую я успел выдать за 2,5 часа непрерывного чесания языком. Т.к. выступление основывалось на моём опыте исследований и проектов, связаных с Social Network Analysis в Живом Журнале, Твиттере, Вконтакте и Фейсбуке, то некоторые картинки пришлось разыскивать в самых отдалённых уголках Живого Журнала и жесткого диска.

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

06_09a06_09b

Лето 2009 года. Это я решил поиграться с очередной задумкой то-ли провизора то-ли прохиндея от SNA Питера Глура. Того самого, который сейчас продолжает навешивать на людей в офисах электронные маячки, анализируя затем полученные сети коммуникации. Об этом у меня была заметка на WebScience а также на прошлом Sunbelt я сфотографировал Питера с таким маячком на фоне его постера, который и послужил поводом для написания той статьи.

Сервис, в котором сделаны эти картинки, назывался, кажется, Coolhunter и уже приказал долго жить. И если честно, то я навскидку не скажу, существует ли подобный функционал в какой либо из современных систем мониторинга и аналитики в Social Media.

Впрочем, деталей работы этого сервиса я тоже не помню – может быть что-то всплывало в комментариях к посту в Живом Журнале, где эти картинки были опубликованы впервые. Ну или прочитать книжку “Coolhunting: Chasing Down the Next Big Thing“, где подход и технология расписаны достаточно подробно, чтобы продать, но не настолько, чтобы воспроизвести “с нуля”.

Продолжение следует…

Social Network Analysis: он-лайн курс по анализу социальных сетей от Coursera

Coursera SNA На Coursera стартовал второй сезон курса по анализу социальных сетей. Насколько я знаю, на данный момент это единственный он-лайн курс по сетевому анализу, поэтому всем, кто интересуется данной темой, имеет смысл обратить на него внимание. Я прошёл его в прошлый раз и поделюсь тут своими впечатлениями.

Несмотря на то, что курс озаглавлен как Social Network Analysis, социологической составляющей в нём не так много, как хотелось бы. Читает его Lada Adamic, обессмертившая себя визуализацией американской политической блогосферы накануне выборов 2004 года. Лада относится к молодому поколению исследователей социальных сетей, которое, как правило, представлено выходцами из математики, физики и Computer Science и в силу своего образования тяготеющего к математическим, вычислительным и алгоритмическим аспектам сетевого анализа. А с появлением “библии” данного направления — книги Марка Ньюмена “Networks: Introduction” — и журнала “Network Science”, данная область стала отличаться от анализа социальных сетей также и институционально.

Lada Adamic usa political blog network
Если бы Лада получала royalty за каждое использование данной визуализации, она бы уже давно могла бросить работу и жить на отчисления. Впрочем, судя по тому, что она не использовала её в качестве логотипа своего курса, возможно эти права принадлежат кому-то другому.

Собственно поэтому, несмотря на то, что в курсе покрыты стандартные для SNA темы центральностей, выявления сообществ, визуализаций и т.д., всё-таки заметен уклон в сторону математических моделей (Erdos-Renyi, Scale-Free, preferential attachment), симуляций (в одном из домашних заданий нужно было написать фрагмет кода на SCALA для NetLogo), анализа и визуализации сетей, узлами которых не являются люди (например, та же сеть рецептов) и всего того, что логичнее относить к области Network Science.

В общем и целом, курс оставил впечатление довольно сырого (система не смогла распознать одну из моих домашек и её мне не засчитали) и не очень хорошо структурированного (в отличие от Networked Life, о котором я недавно писал).

К плюсам можно отнести видео-интервью с людьми, которые занимаются анализом социальных сетей в таких компаниях как Facebook (Cameron Marlow), LinkedIn (Sébastien Heymann, по совместительству создатель Gephi).

Впрочем, от обзорного курса сложно требовать что-то большее. Тем более, когда он является единственным в своём роде.

Краткий мануал по визуализации и анализу в ORA.

Небольшой мануал по анализу социальных сетей в ORA.

 

Запустите ORA и откройте в ней файлы тех вопросов, которые вам достались: File -> Open Meta Network … или Сtrl-O..
В ORA файлы, содержащие узлы и различные виды связей между ними называются meta-networks.  Т.к. вам нужно будет сравнить между собою ответ на один и тот же вопрос в двух разных группах, то всего у вас должно быть открыто 2 meta-networks, как показано на рисунке.

 

ORA Main Window
Главное окно ORA

Если раскрыть одну такую meta network, то в ней можно увидеть несколько сетей, названных по ключевому слову того или иного вопроса. Чтобы визуализировать какую-либо из них, нужно выделить её и нажать на кнопку Visualize this Network и Visualize Only this Network.

 

ORA Networks`
Networks in ORA

Разница между ними только в том, что вторая позволяет «на лету» менять социограммы, отмечая галочкой соответствующие сети в окошке с «легендой» (Legend).  Если вы отметите там сразу 2 или больше сети, то на одном и том же наборе «кружочков» будет отображено сразу несколько видов связей между ними, каждая из которых представляет тот или иной вопрос. Для того, чтобы их как-то различать, можно поменять цвет для той или иной связи, кликнув по ней в окне с легендой и выбрав цвет. См. рис. 2

 

Network Visualization in ORA
Одновременная визуализация двух сетей

Само по себе меню визуализатора ORA довольно элементарно и вы можете быстро разобраться с ним просто понажимав на различные иконки. Для более детальных настроек цвета, формы, размера «кружочков» и связей, выбора цвета заднего фона и т.д., вы можете обратиться к меню Display.

Картинка сохраняется через меню File –> Save Image to File… или через буфер обмена File à Copy Image to Clipboard с последующей вставкой в Paint или любой другой графический редактор.

                        Стандартный анализ сети.

Перед началом анализа рекомендуется отключить те показатели, подсчёт которых занимает много времени. Делается это в меню Preferences à Measures à Do not use slow measures

 

ORA SNA Report
Отключение медленных метрик

Процедура Standart Network Analysis находится в меню Analysis à Generate Reports… -> Locate Key Entities -> Standart Network Analysis

 

ORA SNA Report
Отчет "Стандартный Анализ Социальной Сети"

При выборе этого отчёта вы получите следующие меню:

 

ORA Reports Menu 1
Выбор одной или нескольких сетей для анализа

В нём достаточно отметить галочкой ту meta-network, которую вы хотите визуализировать и нажать Next.

 

ORA Reports 2
Выбор максимального числа акторов для отображения результатов

Это окно предлагает выбрать количество мест в «рейтинге» различных видов центральностей. По умолчанию их 10. Можете изменить это число по желанию.

Ниже вам нужно будет отметить галочкой тот вопрос, который вы хотите анализировать. Выбираете его и нажимаете Next.

 

ORA Reports 3
Выбор формата и места сохранения отчета

Последнее меню предлагает вам сохранить результаты в различных форматах, а также выбрать папку для сохранения и название файла с отчётом. ВНИМАНИЕ!!! Путь к месту сохранения файла с отчётом НЕ ДОЛЖЕН СОДЕРЖАТЬ КИРИЛЛИЧЕСКИХ СИМВОЛОВ. Иначе ОРА выдаст ошибку. Поэтому, если у вас русскоязычная Windows, то не пытайтесь сохранить отчёт в «Моих документах» или на «Рабочем столе». Нажав Finish, вы получите отчёт в тех форматах, которые вы выбрали (обычно это HTML).

В следующем разделе мы рассмотрим из чего этот отчёт состоит.

                             Standart Network Analysis Report.

Нижеследующий текст относится к отчёту в формате HTML. В других форматах будут небольшие отличия.

Помимо служебной информации об отчёте и картинки, основная информация о социограмме находится в двух таблицах:  Network Level Measures и Node Level Measures. Первая содержит сводную информацию о сети в целом, а вторая – о характеристиках отдельных узлов.

Т.к. на лекции я рассказывал про то, что обозначают различные виды центральности и некоторые характеристики сети в целом, я не буду подробно на этом останавливаться. Перед каждым видом центральности в самом отчёте есть её краткое описание на английском языке. Описания остальных характеристик и индексов можно найти в справке, которая вызывается в меню Help à Help Contents

 

ORA Centralities
Справка ORA по центральностям

В длинном списке из папки Measures вы можете найти краткую справку для любого показателя из отчёта. Наиболее интересными для вас являются следующие показатели:

  • Density
  • Isolate count
  • Component count
  • Reciprocity
  • Characteristic path length

Что касается характеристик отдельных узлов (центральностей), то из них вы выбираете те, которые, на ваш взгляд, подходят по содержанию вашей сети.

                   О программе.

Для работы можно воспользоваться самой свежей версией программы: ORA. 2.2.8. Если с ней возникнут проблемы, можете попробовать версию 2.0.8  — она наиболее стабильна из старых. Список всех версий и ссылки для скачивания тут:
http://www.casos.cs.cmu.edu/projects/ora/versions.html

Перед скачиванием от вас потребуют пройти небольшую регистрацию. Её можно заполнить “от балды”, главное только соблюсти правило написания почтового адреса. Напр., ssgjls@glsdf.com

Workshop on ERGM (p*) in statnet

ERGM (Exponential Random Graph Models) или p* models — это семейство моделей, основанных на случайных графах, с помошью которых можно выявлять наличие (или отсутствие) различных структурных эффектов (реципрокность, транзитивность, цикличность, гомофилия и т.д.) в сети. Т.е. мы можем сказать, является ли наблюдаемая сеть результатом повышенной/пониженной взаимности социальных отношений (реципрокность), действует ли в ней правило "друг моего друга — мой друг" (транзитивность) и склонны ли акторы этой сети выбирать контрагентов со схожими характеристиками (гомофилия). Данная тема составляет значительную часть моей диссертации, поэтому наверняка она ещё не раз тут всплывет.

С этой методикой я познакомился на летней школе в Эссексе, но распробовал все её достоинства не сразу. Но было уже поздно и поэтому пришлось вгрызаться в дебри формул и статистических подробностей самостоятельно. Однако, на помощь мне пришло видео, где David Hunter и Steve Goodreau – одни из ключевых авторов по данной тематике — 5 часов к ряду объясняют как начинку, так и реализацию ERGM в statnet. Это единственное видео подобной длины, которое я не только внимательно просмотрел, но и законспектировал. На прошедшем Sunbelt Стив постоянно курсировал в холле, но я так и не решился подойти к нему и поблагодарить. О чем сейчас жалею.

Goudreau-Hunter Political Networks 2009 1 of 5 from David Lazer on Vimeo.

Остальные части записи можно найти там же.

TouchGraph – визуализация эгоцентрической сети в Facebook

По большому счёту я завёл профиль в Facebook лишь для того, чтобы посмотреть, как работает CEMAP II – расширение для программы анализа социальных сетей ORA, позволяющее скачивать, анализировать и визуализировать сетевые данные из различных источников – Facebook, Twitter, YouTube, etc. Её настройка была не самой простой, да и требовала установленной ORA.

А тут на вводной лекции по курсу “Advanced Network Analysis I – Selection Mechanisms and Social Structure” профессор John Skvoretz представил аналогичную разработку своих знакомых – TouchGraph. Судя по всему, это полноценное приложение для визуализации и анализа сетевых данных, однако для затравки у них есть “пробник” под названием TouchGraph Facebook Browser. В отличие от CEMAP II, он является самостоятельным приложением, написанным на Java, для работы которого достаточно просто воспользоваться сервисом Facebook Connect. Имеются также аналогичные приложения для Amazon и Google.

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

Facebook profile network visualization in TouchGraph
Интерфейс TouchGaph с визуализацией эго-сети и настройками

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

Картинку эгосети размером до 20 пользователей можно загружать на свою страничку в Facebook. Не знаю, существуют ли уже подобные приложения для “Вконтакте”, но, разумею, что их появление не за горами.