Научная статья на тему 'Разработка сервиса для сбора и анализа отзывов на элективные дисциплины'

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

CC BY
39
11
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
выделение ключевых слов / анализ тональности / отзывы студентов / индивидуальные образовательные траектории / элективные дисциплины / информационная система / keyword extraction / sentiment analysis / student feedback / individual learning trajectories / electives / information system

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Криворогов Данил Дмитриевич, Низамов Тимур Дамирович, Фазлыев Альберт Айратович, Ходырев Арсений Николаевич, Шушарин Дмитрий Владимирович

В данной статье приведен обзор публикаций в области анализа удовлетворенности обучающихся образовательным процессом на основе методов обработки естественного языка. Собрано 197 отзывов студентов на 129 элективных дисциплин Тюменского государственного университета. Проведен сравнительный анализ методов извлечения ключевых слов: статистических TF-IDF, RAKE и YAKE; контекстуального KeyBERT; основанного на графах TextRank. На собранных отзывах, сгруппированных по элективным дисциплинам, наибольшую F1-меру BERTScore с результатом 79 % показал метод RAKE. Путем сбора данных из открытых источников сформирован датасет с 2210 русскоязычными отзывами на курсы различных образовательных платформ. Описано обучение моделей машинного обучения для анализа тональности: метода опорных векторов, логистической регрессии и основанных на архитектуре Transformers, полученных с ресурса Hugging Face, сравнение на вручную размеченной части собранных отзывов. После дообучения модели rubert-base-cased macro-усредненная F1-мера показала 71,6 %. Классификация осуществляется по трем классам (негативный, нейтральный, положительный) не для всего текста отзыва, а в отдельности для каждого предложения из этого текста. Представлена реализация базы данных и информационной системы сбора и обработки отзывов студентов на изученные элективные дисциплины. Модель для анализа тональности отзыва вынесена в отдельный микросервис, связь с которым осуществляется через интерфейс свободно распространяемого Python-фреймворка FastAPI. Запущенная информационная система призвана помочь студентам выбирать элективы, опираясь на большее количество качественных данных, а преподавателям и администрации вуза – делать выводы для дальнейшей трансформации образовательного пространства, учитывая мнение обучающихся.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Криворогов Данил Дмитриевич, Низамов Тимур Дамирович, Фазлыев Альберт Айратович, Ходырев Арсений Николаевич, Шушарин Дмитрий Владимирович

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

Developing a service for collecting and analyzing electives reviews

This article provides a review of publications on the analysis of students’ satisfaction with the educational process based on natural language processing methods. 197 student feedback on 129 elective disciplines at University of Tyumen was collected. A comparative analysis of keyword extraction methods was conducted: statistical TF-IDF, RAKE and YAKE; contextual KeyBERT; graph-based TextRank. On the collected reviews, grouped by elective disciplines, the RAKE method had the highest F1 BERTScore with 79 %. By parsing open sources, a dataset with 2210 Russian-language reviews for courses of different educational platforms was formed. Machine learning methods for sentiment analysis were described: support vector machines, logistic regression and based on Transformers, comparison on the manually marked part of the collected reviews. After fine-tuning on the rubert-base-cased model macro-averaged F1score became 71.6 %. Classification into three classes (negative, neutral, positive) is not performed for the whole text of the review, but separately for each sentence from that text. The implementation of a database and information system for collecting and analyzing student feedback on the studied elective courses are presented. The model for sentiment analysis of the feedback is put into a separate microservice, which is communicated through an interface of the freely distributed Python framework FastAPI. The information system is designed to help students choose electives based on more qualitative data, and teachers and university administration ‑ to draw conclusions for further transformation of the educational space, taking into account students’ opinions.

Текст научной работы на тему «Разработка сервиса для сбора и анализа отзывов на элективные дисциплины»

Научная статья

УДК 004.9

DOI 10.25205/1818-7900-2023-21-3-5-19

Разработка сервиса для сбора и анализа отзывов на элективные дисциплины

Данил Дмитриевич Криворогов1, Тимур Дамирович Низамов2, Альберт Айратович Фазлыев3, Арсений Николаевич Ходырев4, Дмитрий Владимирович Шушарин5, Анна Валерьевна Глазкова6

Тюменский государственный университет, Тюмень, Россия

1danil@moad. dev, 2timmy@moad.dev 3bulatov@moad.dev 4seno@moad.dev, https://orcid.org/0000-0001-7151-9852 5shusharin@moad.dev 6a. v.glazkova@utmn.ru, https://orcid.org/0000-0001-8409-6457

Аннотация

