Нейросетевые модели глубокого обучения для задач идентификации пола автора текста
а) предобработка данных используемого корпуса RusPersonality с выделением наиболее значимых групп признаков для последующей классификации по полу,
б) построение на этой основе эффективных нейросетевых моделей глубокого обучения для гендерной классификации авторов текста.
в) формирование валидационных методов обоснования результата,
г) проведение сопоставлений с результатами по уже хорошо известным методам машинного обучения типа машины опорных векторов, ансамбля случайных деревьев решений, классификаторов на основе алгоритмов градиентного и адаптивного бустинга, многослойного перцептрона, вероятностной нейронной сети,
д) установление state-of-art уровня точности для задачи гендерной идентификации авторов текста путем сопоставления результатов, полученных разными методами машинного обучения на одном и том же наборе данных.
В предлагаемом исследовании рассматривается решение задачи диагностирования демографических характеристик автора текста на материале русского языка с намеренно устраненными гендерными тематическими и жанровыми перекосами с использованием набора нейросетевых методов в том числе глубокого обучения. Делается акцент на подходы, позволяющие убрать зависимость модели от словаря лемм и словоформ. При этом устанавливается текущий уровень точности решения поставленной задачи и выигрыш от использования нейросетей глубокого обучения. Такая постановка указанной задача представляется новой.
Используется корпус “RusPersonality”, который состоит из русскоязычных текстов разных жанров, в которых представлены образцы естественной письменной речи (например, описание картины, эссе на различные темы и т. д.), с информацией об их авторах (пол, возраст, результаты психологических тестов, и так далее). Все тексты написаны респондентами в ходе экспериментов, так что, все тексты не отредактированы, не содержать плагиата, и все характеристики автора известны. Выборка используемая для экспериментов содержит тексты 556 респондентов. Каждый из них написал два текста (описание картины и письмо другу). Два текста одного автора были объединены и рассматривались как один текст. Средняя длина объединенного текста равна 350 словам.
1. Кодирование текстовой информации
В работе рассматриваются различные способы кодирования текстовой информации:
- n-граммы (1-2-3 граммы) лемм документа (каждая n-грамма представляет отдельный признак во входном векторе, как сумма встречаемости n-граммы в документе);
- 141 интегральных параметра текста;
- последовательность слов, где каждое слово закодировано только набором морфологических признаков (часть речи, род, число, падеж и т.п.) без лемм и словоформ, что позволяет убрать тематическую составляющую в данных;
141 интегральных параметра текста включают набор морфологических и синтаксических признаков, которые были выбраны исключительно на основании того, что они более или менее контекстно-независимы. Кроме того, в качестве параметров использовались частоты слов описывающих эмоции и рассчитываемые значения различных маркеров текста.
Для работы с n-граммами и интегральными параметрами текста хорошо подходят классические методы машинного обучения: классификатор на основе алгоритма градиентного бустинга, классификатор на основе адаптивного бустинга, ансамбль случайных деревьев решений, вероятностная нейронная сеть, машина опорных векторов с линейным ядром, многослойный перцептрон.
Для анализа последовательности слов мы использовали нейронные сети нового поколения -- сверточную нейронную сеть (Convolution Neural Network) в сочетании с рекуррентной нейронной сетью (Long Shot-Term Memory). Данные сети позволяют за счёт слоёв CNN учитывать n-граммы и за счёт слоёв LSTM с памятью учитывать последовательность n-грамм. Это позволяет сети выделять, как наиболее значимые сочетания морфологических признаков, так и учитывать "конструкцию" всего документа.
2. Классические модели
Классические модели классификации гендерной принадлежности автора основывались на наиболее значимом наборе признаков, сформированном по следующему алгоритму:
- Качественные и количественные признаки преобразовываются в числовой вектор с min-max нормализацией значений от 0 до 1.
- Наиболее значимые наборы признаков были сформированы на основании следующих подходов:
- Common – значения всех выделяемых признаков без предварительной предобработки;
- PCA – выделение значимых признаков проводилось по методу главных компонент с заданным числом главных компонент 10, 20, 50 и 100;
- ImpX – где X число самых значимых признаков 10, 20, четверть и половина от общего количества.
- Выборка текстов разбивается на подмножества: обучающее (80%), кросс-валидационное (10%) и тестовое (10%). Точность модели оценивается по средневзвешанному значению f1-score на основании серии испытаний (10) с последующей кросс-валидацией с помощью метода k-фолд.
3. Глубокая нейронная сеть
В качестве входных данных для нейронной сети глубокого обучения используются только грамматические признаки слов без словоформ и лемм, такие как: часть речи, падеж, формы глагола, род, число и т.д. Всего выделяются 43 морфологических признаков в соответствии с форматом Национального корпуса русского языка. Каждый документ представляется в виде матрицы числовых векторов, в которых закодированы морфологические признаки слов.
3.1 Топология сети
Рисунок 1. Схема глубокой нейронной сети для определения пола автора
- 1-й, 3-й и 5-й слои -- свёрточные (convolution) слои (ядро 30 нейронов с активационной функцией ReLU, окно 3)
- 2-й, 4-й, 6-й слои -- MaxPooling (pool length = 2)
- 7-й слой, два варианта:
- flatten-слой
- LSTM (30 нейронов)
- 8th слой: Dropout (dropout = 0.5%)
- 9th слой: полносвязный слой (10 нейронов, функция активации = гиперболический тангенс)
- 10th слой: Dropout (dropout = 0.5%)
- 11th слой: полносвязный слой (2 нейрона, функци активации = линейная, "softmax")
3.2 Параметры обучения
При обучении использовался градиентный оптимизационный алгоритм RMSprop. Обучение проводилось с перекрестной проверкой. Число перемешивания и разделения выборки = 10 (80% обучающей, 20% тестовой).
За последние 20 лет в мире наблюдается рост числа исследований в области автоматизированного извлечения информации из текста, в частности, по проблеме автоматической классификации текста в соответствии с полом автора. В этой области исследований наблюдается интенсивное развитие. Постоянно проводятся соревнования для выявления точных методов категоризации текстов согласно личностной информации об их авторах. Большинство исследований посвящалось бинарной классификацией текста в зависимости от пола авторов. Победителями PAN 2015 были получены модели, которые определяют пол с точностью до 0,97 для датского и испанского, 0,86 для английского. Однако, в ряде исследований использовались в качестве параметров частоты тематических слов, но очевидно, что такие модели не целесообразно использовать для корпусных текстов других жанров. Поэтому крайне важно, чтобы значимые параметры были менее зависимы от конкретной темы и жанра.
Большинство исследований по классификации текстов в зависимости от пола их авторов были проведены для английских текстов, и всего несколько исследований, посвященных другим языкам, в частности, славянским языкам. Целью данной работы является изучить возможность автоматической классификации русских письменных текстов по половому признаку их авторов с использованием параметров, которые являются контекстно-независимыми.
Мы использовали тексты на русском языке из корпуса RusPersonality с разметкой информации об их авторах (пол, возраст, психологическое тестирование и так далее). На их основе проводилось сравнительное исследование методов машинного обучения, включающее нейросетевые модели глубокого обучения для гендерной атрибуции текстов после намеренного удаления гендерного смещения в темах и жанре. Полученные модели классификации русских текстов по половому признаку их авторов, не зависящие от словаря лемм и словоформ, демонстрируют точность, близкую к state-of-art для других языков (до 0,86 +/- 0,03 для точности, 0,86 в F1-Score).