Научная статья на тему 'Распознавание ботов в онлайновых социальных сетях при помощи алгоритма "Случайный лес"'

Распознавание ботов в онлайновых социальных сетях при помощи алгоритма "Случайный лес" Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
407
75
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
"СЛУЧАЙНЫЙ ЛЕС" / TWITTER / КРОСС-ВАЛИДАЦИЯ / F1-МЕТРИКА / СТРАТИФИКАЦИЯ / RANDOM FOREST / CROSS-VALIDATION / F1-METRIC / STRATIFICATION

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Хачатрян М.Г., Ключарев П.Г.

Онлайновые социальные сети играют важную роль в жизни миллионов людей в качестве инструмента для коммуникации. Однако, онлайновые социальные сети также являются ареной информационного противоборства. Одним из инструментов ведения информационного противоборства являются боты, где под ботами понимается программное обеспечение, предназначенное для имитации поведения реального пользователя в онлайновых социальных сетях.Целью данной работы является разработка модели по выявлению ботов в онлайновых социальных сетях. Для разработки данной модели был использован алгоритм машинного обучения «Случайный лес» (Random Forest). Так как для реализации алгоритмов машинного обучения необходимо максимальное количество данных, в качестве онлайновой социальной сети в рамках которой решается задача распознавания ботов была использована онлайновая социальная сеть Twitter. Данная онлайновая социальная сеть активно используется во многих исследованиях по обнаружению ботов.Для обучения и тестирования алгоритма «Случайный лес» был использован набор данных аккаунтов Twitter, состоящий из более 3000 пользователей и более 6000 ботов. В процессе обучения и тестирования алгоритма «Случайный лес» были определены оптимальные гиперпараметры алгоритма при которых достигается наибольшее значение F1-метрики. В качестве языка программирования, который позволил реализовать выше описанные действия, был выбран Python, активно использующийся при решении задач, связанных с машинным обучением.Для сравнения разработанной модели с моделями других авторов было произведено тестирование на двух наборах данных аккаунтов Twitter, состоящих наполовину из ботов и наполовину из реальных пользователей. В результате тестирования на указанных наборах данных были получены значения F1-метрик равных 0.973 и 0.923. Полученные значения F1-метрик являются довольно высокими по сравнению с работами других авторов.В результате, в данной работе была получена модель, способная распознавать ботов в онлайновой социальной сети Twitter, которая обладает высокими точностными показателями.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Bots Recognition in Social Networks Using the Random Forest Algorithm

Online social networks are of essence, as a tool for communication, for millions of people in their real world. However, online social networks also serve an arena of information war. One tool for infowar is bots, which are thought of as software designed to simulate the real user’s behaviour in online social networks.The paper objective is to develop a model for recognition of bots in online social networks. To develop this model, a machine-learning algorithm “Random Forest” was used. Since implementation of machine-learning algorithms requires the maximum data amount, the Twitter online social network was used to solve the problem of bot recognition. This online social network is regularly used in many studies on the recognition of bots.For learning and testing the Random Forest algorithm, a Twitter account dataset was used, which involved above 3,000 users and over 6,000 bots. While learning and testing the Random Forest algorithm, the optimal hyper-parameters of the algorithm were determined at which the highest value of the F1 metric was reached. As a programming language that allowed the above actions to be implemented, was chosen Python, which is frequently used in solving problems related to machine learning.To compare the developed model with the other authors’ models, testing was based on the two Twitter account datasets, which involved as many as half of bots and half of real users. As a result of testing on these datasets, F1-metrics of 0.973 and 0.923 were obtained. The obtained F1-metric values are quite high as compared with the papers of other authors.As a result, in this paper a model of high accuracy rates was obtained that can recognize bots in the Twitter online social network.

Текст научной работы на тему «Распознавание ботов в онлайновых социальных сетях при помощи алгоритма "Случайный лес"»

Машиностроение U компьютерные технологии

Сетевое научное издание

http://www.technomagelpub.ru ISSN 2587-9278

Ссылка на статью:

// Машиностроение и компьютерные технологии. 2019. № 04. С. 24-41.

Б01: 10.24108/0419.0001473

Представлена в редакцию: 19.03.2019

© НП «НЭИКОН»

УДК 004.89+004.77

Распознавание ботов в онлайновых социальных сетях при помощи алгоритма «Случайный лес»

Хачатрян М.Г.1*, Ключарев П.Г.1 Ш!ЖтшШ

1МГТУ им. Н.Э. Баумана, Москва, Россия

В настоящей статье была разработана модель на основе алгоритма машинного обучения «Случайный лес», позволяющая производить распознавание ботов в онлайновой социальной сети Twitter. Обучение алгоритма было произведено на наборе данных аккаунтов Twitter, состоящем из более чем 3000 пользователей и более 6000 ботов. Для подбора оптимальных гиперпараметров алгоритма, таких как число и глубина деревьев, на которых достигается наибольшее значение Fj-метрики, был использован алгоритм кросс-валидации. В результате обучения алгоритма, использующего найденные оптимальные гиперпараметры, была получена модель. Сравнение данной модели с моделями других авторов путем тестирования на двух наборах данных показало, что она обладает высокими точностными показателями.