В данной статье приведен обзор публикаций в области анализа удовлетворенности обучающихся образовательным процессом на основе методов обработки естественного языка. Собрано 197 отзывов студентов на 129 элективных дисциплин Тюменского государственного университета. Проведен сравнительный анализ методов извлечения ключевых слов: статистических TF-IDF, RAKE и YAKE; контекстуального KeyBERT; основанного на графах TextRank. На собранных отзывах, сгруппированных по элективным дисциплинам, наибольшую F1-меру BERTScore с результатом 79 % показал метод RAKE. Путем сбора данных из открытых источников сформирован датасет с 2210 русскоязычными отзывами на курсы различных образовательных платформ. Описано обучение моделей машинного обучения для анализа тональности: метода опорных векторов, логистической регрессии и основанных на архитектуре Transformers, полученных с ресурса Hugging Face, сравнение на вручную размеченной части собранных отзывов. После дообучения модели rubert-base-cased macro-усредненная F1-мера показала 71,6 %. Классификация осуществляется по трем классам (негативный, нейтральный, положительный) не для всего текста отзыва, а в отдельности для каждого предложения из этого текста. Представлена реализация базы данных и информационной системы сбора и обработки отзывов студентов на изученные элективные дисциплины. Модель для анализа тональности отзыва вынесена в отдельный микросервис, связь с которым осуществляется через интерфейс свободно распространяемого Python-фреймворка FastAPI. Запущенная информационная система призвана помочь студентам выбирать элективы, опираясь на большее количество качественных данных, а преподавателям и администрации вуза - делать выводы для дальнейшей трансформации образовательного пространства, учитывая мнение обучающихся.

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

выделение ключевых слов, анализ тональности, отзывы студентов, индивидуальные образовательные траектории, элективные дисциплины, информационная система

Для цитирования

Криворогов Д. Д., Низамов Т. Д., Фазлыев А. А., Ходырев А. Н., Шушарин Д. В., Глазкова А. В. Разработка сервиса для сбора и анализа отзывов на элективные дисциплины // Вестник НГУ Серия: Информационные технологии. 2023. Т. 21, № 3. С. 5-19. DOI 10.25205/1818-7900-2023-21-3-5-19

© Криворогов Д. Д., Низамов Т. Д., Фазлыев А. А., Ходырев А. Н., Шушарин Д. В., Глазкова А. В., 2023

Developing a service for collecting and analyzing electives reviews

Danil D. Krivorogov1, Timur D. Nizamov2, Albert A. Fazlyev3, Arseniy N. Hodyrev4, Dmitrii V. Shusharin5, Anna V. Glazkova6

University of Tyumen, Tyumen, Russian Federation

'danil@moad.dev, 2timmy@moad.dev 3bulatov@moad.dev 4seno@moad.dev, https://orcid.org/0000-0001-7151-9852 5 shusharin@moad. dev 6a.v.glazkova@utmn.ru, https://orcid.org/0000-0001-8409-6457

Abstract

This article provides a review of publications on the analysis of students' satisfaction with the educational process based on natural language processing methods. 197 student feedback on 129 elective disciplines at University of Tyumen was collected. A comparative analysis of keyword extraction methods was conducted: statistical TF-IDF, RAKE and YAKE; contextual KeyBERT; graph-based TextRank. On the collected reviews, grouped by elective disciplines, the RAKE method had the highest F1 BERTScore with 79 %. By parsing open sources, a dataset with 2210 Russian-language reviews for courses of different educational platforms was formed. Machine learning methods for sentiment analysis were described: support vector machines, logistic regression and based on Transformers, comparison on the manually marked part of the collected reviews. After fine-tuning on the rubert-base-cased model macro-averaged F1-score became 71.6 %. Classification into three classes (negative, neutral, positive) is not performed for the whole text of the review, but separately for each sentence from that text. The implementation of a database and information system for collecting and analyzing student feedback on the studied elective courses are presented. The model for sentiment analysis of the feedback is put into a separate microservice, which is communicated through an interface of the freely distributed Python framework FastAPI. The information system is designed to help students choose electives based on more qualitative data, and teachers and university administration - to draw conclusions for further transformation of the educational space, taking into account students' opinions.

Keywords

keyword extraction, sentiment analysis, student feedback, individual learning trajectories, electives, information system

For citation

Krivorogov D. D., Nizamov T. D., Fazlyev A. A., Hodyrev A. N., Shusharin D. V., Glazkova A. V. Developing a service for collecting and analyzing electives reviews. Vestnik NSU. Series: Information Technologies, 2023, vol. 21, no. 3, pp. 5-19. DOI 10.25205/1818-7900-2023-21-3-5-19

Введение

В ходе государственной программы поддержки университетов Российской Федерации «Приоритет 2030» администрация ФГАОУ ВО «Тюменский государственный университет» запланировала реализацию четырех стратегических проектов, одним из которых является «Мультипарадигмальное образование: разработка, прототипирование и апробация образовательных моделей для меняющегося рынка труда»1. В рамках этого проекта осуществляется переход на мультипрофильное образование по модели «2+2 + 2», одним из основных компонентов которой являются сквозные элективные образовательные треки [1]. Каждый год студентам бакалавриата и специалитета Тюменского государственного университета необходимо выбирать элективные дисциплины из более чем 450 курсов в различных областях: от изучения кельтской мифологии до разработки интерфейсов web-приложений2.

Описанная в данной статье информационная система для сбора и обработки отзывов студентов на изученные элективные дисциплины призвана помочь студентам более осознанно

1 URL: https://www.utmn.ru/priority2030/program/projects/multi-paradigm-education/

2 URL: https://www.utmn.ru/obrazovanie/iot/electives/

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

Обзор работ по тематике

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

