Решить задачу на машинное обучение
Вам предстоит классифицировать отзывы на книгу "Война и мир" Льва Толстого. Задача заключается в разработке модели машинного обучения, которая определит, является ли отзыв положительным, отрицательным или нейтральным. Это задание поможет вам освоить основные принципы работы с текстовыми данными и применения моделей классификации.Условие задачиВам предоставлены два набора данных: train.csv и test.csv. Набор данных test.csv будет использоваться для финального тестирования модели.train.csv: содержит данные для обучения модели. Каждая строка представляет собой отзыв на книгу с меткой класса (sentiment):0 — отрицательный отзыв1 — положительный отзыв2 — нейтральный отзывtest.csv: содержит данные для тестирования модели, где необходимо предсказать метки классов для этих данных. Тестовый набор также содержит поле index, которое не является признаком и служит исключительно для идентификации записей в финальном файле предсказаний.ЗадачаРазработайте модель машинного обучения, используя библиотеки классического ML (например, sklearn, Logistic Regression, Random Forest, CatBoost или XGBoost) или трансформерные модели.Обучите модель на данных из train.csv, используя метку sentiment в качестве целевой переменной.Используйте обученную модель для предсказания меток классов sentiment для данных из test.csv.Сохраните предсказания в файл answer.csv в следующем формате:Файл должен содержать два столбца:index (значения индекса из test.csv)sentiment — предсказанные значения:0 — отрицательный отзыв1 — положительный отзыв2 — нейтральный отзывОписание признаковindex – уникальный идентификатор записи. Используется для связи с исходными данными.review – текст отзыва на книгу "Война и мир".sentiment – целевая метка, указывающая на оценку отзыва: 0 (отрицательный отзыв) или 1 (положительный отзыв).Пример данныхПример train.csv:index,review,sentiment0,"Книга потрясающая, очень понравилась!",11,"Не смог дочитать, совсем неинтересно.",02,"Лев Толстой мастер слова, очень рекомендую.",13,"Ужасно написано, жаль потраченного времени.",04,"Текст нейтральный, ничего особенного.",2Пример test.csv:index,review0,"Это произведение заставляет задуматься о жизни."1,"Скучная книга, не стоит внимания."2,"Настоящий шедевр литературы!"3,"Читается легко, ничего примечательного."Формат файла submission.csvФайл должен содержать два столбца:index — изначальные значения индекса из test.csvsentiment — предсказанные значения: 1 (положительный отзыв), 0 (отрицательный отзыв), 2 (нейтральный отзыв)Пример submission.csv: index,sentiment0,11,02,13,2Критерии оценкиИтоговый результат будет рассчитан на основе метрики F1 на скрытых тестовых данных. Балл за задачу рассчитывается на основе метрики F1 по следующей формулеДополнительные инструкцииОбязательно проведите предобработку текстовых данных: удаление стоп-слов, стемминг/лемматизация и векторизация (например, TF-IDF).Попробуйте различные модели машинного обучения и выберите лучшую на основе кросс-валидации.
Backend