Ключевые слова: «Случайный лес», Twitter, кросс-валидация, Fj-метрика, стратификация

Введение

Онлайновые социальные сети играют важную роль в жизни миллионов людей, предоставляя возможность создавать новые социальные связи [1], получать и отправлять новости [2], вести обсуждение по интересующей тематике и т. д. Однако, помимо выполнения обозначенных функций, онлайновые социальные сети предоставляют собой арену информационного противоборства [3], где под информационным противоборством понимается соперничество субъектов информационного конфликта с целью усиления влияния на те или иные сферы социальных отношений, итогом, которого становится получение преимущества одной противоборствующей стороной и утрата подобных преимуществ другой стороной [4].

Одним из инструментов ведения информационного противоборства являются боты. Бот [5] - это программное обеспечение, предназначенное для имитации поведения реального пользователя в онлайновых социальных сетях. При помощи ботов ведется недобро-

совестная конкуренция, проводится политическая пропаганда, распространяется дезинформации и т. д.

Существует множество статей, посвященных ботам в онлайновых социальных сетях. Как правило в статьях рассматривается влияние ботов на пользователей онлайновых социальных сетей [6, 7, 8] и (или) методики их распознавания. В качестве методик распознавания ботов часто используются различные алгоритмы машинного обучения, такие как: наивный байесовский классификатор [9], Марковский алгоритм кластеризации [10], дерево принятия решений [11] и т. д.

Так как для алгоритмов машинного обучения требуется большое количество данных, то для исследований используются онлайновые социальные сети, которые предоставляют как можно большое количество информации о пользователях. Одной из самых используемых для исследований является онлайновая социальная сеть Twitter [12], в которой доступна фактически вся информация о любом пользователе, если он специально не скрывает свои данные.

В данной статье решается задача распознавания ботов в онлайновых социальных сетях при помощи алгоритма машинного обучения «Случайный лес» (Random Forest). В качестве онлайновой социальной сети, в рамках которой решается поставленная задача, используется Twitter. В результате проведенного исследования была разработана модель, позволяющая по определенным данным аккаунта Twitter определять, к какому классу относится аккаунт: бот или пользователь.

1. Алгоритм «Случайный лес»

Перед тем как давать описание работы алгоритма «Случайный лес» [13, 14], введем определение бинарного решающего дерева [15, 16] для классификации бинарных объектов.

Бинарное решающее дерево - это бинарное дерево, в котором:

- каждой внутренней вершине v приписана функция:

ßv: X — { 0,1 } , (1)

где X = Мп - множество возможных значений признаков классов (п - число классов);

- каждой листовой вершине приписана метка класса где - возможные классы.

Рассмотрим теперь алгоритм а (х, v) , который определяет класс объекта х, используя бинарное решающее дерево. Начиная с корневой вершины v 0 рекурсивно выполняются следующие действия:

1. Проверяется, является данная вершина листовой. Если вершина является листовой, то возвращается метка класса, соответствующая данной листовой вершине, и алгоритм завершает работу.

2. Если вершина не является листовой, то вычисляется значение функции //г. Если значение функции равно 0, то вычисляется а ( х, V {) , если равно 1, то вычисляется а (х, V-) . Под V I и V- понимается соответственно левая и правая вершина относительно текущей вершины V . Под функциями //г понимаются как правило одномерные предикаты, которые сравнивают значение одного из признаков с порогом:

/г ( х,у ,0 = [х;<;] , (2)

где хеХ - набор признаков одного объекта,

} - признак, который был выбран для данной вершины. Ху - значение -го признака объекта, - значение порога.

Определение того какой признак и какой порог использовать для определенной вершины происходит на этапе построения. Построение бинарного решающего дерева происходит следующим образом.

Пусть существует обучающая выборка:

х = {х а (3)

где - набор признаков одного объекта.

Каждая вершина V разбивает выборку на две части Я 1 (у, ;) = { Х | Ху < ;} и Я 2 (у,;) = {х | Ху > ;}, при этом } и ; определяются таким образом, чтобы выбранный средний индекс неоднородности образованных выборок был минимален. Разбиение каждой вершины должно производится до достижения условия останова (например, в выборке присутствует только один класс объектов), после чего полученная вершина объявляется листом.

Индекс неоднородности вычисляется для произвольной выборки 5, содержащей объекты из классов { 0, 1 }. В данной работе в качестве индекса неоднородности используется индекс Джини [17], вычисляемый для бинарных объектов по следующей формуле:

У (5) = 1 - ( Р02 + Н) , (4)

где Р0 - доля объектов класса 0 в выборке 5, - доля объектов класса 1 в выборке «Случайный лес» - это множество решающих деревьев. В задаче классификации решение принимается голосованием по большинству среди выданных ответов. Все деревья строятся независимо по следующей схеме:

- Выбирается подвыборка обучающей выборки размера N с повторениями - по ней строится дерево (для каждого дерева своя подвыборка).

