Научная статья на тему 'Классификация коротких сообщений с использованием векторизации на основе ELMo'

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

CC BY
465
106
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
КЛАССИФИКАЦИЯ ТЕКСТА / ЛОГИСТИЧЕСКАЯ РЕГРЕССИЯ / ВЕКТОРИЗАЦИЯ ТЕКСТА / TEXT CLASSIFICATION / LOGISTIC REGRESSION / TEXT EMBEDDING

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Спивак Антон Игоревич, Лапшин Сергей Владимирович, Лебедев Илья Сергеевич

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

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

CLASSIFICATION OF SHORT MESSAGES BASED ON ELMO EMBEDDINGS

The paper has a result of research of application different type of short message vector mapping for case of its small length. Also the paper includes experimental result of several machine learning algorithms with vector features. The best evaluation score was found for word embeddings based on ELMo. The classifier based on logistic regression demonstrates the best result of average precision metrics across all classes.

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

УДК 004.912

КЛАССИФИКАЦИЯ КОРОТКИХ СООБЩЕНИЙ С ИСПОЛЬЗОВАНИЕМ ВЕКТОРИЗАЦИИ НА ОСНОВЕ ELMO

А.И. Спивак, С.В. Лапшин, И.С. Лебедев

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

Ключевые слова: классификация текста, логистическая регрессия, векторизация текста.

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

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

Вторым подходом к классификации является применения модели текста «мешок слов» [1] с его расширением для частотных характеристик встречаемости слов в сообщениях TF-IDF [2]. Метод базируется на создании векторов сообщений с учетом весов встречаемости каждого слова, как в самом сообщении, так и во всех сообщениях выборки. Его использование для построения классификатора значительно повышает точность классификации. В условиях коротких сообщений необходимо расширение словаря на основе введения ngram - не только одиночных слов, но и их последовательности в размере двух-трех слов. Недостатками данного метода явля-

410

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

Наиболее современным способом представления сообщений является векторизация сообщений вида word embeddings. Основным механизмом является модель word2vec [4], которая представляет собой нейронную сеть, которая каждому подаваемому на вход слову ставит в соответствие выходной вектор заданной длины. Обучение нейронной сети производится таким образом, чтобы получить близкие в пространстве вектора для слов, встречающихся в одинаковых контекстах. Таким образом слова близкие по значению либо употребляющиеся совместно будут иметь близкие вектора в пространстве. Наряду с преимуществами данный метод обладает рядом недостатков. Первый заключается в необходимости обучение нейронной сети на значительном корпусе текстов, что является ресурсозатратной задачей. Данный факт нивелируется существованием предобученных моделей. Вторым существенным недостатком является невозможность представления слова, которого не было в обучающем корпусе. Кроме того, когда речь идет о сообщении с несколькими словами, то нужен способ агрегации переменного числа векторов слов в вектор сообщения. Существует расширение word2vec - doc2vec [5] позволяющее не использовать агрегированный вектор для сообщения по векторам слов, а получать вектор на все сообщение сразу.

Следующим поколением word embeddings является проект ELMo [6]. Он обладает преимуществами word2vec и дополняет их возможностью формирования одного вектора на все сообщение, а также получения вектора для неизвестного слова путем его разложения на отдельные слоги и буквы. В основе метода лежит многослойная нейронная сеть, которая на первом слое получает вектора для букв, а затем слои для работы со словами в составе всего сообщения. В качестве вектора используются веса последнего слоя сети. В данный момент существуют предобученные модели для многих языков, что значительно упрощает использование данного подхода. Нельзя не отметить последнее достижение в области анализа текста -BERT [7]. Его применение для построения классификатора требует обучения модели с кодированием меток отдельным слоем нейронной сети, что не дает возможность использовать данную технологию только для векторизации. В данной работе его исследование для классификации коротких сообщений не производилось.