В статье [3] отмечается необходимость извлечения из отзывов студентов на учебные дисциплины ключевых слов, а также анализа эмоциональной окраски. Чаще всего для решения этих задач предполагается использование методов машинного и глубокого обучения [4] [5]. Несмотря на увеличение количества данных из сферы образования, в открытых источниках отзывов на изученные дисциплины по-прежнему мало, особенно на русском языке. Постепенно проблема решается: в работе [6] описывается сбор набора данных, включающего в себя русскоязычные отзывы на массовые открытые онлайн-курсы, для решения задач анализа тональности текстов и выделения ключевых слов, однако опубликованный в открытом доступе датасет содержит в себе только тексты отзывов без указания целевого признака - тональности.

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

Методы

Извлечение ключевых слов

Существующие подходы к решению задачи извлечения ключевых слов делятся на две категории: «с учителем» (supervised learning), т. е. предполагающие наличие набора размеченных данных, и «без учителя» (unsupervised learning), не предполагающие разметки данных. Поскольку получение из открытых источников набора текстов с ключевыми словами или самостоятельная разметка представляются затруднительными, задача рассмотрена в постановке, предполагающей применение методов «без учителя».

Пусть T - упорядоченное множество слов из текстов отзывов на учебные курсы. Обозначим T* множество токенов из текстов отзывов на учебные курсы мощностью M. Назовем то-кеном некоторую последовательность t е T*, состоящую из слов w е T, т. е. t е T. Y - конечное множество весов значимости токенов t е T*.

Существует неизвестная целевая зависимость: отображение y*: T* ^ Y.

Требуется построить алгоритм a: T* ^ Y, способный задать вес y каждому токену t е T*. При этом требуется найти и взять первые N < M элементов перестановки Pj, Р2, ..., Рм такой, что веса расположились бы в порядке невозрастания:

Ур1 ^ УР2 ^ . ^ УРМ.

В дальнейшем будем называть найденные первые N элементов перестановки Pj, Р2, ..., Рм

ключевыми токенами или ключевыми фразами.

Методы решения данной задачи можно разделить на три группы: статистические методы, методы на основе графов и контекстуальные методы.

К статистическим подходам относят, в частности, методы TF-IDF [7], RAKE [8], YAKE [9]. Эти модели основаны только на статистике, в связи с чем они не предназначены для извлечения релевантных ключевых фраз, которые упоминаются один раз, но все же должны считаться релевантными.

К методам на основе графов относят PageRank [10], TextRank [11] и их производные. Эти методы базируются на представлении текста в виде графа, в котором, например, слова полагают вершинами, ребра соответствуют связям между словами: ребро получает более высокий вес, если эти два термина чаще встречаются в тексте рядом друг с другом. После построения графа вершины ранжируют по степени важности.

К контекстуальным методам относят KeyBERT [12], использующий предобученную на некотором большом корпусе текстов модель BERT [13] или ее производные, основанные на архитектуре Transformer, представленной в статье «Attention is all you need» [14].

Для оценки качества сгенерированного текста используют либо N-граммные подходы, такие как ROUGE [15] и BLEU [16], либо векторные представления слов для вычисления сходства между каждой лексемой эталона и каждой лексемой кандидата. Авторы работы [17] предложили вычислять оценку сходства, используя косинусную меру сходства между векторными представлениями BERT. Они предположили, что метрика, основанная на этой идее, будет лучше коррелировать с человеческими суждениями и обеспечит более высокую эффективность выбора моделей суммаризации текстов. Используя задачу обнаружения состязательного перефразирования (adversarial paraphrasing task), авторы показали, что основанная на их предположении метрика BERTScore более устойчива к сложным примерам по сравнению с существующими метриками, не зависит от предметной области текста, а также не требует самостоятельной разметки набора данных.

На базе коллекции текстов, состоящей из 197 отзывов, оставленных студентами ТюмГУ посредством сервиса Microsoft Forms, сформирована неразмеченная выборка, состоящая из отзывов на 129 элективных дисциплин. В среднем в отзывах содержится 47 слов, 320 символов. Минимальное количество слов в отзыве - 2, максимальное - 222. Присутствуют незначительные опечатки. Поскольку выделение ключевых слов требуется для всех отзывов электива в целом, а не по отдельности, отзывы, число которых находится в пределах от 1 до 6, были «склеены» через запятую и приведены к нижнему регистру.

Таблица 1

Сравнение методов выделения ключевых токенов

Table 1

Comparison of keyword extraction methods

Метод BERTScore Precision BERTScore Recall BERTScore F1

Natasha + TF-IDF 0,709 0,621 0,661

RAKE 0,842 0,746 0,790

YAKE 0,807 0,736 0,768

TextRank 0,795 0,676 0,730

KeyBERT 0,781 0,748 0,763

Специально для метода TF-IDF с помощью свободно распространяемой библиотеки Natasha слова лемматизированы и предварительно очищены от пунктуации и стоп-слов из библиотеки NLTK. Для метода KeyBERT использована предобученная модель обработки рус-

скоязычных текстов DeepPavlov/rubert-base-cased-conversational3. На подготовленной тестовой выборке осуществлено сравнение методов TF-IDF, RAKE, YAKE, TextRank, KeyBERT по метрикам BERTScore, использующим предобученную мультиязычную модель bert-base-multilingual-cased4 (табл. 1).

