Google+

Tuesday, March 28, 2017

Gephi: анализируем методические объединения

Иногда при анализе данных, извлекаемых из домена G Suite, нам нужно рассмотреть уже существующие структурные подразделения, например, методическое объединения. Для этого к существующей сети организации нам нужно добавить дополнительные элементы - названия методобъединений.


Это не сложно - нам просто нужно научиться импортировать в уже существующий проект новые данные. Рассмотрим это на примере проекта, описанного в предыдущей публикации. Итак, у нас есть проект со структурой организации. Добавим в него новые данные - например, из таблицы с учителями школы, в которой у нас указаны и методобъединения (или другие подразделения) к которым относятся учителя.

Для этого нам понадобится csv файл в котором будут указаны фамилии учителей и методобъединения, к которым они относятся (для удобства просто пронумеруем их). Чтобы объединить новую таблицу с существующей, зайдем в Лабораторию Gephi и выберем опцию Импортировать из CSV, далее выбираем наш csv файл с фамилиями и методобъединениями и импортируем его. Обратите внимание, что новую таблицу необходимо указывать как Таблицу Узлов.



Нажимаем далее, последнюю ячейку оставляем невыбранной.



Наша новая таблица будет объединена со старой и для каждого учителя мы увидим номер его методобъединения.



Давайте зададим цвет для каждого из наших методических объединений. Для этого зайдем в режим Обработка. В левой панели найдем вкладку Appearance. Заходим во вкладку Nodes и выбираем Цвет (значок палитры). В Attribute выбираем MOD и нажимаем применить. Узлы графа нашей сети окрасятся в четыре разных цвета в зависимости от того, к какому методобъединению принадлежит данный участник.





Теперь разделим граф сети нашей организации на кластеры по методическим объединениям, к которым принадлежат учителя. Найдем в правой части экрана панель "фильтры". Выбираем в ней раздел "Динамика" - далее - "Разбиение" и перетаскиваем нужный нам фильтр (MOD) в поле "набор фильтров".








































Выбирая нужное методобъединение (щелкаем по ячейке с нужным номером) и нажимая "отфильтровать" мы можем выбирать нужную нам группу пользователей. Теперь, чтобы работать с нашими методобъединениями было совсем удобно, научимся выделять каждый подграф (соответствующий данной группе учителей) в отдельную рабочую область. Для этого выберем отфильтрованную группу учителей с помощью инструмента прямоугольное выделение (слева от полученного графа) и с помощью правой кнопки мыши вызовем меню Скопировать - На новую рабочую область. Gephi создаст нам новую рабочую область, на которой окажутся только участники из нужного нам методического объединения. Теперь нам будут доступны две области - первая - со всем графом нашей школы, и вторая - только с выделенным методобъединением, что значительно облегчит наш дальнейший анализ.

Sunday, March 26, 2017

Gephi: инструмент для обработки данных из домена G Suite.

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


В предыдущей публикации мы рассмотрели процесс извлечения и фильтрации данных из домена G Suite. Посмотрим на то, что с этими данными можно делать дальше. Строго говоря, есть много инструментов, которые можно использовать для обработки этого массива. Здесь я предлагаю рассмотреть графический пакет Gephi, поскольку в нем хорошо решены задачи визуализации связей (нет ощущения “волосяного кома”, которые создают многие другие пакеты) и присутствуют все основные статистические процедуры.


Gephi - это бесплатный, свободно распространяемый продукт, на момент написания статьи стабильно работающей версией является Gephi 0.9.1 После установки мы запускаем Gephi, создаем новый проект под собственным именем. Теперь нам нужно импортировать в него данные из csv файла, который мы создали на предыдущем этапе.


Для этого мы идем в раздел Лаборатория данных и выбираем “Импортировать из csv”. Файл csv должен иметь название латиницей и названия столбцов source и target. При импорте тип таблицы указываем как “таблица ребер”, кодировка - UTF-8.




Нажимаем на кнопку Далее, убеждаемся, что выбрана ячейка “создать новую вершину, если конечной (или начальной) вершины не существует.”, затем “готово”. Данные будут экспортированы в Лабораторию данных Gephi.




Теперь зайдем в раздел Обработка. Скорее всего, мы увидим нечто такое:




Это первичный граф нашей организации. Точки в ней - это люди, линии между ними - установленные связи. Давайте усовершенствуем этот граф. Изменим размер точек людей, в зависимости от того, насколько активно они участвуют в сетевом взаимодействии.


Для этого нам понадобится статистический параметр “Степень”. “Степень” - это количество связей с другими участниками (узлами) сети, рассчитываемое для каждого узла. В правой панели в разделе Статистика найдите кнопку “Степень” и нажмите ее. Произойдет подсчет данных после чего в поле “Лаборатория данных” каждому узлу будет присвоено свое значение. Вы можете увидеть, кто из ваших сотрудников имеет максимальную степень взаимодействия - то есть активнее всех общается с другими сотрудниками.




Вернемся в поле обработка и визуализируем получившуюся картину. Для этого в разделе Appearance, находящейся слева от рабочей области, выберем вкладку Nodes и нажмем на кнопку Размер, далее - Attribute. В выпадающей вкладке выберем Degree (степень). Выставим минимальный размер (Min size) = 5, максимальный размер (Max size) = 30. Нажмем применить и обратим внимание на то, как изменился размер узлов в нашей сети.




Теперь давайте произведем кластеризацию нашей сети. Это нужно для того, чтобы понять, как распределены связи в нашей организации. В разделе Статистика найдем кнопку “модулярность” и нажмем ее. Ячейки “рандомизировать” и “Use Weights” должны быть выбраны.Система рассчитает нам по определенному алгоритму разбиение нашей организации на кластеры в зависимости от того, с какими другими узлами он в большей степени взаимодействует. В разделе “Лаборатория данных” для каждого узла сети будет указано то, к какому кластеру он принадлежит.


Распределим наши узлы по цветам в зависимости от их принадлежности к кластерам. В разделе Appearance заходим во вкладку Nodes и нажимаем кнопку Цвет. Далее - Attribute и выбираем Modularity Class, далее - Применить. Узлы нашей сети окрасятся в цвета в соответствии с принадлежностью к кластерам.


Теперь упорядочим нашу сеть с помощью алгоритма, который сгруппирует узлы, находящиеся в одном кластере. Для этого зайдем во вкладку Укладка и выберем алгоритм Force Atlas 2. Выберем ячейки LingerLog Режим и Запрет перекрытия и нажмем кнопку Пуск. Алгоритм рассортирует наши кластеры.




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


Зайдем во вкладку Labels (выпадающее меню внизу рабочей области). Выберите ячейку Labels. Выберите шрифт = 14 (Arial, полужирный), в меню Настройка выберите ячейку “ID”. На узлах появятся надписи, обозначающие сотрудников нашей организации.


Теперь зайдем во вкладку Просмотр и нажмем кнопку Обновить. Сеть нашей организации будет построена в “Чистовом виде”.





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