Многие исследователи проблемы классификации коротких сообщений расширяют признаки самого сообщения дополнительной информацией, связанной с классифицируемым текстом. Для сообщений популярной системы коротких сообщений Twitter некоторые авторы [8] используют ме-таинформацию, предоставляемую системой (URL, количество переадреса-

411

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

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

M = {т/},/ = 1,...,п - исходная выборка сообщений, где mсообщение, п - количество всех сообщений выборки;

Т = {!^}, ] = 1, к, к - множество тематик, встречающихся в сообщениях, общее число тематик к, положим, что одно т сообщение может относиться только к одной тематике t, множество таких сообщений с одной и той же тематикой можно обозначиться как М1;

/:М ® У/,V = (/¡(т),...,/р(т)) - /функция отображения сообщения т в представление У/ в соответствии с выбранной моделью представления в вектор признаков V, размерностью р;

а: У ® Т - задача сводится к поиску алгоритма отображения вектора признаков V в тематику t путем создания классификатора а.

Используемые метрики качества классификации. В реальных задачах редко существует возможность формирования обучающего набора текстов с классами равного размера. Как правило, классы имеют различные размеры по числу отнесенных к ним текстов, поэтому для оценки качества многоклассовой классификации в условиях несбалансированности не все метрики можно эффективно применять. В данном исследовании в качестве метрики оценки классификации будет применяться средняя точность по отдельным классам [10]. Значимости классов в задаче эквивалентны, поэтому весовые коэффициенты не применяются. В рамках коммерческого применения систем классификации, как правило, интересует правильность ответа классификатора без учета размера тематик. Точность показывает, сколько из ответов классификатора о принадлежности сообщения к конкретной тематике действительно были верными. Так как тестовая выборка также несбалансированная, как и обучающая, расчет точности будет производиться независимо для каждого класса. В работе используется классический подход с разделением исходной выборки на две части: тренировочную и тестовую в соотношении 80% и 20% соответственно.

п = ПШт + пtest, (1)

где щт/П - количество сообщений тренировочной выборки, - количество сообщений тестовой выборки, п - общее число исходных сообщений.

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

¥а= {У/} = аК}/ =1,к,^ .

412

Таким образом точность работы алгоритма для каждой конкретной тематики I у можно определить как:

т.

test Vj

Pj = I ,J—, (2)

i=1 Я, J + J

где ntest количество сообщений тестовой выборки, которыми проверяется классификатор, при условии, что ответ классификатора yi j е tm. означает

верно определенную тематику, и У1 у £ 1т. - наоборот неверную.

Средняя точность классификатора р по всем тематикам выражается:

к

I р}

р -(3)

к

где ру - точность для тематики I у, к - общее число тематик.

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

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

Далее были применены техники векторизации сообщений на основе двух технологий ТЕ-ЮБ и БЬМо, указанные ранее, для экспериментального тестирования их применимости в задаче классификации коротких сообщений.

Для визуализации позиционирования точек в многомерном пространстве был произведен перевод векторов в двумерное пространство для оценки разделимости тематик исходных сообщений. Для этого использовался метод нелинейного снижения размерности Т-8КБ [13]. Результаты представлены на рис. 1. Они показывают, что кластера точек, полученных векторизацией БЬМо, разделяются лучше, хотя и незначительно.

413

Рис. 1. Визуализация векторов сообщений в двумерном пространстве:

справа - БЬЫо; слева - ТЕ-ЮБ

Характеристики исходных данных. Исследование методов классификации коротких сообщений производилось на основании данных, предоставленных компанией flomni.com, использующей омниканальную платформу для автоматизации клиентского сервиса. Данные были накоплены за продолжительный промежуток времени и представляют собой сообщения пользователей, которые использовались для взаимодействия с платформой.

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

Таблица 1

Основные характеристики исходных данных

Название характеристики Значение

Среднее число слов в сообщении 7

Максимальное число слов в сообщении 58

Минимальное число слов в сообщении 1

Количество тематик 11

Количество сообщений 4868

Распределение сообщений по тематикам представлено в табл. 2.

Таблица 2

Распределение сообщений по тематикам

Метка тематики Число сообщений

label 0 1056

label 1 376

label 2 729

label 3 1718

label 4 140

label 5 109

label 6 205

label 7 213

label 8 124

label 9 99

label 10 99