Для выделения ключевых слов в отзывах на элективные дисциплины, согласно проведенному анализу, наиболее целесообразно использовать метод RAKE.

Анализ тональности отзывов

Задача анализа тональности текстов (sentiment analysis) рассмотрена в постановке, предполагающей использование методов «с учителем».

Пусть X - множество фрагментов текстов отзывов на учебные курсы (объектов), Y - конечное множество эмоциональных окрасок: негативная, нейтральная, положительная. Существует неизвестная целевая зависимость: отображение y*: X ^ Y, значения известны только на обучающей выборке Xm = {(х1, y1), ..., (xm, ym)}. Требуется построить алгоритм a: X ^ Y, способный классифицировать произвольный объект x е X.

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

Для валидации и тестирования моделей машинного обучения собрана и размечена выборка, содержащая 143 предложения из 60 реальных отзывов студентов ТюмГУ на изученные ими элективы. В разметке выборки приняло участие 5 добровольцев, каждый дал свою оценку каждому предложению: «-1» - предложение негативное, «0» - нейтральное, «1» - позитивное. Результирующей оценкой является мода. В итоге имеется 59 нейтральных записей, 50 положительных и 34 негативных.

Обучающая выборка собрана из текстов, полученных из открытых источников и близких к выбранной предметной области, а именно из отзывов на контент сторонних образовательных платформ. Получено 495 записей с ресурса «Сравнятор»5, на котором размещены отзывы на курсы по IT, дизайну, аналитике, менеджменту и иностранным языкам, каждая из записей обладает выделенными «достоинствами», «недостатками» и «впечатлениями». «Достоинства» курсов, если они длиннее 60 символов (встречаются записи «Не выявлено») и сопровождаются оценками «4» и «5», приняты за положительные записи, «недостатки», если длиннее 60 символов и сопровождаются оценками «1» и «2», - за негативные. «Впечатления» от курсов, если сопровождаются оценкой «5», считаются положительными записями, если оценки «1» и «2» - за негативные. Из сервиса «Курсатор»6 получено 693 отзыва, каждая запись изначально сопровождается эмоциональной окраской. Также использован 241 отзыв, опубликованный на ресурсе о высших учебных заведениях России «Типичный абитуриент»7, которые имеют разметку по эмоциональной окраске. В число нейтральных записей могут входить описания содержания курса без использования эмоционально окрашенной лексики, поэтому в качестве объектов нейтрального класса также используются аннотации 399 модулей учебного плана, размещенных в ИС «Modeus» (табл. 2).

Так как некоторые записи содержат более 512 токенов, из-за чего не могут быть полностью обработаны моделями машинного обучения без использования высокопроизводительных систем, все отзывы были разбиты на тексты по 8 (и менее) предложений. Чтобы избежать

3 URL: https://huggingface.co/DeepPavlov/rubert-base-cased-conversational

4 URL: https://huggingface.co/bert-base-multilingual-cased

5 URL: https://journal.tinkoff.ru/sravnyator/courses/

6 URL: https://coursator.online/

7 URL: https://tabiturient.ru/

Таблица 2

Характеристики собранной обучающей выборки

Table 2

Characteristics of the collected training sample

Данные Негативный Нейтральный Позитивный ВСЕГО

Достоинства и 47 0 406 453

недостатки

Впечатления 52 27 345 424

Отзывы на 280 53 360 693

курсы

Отзывы на вузы 100 44 97 241

Описания МУП 0 399 0 399

ИТОГО 479 523 1208 2210

влияние дисбаланса объектов различных классов на качество классификации и распределение объектов было близко к равномерному, были продублированы 500 случайных нейтральных записей и 700 случайных негативных.

Рассмотрим решение поставленной задачи с помощью классических методов классификации текстов, а именно логистической регрессии и метода опорных векторов, векторизации с помощью меры TF-IDF.

Предварительно слова в текстах отзывов необходимо лемматизировать, для чего использована свободно распространяемая библиотека для обработки русского языка Natasha, и очистить от стоп-слов (предлоги, частицы, союзы) с помощью свободно распространяемой библиотеки NLTK. С помощью класса Pipeline из свободно распространяемой библиотеки Scikit-learn были построены конвейеры (пайплайны), состоящие из модулей CountVectorizer, TfidfTransformer и классификатора из той же библиотеки. Всего построено три пайплана: c моделью LogisticRegression, моделями SVC c линейным ядром (Linear) и ядром радиальной базисной функции (RBF).

Качество работы обученных классификаторов на тестовой выборке оценено с помощью метрик Precision, Recall, macro averaging F1-score (табл. 3).

Таблица 3

Оценки качества классификации

Table 3

Classification quality assessments

Модель Precision Recall F1-score (macro)

Логистическая 0,585 0,562 0,564

регрессия

Метод опорных 0,511 0,512 0,502

векторов (ядро RBF)

Метод опорных 0,455 0,458 0,454

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

векторов (линейное ядро)

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

При работе с моделями, основанными на архитектуре Transformer, лемматизация и очистка от стоп-слов не произведена, чтобы сохранить изначальные связи внутри предложений. На ресурсе Hugging Face представлен широкий спектр моделей обработки естественных языков. На тестовой выборке проверены русскоязычные модели RuBERT [18], предобученные на различных наборах данных. Сравнение моделей, продемонстрировавших наивысшие метрики, представлено в табл. 4.