- Для построения каждого расщепления в дереве просматриваются (квадратный корень из общего количества признаков ) случайных признаков (для каждого нового расщепления свои случайные признаки).

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

не заданы ограничения (высота дерева, число объектов в листьях и число объектов в подвыборке, при котором проводится расщепление).

2. Исходные данные для обучения и тестирования

Данные, используемые в настоящей работе, находятся в открытом доступе и были представлены в статье [18]. Для обучения и тестирования алгоритма классификации «Случайный лес» используются данные групп, представленных в таблице 1. Каждая группа представляет собой таблицу, где строки - различные аккаунты, а столбцы - признаки аккаунта (имя, количество опубликованных твитов1, количество групп, в которых состоит аккаунт и т. д.), по которым определяется, является аккаунт ботом или нет.

Таблица 1. Используемые группы из базы данных

Группа Описание Количество аккаунтов

genuine accounts Аккаунты обычных пользователей 3474

social spambots #1 Ретвитеры2 некоего Итальянского политического деятеля 991

social spambots #2 Спамеры платных приложений для мобильных устройств 3457

social spambots #3 Спамеры3 продуктов на продажу в Amazon.com 464

traditional spambots #1 Тренировочный набор данных спамеров, используемых в статье [19] 1000

traditional spambots #2 Спамеры вредоносных ссылок 100

traditional spambots #3 Спамеры рассылающие предложения о работе 433

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

1 Запись в онлайновой социальной сети «Twitter», размер которой не должен превышать 140 символов

2 Бот, который размещает твиты на странице своего аккаунта для определенного аккаунта

3 Бот, который распространяет спам

Название признака Описание признака

Statuses Count Количество твитов, которые опубликовал аккаунт

Followers Count Количество аккаунтов, которые читают твиты данного аккаунта

Friends Count Количество акаунтов, на которые подписан данный аккаунт

Favorites Count Количество твитов, которые отметил данный ака-унт как понравившийся

Listed Count Количество групп, в которых состоит данный акка-унт

Default Profile Image Указывает, загружал ли пользователь изображение для профиля (принимает значение 0 если загружал и 1 если нет)

Geo Enabled Указывает, включил ли аккаунт возможность гео-тегирования твитов (принимает значение 1 если включил и 0 если нет)

Protected Указывает, являются ли твиты аккаунта доступными всем аккаунтам (принимает значение 0 если являются и 1 если нет)

Verified Указывает, подтвердил ли Twitter, что данный аккаунт является подлинным (принимает значение 1 если подтвердил и 0 если нет)

3. Методика тестирования алгоритма

3.1. Алгоритм валидации

Главная задача алгоритмов машинного обучения - обобщить доступные данные для обработки новых. Для того чтобы дать оценку качества работы алгоритма на новых данных используются различные алгоритмы валидации, где все доступные данные делятся на тренировочные (на которых происходит обучение алгоритма) и тестовые (на которых происходит оценка точности алгоритма).

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

Одним из часто использующихся видов кросс-валидации является кросс-валидация по к блокам (Рис. 1). При данном виде валидации данные делятся на к блоков, после чего к итераций происходит оценка точности. Каждую итерацию один блок берется в качестве тестового, а остальные к — 1 блоков в качестве тренировочных. На тренировочных дан-

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

Рис. 1. Кросс-валидация по к блокам

Рассмотрим метод кросс-валидации выбором оптимальных гиперпараметров [20] (Рис. 2):

1. Доступные данные делятся на две подгруппы: тренировочные и тестовые.

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

4 Некоторые параметры алгоритма, которые не изменяются в процессе его обучения

3. Тренировочные данные подаются на вход алгоритму с наилучшими гиперпараметрами. На выходе получаем модель.

4. Производится оценка точности, полученной на прошлом этапе модели на тестовых данных.

Рис. 2. Визуальное представление метода кросс-валидации с определением гиперпараметров

5. Тренировочные и тестовые данные объединяются и подаются на вход алгоритму с наилучшими гиперпарметрами. На выходе получается финальная модель.

Описание используемого метода разделения данных на тренировочные и тестовые, а также используемой метрики для оценки точности представлено в следующих двух разделах.

3.2. Разделение данных

Разделение данных на тренировочные и тестовые в данной работе производится методом стратификации, который состоит из двух следующих этапов:

1. Все доступные данные делятся на классы (в контексте данной работы два класса: боты и пользователи).

2. Из каждого класса случайным образом выбираются в определенном соотношении тренировочные и тестовые данные (например, 70% тренировочных и 30% тестовых).

Стратификационное разделение данных рекомендуется применять в случае сильно несбалансированных данных (когда количество элементов какого-то класса значительно больше количества элементов другого), чтобы избежать ситуации, когда в тренировочных или тестовых данных отсутствуют элементы одного из классов. Кроме того, согласно исследованию [21] стратификация имеет положительный эффект на разброс и смещение оценки точности при кросс-валидационной проверке по блокам.

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

Пусть дана выборка , метки класса , и классифи-

