Текущая версия |
Ваш текст |
Строка 1: |
Строка 1: |
− | [[File:znaGfHygTsk.jpg|600px|thumb|right|Так выглядит пример социального графа дружеских связей.Каждый квадратик - человек.Каждая линия - дружба.]] | + | [[File:28834324edcfde1f686c740d77664014.png|600px|thumb|right|<big><big>Так выглядит пример графа дружеских связей.Каждый квадратик - человек. Каждая линия - дружба.</big></big>]] |
| | | |
| == <big>Введение</big> == | | == <big>Введение</big> == |
Строка 20: |
Строка 20: |
| | | |
| == <big>Цель</big> == | | == <big>Цель</big> == |
− | <big>Главной целью нашей работы является анализ дружеских связей Вконтакте с помощью построения социального графа.</big> | + | <big>Главной целью нашей работы является анализ дружеских связей Вконтакте с помощью социального графа.</big> |
| | | |
| == <big>Задачи </big> == | | == <big>Задачи </big> == |
| | | |
| <big> | | <big> |
− | 1.Получение данных пользователя. | + | 1.Получение данных пользователь с помощью API ВКонтакте |
| | | |
− | 2.Обработка полученных данных. | + | 2.Обработка полученных данных |
| | | |
− | 3.Визуализация. | + | 3.Визуализация(построения графа) при помощи ?? |
| | | |
| </big> | | </big> |
| | | |
− | == <big>Описание выполнения задач</big> == | + | == Описание выполнения работы == |
− | | |
− | <big>1.Для получения данных пользователь мы использовали API Вконтакте. API ВКонтакте — это интерфейс, который позволяет получать информацию из базы данных vk.com с помощью http-запросов к специальному серверу. Для работы с VK API в Python есть две популярные библиотеки: vk и vk_api.
| |
− | В своём проекте мы использовали библиотеку vk_api.С помощью методов этой библиотеки мы получаем списки друзей, которые далее нужно будет сортировать.
| |
− | | |
− | | |
− | 2.После получения списков друзей с помощью методов API VK,нам нужно будет их отсортировать.Делаем это следующим образом :
| |
− | | |
− | *Поисковым запросом находим список друзей исходного id.
| |
− | | |
− | *Далее заполняем словарь общих друзей.
| |
− | | |
− | *Получаем ответ.
| |
− | | |
− | Всю полученную информацию мы сохраняем в словаре.
| |
− | | |
− | Таким образом,суть в том, что мы просто составляем словарь по поисковым запросам.У нас есть первоначальная таблица id друзей.Затем, c помощью цикла у каждого id мы смотрим количество общих друзей с исходным id.
| |
− | | |
− | 3.Для визуализации графов мы использовали библиотеку NetworkX.
| |
− | Рассматриваемая библиотека NetworkX предназначенная для создания, манипуляции и изучения структуры, динамики и функционирования сложных сетевых структур.Так же использовалась библиотека Matplotlib.
| |
− | | |
− | Более подробное описание выполнения работы Вы можете найти в текстовом документе нашей курсовой работы.(см. раздел "Скачать проект")</big>
| |
− | | |
− | == <big>Результаты работы программы</big> ==
| |
− | [[File:bZipYtxHV4s.jpg]]
| |
− | | |
− | <big>''Полученный социальный граф дружеских связей''.</big>
| |
− | | |
− | | |
− | | |
− | == <big>Заключение</big> ==
| |
− | <big>Таким образом, в ходе работы над проектом, был построен социальный граф дружеских связей в социальной сети Вконтакте. Мы смогли проанализировать информацию о некоторой группе людей и наглядно увидеть связь между ними. Из результатов программы можно увидеть, как выделяются подгруппы людей, внутри которых почти все дружат между собой —та самая кластеризация, о которой говорилось во введении.
| |
− | </big>
| |
− | | |
− | == <big>Перспективы развития проекта</big> ==
| |
− | *Визуализация проекта с помощью 3D графики.
| |
− | *Использование более полной информации о пользователях(например: фотографии профилей, имена.
| |
− | *Работа в realtime.
| |
− | *Использование RAD-buildera для вывода этого проекта в конченый продукт.
| |
− | *Построение собственной рекомендательной системы на основе связей/общих интересов и тд.
| |
− | | |
− | == <big>Cписок литературы</big> ==
| |
− | | |
− | <big>
| |
− | | |
− | * https://ru.wikipedia.org/wiki/Анализ_социальных_сетей
| |
− |
| |
− | * https://ru.wikipedia.org/wiki/Социальный_граф
| |
− |
| |
− | * Документация API VK : https://vk.com/dev/manuals
| |
− | | |
− | * Документация NetworkX : https://networkx.readthedocs.io/en/stable/
| |
− | | |
− | * Документация Matplotlib: https://matplotlib.org</big>
| |
− | | |
− | == <big>Скачать проект</big> ==
| |
− | | |
− | * Текстовый документ описания курсовой работы:
| |
− | | |
− | [[File:Курсовая_Работа_Граф_Дружеских_Связей.docx]]
| |
− | | |
− | * Код программы на языке Python :
| |
− |
| |
− | [[:File:Код_Программы.docx]]
| |
− | | |
− | == <big>Участники проекта</big> ==
| |
− | | |
− | * [http://tm.spbstu.ru/Лосева_Татьяна Лосева Татьяна]
| |
− | * [http://tm.spbstu.ru/Киселёв_Лев Киселёв Лев]
| |
− | | |
− | == <big>См. также</big> ==
| |
− | [[Кафедра "Теоретическая механика"]]
| |