Подход и архитектура для систематизации и выявления признаков агрессии в русскоязычном текстовом контенте | Вестник Томского государственного университета. Управление, вычислительная техника и информатика. 2021. № 54. DOI: 10.17223/19988605/54/7

Подход и архитектура для систематизации и выявления признаков агрессии в русскоязычном текстовом контенте

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

Approach and architecture for categorization and reveal of aggression features in russian text content.pdf Компьютерные сети накапливают большое количество разнородной информации, анализ которой востребован, но трудно реализуем. Одной из востребованных задач является обнаружение проявлений агрессии в сетевом контенте. В данной работе рассматриваются вопросы анализа текстового контента. Сложная структура текстового контента требует уменьшения его размерности для применения методов анализа. Для классификации текстовых сообщений, применения методов машинного обучения необходимо выполнять векторизацию текста на основе некоторых признаков. Эта задача рассматривается в данной статье. Значительное количество методов классификации текстов и, в частности, выявления агрессивных сообщений рассмотрено в статьях [1, 2]. Как правило, они реализуют типовую последовательность операций обработки данных, включающую удаление неинформативных компонентов текста, токенизацию, разметку частей речи и используют для извлечения признаков подходы bag-of-words, bag-of-stems и т.п. [3]. Реализация таких подходов возможна и для русскоязычного контента, но одним из необходимых условий их эффективности являются качественные размеченные наборы данных [4]. Другой сложностью является многозначность слов и иной характер корреляции между их негативной семантикой и агрессивностью сообщения в целом. В [5] исследуется характер языковых различий при использовании устойчивых выражений. В статье [6] с этим связываются существенно более низкие возможности выявления агрессивных сообщений на русском языке. В [7] рассматриваются психолингвистические и контентные признаки агрессивного поведения в чатах. В этой статье анализируется англоязычный контент, однако большая часть признаков и принципов их построения применима и для других языков, в частности ряд категорий лексических признаков, признаки, связанные с частями речи (прежде всего с глаголами и местоимениями). Кроме того, авторы анализируют поведение пользователей в чате. В работе [8] выделены следующие лексические и дискурсивные языковые средства, использующиеся при агрессивном речевом поведении. К первой группе относятся средства языка, выражающие негативную оценку (жаргонная лексика, окказиональные слова, инвективная лексика и пр.). Ко второй группе относятся дискурсивные средства, формирующиеся непосредственно в тексте в процессе общения и, как правило, выражающие скрытую речевую агрессию (языковая демагогия, интертекстуальность и пр.). Перечисленные языковые средства неравнозначны, их сложно формализовать. Кроме того, 56 Подход и архитектура для систематизации и выявления признаков агрессии для интернет-пространства характерны использование смеси текстового и аудиовизуального контента, смеси разных языков, специфической лексики, наличие сообщений с ошибками, опечатками, нетипичной пунктуацией, что существенно затрудняет применение лексического анализа текстов. В работе [9] обсуждаются вопросы, связанные с автоматическим выявлением в текстах социальных сетей проявлений вербальной агрессивности. Показано, что при автоматическом анализе эмоциональной насыщенности текста представляется целесообразным использовать слова, выражающие негативную оценку. Авторы работы разработали систему психолингвистического анализа текстовой информации (PLATIn). Данная система основана на использовании словарей русского текста, разбитых на списки лексических единиц, согласно их семантической направленности. К недостаткам данного метода следует отнести то, что он не делает различий на семантико-синтаксическом уровне. В [10, 11] рассматриваются психолингвистические, лексические, семантические маркеры, которые можно использовать для характеристики агрессивности текста. К психолингвистическим маркерам относятся количество слов в предложении, коэффициент определенности действия, количество глаголов в пассивном залоге, средняя длина слова, отношение количества инфинитивов к общему числу глаголов и т.д. Эти характеристики могут выявить эмоциональное состояние автора, наличие призывов к действию, противопоставлений «мы-они» и т.п. К словарным лексическим маркерам относятся: обозначение негативных эмоциональных и телесных состояний (гнев, отвратительный), слова с деструктивной семантикой (уничтожить, раздавить), лексика физического насилия (бить, ранить), ин-вективная лексика (идиот, предатель) и т.д. Семантические маркеры выражают значения слов, например: деструктив - объект разрушающего воздействия (взорвать дом), ликвидатив - объект, прекращающий существование (убить человека), результатив - следствие (привести к кризису) и т.д. Таким образом, источники приводят множество признаков агрессии в тексте, но при этом нет их общей классификации с точки зрения природы этих признаков и, следовательно, подходов к их выявлению. Кроме того, последовательности операций обработки данных зависят от конкретных признаков и должны учитывать их особенности. 1. Классификация признаков Рассмотренные признаки можно сгруппировать в следующие категории: 1. Лексические: к этим признакам относятся отдельные слова и устойчивые выражения, сигнализирующие о возможности агрессивного контента. 2. Морфологические: признаки, связанные с частями слов и словообразованием, образованием неологизмов и производных слов с помощью суффиксов, приставок. 3. Статистические: признаки, основанные на частотах использования частей речи, знаков препинания. 4. Дискурсивные: самая сложная в выявлении группа, связанная с использованием демагогии, различной стилистики речи, иронии и сарказма, искажений слов и других приемов, которые сложно формализовать и выявить. 5. Косвенные: маркеры эмоциональной выраженности, связанные в основном с формой представления текста (маскировка, регистр и т.п.). Примеры приведенных признаков представлены в табл. 1. Таблица 1 Признаки агрессии в тексте Класс средств / признаков Примеры Лексические признаки Инвективная, обсценная, стилистически сниженная лексика Подлец, двурушник, враг народа Эвфемизмы Женщина с низкой социальной ответственностью Жаргонная лексика Фуфлыжник Немотивированное использование иноязычных элементов в целях агрессивного воздействия на читателя, провоцирующее возникновение у него чувства неполноценности из-за непонятности изложения Да Вы просто рутинёр, милейший! Ваши слова, уважаемый, бурлеск чистой воды. Ровно как и Вы -акциденция современности 57 Д.К. Левоневский, А.И. Савельев Окончание табл. 1 Класс средств / признаков Примеры Глаголы с общим значением разрушительного действия Грызть, дырявить, бить Глаголы уничтожения Зарезать, губить, пепелить Глаголы повреждения Ранить, царапать, ковырять Слова с негативной семантикой Украсть, хапнуть Названия профессий, употребляемые в переносном значении Палач, мясник Зоосемантические метафоры Кобель, кобыла, свинья Морфологические признаки Окказициональные слова - неологизмы, оценочность которых может быть связана как с мотивирующей (производящей) базой (например, собственные имена лиц, слова с негативным денотатом и т.д.), так и со словообразовательными средствами (например, маркированные суффиксы -щина, -ость, -ация, -изм, -ист, -ец, -оид, размерно'-оценочные суффиксы, префиксы а-, без-, анти-, контр-, де-, квази-, псевдо-, экс- и т.д.) Троцкизм, обломовщина, либероид, ватник, коммуняки, дерьмократы, прихватизация Дискурсивные признаки Языковая демагогия (сознательное нарушение словесных пресуппозиций, постулатов успешного общения, использование речевых импликатур) Ну Вы у нас признанный эксперт, конечно Тенденциозное использование негативной информации, перегруженность текста негативной информацией (например, использование безысключи-тельной лексики: каждый, все, никто и т.д.) Все знают, что ты отсталый Интертекстуальность: обращение к вербальным прецедентным феноменам, которые связаны с определенными эмоциями и оценками для людей, разделяющих знание о них, с целью иронизирования, насмешки и т.д. Шариков Псевдоимперативы Поговори мне еще! Риторические вопросы Ты первый день на работе, что ли? Гиперболы Миллион раз я тебе говорил Статистические признаки Количество местоимений 1-го, 3-го лица множественного числа Управы на них нет! Да мы их в пыль сотрём Относительная доля глаголов Будем рвать их, резать, надо прибить к чертям Относительная доля глаголов в будущем времени Разберемся еще, время покажет Большое количество восклицательных знаков, кратные восклицательные и вопросительные знаки Твари!!!!! Косвенные признаки Маскировка слов (замена букв спецсимволами, цифрами, буквами других алфавитов, намеренное искажение слов) пОдОнки Маркеры эмоциональной выраженности: использование верхнего регистра, наличие опечаток, ошибок ТЫ ЧТО ТВОРИШ???!!! Следует отметить, что наличие этих признаков не означает, что текстовое сообщение агрессивно, а только характеризует повышенную вероятность этого. 2. Выявление признаков Среди языков программирования одним из наиболее предпочтительных для решения задачи является Python в силу его широких возможностей с точки зрения обработки текстов и наличия гибких структур данных. Поэтому все упоминаемые библиотеки приводятся так, как они названы в Python. Для выявления лексических признаков используются словари. Наиболее эффективным видится применение в качестве основного словаря русского раздела Wiktionary, так как он обладает следующими преимуществами: - имеет регулярно публикуемые дампы в форматах SQL и XML для компьютерной обработки; - содержит не только начальные формы слов, но и падежные формы, формы множественного числа и др.; - содержит как слова общей лексики, так и большое количество бранных и жаргонных слов; 58 Подход и архитектура для систематизации и выявления признаков агрессии - содержит много устойчивых выражений; - имеет списки синонимов и антонимов, что позволяет отслеживать семантические связи между понятиями; - предусматривает большое количество категорий слов, характеризующихся пометками «грубое», «уничижительное», «вульгарное», «бранное», «криминальный жаргон», «сниженное», «пренебрежительное», «просторечное» и др. Однако надо отметить, что словарь часто не содержит новейших форм интернет-жаргона и производных форм слов, что является частью более общей проблемы неполноты данных в задаче обнаружения агрессивного контента [12]. Выявление морфологических признаков может выполняться с помощью библиотек разбора слов по составу (XMorphy) или регулярных выражений (re). Статистические признаки имеют различные способы выявления: - для признаков, основанных на употреблении частей речи, используются технические средства классификации слов (например, библиотека pymorphy2, позволяющая определить часть речи, узнать категории времени, лица, числа); - для признаков, основанных на пунктуации, смайликов можно использовать простые средства поиска, например регулярные выражения (библиотека re); - для поиска ошибок можно использовать средства автоматической проверки орфографии (библиотека enchant). Дискурсивные признаки сложнее всего поддаются анализу, но в ряде случаев их можно свести к признакам других типов [13]. Надо отметить, что большинство методов выполняет классификацию сообщений, реализуя примерно одну и ту же последовательность операций по обработке текстов, которая включает удаление стоп-слов, токенизацию, разметку частей речи, стемминг и т.д., а также типовые способы извлечения признаков (например, построение векторов на основе «мешка слов»). Предлагаемый подход в целом соответствует такой схеме, но отличается конструированием различных последовательностей блоков преобразования данных для разных типов признаков, после чего выполняется объединение результатов. Соответствующая диаграмма классов показана на рис 1. Рис. 1. Общая диаграмма классов для построения набора признаков Fig. 1. High-level class diagram for building the feature set В приведенной диаграмме полный набор признаков описывается объектом FeatureSet, содержащим отдельные признаки - объекты класса FeatureType. Каждый признак имеет свою последовательность обработки данных (DataProcessingPipeline), состоящую из последовательных блоков пре-59 Д.К. Левоневский, А.И. Савельев образования данных (объекты классов-наследников AbstractDataProcessor). Сами классы FeatureSet, FeatureType и DataProcessingPipeline также наследуют AbstractDataProcessor, выполняя роль фасада и позволяя одним и тем же способом выполнять как атомарные, так и составные преобразования. Основные виды классов обработки данных - DataProcessor (изменение формы представления данных), DataFilter (фильтрация) и DataVectorizer (преобразование в число или вектор). Их подклассы отображены на рис. 2. Преобразование данных (рис. 2, а) выполняется с использованием библиотек работы с текстом (POSAnalyzer, POS; WordNormalizer, WS) и регулярных выражений (WordTokenizer, WT; RegexConverter, RE; RegexTokenizer, RT; Splitter, S). Фильтрация данных (рис. 2, b) производится на основе словарей (VocabularyFilter, VF) и регулярных выражений (RegexFilter, RF). При нестрогой словарной фильтрации (SimilarityFilter, SF) используется расстояние Левенштейна [14], рассчитываемое как минимальное количество односимвольных операций вставки, удаления или замены, необходимых для преобразования одного слова в другое. Эта величина выбрана, так как она отражает редакционное расстояние между словами и характеризует сходство слов. RegexConverter (RE) RegexTokenizer (RT) # pattern: string # expression: string # sub: string + RegexTokenizer(string): void + RegexConverter(string, string): void + transformItem(string): list + transformItem(string): list Splitter (S) _{ _І_у + transformItem(string): list VocabularyFilter (VF) it vocabulary: Vocabulary + VocabularyFilter(Vocabulary): void + filterltem(string): boolean AbstractDataPro cessor DataTransformer POSAnalyzer (POS) AbstractDataProcessor DataFilter process(Dataltem): Dataltem filterltem(string): boolean з: RegexFilter (RF) expression: string RegexFilter(string): void filterltem(string): boolean process(Dataltem): Dataltem transformltem(string): list 5 5 SimilarityFilter (SF) POSAnalyzer(string): void transform I tem(string): list SimilarityFilter(Vocabularyy int, int): void filterltem(string}: boolean distance(string, string}: int WordTokenizer (WT) WordNormalizer (WN) MultiwordVocabularyFilter (MVF) + transform Item(string): list + transformltem(string): list + process(Data Item): Dataltem + filterltem(string): boolean T а b Рис. 2. Классы: а - преобразования данных, b - фильтрации данных Fig. 2. Classes for a - data transformation, b - data filtration Т аблица 2 Последовательность обработки данных для распознавания признаков агрессии Признаки Последовательность блоков преобразования данных Отдельные лексические единицы - инвективная лексика; стилистически сниженная лексика; жаргон; зоосемантические метафоры; отдельные немногочисленные семантические группы слов (например, маркеры всеобщности) WT ^ WN ^ SF ^ IC Устойчивые выражения, метафоры WT ^ MVF ^ IC Морфологические признаки (приставки, суффиксы) WT ^ WN ^ RF ^ IC Глаголы в повелительном наклонении WT ^ POS ^ VF ^ RC Количество местоимений 1-го, 3-го лица множественного числа WT ^ WN ^ VF ^ IC Относительная доля глаголов WT ^ POS ^ VF ^ RC Относительная доля глаголов в будущем времени WT ^ POS ^ VF ^ RC Кратные знаки препинания RE ^ RT ^ RF ^ IC Наличие опечаток, ошибок WT ^ WN ^ VF ^ IC Использование верхнего регистра S ^ RF ^ RF ^ RC Маскировка слов RT ^ RF ^ IC 60 Подход и архитектура для систематизации и выявления признаков агрессии Окончательное значение признака рассчитывается как количество найденных образцов в тексте (ItemCounter, IC) или относительная частота их появления или отсутствия (RateCounter, RC). Схема обработки данных при распознавании различных типов признаков приведена в табл. 2. Для каждого признака она включает набор блоков обработки данных, которые применяются последовательно в порядке, указанном символом «^». 3. Результаты Для тестирования был использован dataset [15], содержащий комментарии с русскоязычных сайтов, в большинстве случаев агрессивного характера. Для оценки точности часть данных из dataset в размере n = 300 элементов была размечена вручную. Затем для каждого признака /были рассчитаны значения ошибки при i-м измерении £/ среднее значение ошибки Ef , его среднеквадратическое отклонение с/ и оценка верхнего порога ошибки, рассчитанная по правилу 3о в предположении, что распределение величины подчиняется нормальному закону: Ef, =| fa - fr\\, /'a rm , - значение признака, определенное автоматически, f - то же значение, определенное вручную; n Ef 1 n 7=1 J1 n _ -1 (Ef - E ? i=1 Результаты оценивания приведены в табл. 3. Результаты оценивания точности расчета признаков Таблица 3 Признак Среднее значение ошибки E f Среднеквадратическое отклонение Пороговое значение Количество лексических единиц 1,9 2,1 8,4 Количество устойчивых выражений 0,08 0,37 1,2 Относительная доля использования верхнего регистра 0 0 0 Количество случаев использования кратных знаки препинания 0,01 0,1 0,3 Относительная доля глаголов 0,03 0,05 0,18 Относительная доля глаголов в повелительном наклонении 0,002 0,01 0,04 Относительная доля глаголов в будущем времени 0,004 0,01 0,04 Количество местоимений 1-го, 3-го лица множественного 0 0 0 числа Морфологические признаки 0,8 0,5 2,5 Количество опечаток, ошибок 2 1,4 6,2 Количество случаев маскировки слов 0,05 0,03 0,13 Из табл. 3 видно, что часть признаков, которые являются строго определенными и формальными, определяется практически без погрешностей. Среди остальных признаков наибольшая погрешность наблюдается при определении количества лексических единиц. То, что преобладает ошибка I рода, объясняется многозначностью слов и, в частности, тем, что слова общей лексики могут иметь дополнительные значения, несущие негативную направленность, зачастую в узкоспециализированном контексте. Заключение Предложенный в статье подход включает в себя классификацию признаков агрессивного текстового контента, способы их выявления и архитектуру соответствующей программной системы. 61 Д.К. Левоневский, А.И. Савельев Реализация системы позволяет оценивать признаки агрессивности текстового контента с достаточной точностью. Предложенный подход может быть использован при решении более общей задачи классификации многомодального контента, включающего также речь и видео [16, 17]. Ограничения подхода состоят в том, что его нельзя применить для сообщений, содержащих разнородный контент или смесь языков.

Ключевые слова

анализ текста, агрессия, извлечение эмоций, анализ тональности, обработка естественного языка

Авторы

ФИООрганизацияДополнительноE-mail
Левоневский Дмитрий КонстантиновичСанкт-Петербургский Федеральный исследовательский центр Российской академии наукнаучный сотрудникdlewonewski.8781@gmail.com
Савельев Антон ИгоревичСанкт-Петербургский Федеральный исследовательский центр Российской академии науккандидат технических наук, старший научный сотрудникsaveliev.ais@yandex.ru
Всего: 2

Ссылки

Уздяев М.Ю. Распознавание агрессивных действий с использованием нейросетевых архитектур 3D-CNN // Известия ТулГУ. Технические науки. 2020. № 2. С. 316-330.
Уздяев М.Ю., Левоневский Д.К., Шумская О.О., Летенков М.А. Метод детектирования агрессивных пользователей информационного пространства на основе генеративно-состязательных нейронных сетей // Информационноизмерительные и управляющие системы. 2019. Т. 17, № 5. С. 60-68.
Russian Language Toxic Comments Small dataset with labeled comments from 2ch.hk and pikabu.ru. URL: https://www.kaggle.com/blackmoon/russian-language-toxic-comments (accessed: 04.08.2020).
Левенштейн В.И. Двоичные коды с исправлением выпадений, вставок и замещений символов // Доклады Академии наук СССР. 1965. Т. 163, № 4. С. 845-848.
Reyes A., Rosso P. Making objective decisions from subjective data: Detecting irony in customer reviews // Decision support systems. 2012. V. 53, № 4. P. 754-760.
Rosa H., Pereira N., Ribeiro R., Ferreira P.C., Carvalho J.P., Oliveira S., Coheur L., Paulino P., Veiga Simao A.M., Trancoso I. Automatic cyberbullying detection: a systematic review // Computers in Human Behavior. 2019. V. 93. P. 333-345.
Сбоев А.Г., Гудовских Д.В., Молошников И.А., Кукин К.А., Рыбка Р.Б., Иванов И.И., Власов Д.С. Автоматическое выделение психолингвистических характеристик текстов в рамках концепции Big Data // Современные информационные технологии и ИТ-образование. 2013. № 9. С. 433-438.
Ковалёв А.К., Кузнецова Ю.М., Минин А.Н., Пенкина М.Ю., Смирнов И.В., Станкевич М.А., Чудова Н.В. Методы выявления по тексту психологических характеристик автора (на примере агрессивности) // Вопросы кибербезопасности. 2019. Т. 4, № 32. С. 72-79.
Девяткин Д.А., Кузнецова Ю.М., Чудова Н.В., Швец А.В. Интеллектуальный анализ проявлений вербальной агрессивно сти в текстах сетевых сообществ // Искусственный интеллект и принятие решений. 2014. № 2. С. 27-41.
Петрова Н.Е., Рацибурская Л.В. Язык современных СМИ: Средства речевой агрессии. М. : Флинта : Наука, 2011. 160 с.
Parapar J., Losada D.E., Barreiro A. Combining Psycho-linguistic, Content-based and Chat-based Features to Detect Predation in Chatrooms // J. UCS. 2014. V. 20, № 2. P. 213-239.
Gordeev D. Automatic detection of verbal aggression for Russian and American imageboards // Procedia - Social and Behavioral Sciences. 2016. V. 236. P. 71-75.
Levonevskiy D., Malov D., Vatamaniuk I. Estimating Aggressiveness of Russian Texts by Means of Machine Learning // Interna tional Conference on Speech and Computer. Springer, Cham, 2019. P. 270-279.
Zykova I.V. Perception of verbal communication reflected in Russian and English phraseology: towards a new theory of Phraseologism-formation // Procedia - social and behavioral sciences. 2016. V. 236. P. 139-145.
Medhat W., Hassan A., Korashy H. Sentiment analysis algorithms and applications: A survey // Ain Shams Engineering Journal. 2014. V. 5, № 4. P. 1093-1113.
Ventirozos F.K., Varlamis I., Tsatsaronis G. Detecting aggressive behavior in discussion threads using text mining // International Conference on Computational Linguistics and Intelligent Text Processing. Springer, Cham, 2017. P. 420-431.
Mantyla M.V., Graziotin D., Kuutila M. The evolution of sentiment analysis - a review of research topics, venues, and top cited papers // Computer Science Review. 2018. V. 27. P. 16-32.
 Подход и архитектура для систематизации и выявления признаков агрессии в русскоязычном текстовом контенте | Вестник Томского государственного университета. Управление, вычислительная техника и информатика. 2021. № 54. DOI: 10.17223/19988605/54/7

Подход и архитектура для систематизации и выявления признаков агрессии в русскоязычном текстовом контенте | Вестник Томского государственного университета. Управление, вычислительная техника и информатика. 2021. № 54. DOI: 10.17223/19988605/54/7