катор а, который предсказывает к какому из классов относится тот или иной элемент выборки х, где п — количество признаков в выборке, N — размер выборки. Матрицей ошибок для такого классификатора называется следующая матрица:

= — операция эквиваленции, а суммирование ведется в кольце целых чисел.

Каждый элемент матрицы имеет следующие названия:

- т 11 — ТР (Тгие р о5 / t / Vе) . Число объектов положительного класса, идентифицируемых как объекты положительного класса. В контексте данной работы под объектами положительного класса будут пониматься боты, а под объектами отрицательного класса обычные пользователи;

- . Число объектов отрицательного класса, идентифицируемых как объекты отрицательного класса;

3.2. Метрика точности

(5)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

где , ,

- т i 0— F Р ( F a I s е р о s i t i 11 e ) . Число объектов отрицательного класса, идентифицируемых как объекты положительного класса;

- т0 i — FN (Fa/s е neg atiiie ) . Число объектов положительного класса, идентифицируемых как объекты отрицательного класса.

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

Метрика полнота (recall) показывает какую долю объектов положительного класса из всех объектов положительного класса нашел алгоритм. Другими словами, данная метрика демонстрирует способность алгоритма распознавать объекты положительного класса. Данная метрика вычисляется по следующей формуле:

TP

R е с =-. (6)

TP + FN

Метрика точность (precision) показывает какая доля объектов, названных положительными, является положительными. Данная метрика не позволяет записывать все объекты в один класс при неравном распределении классов. Данная метрика вычисляется по следующей формуле:

ТР

Рг е =-. (7)

TP+ FP

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

Pre ■ Rec

Fi = 2 ■ --—. (8)

Pre + Rec

4. Результаты обучения и тестирования

В данном разделе представлены результаты обучения алгоритма «Случайный лес» с подбором оптимальных гиперпараметров при помощи метода кросс-валидации по 10 блокам, где в качестве метрики для оценки точности используется Fi мера. Данные были разделены методом стратификации на две группы: тренировочные и тестовые (90% тренировочных, 10% тестовых). На тренировочных данных происходит подбор оптимальных гиперпараметров, а на тестовых вычисляется значение точности модели, использующей эти гиперпараметры.

Программное обеспечение, с помощью которого были реализованы описанные действия, написано на языке программирования высокого уровня Python с использованием набора библиотек Python. Из используемых библиотек особенно стоит упомянуть библиотеку машинного обучения scikit-learn [24], которая позволила выполнить поставленные задачи. Реализованная модель для распознавания ботов в онлайновой социальной сети

Twitter была выложена в сеть Интернет и доступна по URL-адресу: https://bot-detect.herokuapp.com.В таблице Таблица 3 представлена зависимость F1 метрики от количества решающих деревьев N и от максимальной глубины деревьев d на тренировочных данных.

Таблица 3. Зависимость значения метрики ^ от гиперпараметров при использовании метода кросс-

валидации

\d N \ 1 2 3 4 5 6 7 8 9

1 0.761 0.760 0.813 0.963 0.950 0.950 0.955 0.958 0.958

2 0.959 0.957 0.960 0.961 0.964 0.965 0.963 0.959 0.953

3 0.761 0.899 0.953 0.963 0.965 0.969 0.967 0.968 0.969

4 0.962 0.963 0.961 0.963 0.966 0.969 0.968 0.968 0.970

5 0.780 0.950 0.955 0.965 0.967 0.969 0.970 0.970 0.971

6 0.898 0.944 0.961 0.964 0.967 0.970 0.969 0.970 0.971

7 0.956 0.956 0.962 0.965 0.967 0.970 0.969 0.971 0.971

8 0.904 0.957 0.964 0.965 0.967 0.971 0.970 0.972 0.972

9 0.775 0.961 0.963 0.965 0.968 0.970 0.971 0.973 0.972

Как видно, наилучшие результаты достигаются при глубине дерева d равном 8 и числе решающих деревьев N равном 9. После обучения алгоритма на тренировочных данных с полученными оптимальными гиперпараметрами было произведено тестирование на тестовых данных и получено значение F1 метрики равное 0.972.

5. Сравнение с другими работами

Для сравнения алгоритма, используемого в данной работе, с алгоритмами других авторов была использована статья [18]. В этой статье произведено тестирование различных алгоритмов на двух наборах тестовых данных. Первый набор тестовых данных состоял наполовину из группы «genuine accounts» и наполовину из группы «social spambots #1». Второй набор тестовых данных состоял наполовину из группы «genuine accounts» и наполовину из группы «social spambots #3».

Для более корректного сравнения было произведено повторное обучение алгоритма без групп «social spambots #1», «social spambots #2», «social spambots #3» и без половины группы «genuine accounts» на полученных лучших гиперпараметрах. После произведённого обучения было произведено тестирование на двух наборах тестовых данных, аналогичных тестовым данным из статьи [18]. Сравнение результатов работы различных алгоритмов представлено в таблицах

Название статьи Используемый алгоритм Значение f j-меры

BotOrNot: A system to evaluate social bots [25] «Случайный лес» с более 1000 признаков 0.288