Таблица 4

Сравнение предобученных моделей по метрикам классификации

Table 4

Comparison of pre-trained models by classification metrics

Модель Precision Recall F1-score (macro)

cointegrated/rubert-tiny-sentiment-balanced 0,607 0,607 0,522

blanchefort/rubert-base-cased-sentiment 0,551 0,488 0,493

blanchefort/rubert-base-cased-sentiment-rusentiment 0,733 0,576 0,580

blanchefort/rubert-base-cased-sentiment-rurewiews 0,726 0,653 0,667

Модель blanchefort / rubert-base-cased-sentiment-rurewiews8 показала наилучшую метрику, поэтому она выбрана для дальнейшего дообучения (fine-tuning) на вышеупомянутой обучающей выборке.

Выбранная модель обучена на автоматически аннотируемом наборе данных для анализа тональности отзывов о товарах из категории «Женская одежда и аксессуары» с самым высоким рейтингом на русском языке, представленной в исследовании [19]. В качестве оценки класса использовались оценки пользователей по 5-балльной шкале, преобразованные в 3-балльную шкалу путем объединения оценок «1» и «2» в «отрицательный» класс, а «3» и «5» - в «положительный». Предметная область датасета не соответствует предметной области учебных курсов. Для того чтобы модель лучше анализировала тональность предложений текстов отзывов на элективные дисциплины, реализовано дообучение на собранной обучающей выборке.

Для обработки текста использован токенизатор предобученной модели с включенными параметрами truncation и padding. Во избежание влияния дисбаланса различных классов в дополнение к дублированию объектов используется взвешивание, обратно пропорциональное количеству объектов класса, которое применяется в кросс-энтропийной функции потерь. Гиперпараметры класса Trainer из свободно распространяемой библиотеки Transformers, базирующегося на свободно распространяемом фреймворке для машинного обучения PyTorch, инициализировались со следующими значениями: numtrainepochs (количество эпох) = 6, learningrate (скорость обучения) = 2e-5, batchsize (размер подвыборки) = 16, weightdecay

8 URL: https://huggingface.co/blanchefort/rubert-base-cased-sentiment-rurewiews

Таблица 5

Метрики по каждой эпохе дообучения модели

Table 5

Metrics for each epoch of model fine-tuning

Epoch Training Loss Validation Loss Precision Recall F1-score

1 0,201100 2,040689 0,648719 0,654869 0,602710

2 0,010800 1,842934 0,654907 0,659860 0,657011

3 0,000400 1,949624 0,697604 0,711698 0,697876

4 0,000000 2,034862 0,716402 0,731306 0,715833

5 0,000000 2,144002 0,708814 0,721502 0,707276

6 0,000000 2,160855 0,707006 0,721502 0,706937

Таблица 6

Сравнение предобученной модели с дообученной

Table 6

Comparison of a pre-trained model with a fine-tuned one

Модель Precision Recall F1-score (macro)

blanchefort/rubert-base- 0,726 0,653 0,667

cased-sentiment-rurewiews

seninoseno/rubert-base- 0,716 0,731 0,716

cased-sentiment-study-

feedbacks-solyanka

(смещение веса) = 0.001. Изменение функции потерь, точности, полноты и Fl-меры (macro) в процессе дообучения на 6 эпохах представлено в табл. 5.

Поскольку наивысшее значение Fl-меры (macro) на валидационной выборке достигнуто после 4 эпохи дообучения, для использования в приложении на ресурс Hugging Face модель выгружена именно в этом состоянии (табл. 6).

Реализация

Для функционирования сервиса для сбора и анализа отзывов разработана база данных, основными сущностями в которой являются:

• User - пользователь;

• Elective - электив;

• Feedback - отзыв. Вспомогательные сущности:

• AnotherCourse - дисциплина, не входящая в блок элективов;

• Prerequisite - предусловие для прохождения электива;

• Program - направление обучения пользователя;

• Department - институт (подразделение) пользователя;

• Complain - жалоба пользователя на отзыв;

• Vote - оценка пользователем отзыва;

• Author - автор электива;

• Section - тематическая секция электива;

• Minor - майнор образовательного трека;

• Notification - оповещение пользователя.

Рис. 1. Диаграмма физической модели базы данных Fig. 1. Diagram of the physical database model

Реализованы связи один-ко-многим (рис. 1) между сущностями: Elective-Feedback, Elective-Prerequisite, User-Feedback, Department-User, Program-User. Связи многие-ко-мно-гим между сущностями: Feedback-User (Votes, Complains), Elective-User (Wishlists), Elective-Minor, Elective-Section, Elective-Author, Prerequisite-Elective, Prerequisite-AnotherCourse, User-Notification.

Реализация сервиса осуществляется на базе свободно распространяемого PHP-фреймворка Laravel 10.0, который поддерживает паттерн MVC «Модель - Представление - Контроллер». Паттерн MVC лег в основу архитектуры приложения, схематично представленную на рис. 2.

