УДК 004.89; 004.42; 004.852
Е.А. Рабчевский – директор ООО «СЕУСЛАБ»
E-mail: e.rabchevskiy@seuslab.ru
А.Н. Рабчевский – технический директор ООО «СЕУСЛАБ»
E-mail: a.rabchevskiy@seuslab.ru
В.С. Заякин – программист ООО «СЕУСЛАБ»
E-mail: v.zayakin@seuslab.ru
Л. Н. Ясницкий – д.т.н., профессор кафедры прикладной математики и информатики Пермского государственного национального исследовательского университета.
E-mail: yasn@psu.ru.
Аннотация
В связи с современными успехами телекоммуникационных технологий все большую актуальность приобретает проблема контроля распространения в социальных сетях деструктивной информации и вовлечения пользователей в социально опасные явления и процессы. Целью настоящей работы является создание интеллектуальной системы, позволяющей определять роль, которую играют пользователи социальных сетей в формировании и распространении информации. Создание такой системы наталкивается на трудности, связанные с получением примеров поведения предметной области в объеме, достаточном для качественного обучения нейронной сети. Для решения этой проблемы применяется оригинальный способ, названный экспертным. Суть этого способа состоит в том, что примеры для обучений нейронной сети создаются экспертом, который закладывает в них свои знания о предметной области. Причем, эксперт задает не отдельные числа, характеризующие поведение предметной области, а интервалы, в пределах которых они могут изменяться. Сами же значения параметров предметной области генерируются датчиком случайных чисел в пределах, заданных экспертом. Нейронная сеть, созданная таким способом, может быть использована при решении задач предотвращения распространения в социальных сетях деструктивной информации и вовлечения пользователей в социально опасные явления и процессы, а также для проведения маркетинговых и социологических исследований. Развиваемый в статье экспертный способ рекомендуется применять при выполнении нейросетевых проектов в случаях, когда применение других способов формирования примеров поведения предметных областей затруднено. Кроме того, этот способ иногда полезно использовать в комбинации с классическими способами, для усиления полезных сил синаптических связей нейронных сетей.
Ключевые слова: искусственный интеллект, социальная сеть, нейронная сеть, роль пользователя, социально опасные явления и процессы.
Annotation
In connection with the modern success of telecommunication technologies, the problem of controlling the distribution of de-structive information in social networks and involving users in socially dangerous phenomena and processes is becoming more and more urgent. The purpose of this work is to create an intelligent system that allows you to determine the role played by users of social networks in the formation and dissemination of information. Creating such a system encounters difficulties related to obtaining examples of domain behavior in a volume sufficient for high-quality training of the neural network. To solve this problem, an original method called expert is used. The essence of this method is that examples for neural network training are created by an expert who puts their knowledge of the subject area in them. Moreover, the expert sets not individual numbers that characterize the behavior of the subject area, but intervals within which they can change. The values of the domain parameters themselves are generated by the random number sensor within the limits set by the expert. The neural network created in this way can be used for solving problems of preventing the spread of destructive information in social networks and involving users in socially dangerous phenomena and processes, as well as for conducting marketing and sociological research. The expert method developed in the article is recommended to be used in the implementation of neural network projects in cases where the use of other methods of forming examples of the behavior of subject areas is difficult. In addition, this method is sometimes useful to use in combination with classical methods to strengthen the useful forces of synaptic connections of neural networks.
Keywords: artificial intelligence, social network, neural network, user role, socially dangerous phenomena and processes.
Введение
В последнее время метод нейросетевого моделирования стал чрезвычайно популярен. Одна из причин возросшей популярности – появление больших массивов данных, нуждающихся в обработке и анализе.
Однако, исполнители нейро-проектов нередко терпят неудачу, сталкиваясь с проблемой низкого качества баз данных: недостоверность информации, наличие выбросов статистической информации, наличие противоречивых (конфликтных) примеров, перекос данных, отсутствие закономерностей и т.д. [1].
1.Источником информации для формирования обучающих выборок обычно служат:
2.Сеть Интернет.
3.Результаты социологических, либо иных опросов по специально подготовленным анкетам, в т.ч., полученных из социальных сетей.
4.Архивные материалы предприятий.
5.Данные, собранные с приборов, замеряющих параметры моделируемой предметной области или процесса.
6.Данные экспериментов над предметной областью, которые могут быть проведены когда-либо в прошлом, либо по специально составленной в интересах нейро-проекта программе.
7.Данные экспериментов над какой-либо математической моделью предметной области. и.т.д.
8.перечисленным способам можно добавить еще один, редко используемый, но, достаточно эффективный, способ формирования обучающих примеров, который назовем экспертным. Суть этого способа заключается в том, что примеры поведения моделируемой предметной области создаются специалистом в этой области – экспертом. В настоящей статье развитие и применение этого способа продемонстрировано на примере создания нейросетевой экспертной системы, предназначенной для классификации пользователей социальных сетей.
Обычно эксперт, глубоко разбирающийся в свой предметной области, может без особого труда вспомнить, спрогнозировать, придумать наиболее характерные варианты поведения моделируемого объекта, процесса, явления.
Для эксперта обычно не вызывает затруднений приведение примеров, так называемых, крайних случаев. Например, эксперт-врач может назвать параметры больного с ярко выраженными симптомами какого-либо заболевания и безошибочно поставить диагноз этого заболевания.
Эксперт-инженер может, опираясь на свой собственный опыт спрогнозировать момент выхода из строя какого-либо технического объекта, изучив параметры его текущего состояния.
Эксперт-металлург может достаточно точно спрогнозировать механические характеристики выплавляемого им металла и привести примеры удачных и неудачных плавок.
И т.д.
Используя множества таких экспертных данных в качестве обучающих примеров, можно создать нейронную сеть, моделирующую знания эксперта, заложенные в эти данные.
Основная трудность применения этого способа состоит в том, что эксперт, как правило, не в состоянии предоставить достаточно большое количество таких примеров, необходимое для качественного обучения нейронных сетей.
Для преодоления этой проблемы можно рекомендовать метод добавления шума в обучающие множества [2, 3]. Однако, более эффективно нам представляется попросить эксперта привести в создаваемых им примерах не конкретные значения входных параметров, а указывать допустимые диапазоны, в пределах которых изменения того, или иного параметра, по мнению эксперта, не приведет к существенному изменению выходных параметров. Используя эти диапазоны, не представляет труда случайным образом сгенерировать дополнительные примеры и довести обучающее множество до объема, необходимого для качественного обучения нейронной сети.
Каждый пользователь социальной сети выполняет в ней определенную роль. Классификация типов пользователей, предлагаемая в работе [4], включает следующие типы: лидеры мнений, сенсоры, реализаторы, читатели, репутационные игроки. Очевидно, что данная классификация смешивает объективные параметры профилей одних классов и цели активности для других, что выглядит не вполне адекватно.
Разделим пользователей на классы, представленные в таблице 1.
Таблица 1.
Основные классы социальных ролей пользователей сетей
№ |
Роль пользователя в социальной сети |
1 |
Лидер, генератор контента |
2 |
Репостер, распространитель контента |
3 |
Связной, коммуникатор |
4 |
Комментатор, тролль |
5 |
Жертва |
6 |
Бот |
Проблема классификации ролей пользователей имеет важное значение для целей предотвращения распространения в социальных сетях деструктивной информации и вовлечения пользователей в социально опасные явления и процессы, а также для проведения маркетинговых и социологических исследований.
Решение проблемы, как правило, имеет два аспекта: определение параметров классификации пользователей и выбор метода классификации пользователей социальных сетей. Большинство таких методов, так или иначе, используют технологии искусственного интеллекта.
В работе [5] в качестве значимого параметра для определения потенциально эффективных распространителей информации в социальных сетях используется частота постов. Авторы работы [6] используют K-means кластеризацию, основанную на рассмотрении похожих троек пользователей по их взаимодействию. Встречаются также смешанные подходы, включающие кластеризацию с помощью трех алгоритмов (k-means, нейронная сеть SOM, DBSCAN) [7].
Указанные методы рассчитаны на глубокий анализ данных о пользователе, его окружении и паттернах его поведения. Они требуют значительных затрат времени и рассчитаны на обработку ограниченных объемов классифицируемых пользователей.
В случае применения технологии нейронных сетей необходимы достаточно большие обучающие и тестовые множества. Однако, получение таких множеств часто затруднено или связано с очень высокими затратами.
Согласно развиваемому в настоящей статье способу, к созданию интеллектуальной системы привлекаются специалисты (эксперты), глубоко разбирающиеся в предметной области, которым предлагается представить свои знания в виде совокупности параметров, описывающих поведение предметной области, и на основе этих параметров синтезировать множества для обучения и тестирования нейронной сети. Именно такой подход нами использовался для создания системы классификации ролей пользователей социальных сетей.
В качестве входных данных нейронной сети предлагается использовать сведения о пользователях, которые доступны в социальных сетях. Перечень сведений может различаться в зависимости от той или иной социальной сети, но большая часть существенных сведений присутствует во всех социальных сетях (СС). Такой перечень представлен в таблице 2
Таблица 2.
Входные параметры нейросетевой модели
№ |
Показатель |
Тип |
Кодировка |
Как влияет на результат |
Метод получения |
1 |
Возраст аккаунта |
Непрерывный |
Число |
Чем старше аккаунт, тем может быть больше его влияние на других участников СС. |
Вычисляется, как разница между текущей датой и датой регистрации аккаунта. Дата регистрации указана в персональных данных пользователя. |
2 |
Возраст пользователя |
Непрерывный |
Число |
Чем старше пользователь, тем более авторитетным может быть его мнение, и наоборот. |
В персональных данных пользователя. |
3 |
Кол-во друзей |
Непрерывный |
Число |
Чем больше друзей, тем больше связей в СС. |
В персональных данных пользователя. |
4 |
Кол-во подписчиков |
Непрерывный |
Число |
Чем больше подписчиков, тем большее влияние имеет на пользователей СС. |
Вычисляется из списка подписчиков в персональных данных пользователя. |
5 |
Кол-во подписок |
Непрерывный |
Число |
Соотношение подписок и подписчиков может определять социальную роль пользователя. |
Вычисляется из списка подписчиков в персональных данных пользователя. |
6 |
Кол-во постов в месяц
|
Непрерывный |
Число |
Большое кол-во постов может свидетельствовать о том, что пользователь является источником идей или мнений. |
Выборка в базе принадлежащих пользователю постов в регионе за месяц.
|
7 |
Кол-во репостов в месяц
|
Непрерывный |
Число |
Большое кол-во репостов говорит о том, что пользователь предпочитает транслировать и распространять чужое мнение. Соотношение постов и репостов показывает его социальную роль. |
Выборка в базе принадлежащих пользователю репостов в регионе за месяц.
|
8 |
Кол-во комментариев в месяц |
Непрерывный |
Число |
Показывает активность пользователя и характер его деятельности. |
Выборка в базе принадлежащих пользователю комментариев в регионе за месяц. |
9 |
Кол-во лайков в месяц |
Непрерывный |
Число |
Показывает активность пользователя и характер его деятельности. |
Выборка в базе оставленных пользователем лайков в регионе за месяц. |
10 |
Пол |
Бинарный |
1=М, 2=Ж |
Может иметь значение. |
В персональных данных пользователя. |
11 |
Время последнего нахождения в сети |
Непрерывный |
Число |
Показывает актуальность пользователя. |
В персональных данных пользователя. |
В результате получаем структуру нейронной сети, у которой одиннадцать входных нейронов, входные сигналы которых: X1–X11, задаются согласно таблице 2, и шесть выходных нейронов, выходные сигналы которых: Y1–Y6, задаются равными единице, если пользователь принадлежит к классу, указанному в соответствующей строке таблицы 1, и ноль, если не принадлежит.
Формирование множества примеров.
Как уже отмечалось выше, предлагаемый экспертный способ формирования примеров предполагает задание экспертами допустимых диапазонов изменения входных параметров. Для рассматриваемой предметной области установленные экспертами допустимые диапазоны изменения входных параметров приведены в таблице 3.
Таблица 3.
Допустимые диапазоны изменения входных параметров
№ Вх. |
Наименование параметра |
Лидер |
Репостер |
Связной |
Тролль |
Жертва |
Бот |
X1 |
Возраст аккаунта, дней |
300–3650 |
200–3650 |
200–3650 |
100–3650 |
1–350 |
1–100 |
X2 |
Возраст пользователя, лет |
17–60 |
17–60 |
15–60 |
15–60 |
15–60 |
16–60 |
X3 |
Количество друзей |
500–10000 |
150–10000 |
500–10000 |
100–10000 |
10–300 |
10–150 |
X4 |
Количество подписчиков |
не менее 70 % от количества друзей
|
X3–X5 |
X3–X5 |
X3–X5 |
X3–X5 |
0–10 |
X5 |
Количество подписок |
X3–X4 |
50–95 % от количества друзей |
40–60 % для максимального кол-ва |
6–100 % от количества друзей |
40–95 % от количества друзей |
10–100 |
X6 |
Количество постов |
30–500 |
0–30 |
0–5 |
0–5 |
0–50 |
50–100 |
X7 |
Количество репостов |
0–40 % от количества постов |
150–600 |
30–150 |
30–100 |
0–50 |
50–300 |
X8 |
Количество комментариев |
Не более 30 % от количества постов |
0–30 |
0–15 |
100–1200 |
0–50 |
50–300 |
X9 |
Количество лайков |
Не более 20 % от количества постов |
0–30 |
0–15 |
0–15 |
0–50 |
100–1000 |
X10 |
Пол |
случайно |
случайно |
случайно |
случайно |
случайно |
случайно |
X11 |
Время нахождения в сети, час |
1–6 |
1–4 |
1–4 |
1–4 |
1–4 |
3–12 |
Процесс генерации множеств состоит из трех стадий.
Сначала генерируется одинаковое количество примеров для каждой социальной роли, чтобы нейронная сеть смогла хорошо обучиться. Закладываются примеры максимальных параметров для каждой роли, чтобы усилить нейронные связи. Поскольку первый параметр X1 это возраст аккаунта от 0 до 3650 дней, то генерация данных привязывается именно к этому параметру. Для значений X1 от 1 до 30 с шагом в один день, с 30 до 50 с шагом 5 дней, с 50 до 200 с шагом 10 дней, с 200 до 2000 с шагом 25 дней и с 2000 до 3650 с шагом в 50 дней. Всего получается 154 примера.
Для каждого параметра генерируются случайные значения в пределах диапазона данного параметра. Например, для роли «Лидер» в диапазоне возраста аккаунта 300 – 3650 дней генерируется случайное значение количества друзей в диапазоне от 500 до 10000. Также для параметра «Количество постов» генерируется случайное значение в заданном диапазоне значений от 30 до 500 и т.д. для каждой роли и каждого параметра.
Синтезирование множеств производится для каждого типа роли отдельно, а потом сшивается в один файл и перемешивается случайным образом. Далее общий файл делится на обучающее и тестовое множество.
В результате получилось 924 примера, по 154 – для каждой роли. Все примеры разделены на две части: 750 – обучающее множество, 174 – тестовое множество.
Рисунок 1. Значимость входных параметров нейронной сети, предназначенной для классификации пользователей социальных сетей
Figure 1. Significance of input parameters of a neural network intended for classification of social network users
Поскольку обучающие множества были синтезированы на основе набора определенных комбинаций параметров, назначенных экспертом для каждой социальной роли, нейросетевое исследование предметной области выглядит как иллюстрация закономерностей, заложенных экспертом в нейронную сеть. Результаты нейросетевых сценарных прогнозов, выполненных для конкретных пользователей представлены на рисунках 2 и 3.
Для исследования зависимости роли пользователя от количества постов использовался случайно выбранный пользователь с параметрами, представленными в таблице 5.
X2 |
X3 |
X4 |
X5 |
X7 |
X8 |
X9 |
X10 |
X11 |
|
2050 |
33 |
6440 |
5924 |
516 |
12 |
3 |
3 |
2 |
2 |
Для исследования зависимости роли пользователя от количества репостов использовался случайно выбранный пользователь с параметрами, представленными в таблице 6.
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X8 |
X9 |
X10 |
X11 |
3100 |
26 |
2919 |
1050 |
1869 |
15 |
2 |
3 |
1 |
3 |
Как видно из рис. 2, при увеличении количества постов вероятность принадлежности пользователя к классу «Лидер» сначала резко возрастает, а затем, достигнув максимального значения 100% перестает изменяться. Вероятность принадлежности пользователя к роли «Связной», «Троль» и «Жертва» с увеличением количества постов падает. С увеличением количества репостов (рис. 3) вероятность принадлежности пользователя к классу возрастает с нуля до 100%, тогда как вероятность принадлежности к классу «Связной», наоборот, падает с 100% до нуля.
Таким образом, закономерности, заложенные экспертом в нейронную сеть, в явном виде проявились при ее исследовании.
Рисунок 2. Распределение вероятностей принадлежности пользователей к определенному классу в зависимости от количества постов
Figure 2. Distribution of probabilities of users belonging to a certain class depending on the number of posts
Рисунок 3. Распределение вероятностей принадлежности пользователей к определенному классу в зависимости от количества репостов
Figure 3. Distribution of probabilities of users belonging to a certain class depending on the number of reposts
Заключение. Возможности практического применения.
Разработанная нейросетевая система может применяться для следующих целей:
•Автоматическое выявление распространителей информации. Такие пользователи (репостеры) могут быть особенно интересны для выявления каналов распространения информации в сети и использования в качестве канала информационного противодействия.
•Автоматическое выявление ботов в сети. Это важно для выявления источника распространения «фейков», инструментов организованных воздействий на сеть, точек противодействия в сети и т.д.
•Автоматическое выявление структуры социальных сообществ с раскладкой по ролям в сообществе.
•Совместное использование классификатора и графового анализа дает новые возможности для быстрого поиска пользователей, относящихся к определенной социальной роли, анализа их социального окружения, выявления их социальных связей, установки их личностей для целей предотвращения противоправных действий или воздействия на социальную сеть или конкретное сообщество в сети.
Развиваемый в статье экспертный способ рекомендуется применять при выполнении нейросетевых проектов в случаях, когда применение других способов формирования примеров поведения предметных областей затруднено. Кроме того, этот способ иногда полезно использовать в комбинации с классическими способами, для усиления полезных сил синаптических связей нейронных сетей, как это сделано в [9-11].
Литература
1.Ясницкий Л.Н. Интеллектуальные системы: учебник. М.: Лаборатория знаний, 2016. 221 с.
2.Осовский С. Нейронные сети для обработки информации / Пер. с польского. – М.: Финансы и статистика, 2002.
3.Румянцев М.А., Ясницкий Л.Н. Повышение качества обобщения нейронной сети с помощью добавления шума в обучающую выборку на примере задачи определения прочности бетона по составу входящих в него компонентов // В сборнике: Искусственный интеллект в решении актуальных социальных и экономических проблем ХХI века. Часть I. Сборник статей по материалам Четвертой всероссийской научно-практической конференции, проводимой в рамках Пермского естественнонаучного форума «Математика и глобальные вызовы XXI века». 2019. С. 57-62.
4.Н.А. Рябченко, А.А. Гнедаш. Типы пользователей online-социальных сетей: теоретико-методологические основания для классификации. https://ojs.itmo.ru/index.php/IMS/article/view/261/256
5.Arularasan A.N., Suresh A., Seerangan K. Identification and classification of best spreader in the domain of interest over the social networks // Cluster Computing. 2019. Vol. 22. Pp. 4035-4044. https://doi.org/10.1007/s10586-018-2616-y
6.Doran, D. (2015). On the Discovery of Social Roles in Large Scale Social Systems // Social Network Analysis And Mining. 2015. 5. 49. https://corescholar.libraries.wright.edu/cse/375
7.P. H. B. Ruas, A. D. Machado, M. C. Silva, M. R. G. Meireles, A. M. P. Cardoso, L. E. Zárate, C. N. Nobre. Identification and characterization of facebook user profiles considering interaction aspect // Behaviour & Information Technology. 2019. Vol. 38. No 8. https://www.tandfonline.com/doi/full/10.1080/0144929X.2019.1566498?scroll=top&needAccess=true
8.Нейросимулятор 5.0 : Свидетельство Роспатент о государственной регистрации программы для ЭВМ № 2014618208 от 12.07.2014 г. / Черепанов Ф.М., Ясницкий Л.Н. (РФ).
9.Ясницкий Л.Н., Бржевская А.С., Черепанов Ф.М. О возможностях применения методов искусственного интеллекта в сфере туризма // Сервис plus. – 2010 – №4. – С.111-115.
10.Ясницкий Л.Н., Ваулева С.В., Сафонова Д.Н., Черепанов Ф.М. Использование методов искусственного интеллекта в изучении личности серийных убийц // Криминологический журнал Байкальского государственного университета экономики и права. 2015. Т.9, №3. С. 423-430. DOI: 10.17150/1996-7756.2015.9(3).423-430.
11.Ясницкий Л.Н., Грацилев В.И., Куляшова Ю.С., Черепанов Ф.М. Возможности моделирования предрасположенности к наркозависимости методами искусственного интеллекта. // Вестник Пермского университета. Серия: Философия. Психология. Социология. 2015. № 1(21). С. 61-71.