Анализ социального графа: выявление связей, ближнего круга и скрытых сообществ
Анализ социального графа: выявление связей, ближнего круга и скрытых сообществ
Человек в социальных сетях не существует изолированно. Его подписчики, друзья, подписки, взаимодействия (лайки, комментарии, репосты) образуют социальный граф — сеть связей, отражающую реальные отношения, интересы и влияние. Анализ этого графа позволяет выявить ближний круг цели, ее аффилиации, иерархию в сообществах и даже скрытые связи, которые не очевидны при поверхностном просмотре. Данная статья посвящена методам и инструментам анализа социального графа.
Социальный граф — это структура, где:
Вершины (ноды): Пользователи, сообщества, страницы.
Рёбра (связи): Дружба, подписки, упоминания, комментарии, лайки, репосты, совместные фото, участие в общих группах.
Типы связей и их разведывательная ценность
Интересы, кумиры, источники информации
Аудитория, влияние, потенциальные связи
Интересы, поддержка, одобрение
Активные связи, уровень вовлеченности
Солидарность, согласие с позицией
Общие интересы, профессиональные связи
Совместное времяпрепровождение
Методология анализа социального графа
Для каждой платформы методы сбора различаются:
Через официальный API (требует авторизации) можно получить список друзей, подписчиков, подписок.
Инструменты: VK API, VK Parser, TargetHunter, VK Gee.
Ограничения API: 5000 запросов в день (для приложений), но можно увеличить.
API Facebook строго ограничен после скандала. Получение списка друзей затруднено.
Альтернативы: ручной сбор через браузер (скроллинг), расширения (Social Analyzer), OSINT-инструменты.
API ограничен. Для сбора подписчиков/подписок используются парсеры (Instaloader, OSINTgram).
Instaloader: Позволяет скачивать списки подписчиков и подписок.
API позволяет получать подписчиков, подписки, упоминания.
Бесплатный API имеет ограничения; для массового сбора требуется платный доступ.
Сбор участников публичных чатов и каналов через клиентские боты или парсеры (Telethon, Pyrogram).
Собранные данные преобразуются в граф для визуального анализа.
- Gephi:
- Профессиональный инструмент для визуализации и анализа графов.
- Поддерживает импорт CSV, GEXF, GraphML.
- Алгоритмы раскладки (Force Atlas, Fruchterman-Reingold) позволяют выявить кластеры.
- Метрики: степень (degree), посредничество (betweenness), кластеризация.
- Cytoscape:
- NetworkX (Python):
- Библиотека для анализа графов.
- Позволяет вычислять центральность, плотность, компоненты связности.
- Визуализация через matplotlib или экспорт в Gephi.
- Maltego:
- Платформа OSINT с встроенными трансформами для сбора связей.
- Автоматически строит граф, позволяет добавлять новые сущности.
- Kumu / NodeXL:
Пример кода (Python + NetworkX):
import networkx as nx
import matplotlib.pyplot as plt
# Создание графа
G = nx.Graph()
# Добавление вершин (пользователей)
G.add_node("Цель")
G.add_node("Друг_1")
G.add_node("Друг_2")
G.add_node("Коллега_1")
# Добавление связей
G.add_edge("Цель", "Друг_1", weight=5) # вес = частота взаимодействий
G.add_edge("Цель", "Друг_2", weight=3)
G.add_edge("Цель", "Коллега_1", weight=1)
G.add_edge("Друг_1", "Друг_2", weight=2)
# Расчет центральности (важности узлов)
centrality = nx.degree_centrality(G)
print(centrality)
# Визуализация
pos = nx.spring_layout(G)
nx.draw(G, pos, with_labels=True, node_color='lightblue', edge_color='gray')
plt.show()Для понимания структуры и выявления ключевых фигур используются метрики:
- Степень (Degree): Количество связей узла. Высокая степень может указывать на центральную фигуру.
- Центральность по посредничеству (Betweenness Centrality): Узлы, через которые проходят многие пути. Посредники между группами.
- Центральность по близости (Closeness Centrality): Узлы, быстро достигающие других. "Информационные хабы".
- Коэффициент кластеризации (Clustering Coefficient): Насколько плотно связаны соседи узла. Высокий коэффициент = плотная группа.
- Эксцентриситет (Eccentricity): Максимальное расстояние до других узлов. Крайние узлы сети.
Этап 4: Выявление скрытых сообществ
Алгоритмы кластеризации позволяют выделить группы узлов с высокой внутренней плотностью связей.
- Louvain algorithm: Обнаружение сообществ в графах.
- Girvan-Newman: Иерархическая кластеризация.
- K-means (на основе векторов смежности): Для больших графов.
Практические методики анализа связей
Методика 1: Выявление ближнего круга
- Сбор всех друзей/подписчиков цели.
- Фильтрация:
- Взаимные друзья (дружба в обе стороны).
- Пользователи, с которыми цель активно взаимодействует (лайки, комментарии).
- Пользователи, отмеченные на совместных фото.
- Анализ общего:
- Ранжирование: Ближний круг — пользователи, имеющие 3+ из перечисленных признаков.
Методика 2: Анализ влияния (кто на кого влияет?)
- Анализ лайков: Кто чаще всего лайкает посты цели? Кого чаще всего лайкает цель?
- Анализ репостов: Кто репостит контент цели? Чей контент репостит цель?
- Анализ комментариев: С кем цель ведет диалоги? Кто комментирует ее посты?
- Построение ориентированного графа: Направленные связи (кто на кого подписан, кто кого лайкает) показывают направление влияния.
Методика 3: Выявление скрытых связей
Связи могут быть скрыты, если пользователи не состоят в друзьях, но пересекаются в других контекстах.
- Общие группы: Поиск групп, в которых состоят и цель, и потенциальные контакты.
- Общие геолокации: Отметки в одних и тех же местах (кафе, мероприятия, офисы).
- Общие упоминания: Кто упоминался в одних и тех же постах.
- Временные паттерны: Одновременная активность (посты в одно время, чекины в одном месте).
- Использование анализаторов связей: Linkurious, Palantir (для профессиональных расследований).
Методика 4: Анализ иерархии в сообществе
Если цель является участником какого-либо сообщества (группа, канал, форум), можно проанализировать ее позицию:
- Степень вовлеченности: Количество постов, комментариев, лайков.
- Взаимодействие с лидерами: Упоминания администраторов, комментарии под их постами.
- Связи с другими активными участниками: Анализ графа взаимодействий внутри сообщества.
- Определение роли: Лидер, медиатор, наблюдатель, новичок.
Инструменты для анализа социального графа
- Gephi: Визуализация и метрики графов.
- NetworkX (Python): Библиотека для анализа.
- Maltego: Сбор и визуализация связей.
- NodeXL: Плагин для Excel для анализа социальных сетей.
- SNA (Social Network Analysis) Toolkit: Специализированные утилиты.
- OSINTgram (Instagram): Сбор подписчиков и подписок.
- VK Parser / VK Gee: Сбор данных VK.
- Telethon / Pyrogram: Сбор участников Telegram.
Кейс: Расследование связей через социальный граф
Задача: Выявить связи между тремя лицами, которые публично не взаимодействуют, но подозреваются в совместной деятельности.
- Сбор друзей и подписчиков каждого из трех лиц (VK, Instagram).
- Построение графа в Gephi: все три лица — центральные ноды.
- Анализ общих связей: Выявлены 12 пользователей, которые являются друзьями/подписчиками как минимум двух из трех лиц.
- Анализ общих групп: Все три лица состоят в одной закрытой группе (связанной с их деятельностью).
- Анализ геолокаций: Один из общих пользователей отмечался в тех же местах, что и цель, без публичного взаимодействия.
- Вывод: Связь между тремя лицами установлена через общих знакомых и общую группу. Скрытые связи верифицированы.
Анализ социального графа позволяет выйти за пределы очевидных связей и увидеть сложную структуру взаимоотношений цели. Ближний круг, скрытые сообщества, направление влияния — все это становится доступным при системном сборе данных о связях и их визуализации. Социальный граф является не просто набором имен, а картой социальной реальности, отражающей иерархию, доверие и коммуникационные потоки.