Микросервис по определению эмоциональных окрасок предложений разработан на базе свободно распространяемого Python-фреймворка FastAPI. При запуске микросервиса инициализируется дообученная в ходе работы и опубликованная на ресурсе Hugging Face модель классификации текстов seninoseno / rubert-base-cased-sentiment-study-feedbacks-solyanka9.

При получении GET-запроса, содержащего отзыв, текст разбивается на предложения с помощью свободно распространяемой библиотеки razdel, для каждого предложения определяет-

9 URL: https://huggingface.co/seninoseno/rubert-base-cased-sentiment-study-feedbacks-solyanka

Сервер Nginx, PHP + Laravel

Сервер Uvicorn

Рис. 2. Схема архитектуры приложения Fig. 2. Application architecture diagram

ся класс («негативный», «нейтральный», «положительный»), на выход в качестве ответа на запрос поступает словарь из переменных-счетчиков по каждому классу.

Модуль для выделения ключевых токенов реализован в виде PHP-класса KeyTokenizer, использующего в качестве готовой реализации метода RAKE свободно распространяемую библиотеку DonatelloZa\RakePlus\RakePlus10. Используются следующие настройки: язык для выбора библиотеки стоп-слов (русский), минимальная длина ключевой фразы (2 слова), флаг для игнорирования чисел (true). На выход подается строка перечисленных через запятую первых 5 ключевых фраз (по весу), если выделен хотя бы один ключевой токен, иначе - null.

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

Функционал сервиса предоставляет пользователям следующие возможности.

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

• Просмотр элективов, включая описание, перечень авторов, тематики, майноры, предусловия, отзывы и результаты анализа: ключевые токены, средние значения оставленных оценок и эмоциональных окрасок предложений в текстах.

• Добавление отзывов на элективы авторизованными через корпоративную почту студентами, а также редактирование, удаление собственных отзывов.

• Подача жалоб и оценка отзывов авторизованными пользователями.

• Подписка на уведомления по электронной почте о жалобах и блокировках.

10 URL: https://github.com/Donatello-za/rake-php-plus ISSN 1818-7900 (Print). ISSN 2410-0420 (Online)

Вестник НГУ. Серия: Информационные технологии. 2023. Том 21, № 3 Vestnik NSU. Series: Information Technologies, 2023, vol. 21, no. 3

• Рассмотрение администраторами жалоб на отзывы с возможными исходами: принять жалобу и удалить отзыв; принять жалобу и заблокировать автора отзыва; отклонить жалобу.

Рис. 3. Блок главной страницы с поиском, фильтрацией и сортировкой элективов Fig. 3. The block of the main page with search, filtering and sorting of electives

Рис. 4. Страница отдельно взятого электива Fig. 4. The page of an elective

Пользовательский интерфейс разработан с помощью стека технологий TALL - Tailwind CSS, Alpine.js, Laravel, Livewire, адаптирован под мобильные устройства, имеет возможность включения темной темы оформления и включает в себя:

• главный экран (рис. 3), на котором размещен перечень элективов с возможностью, поиска, фильтрации и сортировки;

• страницу электива (рис. 4), на которой отображаются все отзывы на соответствующую дисциплину, сведения о курсе, общая шкала эмоциональных окрасок (настроений) и список ключевых фраз;

• страницу добавления и редактирования отзыва;

• личный кабинет пользователя с настройками профиля и уведомлений, возможностью просмотра избранных элективов и оставленных отзывов;

• администраторский раздел с возможностью рассмотрения жалоб.

Для удобного развертывания приложения на выделенном сервере используются технологии контейнеризации и оркестрации программного обеспечения Docker и Docker-compose. Составные части архитектуры приложения распределены по взаимодействующим между собой контейнерам, представляющим собой виртуальные среды для упаковки кода и зависимостей: PHP (Backend + Frontend), Python (FastAPI + Transformers), Nginx, MariaDB.

Рекомендуемые системные требования для функционирования системы:

• CPU с 4 логическими ядрами;

• 4 GB оперативной памяти;

• 64 GB дискового пространства.

Заключение

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

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

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

1. Федорова Н. К. Индивидуализация образования: модель Тюменского государственного

университета / Н.К. Федорова // EdCrunch Томск: Материалы международной конференции по новым образовательным технологиям, 29-31 мая 2019 года. Томск: ИД Томского

гос. ун-та, 2019. С. 301-305.

2. Захарова И. Г. Сопровождение индивидуальных образовательных траекторий на основе концепции объяснимого искусственного интеллекта / И. Г. Захарова, М. С. Воробьева, Ю. В. Боганюк // Образование и наука. 2022. Т. 24. № 1. С. 163-190. DOI 10.17853/19945639-2022-1-163-190. - EDN IOBYEJ.

3. Gottipati S., Shankararaman V., Lin J. R. Text analytics approach to extract course improvement suggestions from students' feedback. Res Pract Technol Enhanc Learn. 2018;13(1):6. DOI: 10.1186/s41039-018-0073-0

4. Shejwal S., Deokar T., Dumbre B. Analysis of Student Feedback using Deep Learning. International Journal of Computer Applications Technology and Research, 2019. 8. Р. 161-164. DOI: 10.7753/IJCATR0805.1004

