Статья опубликована в рамках: CCIII Международной научно-практической конференции «Научное сообщество студентов: МЕЖДИСЦИПЛИНАРНЫЕ ИССЛЕДОВАНИЯ» (Россия, г. Новосибирск, 26 декабря 2024 г.)
Наука: Информационные технологии
Скачать книгу(-и): Сборник статей конференции
дипломов
ИССЛЕДОВАНИЕ МЕТОДОВ ДЛЯ ПОСТРОЕНИЯ ГИБРИДНОЙ РЕКОМЕНДАТЕЛЬНОЙ СИСТЕМЫ ДЛЯ ТЕКСТОВЫХ ДАННЫХ С УЧЕТОМ СПЕЦИФИКИ ОБЛАСТИ
RESEARCH ON METHODS FOR BUILDING A DOMAIN-SPECIFIC HYBRID RECOMMENDATION SYSTEM FOR TEXTUAL DATA
Margarita Kireeva
student, Department of Informatics and Programming, Saratov State University,
Russia, Saratov
Marina Ogneva
scientific supervisor, candidate of Physical and Mathematical Sciences, associate professor, Saratov State University,
Russia, Saratov
АННОТАЦИЯ
Статья посвящена исследованию применения методов векторизации текстов для построения рекомендательной системы. В ходе работы были рассмотрены различные подходы к предобработке текстов, включая лемматизацию и отбор ключевых слов, и методы векторизации текстов: «мешок слов», Doc2Vec, TF-IDF, латентное размещение Дирихле (LDA) и TextRank. Был проведен сравнительный анализ этих методов по времени выполнения и качеству рекомендаций, которые производятся с их помощью.
ABSTRACT
The paper is devoted to the study of application of text vectorization methods for building a recommendation system. Different text preprocessing approaches, including lemmatization and keyword selection, and text vectorization methods: bag-of-words, Doc2Vec, TF-IDF, latent Dirichlet allocation (LDA) and TextRank, were considered. A comparative analysis of these methods was conducted in terms of execution time and quality of recommendations produced by them.
Ключевые слова: векторизация текстов; рекомендательная система; «мешок слов»; Doc2Vec; TF-IDF; LDA; TextRank.
Keywords: text vectorization; recommendation system; bag-of-words; Doc2Vec; TF-IDF; LDA; TextRank.
Одним из самых популярных генерируемых пользователями контентом является текст, например, книги, статьи или описания фильмов [1]. Однако, существующие рекомендательные системы, которые работают с текстовыми данными, часто не учитывают их тематику и основываются только на оценках пользователей [2]. Таким образом, возникает необходимость в исследовании применимости методов векторизации текста, которые могут помочь лучше учитывать содержание текстов при рекомендациях.
Чтобы исследовать применимость методов векторизации текстов к построению рекомендательной системы, был найден корпус нарративной прозы XIX века [3]. Чтобы оценить качество рекомендаций используемых методов, было решено добавить к этому корпусу датасет с фанфиками [4]. Так, можно сравнивать количество рекомендуемых методом фанфиков, ведь для текстов XIX века рекомендовать современные фанфики нелогично, так как это разные ниши литературы. Чем меньше фанфиков рекомендуется с помощью метода, тем лучше он подходит для построения рекомендательной системы.
Была проведена предварительная обработка текстов разными способами:
- Лемматизация: слова приводятся к нормальной форме, выбираются только существительные, прилагательные, глаголы и наречия.
- При лемматизации выбираются только существительные и прилагательные, список стоп-слов из первого варианта дополнен словами из ключевых слов, выведенных методом TextRank.
- Выбираются только существительные, список стоп-слов дополнен некоторыми словами из ключевых слов, выведенных методом TextRank во втором варианте.
- Выбираются существительные, прилагательные, глаголы и наречия, список стоп-слов взят из третьего варианта.
Также во всех способах текст разбивается на слова, все слова переводятся в нижний регистр и проверяются, не являются ли они знаком пунктуации или иностранным словом.
Предобработка самих датасетов также была проведена. Были удалены ненужные для исследования столбцы (например, ссылка, формат, описание и т.д.). В датасете фанфиков были удалены строки с пропусками, так как строк в датасете и так достаточно для задачи. Был преобразован столбец с датой: она была обрезана до года, как в метаданных нарративной прозы.
Далее был проведен анализ методов. Лучшим методом, выводящим наименьшее количество фанфиков (11), стал «мешок слов» при предобработке текстов, в которой оставляются только существительные, прилагательные, глаголы и наречия, и список стоп-слов минимален. Далее к нему близок Doc2Vec при том же способе предобработки, но с расширенным списком стоп-слов (18). Doc2Vec с минимальным списком стоп-слов также работает близко к идеальному.
TF-IDF во всех способах предобработки показывает неплохие результаты, но они не приближаются к «мешку слов» и Doc2Vec, лучшим был результат в 391 выведенный фанфик.
LDA показал похожие на TF-IDF результаты (323) только при четвертом способе предобработки и числом выделяемых тем, равным 30. Остальные результаты были близки к 1000 фанфикам или больше.
TextRank показал лучший для себя результат при втором способе предобработки текстов, когда оставляются только существительные и прилагательные, количество выводимых фанфиков в этом случае равно 645, но этот результат уступает остальным методам.
В таблице 1 можно увидеть время выполнения методов. Самым быстрым является «мешок слов», немного ему уступает TF-IDF, далее LDA и Doc2Vec (его время значительно увеличивается с количеством эпох). TextRank выполняется за самое длительное время, в лучшем случае это 3601 секунд, а в худшем — 10600 секунд. Doc2Vec при своем лучшем результате в 18 рекомендуемых фанфиков выполняется за 2803 секунды. «Мешок слов» является самым быстрым методом, но время вычисления рекомендаций с помощью матрицы схожести значительно больше. Время вычисления 15 наиболее похожих произведений было вычислено для первого способа предобработки.
Таблица 1.
Количество фанфиков и время выполнения всех методов с разными параметрами
Метод |
Параметры |
Время выполнения, с |
Количество выводимых фанфиков |
Тип предобработки |
LDA |
20 тем |
345.712 |
740 |
1 |
203.635 |
1154 |
2 |
||
159.912 |
773 |
3 |
||
343.008 |
748 |
4 |
||
30 тем |
402.637 |
1092 |
1 |
|
291.198 |
1086 |
2 |
||
318.06 |
954 |
3 |
||
536.846 |
323 |
4 |
||
«Мешок слов» |
– |
86.71 |
11 |
1 |
24.694 |
63 |
2 |
||
122.605 |
1791 |
3 |
||
49.949 |
17 |
4 |
||
TF-IDF |
– |
153.845 |
391 |
1 |
78.866 |
659 |
2 |
||
121.059 |
818 |
3 |
||
67.153 |
426 |
4 |
||
Doc2Vec |
30 эпох, длина вектора = 100 |
656.676 |
278 |
1 |
662.335 |
1444 |
2 |
||
433.332 |
2573 |
3 |
||
750.528 |
270 |
4 |
||
30 эпох, длина вектора = 200 |
730.899 |
736 |
1 |
|
507.548 |
3350 |
3 |
||
40 эпох, длина вектора = 100 |
892.903 |
181 |
1 |
|
895.164 |
1099 |
2 |
||
460.022 |
2210 |
3 |
||
761.972 |
184 |
4 |
||
50 эпох, длина вектора = 100 |
1036.13 |
140 |
1 |
|
629.889 |
1883 |
3 |
||
60 эпох, длина вектора = 100 |
1161.25 |
94 |
1 |
|
1164.929 |
94 |
4 |
||
70 эпох, длина вектора = 100 |
1320.505 |
69 |
1 |
|
80 эпох, длина вектора = 100 |
1446.183 |
63 |
1 |
|
1518.551 |
64 |
4 |
||
90 эпох, длина вектора = 100 |
1711.516 |
55 |
1 |
|
100 эпох, длина вектора = 100 |
1944.166 |
43 |
1 |
|
1894.655 |
41 |
4 |
||
150 эпох, длина вектора = 100 |
4059.173 |
33 |
1 |
|
2803.29 |
18 |
4 |
||
200 эпох, длина вектора = 100 |
3449.925 |
20 |
4 |
|
TextRank |
– |
9262.569 |
1176 |
1 |
5726.391 |
645 |
2 |
||
3601.537 |
842 |
3 |
||
10600.953 |
1479 |
4 |
Далее в таблице 2 указано время вычисления 15 наиболее похожих произведений для всех текстов корпуса нарративной прозы.
Таблица 2.
Время вычисления 15 наиболее похожих произведений
Метод |
Время, с |
LDA – 20 тем (обращение к датафрейму) |
8.992 |
LDA – 30 тем (обращение к датафрейму) |
8.601 |
«Мешок слов» (матрица схожести) |
237.297 |
TF-IDF (матрица схожести) |
217.511 |
Doc2Vec, epochs = 30 (встроенный метод Doc2Vec) |
11.211 |
TextRank (матрица схожести) |
54.731 |
Это время важнее времени выполнения методов, так как от него зависит время будущего вывода рекомендаций в рекомендательной системе. Поэтому здесь имеют преимущество LDA и Doc2Vec, но, так как Doc2Vec показывает значительно более точные результаты и, если текстов не будет значительно больше, чем в текущий момент, можно сделать вывод, что Doc2Vec является наиболее подходящим для построения рекомендательной системы. Если же произведений много, то быстрое выполнение метода «мешок слов» будет играть более важную роль, чем время, за которое с помощью матрицы схожести выводятся рекомендации, и этот метод станет лучшим.
Список литературы:
- Пуговкина Е.Д., Белоусов А.А. Использование методов кластеризации текстов на естественном языке в рекомендательных системах. Т. 4. //Информационные технологии и нанотехнологии (ИТНТ-2022). Самара: Самарский национальный исследовательский университет имени академика С.П. Королева, 2022. С. 041022.
- Федоренко В.И., Киреев В.С. Машинное обучение в рекомендательных системах // Современные наукоемкие технологии, 2018. С. 102–106.
- Корпус нарративной прозы XIX в. - Корпуса текстов [Электронный ресурс] // Репозиторий открытых данных по русской литературе и фольклору URL: https://dataverse.pushdom.ru/dataset.xhtml?persistentId=doi:10.31860/openlit-2020.10-C004 (дата обращения: 30.11.2024).
- Ficbook dataset [Электронный ресурс] // Kaggle: Your Home for Data Science. URL: https://www.kaggle.com/datasets/alexwortega/ficbook-dataset (дата обращения: 30.11.2024).
дипломов
Оставить комментарий