Empirical evaluation and new design for fighting evolving Twitter spammers [19] «Случайный лес»5 с разработанным в статье набором признаков 0.261

Twitter Spammer Detection Using Data Stream Clustering [26] Алгоритм кластеризации DenStream 0.435

A generic statistical approach for spam detection in online social networks [10] Марковский алгоритм кластеризации 0.944

DNA-inspired online behavioral modeling and its application to spambot detection [27] Сравнение «цифровой ДНК» аккаунтов 0.977

Распознавание ботов в онлайновых социальных сетях при помощи алгоритма «Случайный лес» «Случайный лес» с 9 признаками аккаунтов 0.973

Таблица 5. Сравнение ^ -метрики на втором наборе тестовых данных

Название статьи Используемый алгоритм Значение f х-меры

BotOrNot: A system to evaluate social bots [25] «Случайный лес» с более 1000 признаков 0.761

Empirical evaluation and new design for fighting evolving Twitter spammers [19] «Случайный лес» с разработанным в статье набором признаков 0.524

Twitter Spammer Detection Using Data Stream Clustering [26] Алгоритм кластеризации DenStream 0.370

A generic statistical approach for spam detection in online social networks [10] Марковский алгоритм кластеризации 0.923

DNA-inspired online behavioral modeling and its application to spambot detection [27] Сравнение «цифровой ДНК» аккаунтов 0.923

Распознавание ботов в онлайновых социальных сетях при помощи алгоритма «Случайный лес» «Случайный лес» с 9 признаками аккаунтов 0.963

Как видно, обученный в данной статье алгоритм является довольно эффективным по сравнению с другими работами.

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

Заключение

Для распознавания ботов в онлайновой социальной сети Twitter был использован алгоритм машинного обучения «Случайный лес». В качестве исходных данных для обучения и тестирования алгоритма была использована база данных из нескольких тысяч акка-унтов Twitter, состоящей как из обычных пользователей, так из нескольких видов ботов. Стоит отметить, что для обучения алгоритма были использованы только 9 признаков ак-каунтов Twitter. При помощи алгоритма кросс-валидации были подобраны оптимальные гиперпараметры алгоритма, в качестве которых рассматривались число и глубина деревьев. На обученном алгоритме с оптимальным набором гиперпараметров было произведено тестирование на случайном наборе данных и получено значение Б1-метрики равной 0.972. Кроме того, было произведено тестирование на двух дополнительных наборах данных для сравнения с другими работами, в результате которого были получены значения Б1-метрик равные 0.973 и 0.963. Полученные значения являются довольно высокими по сравнению с тестами алгоритмов других авторов.

Список литературы

1. De Meo P., Ferrara E., Fiumara G., A. Provetti A. On Facebook, most ties are weak // Communications of the ACM. 2014. Vol. 57. No. 11. Pp. 78-84. DOI: 10.1145/2629438

2. Tsagkias M., de Rijke M., Weerkamp W. Linking online news and social media // 4th ACM intern. conf. on Web search and data mining: WSDM'11 (Hong Kong, China, February 9-12, 2011): Proc. N.Y.: ACM, 2011. Pp. 565-574. DOI: 10.1145/1935826.1935906

3. Губанов Д.А., Новиков Д.А., Чхартишвили А.Г. Социальные сети: модели информационного влияния, управления и противоборства. М.: Физматлит, 2010. 225 с.

4. Шушков Г.М., Сергеев И.В. Концептуальные основы информационной безопасности Российской Федерации // Актуальные вопросы научной и научно-педагогической деятельности молодых ученых: III Всеросс. заочная науч.-практич. конф. (Москва, Россия, 23 ноября - 30 декабря 2015 г.): Сб. науч. тр. М., 2016. С. 69-76.

5. Лыфенко Н.Д. Виртуальные пользователи в социальных сетях: мифы и реальность // Вопросы кибербезопасности. 2014. № 5(8). С. 17-20.

6. Ferrara E., Varol O., Davis C., Menczer F., Flammini A. The rise of social bots // Communications of the ACM. 2016. Vol. 59. No. 7. Pp. 96-104. DOI: 10.1145/2818717

7. Ratkiewicz J., Conover M.D., Meiss M.R., Gon9alves B., Flammini A., Menczer F. Detecting and tracking political abuse in social media // 5th intern. AAAI conf. on weblogs and social media: ICWSM'11 (Barcelona, Spain, July 17-21, 2011): Proc. Palo Alto, CA: AAAI Press, 2011. Pp. 297-304.

8. Ferrara E. Manipulation and abuse on social media // ACM SIGWEB Newsletter. 2015. Article no. 4. DOI: 10.1145/2749279.2749283

9. Wang A.H. Detecting spam bots in online social networking sites: A machine learning approach // Data and application security and privacy XXIV: 24th Annual IFIP conf. on data and applications security and privacy: DBSec 2010 (Rome, Italy, June 21-23, 2010): Proc. B.; HDBL.: Springer, 2010. Pp. 335-342. DOI: 10.1007/978-3-642-13739-6 25