5. Кирина М. А. Автоматическая оценка впечатлений обучающихся методами анализа тональности (на материале отзывов на онлайн-курсы на русском и английском) / М. А. Кирина, Л. Д. Тельнина // Цифровая гуманитаристика и технологии в образовании (DHTE 2022): Сб. ст. III Всероссийской научно-практической конференции с международным участием, Москва, 17-18 ноября 2022 года / Под ред. В. В. Рубцова, М. Г. Сороковой, Н. П. Радчи-ковой. Москва: Московский гос. психолого-педагогический ун-т, 2022. С. 355-374. EDN VJVKLU.

6. Дюличева Ю. Датасет для анализа русскоязычных отзывов на МООК, извлеченных с платформы Stepik. // Вопросы образования / Educational Studies Moscow, вып. 4 (декабрь), 2022. C. 298-321. DOI: 10.17323/1814-9545-2022-4-298-321.

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

7. Jones K. S. A statistical interpretation of term specificity and its application in retrieval // Journal of Documentation : journal. MCB University: MCB University Press, 1972. Vol. 28, no. 1. Р. 1121. DOI: 10.1108/00220410410560573

8. Stuart R., Dave E., Nick C., Wendy Cowley, Automatic Keyword Extraction from Individual Documents. March 2010. DOI:10.1002/9780470689646.ch1. In book: Text Mining: Applications and Theory, p.1 - 20. DOI: 10.1002/9780470689646.ch1

9. Campos R., Mangaravite V., Pasquali A., Ah'pio Mario Jorge, Celia Nunes, Adam Jatowt, YAKE! Collection-Independent Automatic Keyword Extractor. Conference paper. DOI: 10.1007/978-3-319-76941-7_80

10. Lawrence Page, Sergey Brin, Rajeev Motwani, Terry Winograd. The PageRank Citation Ranking: Bringing Order to the Web. 1998.

11. Rada Mihalcea, Paul Tarau. TextRank: Bringing Order into Texts. Department of Computer Science University of North Texas.

12. Sharma, P., Li, Y. (2019). Self-Supervised Contextual Keyword and Keyphrase Retrieval with Self-Labelling. Aug. 2019, DOI: 10.20944/preprints201908.0073.v1

13. Devlin Jacob, Chang Ming-Wei, Lee Kenton, Toutanova Kristina. BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. 11 October 2018

14. Vaswani, A. Attention is All You Need / Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkorei, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, Illia Polosukhin // NIPS, 2017

15. Lin, Chin-Yew. 2004. ROUGE: a Package for Automatic Evaluation of Summaries. In Proceedings of the Workshop on Text Summarization Branches Out (WAS 2004), Barcelona, Spain, July 25-26, 2004.

16. Papineni, Kishore; Roukos, Salim; Ward, Todd; Zhu, Wei-Jing (2001). "BLEU". Proceedings of the 40th Annual Meeting on Association for Computational Linguistics - ACL '02. Morristown, NJ, USA: Association for Computational Linguistics. DOI:10.3115/1073083.1073135

17. Tianyi Zhang. BERTScore: Evaluating Text Generation with BERT. // Tianyi Zhang, Varsha Kishore, Felix Wu, Kilian Q. Weinberger, Yoav Artzi.

18. Kuratov Y., Arkhipov M. Adaptation of deep bidirectional multilingual transformers for russian language. 2019.

19. Smetanin S., Komarov M. Sentiment Analysis of Product Reviews in Russian using Convolutional Neural Networks, 2019 IEEE 21st Conference on Business Informatics (CBI), 2019, P. 482-486, DOI: 10.1109/CBI.2019.00062

References

1. Fedorova N. K. Individualizatsiya obrazovaniya: model' Tyumenskogo gosudarstvennogo universiteta / N.K. Fedorova // EdCrunch Tomsk : Materialy mezhdunarodnoi konferentsii po novym obrazovatel'nym tekhnologiyam, 29-31 maya 2019 goda. - Tomsk: Izdatel'skii Dom Tomskogo gosudarstvennogo universiteta, 2019. - p. 301-305 (in Russ).

2. Zakharova I. G., Vorobeva M. S., Boganyuk Yu. V. Support of individual educational trajectories based on the concept of explainable artificial intelligence. The Education and Science Journal. 2022; 24 (1): p.163-190. (In Russ.) DOI: 10.17853/1994-5639-2022-1-163-190

3. Gottipati S., Shankararaman V., Lin J. R. Text analytics approach to extract course improvement suggestions from students' feedback. Res Pract Technol Enhanc Learn. 2018;13(1):6. DOI: 10.1186/s41039-018-0073-0.

4. Shejwal S., Deokar T., Dumbre B. Analysis of Student Feedback using Deep Learning. International Journal of Computer Applications Technology and Research, 2019. 8. p.161-164. DOI: 10.7753/IJCATR0805.1004.

5. Kirina M. A. Avtomaticheskaya otsenka vpechatlenii obuchayushchikhsya metodami analiza tonal'nosti (na materiale otzyvov na onlain-kursy na russkom i angliiskom) / M. A. Kirina, L. D. Tel'nina // Tsifrovaya gumanitaristika i tekhnologii v obrazovanii (DHTE 2022) : Sbornik statei III Vserossiiskoi nauchno-prakticheskoi konferentsii s mezhdunarodnym uchastiem, Moskva, 17-18 noyabrya 2022 goda / Pod redaktsiei V.V. Rubtsova, M.G. Sorokovoi, N.P. Radchikovoi. Moskva: Moskovskii gosudarstvennyi psikhologo-pedagogicheskii universitet, 2022. P. 355374. EDN VJVKLU. (In Russ.)

