Использование нейронных сетей для бинарной классификации сообщений из социальных сетей в сфере городского хозяйства
Автор: Йосифова А.И.
Журнал: Международный журнал гуманитарных и естественных наук @intjournal
Рубрика: Технические науки
Статья в выпуске: 1-3 (100), 2025 года.
Бесплатный доступ
В данной работе рассматривается применение различных моделей архитектуры BERT семейства трансформеров в решении задачи классификации сообщений из социальных сетей. Актуальность работы обусловлена необходимостью разработки решения данной задачи с целью повышения эффективности обработки информации в городском хозяйстве. Для этого был выбран подход дообучения (fine-tuning) уже предобученных моделей из открытых ресурсов на основе имеющегося набора размеченных данных. При этом были использованы различные модели на основе данной архитектуры, такие как BERT, RuBERT, RoBERTa и др. Результаты работы показали большую эффективность применения данных моделей по совокупности метрик: точность, полнота, скорость работы и количество ложноположительных ответов. Для достижения максимального значения метрики полнота был снижен порог отнесения объекта моделью к положительному классу, при этом точность моделей уменьшилась незначительно. Особенно хорошо себя показали модели, предобученные на русскоязычных текстах и на текстах из социальных сетей. Лучшей оказалась модель ai-forever/ruBert-base, при использовании которой значительно снизилось количество ложноположительных ответов.
Классификация текста, машинное обучение, обработка естественного языка, социальные сети
Короткий адрес: https://sciup.org/170208958
IDR: 170208958 | DOI: 10.24412/2500-1000-2025-1-3-148-153
Текст научной статьи Использование нейронных сетей для бинарной классификации сообщений из социальных сетей в сфере городского хозяйства
В современном мире социальные сети становятся одним из основных источников обратной связи и информации для городских органов управления. Однако сообщения из социальных сетей представляют собой очень большой объем неструктурированных данных, что делает их обработку и анализ чрезвычайно сложной задачей. Классификация этих сообщений становится крайне важной для Комплекса городского хозяйства, поскольку нерелевантные сообщения (новости, не относящиеся к сфере городского хозяйства), составляют около 90% всех приходящих сообщений. Отсеивание большей части нерелевантной информации позволяет сосредоточиться на важных новостях, особенно если те требуют срочного реагирования. Этим и объясняется актуальность данной работы.
Научная новизна исследования состоит в сравнительном анализе производительности дообученных моделей архитектуры BERT на русскоязычных текстах из социальных сетей.
Для эффективного решения данной задачи в области естественного языка исследователи обращают внимание на модели глубокого обучения, в частности, на основе трансформеров, а именно BERT (Bidirectional Encoder Representations from Transformers) [1]. В открытом доступе находится множество моделей с данной архитектурой, которые предобу-чены на больших данных и обладают уникальной способностью анализировать и интерпретировать информацию с учетом окружающих данных и ситуации, в которой эта информация была представлена, то есть понимать контекст [2]. При этом часть из них обучена именно на текстах из социальных сетей или же специализируется также и на русском языке, что делает их подходящим вариантом для решения поставленной задачи [3].
Исходный набор данных
В качестве исходных данных использовались новостные сообщения из социальных сетей, предоставленные организациями городского хозяйства. Объем этих данных составляет 1,2 млн объектов. Сообщения были размечены (две возможные метки, 0 и 1, где 1 – сообщение, относящееся к сфере городского хозяйства, интересующий нас класс, 0 – не относящееся). В них был найден различного рода шум, такой как эмодзи, html разметка и прочее. В процессе исследования также было обнаружено присутствие сильного дисбаланса классов – нужный класс составлял всего 10% от всего объема данных.
Основная сложность задачи заключается в трудности учета контекста сообщения, при мониторинге социальных сетей собираются не только сами новости, но и комментарии пользователей к ним. Также стоит учитывать наличие ненормированной лексики, пользователи допускают орфографические, синтаксические и пунктуационные ошибки, используют нецензурные слова и т.д.
Модель BERT
BERT (Bidirectional Encoder Representations from Transformers) – языковая модель, которая основана на архитектуре трансформер. Особенностью данной модели является ее работа на основе механизма «внимания», что позволяет изучать контекстуальные отношения между словами в тексте [1].
Одной из ключевых особенностей BERT является ее предварительное обучение на больших корпусах текстов. Модель обучается на нескольких языках одновременно, что делает ее многоязычной, а задачи, такие как маскирование слов и предсказание следующего предложения, обеспечивают модели общее понимание языка. После предварительного обучения BERT может быть донастроена на конкретную задачу путем дообучения на относительно небольшом наборе данных. Это позволяет модели адаптироваться к конкретной задаче и набору данных, что существенно улучшает ее производительность. Таким образом, различают три подхода при использовании данной модели: предобучение (pretraining), дообучение (fine-tuning) и междоменное предобучение (cross-domain pretraining) [4].
Для полноценного предобучения модели необходимо большое количество текстовых данных, взятых из статей, книг, новостей и т.д., благодаря которым модель изучает сам язык и его структуру [5]. В данном же случае необходима уже обученная модель, которую можно настроить для классификации текста в нашей предметной области. При выборе предообученной модели важно обращать внимание на каких данных эта модель была обучена, чем более схожи эти данные по своей природе с нашим набором данных, тем лучше.
Обработка набора данных
Первым шагом в данной работе являлось решение проблемы дисбаланса классов одним из следующих методов:
-
- недостаточная выборка (under-sampling) для мажоритарных классов;
-
- избыточная выборка (over-sampling) для миноритарных классов;
-
- взвешивание классов (в соответствии с количеством примеров) [6].
Поскольку имеющиеся данные обладают достаточным объемом, но при этом нужный класс меньше, был выбран метод недостаточной выборки. Для учета сезонности новостных сообщений была сформирована выборка из мажоритарного класса методом выбора каждого n-го сообщения таким образом, чтобы их итоговое количество было равно или немного больше количества сообщений меньшего класса.
Предобработка естественного языка обычно включает в себя такие этапы, как удаление нерелевантных символов, приведение к нижнему регистру, удаление стоп-слов и токени-зация [7]. Также в зависимости от модели может быть необходимо применение лемматизации (приведение слова к его начальной форме) [8].
В связи с особенностями архитектуры, для модели BERT требуется минимальная очистка набора данных, а именно:
-
- удаление нерелевантных знаков и символов (эмодзи, маркеры и т.д.);
-
- приведение к нижнему регистру (если модель чувствительна к регистру);
-
- токенизация.
BERT принимает на вход токенизирован-ный текст, и каждое слово или подслово рассматривается как отдельный токен. Поэтому стоп-слова (например, предлоги, союзы и т. д.) не удаляются из предложения и учитываются в контексте. Лемматизация также не требуется, поскольку BERT автоматически учитывает разные формы слов в контексте предложения. Благодаря механизму маскирования слов (masked language modeling) и предсказанию следующего предложения (next sentence prediction), модель учится понимать семантические отношения между словами и их контекстуальные значения, что делает лемматизацию излишней.
На этапе токенизации данных стоит обратить внимание на длину предложений в наборе данных. У модели BERT есть два ограничения на входные данные:
-
- все предложения должны иметь одинаковую фиксированную длину;
-
- максимальная допустимая длина предложений 512 токенов [9].
Предложения в наборе данных имеют разную длину, поэтому их необходимо было привести к одной длине путем заполнения последовательностей токенов до одной и той же длины, такой метод носит название «пад-динг». Чаще всего для паддинга в BERT используется специальный токен [PAD], который добавляется к коротким последовательностям до той же длины, что и самая длинная последовательность в данном пакете данных (батче) или в самом наборе данных. В зависимости от токенизатора конкретной модели число токенов для одного и того же предложения может отличаться.
После проведения токенизации выборка была разделена на обучающую, тестовую и валидационную в соотношении 80%:10%:10%.
Разновидности моделей BERT
Для дообучения предобученных моделей была использована их модифицированная версия с дополнительным классификационным слоем поверх основной архитектуры (BertForSequenceClassification).
Далее были заданы необходимые параметры обучения: размер пакета данных (batch size) и максимальная длина предложения в токенах (max length). Размер пакета данных был выбран 32, при большем объеме наблюдалось ухудшение обобщающей способности модели, а при меньшем объеме время обучения значительно увеличивалось. Максимальное количество токенов в предложении варьировалось в пределах от 168 до 320 токенов в зависимости от токенизатора конкретной модели.
Существует множество различных подходов и улучшений, использующих логику BERT, рассмотрим подробнее какие из них использовались в данной работе и их отличительные характеристики.
RoBERTa. Архитектура данной модели ничем не отличается от классической модели BERT, различие заключается в методе предо- бучения модели. В данном подходе устраняется задача предсказания следующего предложения, но при этом увеличивается объем пакетов данных и длина последовательности [10].
DistilBERT. Упрощенная версия BERT, которая сохраняет 97% производительности BERT при уменьшении размера модели на 60% [11].
RuBERT. Адаптация модели BERT для русского языка. Модель сохраняет архитектуру классического BERT, но учитывает морфологические и синтаксические особенности русского языка [12].
RoPEBERT. Версия модели BERT, использующая ротационное позиционное кодирование (RoPE). В отличие от традиционного абсолютного позиционного кодирования в BERT, RoPE обеспечивает более эффективное понимание порядка слов в текстах различных длин [13].
Для обучения использовались предобучен-ные модели BERT, устанавливаемые библиотекой transformers с платформы HuggingFace [14].
Оценка качества моделей
Для оценки качества полученных моделей использовались следующие метрики:
-
- доля правильных ответов (accuracy);
-
- точность (precision) – доля правильно предсказанных положительных объектов среди всех предсказанных как положительные [1 50] ;
-
- полнота (recall) – доля правильно предсказанных положительных объектов среди всех действительно положительных [15];
-
- время обработки 500 сообщений (в секундах);
-
- количество объектов, отнесенных моделью к положительному классу;
-
- количество фактических объектов положительного класса.
В контексте данной задачи самой важной метрикой является полнота, поскольку очень важно снизить вероятность ошибки второго рода, то есть случаев, когда новостное сообщение относится к организации, но было ошибочно отвергнуто [16]. Также немаловажной является скорость работы модели, так как она будет использоваться в реальном времени. С учетом предобработки сообщений время обработки моделью 500 сообщений (среднее количество сообщений, приходящих от мониторинговых систем за 2 минуты) не должно превышать 1 минуты. И последний фактор – вес модели, значение которого важно контролировать, так как для этой модели будет выделено не более 5ГБ места хранилища. По этой причине изначально выбирались модели, чей размер соответствует требованиям организаций.
Все дообученные модели в итоге сравнивались с моделью, которая в настоящее время используется в организациях, так как главной задачей являлось получение более эффективной модели, то есть оптимизация данного процесса.
Результаты
После дообучения каждой модели выводились графики зависимости функции потерь от количества эпох обучения, всего до 4 эпох. Для всех использованных моделей оптимальным оказалось обучение с 1 эпохой, в остальных случаях наблюдалось снижение ошибки на тестовой выборке, но при этом росла ошибка на валидационной выборке, что свидетельствовало о переобучении.
Результаты работы дообученных моделей на валидационной выборке, а именно доля правильных ответов (acc) и оценка функции потерь на валидации (loss), представлены в таблице 1.
Таблица 1. Результаты дообучения моделей
Модель |
acc |
loss |
DeepPavlov/rubert-base-cased-conversational |
0.87 |
0.31 |
DeepPavlov/rubert-base-cased-sentence |
0.87 |
0.32 |
cointegrated/rubert-tiny2 |
0.84 |
0.37 |
google-bert/bert-base-multilingual-cased |
0.85 |
0.35 |
FacebookAI/xlm-roberta-base |
0.80 |
0.43 |
ai-forever/ruBert-base |
0.87 |
0.31 |
Tochka-AI/ruRoPEBert-classic-base-512 |
0.86 |
0.33 |
Twitter/twhin-bert-base |
0.86 |
0.34 |
Все модели показали хороший результат, при этом как по доли правильных ответов, так и по оценке функции потерь, лучший результат показали модели DeepPavlov/rubert-base-cased-conversational и ai-forever/ruBert-base со значениями 0.87 и 0.31 оценок точности и функции потерь соответственно.
Поскольку при решении данной задачи критичны ошибки второго рода, то максимальное из полученных в результате тестирования значение по метрике полнота все еще было недостаточно высоким. По этой причине у всех полученных моделей был снижен порог вероятности классификации до 0.1.
Для повторной оценки моделей был получен новый набор данных от организаций, после балансировки которого его объем составил 42 тыс. предложений. Оценка работы моделей по тем же метрикам на новой валидаци-онной выборке, а именно оценки по метрикам доля правильных ответов, точность, полнота, количество предсказанных моделью и фактических объектов положительного класса и скорость работы модели в секундах, представлена в таблице 2.
Таблица 2. Оценка моделей с измененным порогом вероятности
Модель |
recall |
acc |
time |
Yп |
Yф |
DeepPavlov/rubert-base-cased-conversational |
0.98 |
0.81 |
21 |
29934 |
22749 |
DeepPavlov/rubert-base-cased-sentence |
0.98 |
0.79 |
11 |
30932 |
|
cointegrated/rubert-tiny2 |
0.98 |
0.72 |
8 |
33851 |
|
google-bert/bert-base-multilingual-cased |
0.98 |
0.77 |
12 |
31939 |
|
FacebookAI/xlm-roberta-base |
0.98 |
0.67 |
14 |
36172 |
|
ai-forever/ruBert-base |
0.98 |
0.82 |
9 |
29814 |
|
Tochka-AI/ruRoPEBert-classic-base-512 |
0.98 |
0.79 |
9 |
30906 |
|
Twitter/twhin-bert-base |
0.98 |
0.78 |
9 |
31126 |
|
Модель организаций |
0.98 |
0.56 |
20 |
41703 |
Лучший результат показала модель ai-forever/ruBert-base. Как видно из таблицы 2, рассчитанное количество сообщений, которое модель отнесла к положительному классу, оказалось намного меньше, чем у модели, используемой организациями в настоящее время (29814 и 41703, соответственно). Также и значение оценки точности у модели ai-forever/ruBert-base намного выше, чем у используемой в организациях (0.82 и 0.56, соответственно). Это свидетельствует о значительном уменьшении количества ложнополо- жительных ответов, что очень важно в рамках поставленной задачи.
Модели были сравнены и по времени обработки 500 сообщений, так как для модели организаций используется более сложная обработка текста новостных сообщений, включающая в себя, помимо прочего, удаление стоп-слов и лемматизацию. По полученным расчетам время обработки, необходимое лучшей из полученных моделей с учетом предобработки новостных сообщений, составило 9 секунд, что соответствует заявленным требованиям (не превышает 1 минуты), а также оказалось меньше, чем у используемой в организациях модели, которой требуется 20 секунд.
Заключение
Модель ai-forever/ruBert-base оказалась значительно лучше того решения, что используется в организациях практически по всем метрикам: полнота (0.98), точность (0.82), скорость обработки 500 сообщений в секундах (9) и количество предсказанных моделью объектов положительного класса (29814 предсказанных моделью при 22749 фактических). Все это свидетельствует о высокой точности модели и минимальном количестве ложноположительных ответов.
Использование данной модели значительно снизит количество получаемых сообщений, не относящихся к сфере городского хозяйства, что в свою очередь сделает более эффективными обработку релевантных сообщений и срочное реагирование на них в случае необходимости. Также эти результаты подтверждают высокую эффективность использования моделей c архитектурой BERT для решения такого рода задач.
Список литературы Использование нейронных сетей для бинарной классификации сообщений из социальных сетей в сфере городского хозяйства
- Devlin J. et al. Bert: Pre-training of deep bidirectional transformers for language understanding // arXiv preprint arXiv:1810.04805. - 2018.
- Tezgider M., Yildiz B., Aydin G. Text classification using improved bidirectional transformer // Concurrency and Computation: Practice and Experience. - 2022. - T. 34. - № 9.
- Solomin A.A., Ivanova Y.A. Modern approaches to multielass intent classification based on pre-trained transformers // Scientife and Techrical Journal of Information Technologies, Mechanics and Optics. - 2020. - Т. 20. - № 4. - С. 532-538.
- Sun C. et al. How to fine-tune bert for text classification? // Chinese Computational Linguistics: 18th China National Conference, CCL 2019, Kunming, China, October 18-20, Proceedings 18. Springer International Publishing. - 2019. - C. 194-206.
- Белоногова А.Д., Огнянович П.А., Гайдамака К.И. Применение методов машинного обучения для обеспечения качества спецификаций требований // International Journal of Open Information Technologies. - 2021. - Т. 9. - № 8.