3.6 KiB
Задание
Использовать метод кластеризации по варианту для выбранных данных по варианту, самостоятельно сформулировав задачу. Интерпретировать результаты и оценить, насколько хорошо он подходит для решения сформулированной вами задачи.
Вариант 1: dendrogram
Была сформулирована следующая задача: необходимо разбить записи на кластеры в зависимости от цен и площади.
Запуск программы
Файл lab4.py содержит и запускает программу, аргументов и настройки вроде не требует.
Описание программы
Программа считывает цены и площади из файла статистики сбербанка по рынку недвижимости. Поскольку по заданию требуется оценить машинную кластеризацию, для сравнения программа подсчитывает и выводит в консоль количество записей в каждом из выделенных вручную классов цен. Далее программа кластеризует данные с помощью алгоритма ближайших точек (на другие памяти нету) и выводит дендрограмму на основе кластеризации. Выводимая дендрограмма ограничена 15 последними (верхними) объединениями.
Результаты тестирования
По результатам тестирования, можно сказать следующее:
- Последние объединения в дендрограмме - объединения выбросов с 'основным' кластером, то есть 10-20 записей с кластером с более чем 28000 записями.
- Это правильная информация, так как ручная классификация показывает, что премиальных (аномально больших) цен как раз порядка 20, остальные относятся к другим классам.
- Поскольку в имеющихся данных нет ограничений по ценам, выбросы аномально высоких цен при использовании данного алгоритма формируют отдельные кластеры, что негативно сказывается на наглядности.
- Ценовое ограничение также не дало положительнх результатов: снова сформировался 'основной' кластер, с которым последними объединялись отдельные значения.
- Значит, сам алгоритм не эффективен.
Итого: Алгоритм ближайших точек слишком чувствителен к выбросам, поэтому можно признать его неэффективным для необработанных данных. Дендрограмма как средство визуализации скорее уступает по наглядности диаграмме рассеяния.