6. Dyulicheva Yu. Tu. Dataset dlya analiza russkoyazychnykh otzyvov na MOOK, izvlechennykh s platformy Stepik [Dataset for Analysisof Russian-Language Reviews on MOOCs Expacted from Stepik]. Voprosy obrazovaniya / Educational Studies Moscow, no. 4. P. 298-321. (In Russ.) DOI: 10.17323/1814-9545-2022-4-298-321

7. Jones K. S. A statistical interpretation of term specificity and its application in retrieval // Journal of Documentation : journal. MCB University: MCB University Press, 1972. Vol. 28, no. 1. P. 1121. DOI: 10.1108/00220410410560573

8. Stuart R., Dave E., Nick C., Wendy Cowley, Automatic Keyword Extraction from Individual Documents. March 2010. DOI:10.1002/9780470689646.ch1. In book: Text Mining: Applications and Theory, p. 1-20. DOI: 10.1002/9780470689646.ch1

9. Campos R., Mangaravite V., Pasquali A., Ah'pio Mario Jorge, Celia Nunes, Adam Jatowt, YAKE! Collection-Independent Automatic Keyword Extractor. Conference paper. DOI: 10.1007/978-3-319-76941-7_80

10. Lawrence Page, Sergey Brin, Rajeev Motwani, Terry Winograd. The PageRank Citation Ranking: Bringing Order to the Web. 1998.

11. Rada Mihalcea, Paul Tarau. TextRank: Bringing Order into Texts. Department of Computer Science University of North Texas.

12. Sharma, P., Li, Y. (2019). Self-Supervised Contextual Keyword and Keyphrase Retrieval with Self-Labelling. Aug. 2019, DOI: 10.20944/preprints201908.0073.v1

13. Devlin Jacob, Chang Ming-Wei, Lee Kenton, Toutanova Kristina. BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. 11 October 2018

14. Vaswani, A. Attention is All You Need / Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkorei, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, Illia Polosukhin // NIPS, 2017

15. Lin, Chin-Yew. 2004. ROUGE: a Package for Automatic Evaluation of Summaries. In Proceedings of the Workshop on Text Summarization Branches Out (WAS 2004), Barcelona, Spain, July 25 - 26, 2004.

16. Papineni, Kishore; Roukos, Salim; Ward, Todd; Zhu, Wei-Jing (2001). "BLEU". Proceedings of the 40th Annual Meeting on Association for Computational Linguistics - ACL '02. Morristown, NJ, USA: Association for Computational Linguistics. DOI:10.3115/1073083.1073135

17. Tianyi Zhang. BERTScore: Evaluating Text Generation with BERT. // Tianyi Zhang, Varsha Kishore, Felix Wu, Kilian Q. Weinberger, Yoav Artzi.

18. Kuratov Y., Arkhipov M. Adaptation of deep bidirectional multilingual transformers for russian language. 2019.

19. Smetanin S., Komarov M. Sentiment Analysis of Product Reviews in Russian using Convolutional Neural Networks, 2019 IEEE 21st Conference on Business Informatics (CBI), 2019, p. 482-486, DOI: 10.1109/CBI.2019.00062

Информация об авторах

Криворогов Данил Дмитриевич, студент Института математики и компьютерных наук Тюменского государственного университета

Низамов Тимур Дамирович, студент Института математики и компьютерных наук Тюменского государственного университета

Фазлыев Альберт Айратович, студент Института математики и компьютерных наук Тюменского государственного университета

Ходырев Арсений Николаевич, студент Института математики и компьютерных наук Тюменского государственного университета

Шушарин Дмитрий Владимирович, студент Института математики и компьютерных наук Тюменского государственного университета

Глазкова Анна Валерьевна, кандидат технических наук, доцент кафедры программного обеспечения Тюменского государственного университета

Information about the Authors

Krivorogov Danil Dmitrievich, Student, Institute of Mathematics and Computer Sciences, University of Tyumen, Tyumen, Russian Federation

Nizamov Timur Damirovich, Student, Institute of Mathematics and Computer Sciences, University of Tyumen, Tyumen, Russian Federation

Fazlyev Albert Airatovich, Student, Institute of Mathematics and Computer Sciences, University of Tyumen, Tyumen, Russian Federation

Hodyrev Arseniy Nikolaevich, Student, Institute of Mathematics and Computer Sciences, University of Tyumen, Tyumen, Russian Federation

Shusharin Dmitrii Vladimirovich, Student, Institute of Mathematics and Computer Sciences, University of Tyumen, Tyumen, Russian Federation

Glazkova Anna Valerevna, Cand. Sc. (Technology), Associate Professor, Department of Software, University of Tyumen, Tyumen, Russian Federation

Статья поступила в редакцию 14.03.2023; одобрена после рецензирования 04.09.2023; принята к публикации 04.09.2023

The article was submitted 14.03.2023; approved after reviewing 04.09.2023; accepted for publication 04.09.2023

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