10. Faraz Ahmed, Muhammad Abulaish. A generic statistical approach for spam detection in online social networks // Computer Communications. 2013. Vol. 36. No. 10-11. Pp. 1120-1129. DOI: 10.1016/j.comcom.2013.04.004

11. Zi Chu, Indra Widjaja, Haining Wang. Detecting social spam campaigns on Twitter // Applied cryptography and network security: 10th intern. conf. on applied cryptography and network security: ACNS'12 (Singapore, Singapore, June 26-29, 2012): Proc. B.; Hdbl.: Springer, 2012. Pp. 455-472. DOI: 10.1007/978-3-642-31284-7 27

12. Haewoon Kwak, Changhyun Lee, Hosung Park, Sue Moon. What is Twitter, a social network or a news media? // 19th intern. conf. on World Wide Web: WWW'10 (Raleigh, NC, USA, April 26-30, 2010): Proc. N.Y.: ACM, 2010. Pp. 591-600. DOI: 10.1145/1772690.1772751

13. Liaw A., Wiener M. Classification and regression by randomForest // R News. 2002. Vol. 2. No. 3. Pp. 18-22.

14. Biau G., Scornet E. A random forest guided tour // TEST. 2016. Vol. 25. No. 2. Pp. 197-227. DOI: 10.1007/s11749-016-0481-7

15. Classification and regression trees / L. Breiman a.o. Belmont, CA: Wadsworth Intern. Group, 1984. 358 p.

16. Safavian S., Landgrebe D. A survey of decision tree classifier methodology // IEEE Trans. on Systems, Man and Cybernetics. 1991. Vol. 21. No. 3. Pp. 660-674. DOI: 10.1109/21.97458

17. Raileanu L.E., Stoffel K. Theoretical comparison between the Gini Index and Information Gain Criteria // Annals of Mathematics and Artificial Intelligence. 2004. Vol. 41. No. 1. Pp. 77-93. DOI: 10.1023/B:AMAI.0000018580.96245.c6

18. Cresci S., Di Pietro R., Petrocchi M., Spognardi A., Tesconi M. The paradigm-shift of social spambots: Evidence, theories, and tools for the arms race // 26th intern. conf. on World Wide Web Companion: WWW'17 Companion (Perth, Australia, April 3-7, 2017): Proc. N.Y.: ACM, 2017. Pp. 963-972. DOI: 10.1145/3041021.3055135

19. Chao Yang, Harkreader R., Guofei Gu. Empirical evaluation and new design for fighting evolving Twitter spammers // IEEE Trans. on Information Forensics and Security. 2013. Vol. 8. No. 8. Pp. 1280-1293. DOI: 10.1109/TIFS.2013.2267732

20. Raschka S. Model evaluation, model selection, and algorithm selection in machine learning / Univ. of Wisconsin-Madison; Dep. of Statistics. 2018. Режим доступа: https://sebastianraschka.com/pdf/manuscripts/model-eval.pdf (дата обращения 13.04.2019).

21. Kohavi R. A study of cross-validation and bootstrap for accuracy estimation and model selection //14th Intern. joint conf. on artificial intelligence: IJCAI'95 (Montreal, Canada, August 2025, 1995): Proc. N.Y.: ACM, 1995. Vol. 2. Pp. 1137-1143.

22. Hossin M., Sulaiman M.N. A review on evaluation metrics for data classification evaluations // Intern. J. of Data Mining & Knowledge Management Process (IJDKP). 2015. Vol. 5. No. 2. Pp. 1-11. DOI: 10.5121/ijdkp.2015.5201

23. Caelen O. A Bayesian interpretation of the confusion matrix // Annals of Mathematics and Artificial Intelligence. 2017. Vol. 81. No. 3-4. Pp. 429-450. DOI: 10.1007/s10472-017-9564-8

24. Pedregosa F., Varoquaux G., Gramfort A., Michel V., Thirion B., Grisel O., Blondel M., Prettenhofer P., Weiss R., Dubourg V., Vanderplas J., Passos A.,. Cournapeau D., Brucher M., Perrot M., Duchesnay E. Scikit-learn: Machine learning in Python // The J. of Machine Learning Research. 2011. Vol. 12. Pp. 2825-2830.

25. Davis C.A., Varol O., Ferrara E., Flammini A., Menczer F. BotOrNot: A system to evaluate social bots // 25th intern. conf. companion on World Wide Web: WWW'16 (Montreal, Canada, April 11-15, 2016): Proc. N.Y.: ACM, 2016. Pp. 273-274. DOI: 10.1145/2872518.2889302

26. Miller Z., Dickinson B., Deitrick W., Wei Hu, Alex Hai Wang. Twitter spammer detection using data stream clustering // J. Information Sciences - Informatics and Computer Science, Intelligent Systems, Applications. 2014. Vol. 260. Pp. 64-73. DOI: 10.1016/j.ins.2013.11.016