Построение классификатора. Для автоматической классификации текстовых данных существует значительное число методов машинного обучения [14]. Для построения классификатора были выбраны несколько популярных методов машинного обучения: метод опорных векторов, случайных лес, логистическая регрессия. При этом отображение исходных сообщений в векторы признаков базировалось на двух подходах: ТЬ-ГОЬ и БЬМо. Комбинации отображений и алгоритмов классификации были сгруппированы в классификаторы с соответствующими названиями, где первая часть содержала метод классификации, а второй - способ отображения.

Экспериментальное исследование. Для нахождения оптимального сочетания (с точки зрения метрики качества (3)) метода классификации и отображения в векторное представление было проведено экспериментальное исследование. В нем использовался метод перекрестной проверки к-бомб, который разделяет исходное множество примеров на несколько групп (в работе значение к было выбрано равным 5) и последовательно тестируется 4 части как обучающая выборка и 1 как тестовая. Затем происходит сдвиг на одну группу, тестовой становится следующая в списке и обучается оставшимися и эксперимент повторяется. Таким образом сглаживается влияние различного распределения тематик по исходной выборке, что в условиях несбалансированности может быть существенным фактором.

Результаты экспериментального исследования представлены в табл. 3. Они показывают, что отображение сообщений в вектор признаков на основе БЬМо является наиболее эффективным способом кодирования в условиях малого числа слов в каждом сообщении.

Таблица 3

Результаты экспериментальных исследований

Классификатор Набор 1 Набор 2 Набор 3 Набор 4 Набор 5 Среднее значение

Random Forest TF-IDF 0.666 0.727 0.809 0.707 0.764 0.735

SVM TF-IDF 0.718 0.753 0.772 0.783 0.722 0.750

Logistic Regression TF-IDF 0.744 0.775 0.810 0.824 0.779 0.787

SVM ELMo 0.772 0.774 0.783 0.760 0.775 0.773

Logistic Regression ELMo 0.808 0.809 0.830 0.820 0.846 0.823

Визуализация полученных результатов представлена на рис. 2.

415

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

Заключение. Работа посвящена сравнению применимости различных методов классификации, построенных на отображении сообщений в векторное представление с учетом их короткой длины и ограниченного размера обучающего корпуса. Наиболее перспективным является использования предобученных нейронных сетей для векторизации коротких сообщений. Данный подход показывает преимущества перед стандартным способом представления с учетом частотной встречаемости слов в документах TF-IDF. Экспериментальное исследование производилось на основе данных коммерческой организации и содержало сообщения пользователей, полученных в процессе взаимодействия с системой клиентского сервиса компании. Для сравнения были реализованы различные типы классификаторов с различными способами отображение в векторное представление. Полученный результат с использованием подхода word embeddings ELMo позволил получить среднюю точность многоклассовой классификации 0.823, что сравнимо с системами классификации для текстов с гораздо большей длиной каждого сообщения.

Работа выполнена по программе фундаментальных исследований РАН по приоритетным направлениям, определяемым президиумом РАН №2 «Механизмы обеспечения отказоустойчивости современных высокопроизводительных и высоконадежных вычислений»

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

1. Zhang Y., Jin R., Zhou Z.H. Understanding bag-of-words model: a statistical framework // International Journal of Machine Learning and Cybernetics. 2010. V. 1 (1-4). P. 43-52.

2. Jones K.S. A statistical interpretation of term specificity and its application in retrieval // Journal of Documentation. 2004. V. 60 (55). P. 493502.

3. Драль А. А., Соченков И.В., Мбайкоджи Э. Метод автоматической классификации коротких текстовых сообщений // Информационные технологии и вычислительные системы. М., 2012. №3. С. 93-102.

4. Efficient Estimation of Word Representations in Vector Space / Mikolov T., Chen K., Corredo G., Dean J. // Proceedings of Workshop at ICLR. Scottsdale, USA. 2013. P. 1-12.

5. Le Q., Mikolov T. Distributed representations of sentences and documents // Proceedings of the 31st International conference on machine learning. 2014. Beijing, China. P. 1188-1196.

