Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/drsartoriuss/masterskaya_1

Разработка модели классификации музыкальных жанров на реальных данных.
https://github.com/drsartoriuss/masterskaya_1

catboost pandas phik sklearn

Last synced: 12 days ago
JSON representation

Разработка модели классификации музыкальных жанров на реальных данных.

Awesome Lists containing this project

README

        

# Music genre prediction [M1_26DS+]

## Описание проекта

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

- Проект реализуется в форме соревнования на платформе Kaggle: требуется показать лучшую метрику F1 на скрытой тестовой выборке.

## Используемые инструменты:

*Библиотеки:*

- pandas
- sklearn
- numpy
- matplotlib
- scipy
- phik
- xgboost
- catboost

*Модели:*

- RandomForestClassifier
- svm
- xgboost
- CatBoostClassifier

## Результаты:

- Загрузили и изучили данные, провели предобработку и EDA, создали и добавили новые признаки, проверили признаки на мультиколлинеарность, выбрали и обучили модели, подобрав для них лучшие гиперпараметры методом HalvingGridSearchCV, после чего оценили качество предсказаний кросс-валидацией и проанализировали важность признаков лучшей модели.

- Лучше всего с поставленной задачей справилась **модель CatBoost** с количеством итераций (iterations) 2000, и 'learning_rate' - 0.03. Модель показала на валидационной выборке значение метрики **F1 - 0.480479**, это значит, что модель правильно предсказала жанр (один из десяти) трека почти в половине случаев.

- **Наиболее важным признаком** для модели является **'instrumentalness'**.

- В **финальном тесте** модель показала значение метрики **F1 - 0,49764**.