27. Cresci S., Di Pietro R., Petrocchi M., Spognardi A., Tesconi M. DNA-inspired online behavioral modeling and its application to spambot detection // IEEE Intelligent Systems. 2016. Vol. 31. No. 5. Pp. 58-64. DOI: 10.1109/MIS.2016.29

Mechanical Engineering & Computer Science

Electronic journal

http://www.technomagelpub.ru ISSN 2587-9278

Mechanical Engineering and Computer Science, 2019, no. 04, pp. 24-41.

DOI: 10.24108/0419.0001473

Received: 19.03.2019

© NP "NEICON"

Bots Recognition in Social Networks Using the Random Forest Algorithm

M.G. Khachatrian1*, P.G. Klyucharev1

'5019973@mail.ru

:Bauman Moscow State Technical University, Moscow, Russia

Keywords: Random Forest, Twitter, cross-validation, Fj-metric, stratification

Online social networks are of essence, as a tool for communication, for millions of people in their real world. However, online social networks also serve an arena of information war. One tool for infowar is bots, which are thought of as software designed to simulate the real user's behaviour in online social networks.

The paper objective is to develop a model for recognition of bots in online social networks. To develop this model, a machine-learning algorithm "Random Forest" was used. Since implementation of machine-learning algorithms requires the maximum data amount, the Twitter online social network was used to solve the problem of bot recognition. This online social network is regularly used in many studies on the recognition of bots.

For learning and testing the Random Forest algorithm, a Twitter account dataset was used, which involved above 3,000 users and over 6,000 bots. While learning and testing the Random Forest algorithm, the optimal hyper-parameters of the algorithm were determined at which the highest value of the F1 metric was reached. As a programming language that allowed the above actions to be implemented, was chosen Python, which is frequently used in solving problems related to machine learning.

To compare the developed model with the other authors' models, testing was based on the two Twitter account datasets, which involved as many as half of bots and half of real users. As a result of testing on these datasets, F1-metrics of 0.973 and 0.923 were obtained. The obtained F1-metric values are quite high as compared with the papers of other authors.

As a result, in this paper a model of high accuracy rates was obtained that can recognize bots in the Twitter online social network.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

References

1. De Meo P., Ferrara E., Fiumara G., Provetti A. On Facebook, most ties are weak. Communications of the ACM, 2014, vol. 57, no. 11, pp. 78-84. DOI: 10.1145/2629438

2. Tsagkias M., de Rijke M., Weerkamp W. Linking online news and social media. 4th intern. conf. on Web search and data mining: WSDM'11 (Hong Kong, China, February 9-12, 2011): Proc. N.Y.: ACM, 2011. Pp. 565-574. DOI: 10.1145/1935826.1935906

3. Gubanov D.A., Novikov D.A., Chkhartishvili A.G. Sotsial'nye seti: Modeli informatsionnogo vliianiia, upravleniia iprotivoborstva [Social networks: models of informational influence, control and confrontation]. Moscow: Fizmatlit Publ., 2010. 225 p. (in Russian).

4. Shushkov G.M., Sergeev I.V. Kontseptual'nye osnovy informatsionnoj bezopasnosti Rossijskoj Federatsii [Conceptual foundations of information security of the Russian Federation]. Aktual'nye voprosy nauchnoj i nauchno-pedagogicheskoj deiatel'nosti molodykh uchenykh: III Vserossijskaia zaochnaia nauchno-prakticheskaia konferentsiia [Topical issues of scientific and scientific-pedagogical activity of young scientists: III All-Russian scientific and practical. conf. (Moscow, Russia, November 23 - December 30, 2015)]: Proc. Moscow, 2016. Pp. 69-76 (in Russian).

5. Lyfenko N.D. Virtual users in social networks: myths and reality. Voprosy kiberbezopasnosti [Cybersecurity Issues], 2014, no. 5(8), pp. 17-20 (in Russian).

6. Ferrara E., Varol O., Davis C., Menczer F., Flammini A. The rise of social bots. Communications of the ACM, 2016, vol. 59, no. 7, pp. 96-104. DOI: 10.1145/2818717

7. Ratkiewicz J., Conover M.D., Meiss M.R., Gonçalves B., Flammini A., Menczer F. Detecting and tracking political abuse in social media. 5th intern. AAAI conf. on weblogs and social media: ICWSM'11 (Barcelona, Spain, July 17-21, 2011): Proc. Palo Alto, CA: AAAI Press, 2011. Pp. 297-304.

8. Ferrara E. Manipulation and abuse on social media. ACM SIGWEB Newsletter, 2015, article no. 4. DOI: 10.1145/2749279.2749283

9. Wang A.H. Detecting spam bots in online social networking sites: A machine learning approach. Data and application security and privacy XXIV: 24th Annual IFIP conf. on data and applications security and privacy: DBSec 2010 (Rome, Italy, June 21-23, 2010): Proc. B.; HDBL.: Springer, 2010. Pp. 335-342. DOI: 10.1007/978-3-642-13739-6 25

10. Faraz Ahmed, Muhammad Abulaish. A generic statistical approach for spam detection in online social networks. Computer Communications, 2013, vol. 36, no. 10-11, pp. 1120-1129.