6. Deep contextualized word representations / M.E. Peters, M. Neumann, M. Iyyer, M. Gardner, C. Clark, K. Lee, L. Zettlemoyer, // Proceedings of the 2018 Conference of the North American Chapter of the Association or Computational Linguistics: Human Language Technologies. New Orleans, USA, 2018. V. 1. P. 2227-2237.

7. BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding / J. Devlin, M. W. Chang, K. Lee, K. Toutanova // Google research [Электронный ресурс] URL: https://github.com/google-research/bert (дата обращения: 31.08.2019).

8. Short text classification in twitter to improve information filtering / B. Sriram, D. Fuhry, E. Demir, H. Ferhatosmanoglu, M. Demirbas // Proceedings of the 33rd international ACM SIGIR conference on Research and development in information retrieval. ACM. 2010. Geneva, Switzerland. P. 841-842.

9. Twitter trending topic classification / K. Lee, D. Palsetia, R. Narayanan, M. M. A. Patwary, A. Agrawal, A. Choudhary // 2011 IEEE 11th International Conference: Data Mining Workshops (ICDMW). IEEE. 2011. Vancouver, Canada. P. 251-258.

10. Sokolova M., Lapalme G. A systematic analysis of performance measures for classification tasks // Information processing & management, 2009. V. 45 (4). P. 427-437.

11. Korobov M. Morphological Analyzer and Generator for Russian and Ukrainian Languages // International Conference on Analysis of Image, Social Networks and Texts. Springer. Yekaterinburg. Russia. 2015. P. 320-332.

12. The BEA-2019 Shared Task on Grammatical Error Correction / C. Bryant, M. Felice, O. E. Andersen, T. Briscoe // Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications. Association for Computational Linguistics. 2019. Florence, Italy. P. 52-75.

13. Maaten L., Hinton G. Visualizing data using t-SNE // Journal of machine learning research. 2008. V. 9. P. 2579-2605.

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

14. Батура Т.В. Методы автоматической классификации текстов // Программные продукты и системы. 2017. Т. 30. № 1. С. 85-99. DOI: 10.15827/0236-235X.030.1.085-099.

Спивак Антон Игоревич, канд. техн. наук, научный сотрудник, anton. spivak@gmail. com, Россия, Санкт-Петербург, Санкт-Петербургский институт информатики и автоматизации Российской академии наук (СПИИРАН),

Лапшин Сергей Владимирович, канд. техн. наук, научный сотрудник, sv. lapshin@,gmail. com, Россия, Санкт-Петербург, Санкт-Петербургский институт информатики и автоматизации Российской академии наук (СПИИРАН),

Лебедев Илья Сергеевич, д-р техн. наук, профессор, заведующий лабораторией, isl_box@,mail. ru, Россия, Санкт-Петербург, Санкт-Петербургский институт информатики и автоматизации Российской академии наук (СПИИРАН)

CLASSIFICATION OF SHORT MESSAGES BASED ON ELMO EMBEDDINGS A.I. Spivak, S.V Lapshin. I.S. Lebedev

The paper has a result of research of application different type of short message vector mapping for case of its small length. Also the paper includes experimental result of several machine learning algorithms with vector features. The best evaluation score was found for word embeddings based on ELMo. The classifier based on logistic regression demonstrates the best result of average precision metrics across all classes.

Key words: text classification, logistic regression, text embedding.

Spivak Anton Igorevich, candidate of technical sciences, researcher, anton. spivak@gmail. com, Russia, Saint-Petersburg, St. Petersburg Institute for Informatics and Automation of the Russian Academy of Sciences (SPIIRAS),

Lapshin Sergey Vladimirovich, candidate of technical sciences, researcher, sv. lapshin@,gmail. com, Russia, Saint-Petersburg, St. Petersburg Institute for Informatics and Automation of the Russian Academy of Sciences (SPIIRAS),

Lebedev Ilya Sergeevich, doctor of technical sciences, professor, head of laboratory, isl_box@,mail. ru, Russia, Saint-Petersburg, St. Petersburg Institute for Informatics and Automation of the Russian Academy of Sciences (SPIIRAS)

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