diff --git a/istyukov_timofey_lab_4/1_dendrogram.png b/istyukov_timofey_lab_4/1_dendrogram.png new file mode 100644 index 0000000..0bb4f9e Binary files /dev/null and b/istyukov_timofey_lab_4/1_dendrogram.png differ diff --git a/istyukov_timofey_lab_4/2_dataset.jpg b/istyukov_timofey_lab_4/2_dataset.jpg new file mode 100644 index 0000000..19a6b40 Binary files /dev/null and b/istyukov_timofey_lab_4/2_dataset.jpg differ diff --git a/istyukov_timofey_lab_4/3_clusters.jpg b/istyukov_timofey_lab_4/3_clusters.jpg new file mode 100644 index 0000000..8a54b5e Binary files /dev/null and b/istyukov_timofey_lab_4/3_clusters.jpg differ diff --git a/istyukov_timofey_lab_4/README.md b/istyukov_timofey_lab_4/README.md new file mode 100644 index 0000000..2e8b23e --- /dev/null +++ b/istyukov_timofey_lab_4/README.md @@ -0,0 +1,75 @@ +# Лабораторная работа №4. Кластеризация +## 12 вариант +___ + +### Задание: +Использовать для своих данных метод кластеризации по варианту, +самостоятельно сформулировав задачу. Интерпретировать результаты и оценить, +насколько хорошо он подходит для решения сформулированной вами задачи. + +### Вариант: +- Алгоритм кластеризации: **linkage** + +### Вариант набора данных по курсовой работе: +- Прогнозирование музыкальных жанров ("Prediction of music genre") + +___ + +### Запуск +- Запустить файл lab4.py + +### Используемые технологии +- Язык программирования **Python** +- Среда разработки **PyCharm** +- Библиотеки: + * pandas + * scipy + * sklearn + +### Описание программы +**Набор данных (Kaggle):** Полный список жанров, включенных в CSV: +«Электронная музыка», «Аниме», «Джаз», «Альтернатива», «Кантри», «Рэп», +«Блюз», «Рок», «Классика», «Хип-хоп». + +**Задача, решаемая алгоритмом кластеризации:** +Группировка музыкальных треков на основе их характеристик с целью создания +кластеров треков с схожими характеристиками. Алгоритм кластеризации может +помочь в создании плейлистов и рекомендаций, основанных на схожести +музыкальных треков по некоторым характеристикам. + +**Задача оценки:** +Анализ получившейся иерархической структуры с помощью дендрограмме. + +--- +### Пример работы + +*Датасет, сформированный из случайных строк csv-файла.* +![Graphics](2_dataset.jpg) + +--- +*Визуализация дерева, представляющего иерархическое слияние кластеров, +в виде дендрограммы. Это может быть полезно для понимания структуры данных.* +![Graphics](1_dendrogram.png) + +--- +*Вывод первых 10 музыльных треков из датасета с их +принадлежностью к кластеру* +![Graphics](3_clusters.jpg) + +### Вывод +С моими данными алгоритм справляется довольно успешно. На результате выше +можно сравнить два трека — "Gake No Ue No Ponyo" и "He Would Have Laughed". +В результате работы программы они были присвоены к кластеру №10. +При этом первый трек отнесён к жанру "Anime", а второй — к "Alternative". +Тем не менее, эти две песни похожи преобладанием инструментала в них +(в особенности перкуссии), а так же наличием ирландских мотивов в нём. + +В ходе работы было проверено 8 пар музыкальных треков, принадлежащих +к разным кластерам. Как итог, больше половины пар действительно имели +много схожего в звучании или концепте аранжировки, несмотря на различия +по некоторым характеристикам (в том числе жанр). + +Из плюсов иерархической кластеризации можно выделить отсутствие +конкретного количества кластеров, для поиска похожей музыки это +явно преимущество. Из минусов же — слишком медленная работа +на больших наборах данных (из-за чего и было взято 50% от всего датасета). \ No newline at end of file