DOI: 10.1016/j.comcom.2013.04.004

11. Zi Chu, Indra Widjaja, Haining Wang. Detecting social spam campaigns on Twitter. Applied cryptography and network security: 10th intern. conf. on applied cryptography and network security: ACNS'12 (Singapore, Singapore, June 26-29, 2012): Proc. B.; HDBL.: Springer, 2012. Pp. 455-472. DOI: 10.1007/978-3-642-31284-7 27

12. Haewoon Kwak, Changhyun Lee, Hosung Park, Sue Moon. What is Twitter, a social Network or a news media? 19th intern. conf. on World Wide Web: WWW'10 (Raleigh, NC, USA, April 26-30, 2010): Proc. N.Y.: ACM, 2010. Pp. 591-600. DOI: 10.1145/1772690.1772751

13. Liaw A., Wiener M. Classification and regression by randomForest. RNews, 2002, vol. 2, no. 3, pp. 18-22.

14. Biau G., Scornet E. A random forest guided tour. TEST, 2016, vol. 25, no. 2, pp. 197-227. DOI: 10.1007/s11749-016-0481-7

15. Classification and regression trees / L. Breiman a.o. Belmont, CA: Wadsworth Intern. Group, 1984. 358 p.

16. Safavian S., Landgrebe D. A survey of decision tree classifier methodology. IEEE Trans. on Systems, Man and Cybernetics, 1991, vol. 21, no. 3, pp. 660-674. DOI: 10.1109/21.97458

17. Raileanu L.E., Stoffel K. Theoretical comparison between the Gini Index and Information Gain Criteria. Annals of Mathematics and Artificial Intelligence, 2004, vol. 41, no. 1, pp. 77-93. DOI: 10.1023/B:AMAI.0000018580.96245.c6

18. Cresci S., Di Pietro R., Petrocchi M., Spognardi A., Tesconi M. The paradigm-shift of social spambots: Evidence, theories, and tools for the arms race. 26th

intern. conf. on World Wide Web Companion: WWW'17 Companion (Perth, Australia, April 3-7, 2017): Proc. N.Y.: ACM, 2017. Pp. 963-972. DOI: 10.1145/3041021.3055135

19. Chao Yang, Harkreader R., Guofei Gu. Empirical evaluation and new design for fighting evolving Twitter spammers. IEEE Trans. on Information Forensics and Security, 2013, vol. 8, no. 8, pp. 1280-1293. DOI: 10.1109/TIFS.2013.2267732

20. Raschka S. Model evaluation, model selection, and algorithm selection in machine learning / Univ. of Wisconsin-Madison; Dep. of Statistics. 2018. Available at: https://sebastianraschka.com/pdf/manuscripts/model-eval.pdf, accessed 13.04.2019.

21. Kohavi R. A study of cross-validation and bootstrap for accuracy estimation and model selection. 14th Intern. joint conf. on artificial intelligence: IJCAI'95 (Montreal, Canada, August 2025, 1995): Proc. N.Y.: ACM, 1995. Vol. 2. Pp. 1137-1143.

22. Hossin M., Sulaiman M.N. A review on evaluation metrics for data classification evaluations. Intern. J. of Data Mining & Knowledge Management Process (IJDKP), 2015, vol. 5, no. 2, pp. 1-11. DOI: 10.5121/ijdkp.2015.5201

23. Caelen O. A Bayesian interpretation of the confusion matrix. Annals of Mathematics and Artificial Intelligence, 2017, vol. 81, no. 3-4, pp. 429-450. DOI: 10.1007/s 10472-017-9564-8

24. Pedregosa F., Varoquaux G., Gramfort A., Michel V., Thirion B., Grisel O., Blondel M., Prettenhofer P., Weiss R., Dubourg V., Vanderplas J., Passos A., Cournapeau D., Brucher M., Perrot M., Duchesnay E. Scikit-learn: Machine learning in Python. The J. of Machine Learning Research, 2011, vol. 12, pp. 2825-2830.

25. Davis C.A., Varol O., Ferrara E., Flammini A., Menczer F. BotOrNot: A system to evaluate social bots. 25th intern. conf. companion on World Wide Web: WWW'16 (Montreal, Canada, April 11-15, 2016): Proc. N.Y.: ACM, 2016. Pp. 273-274. DOI: 10.1145/2872518.2889302

26. Miller Z., Dickinson B., Deitrick W., Wei Hu, Alex Hai Wang. Twitter spammer detection using data stream clustering. J. Information Sciences - Informatics and Computer Science, Intelligent Systems, Applications, 2014, vol. 260, pp. 64-73. DOI: 10.1016/j.ins.2013.11.016

27. Cresci S., Di Pietro R., Petrocchi M., Spognardi A., Tesconi M. DNA-inspired online behavioral modeling and its application to spambot detection. IEEE Intelligent Systems, 2016, vol. 31, no. 5, pp. 58-64. DOI: 10.1109/MIS.2016.29

i Надоели баннеры? Вы всегда можете отключить рекламу.